Icom CI-V stepper

Difference between revisions from 2020/10/30 21:09 and 2020/10/30 21:08.
[<-- WEB |https://remoteqth.com/civ-stepper.php]
Icom CI-V stepper allows tuning with stepper motor Nema 17 some devices dependancy to Icom frequency

!Quick start guide
# '''Connect hardware'''
##Endstop switch
##24V DC power Supply
##TX inhibit output
# '''Configure over USB CLI'''

* [Schematics rev0.2 .pdf|https://remoteqth.com/hw/civ-stepper-02.pdf]
* [Interactive BOM|https://remoteqth.com/hw/civ-stepper-02-ibom.html]

!! Endstop
Switch for calibrate start point motor stepper (zero step, zero °). After start up stepper spins reverse ↺ and wait for endstop signal who stops him and resets counters.
!! Stepper
Connect two phase '''NEMA 17''' stepper motor. Another type not supported. One of the phases is known by the ohmmeter. Another phase is isolated.
* If stepper rotate reverse, you can change polarity one phase or activare reverse from CLI.
!! BCD input
Activate by grounded +5V pull-up.
!! CAT
Connected to Icom or MicroHam CI-V outputs.
!! TX Inhibit output
Open collector without pull-up.
!! Power supply
24V with 1A power rating. Lowest voltage accepted, but stepper lower torque.
!! USB Command Line Interface (CLI)
!!! How to connect
* Connect USB micro cable between CLI stepper and your PC
* install [PuTTY terminal|https://www.putty.org/]
* after run it set
** '''com port''' dependency to your system
** baudrate to '''115200'''
** Connection type to '''Serial'''
** In Terminal category turn off options '''Implicit CR''' and '''Implicit LF''' by picture [https://remoteqth.com/img/wiki-civ-stepper-02.png]
** press '''Open'''

!!!CLI commands
After open PuTTY press character [?] who show actual setting and available command

!!! Secure remote manage
Configuration available via serial CLI (command line interface). This interface can be safely accessed to the Internet and encrypted connections to manage all features
What you need
* any version Raspberry PI
* microSD card with [Raspbian Lite|https://www.raspberrypi.org/downloads/raspbian/]
* micro USB cable
* 5V power adapter with micro usb cable
* ethernet connection
* for first start HDMI monitor and USB keyboard

How to start
* after first boot login to serial console with default login '''pi''' and password '''raspberry'''
* run command and '''enable [SSH|https://www.raspberrypi.org/documentation/remote-access/ssh/]'''{{sudo raspi-config}}
* run command and write down the shown '''IP address'''{{ip a}}
* you can disconnect HDMI monitor and USB keyboard
* connect to Raspberry PI from any other PC
** [windows|https://www.raspberrypi.org/documentation/remote-access/ssh/windows.md]
** [Linux|https://www.raspberrypi.org/documentation/remote-access/ssh/unix.md]
** [iOS|https://www.raspberrypi.org/documentation/remote-access/ssh/ios.md]
* update system with run command{{sudo apt-get update && sudo apt-get upgrade}}
* install screen fith command {{sudo apt-get install screen}}
* run '''screen'''{{screen /dev/ttyUSB0 115200}}
* now after pres ? key show status information and you can '''configure via CLI'''[https://remoteqth.com/img/wiki-civ-stepper-01b.png]
* close screen with '''CTRL+A K''' and confirm '''y'''
* disconnect from Raspberry PI use command {{exit}}

For upload firmware you have two possibilities
# Download '''source''' from [GitHub|https://github.com/ok1hra/CI-V_stepper] and compile in [Arduino IDE|https://www.arduino.cc/en/Main/Software]
## Install [EEPROM library|https://www.arduino.cc/en/Guide/Libraries]
# Download '''compiled binary''' from [release page|https://github.com/ok1hra/CI-V_stepper/releases] and upload with some tool
## for example [avrdude|http://www.ladyada.net/learn/avr/avrdude.html] or [Xloader|http://xloader.russemotto.com/] for windows

!! Firmware source
contains some settings which does not available from CLI
* You can enter '''frequency and uStep directly in to firmware''' without CLI wizard. How to
**Disable preset coment line{{//#define RestoreMemoryFromEeprom}}
**Write frequency and uSteps i to array{{unsigned long StorageFreqToStep[112][2] = {
  {7000000, 0},
  {7010000, 500},
  {7020000, 1000},
  {7030000, 1500},
  {7040000, 2000},
** Upload firmware
** Select BCD input to bank-0 (must be, because only bank-0 saved also frequency, higest bank saved uStep only)
** Save frequency/uStep table from RAM to EEPROM with command [s] in CLI
** Replay edit table, upload and save for any higher bank
** After fill EEPROM to your liking, enable command in source file {{#define RestoreMemoryFromEeprom}}
** After upload frequency/uStep table will be set by preset selected bank. For more info use command [l] or [e] in CLI.
* Time (second number in ms) after which reduce stepper current and save last position to eeprom, if disable endstop{{long CurrentRunTimeout[2] = {0,1000};}}
* Enable serial debug if uncoment this line{{#define SERIAL_debug}}
* CLI baudrate, default is 115200{{const int BAUDRATE0 = 115200;}}

!MQTT variant
* need install wiznet ethernet module
* use another firmware {GitHub|https://github.com/ok1hra/MQTT-stepper}[GitHub|https://github.com/ok1hra/MQTT-stepper]
* for setup and control see source code header