Added [ character as prosign AS for K1EL Winkeyer / N1MM+ compatibility (Thanks, Mark WH7W)
pull/98/head
Anthony Good 2020-06-14 09:40:45 -04:00
rodzic 428ce8d673
commit 5425d5247a
2 zmienionych plików z 67 dodań i 53 usunięć

Wyświetl plik

@ -28,6 +28,8 @@ For help, please post on the Radio Artisan group: https://groups.io/g/radioartis
YouTube Channel: https://www.youtube.com/channel/UC5o8UM1-heT5kJbwnJRkUYg
2020 Recipient of the Amateur Radio Software Award https://amateurradiosoftwareaward.github.io/
Wordsworth CW training method created by George Allison, K1IG
English code training word lists from gen_cw_words.pl by Andy Stewart, KB1OIQ
@ -1253,6 +1255,11 @@ Recent Update History
Fixed issue with paddle interruption of stacked memories not being consistent (Thanks, Marcin SP5IOU)
\S memory macro now prints space on CLI and LCD display
2020.06.13.01
HARDWARE_GENERIC_STM32F103C - hard code EEPROM length to account for length() method not being available on this platform
2020.06.14.01
Added [ character as prosign AS for K1EL Winkeyer / N1MM+ compatibility (Thanks, Mark WH7W)
Documentation: https://github.com/k3ng/k3ng_cw_keyer/wiki
@ -1281,7 +1288,7 @@ If you offer a hardware kit using this software, show your appreciation by sendi
*/
#define CODE_VERSION "2020.06.03.03"
#define CODE_VERSION "2020.06.14.01"
#define eeprom_magic_number 40 // you can change this number to have the unit re-initialize EEPROM
#include <stdio.h>
@ -9285,19 +9292,16 @@ void send_char(byte cw_char, byte omit_letterspace)
case '=': send_the_dits_and_dahs("-...-"); break;
case '/': send_the_dits_and_dahs("-..-."); break;
case ' ':
loop_element_lengths((configuration.length_wordspace-length_letterspace-2),0,configuration.wpm);
break;
case '*': send_the_dits_and_dahs("-...-.-"); break;
//case '&': send_dit(); loop_element_lengths(3); send_dits(3); break;
case '.': send_the_dits_and_dahs(".-.-.-"); break;
case ',': send_the_dits_and_dahs("--..--"); break;
case '!': send_the_dits_and_dahs("--..--"); break; //sp5iou 20180328
case '\'': send_the_dits_and_dahs(".----.");break;// apostrophe
//case '!': send_the_dits_and_dahs("-.-.--");break;//sp5iou 20180328
case '\'': send_the_dits_and_dahs(".----."); break; // apostrophe
case '(': send_the_dits_and_dahs("-.--."); break;
case ')': send_the_dits_and_dahs("-.--.-"); break;
case '&': send_the_dits_and_dahs(".-..."); break;
//case '&': send_dit(); loop_element_lengths(3); send_dits(3); break;
case ':': send_the_dits_and_dahs("---..."); break;
case ';': send_the_dits_and_dahs("-.-.-."); break;
case '+': send_the_dits_and_dahs(".-.-."); break;
@ -9308,6 +9312,11 @@ void send_char(byte cw_char, byte omit_letterspace)
case '@': send_the_dits_and_dahs(".--.-."); break;
case '<': send_the_dits_and_dahs(".-.-."); break; // AR
case '>': send_the_dits_and_dahs("...-.-"); break; // SK
case '[': send_the_dits_and_dahs(".-..."); break; // AS (K1EL Winkeyer compability)
case ' ':
loop_element_lengths((configuration.length_wordspace-length_letterspace-2),0,configuration.wpm);
break;
#ifdef OPTION_RUSSIAN_LANGUAGE_SEND_CLI // Contributed by Павел Бирюков, UA1AQC
case 192: send_the_dits_and_dahs(".-");break; //А
@ -17735,8 +17744,14 @@ void initialize_keyer_state(){
switch_to_tx_silent(1);
#endif
#if !defined(ARDUINO_SAM_DUE) || (defined(ARDUINO_SAM_DUE) && defined(FEATURE_EEPROM_E24C1024))
#if (!defined(ARDUINO_SAM_DUE) || (defined(ARDUINO_SAM_DUE) && defined(FEATURE_EEPROM_E24C1024))) && !defined(HARDWARE_GENERIC_STM32F103C)
memory_area_end = EEPROM.length() - 1;
#else
#if defined(HARDWARE_GENERIC_STM32F103C)
memory_area_end = 254;
#else
memory_area_end = 1024; // not sure if this is a valid assumption
#endif
#endif
}

Wyświetl plik

@ -17,7 +17,7 @@
#define FEATURE_COMMAND_LINE_INTERFACE // Command Line Interface functionality
#define FEATURE_MEMORIES // on the Arduino Due, you must have FEATURE_EEPROM_E24C1024 and E24C1024 EEPROM hardware in order to compile this
#define FEATURE_MEMORY_MACROS
// #define FEATURE_WINKEY_EMULATION // disabling Automatic Software Reset is highly recommended (see documentation)
#define FEATURE_WINKEY_EMULATION // disabling Automatic Software Reset is highly recommended (see documentation)
// #define FEATURE_BEACON // Go into beacon mode if paddle_left pin is LOW at boot up
// #define FEATURE_BEACON_SETTING // Go into beacon mode at boot up if EEPROM setting is enabled (\_ CLI Command)
// #define FEATURE_TRAINING_COMMAND_LINE_INTERFACE
@ -45,7 +45,6 @@
// #define FEATURE_SLEEP // go to sleep after x minutes to conserve battery power (not compatible with Arduino DUE, may have mixed results with Mega and Mega ADK)
// #define FEATURE_ROTARY_ENCODER // rotary encoder speed control
// #define FEATURE_CMOS_SUPER_KEYER_IAMBIC_B_TIMING
// #define FEATURE_HI_PRECISION_LOOP_TIMING
// #define FEATURE_USB_MOUSE // Uncomment three lines in k3ng_keyer.ino (search for note_usb_uncomment_lines)
// #define FEATURE_CAPACITIVE_PADDLE_PINS // remove the bypass capacitors on the paddle_left and paddle_right lines when using capactive paddles
// #define FEATURE_LED_RING // Mayhew Labs Led Ring support
@ -77,7 +76,7 @@
// #define FEATURE_SINEWAVE_SIDETONE_USING_TIMER_3 // Arduino Mega: sidetone_line = 2, 3, or 5 (Further info: https://www.pjrc.com/teensy/td_libs_TimerOne.html)
//#define FEATURE_COMMAND_LINE_INTERFACE_ON_SECONDARY_PORT // Activate the Command Line interface on the secondary serial port
#define FEATURE_COMMAND_LINE_INTERFACE_ON_SECONDARY_PORT // Activate the Command Line interface on the secondary serial port
#define OPTION_PRIMARY_SERIAL_PORT_DEFAULT_WINKEY_EMULATION // Use when activating both FEATURE_WINKEY_EMULATION and FEATURE_COMMAND_LINE_INTERFACE
// simultaneously. This will make Winkey emulation be the default at boot up;
// hold command button down at boot up to activate CLI mode