310 Feature: Command Line Interface - k3ng/k3ng_cw_keyer GitHub Wiki

Serial Command Line Interface (CLI) / CW Keyboard

The keyer has a serial Command Line Interface (CLI) using the built in Arduino USB port or AVR serial port. This is enabled by uncommenting this line in keyer_features_and_options.h:

#define COMMAND_LINE_INTERFACE

Simply connect to your computer and use a terminal program such as the Arduino serial port program or Putty. If you use the Arduino Serial Monitor program, it’s recommended that you set it for carriage return (configured at the lower right of the Serial Monitor screen).

To use the CW keyer functionality, simply type in what you want to send. In the Arduino serial interface you will need to hit Enter to send the data to the keyer for it to start sending. Programs like Putty will immediately send the characters and the keyer will send the code immediately as well.

Commands are preceded with a backslash (” \ β€œ), the key above your Enter key (at least on US PC keyboards). To see a help screen, enter backslash question mark ” ? ” (no quotes). The status command (\s) is a useful command for viewing various settings and seeing the contents of the memories. If you enter a double backslash (β€œ\\”), all sending buffers will be cleared and any memory sending will stop (this includes sending invoked by the PS2 keyboard or Winkey interface protocol emulation features).

CLI Commands:

\? Help
\/ Paged Help
\# Play memory #
\a Iambic A mode
\b Iambic B mode
\c Switch to CW (from Hell)
\d Ultimatic mode
\e#### Set serial number to ####
\f#### Set sidetone frequency to #### hertz
\g Bug mode
\h Switch to Hell sending
\i Transmit enable/disable
\j### Dah to dit ratio (300 = 3.00)
\k CW Training Module
\l## Set weighting (50 = normal)
\m### Set Farnsworth speed
\n Toggle paddle reverse
\o Toggle sidetone on/off
\p# Program memory #
\q## Switch to QRSS mode, dit length ## seconds
\r Switch to regular speed mode
\s Status
\t Tune mode
\u Manual PTT toggle
\v Toggle potentiometer active / inactive
\w### Set speed in WPM
\x# Switch to transmitter #
\y# Change wordspace to # elements (# = 1 to 9)
\z Autospace on/off
\+ Create prosign
\!## Repeat play memory
\|#### Set memory repeat (milliseconds)
\* Toggle paddle echo
\^  Toggle wait for carriage return to send CW / send CW immediately
\~ Reset unit
\& Toggle CMOS Super Keyer Timing on/off
\%## Set CMOS Super Keyer Timing %
\. Toggle dit buffer on/off
\- Toggle dah buffer on/off
\: CW send echo inhibit toggle
\{ QLF mode on/off
\> Send serial number, then increment
\< Send current serial number
\( Send current serial number in cut numbers
\) Send serial number with cut numbers, then increment
\[     Set Quiet Paddle Interruption 
\=     Toggle American Morse mode    (requires FEATURE_AMERICAN_MORSE)
\@     Mill Mode
\}#### Set potentiometer range - low ## / high ##
\"     Hold PTT active with buffered characters
\]     PTT Enable / Disable
\;     FUTURE
\_     FUTURE - Set Clock
\\     Immediately clear the buffer, stop memory sending, etc.
\:     Extended CLI commands
        eepromdump              - do a byte dump of EEPROM for troubleshooting
        saveeeprom <filename>   - store EEPROM in a file
        loadeeprom <filename>   - load into EEPROM from a file
        printlog                - print the SD card log
        clearlog                - clear the SD card log
        ls <directory>          - list files in SD card directory
        cat <filename>          - print filename on SD card
        pl <transmitter> <mS>   - Set PTT lead time
        pt <transmitter> <mS>   - Set PTT tail time
        af ###                  - Set autospace timing factor; 100 = 1.00
        pf ###                  - Set paddle echo timing factor; 100 = 1.00

The extended CLI commands require a space after the \:COMMAND and between the parameters. A command to set the tail time for transmitter number 1 to 200mS, using the pt extended CLI command would be -

        \:pt 1 200

Where the 1 signifies tx1 and 200 is for a tail time of 200mS

K3ng keyer CLI

⚠️ **GitHub.com Fallback** ⚠️