NUE-PSK Digital Modem

Modem Software Release Notes

Changes in the latest release of modem software


v5.02 Release Notes
July 28, 2012

Changes were made mostly for correcting subtle errors and making operation more reliable. While this is not a critical/mandatory release, we do recommend that you perform the software update to v5.02 when convenient, as it will enhance your experience when using your NUE-PSK Digital Modem.

  • Fixed bug that would keep 8.3 file formats from being properly terminated in the EEPROM. ***

  • Adjusted voltage conversion constant to improve battery voltage measurement accuracy.

  • Made change to allow full 8.3 file names. ***

  • Added file name format validation to Ctrl-N function.

  • Fixed bug causing a series of keyboard spaces to toggle out of Tx mode.***

  • Fixed bug causing some control keys (e.g., Caps Lock) to add garbage chars in Insert Mode.***

  • Add limit checks to all EEPROM read operations to avoid address errors when strings are not terminated.

  • Made sure usbblock is cleared when Ctrl-U is pressed and there is no thumb drive plugged in.***

  • Fixed problem keeping CW Direct mode to be properly exported in CONFIG.TXT.***

  • Added logic to use USB command responses and trap and display USB error messages.

  • Added retries to closing log files.

  • Fixed bug causing PTT to drop out in BPSK mode. ***

  • Blocked changing m_SymbolRate when CW speed is changed in non-CW modes. ***

  • Added resets to keyboard state flags when 0xAA (BAT complete) received from keyboard.***

  • Changed keycode scan table to process extended key pad characters Enter and '/' same as non-extended.

  • Stopped inter-word SPACES in DLE sequence from moving text cursor.***

  • Added 1/4 second Tx/Rx side tone lockout when using built-in keyer.

  • Eliminated screwed up text display following an Acquire or frequency change.***

  • Terminate a macro and clear the Tx buffer when End is pressed.

  • Play macro 1 - 7 when keyer inputs prosigns m1 - m7 in Rx mode (no DLEs required).

  • Forced LastScanCode to 0x00 with each keyer input to avoid processing keyer input as a macro. ***

  • Enable TUNE mode in Rx with 'mm' and disable it with any keyer input.

  • Changed CW Direct mode to key PTT directly from the keyer, no waiting for word boundaries.

  • The ESC key controls keyer side tone on/off in CW Direct Tx mode.

  • Block CW keying from turning off PTT in TUNE mode. ***

v5.00 Release Notes
November 19, 2011

Major features added:  Keyer Mode, CW Direct Mode, Keyer Practice Mode

  • Added internal keyer: Iambic A, B, Dot preferred, Ultimatic

  • Stop using an EEPROM location to block showing the RTCC Date on the LCD display. ***

  • Block changing the date and time in Tx mode. ***

  • Added CW direct mode which keys the transmitter with the PTT line.

  • Added CW paddle reverse configuration option.

  • Made sure Tx column number (Yloc) is properly restored after writing a positioned string.***

  • Enable side tone frequency tweaking to use either the select button or the Ctrl key.

  • Enter file name (Ctrl-N), Enter Date (Ctrl-D), and Enter Time (Alt-D) moved to upper screen.

  • Fixed a bug in Save Config that was forcing the modem into CW mode.***

  • Changed Acquire function to not clear text screen or initialize CW Rx

  • Added indicator for PGA gain level on top line of the LCD.

  • Changed so toggling from Rx to Tx mode scrolls the display up one line and does not clear line buffer.

  • Added AFC on indicator to top line of LCD

  • Changed processUpdateTime to accept any character in place of the ':' characters in the input.***

  • Made sure there is a space after every colon in a uploaded config.txt file.***

  • Added a CW practice mode that does all normal CW functions but activate PTT and receive data.

  • Changed "Upload Config" and "Download Config" to "Export CONFIG.TXT" and "Import CONFIG.TXT".

  • Fixed bug causing day date to be truncated to 4 bits when updating the RTCC time.***

  • Many low-level implementation details suitable mostly for software programmers ... see the top of Main.c for a complete listing.

(*** indicates bug fix)


v4.02 Release Notes
September 19, 2011

Maintenance Release ... many small improvements to existing features ...

  • Fixed restart problem by making sure CPU interrupts are enabled.

  • Cleaned up splash screen

  • Got rid of saving response and beeping in PutUartChar.

  • Changed PC Boot Loader back to initial.

  • Changed init to immediately display version line.

  • Delayed start of RTCC display to avoid displaying default date

  • Blocked T4 interrupt when incrementing RunRTCC to increase accuracy when no RTCC hardware.

  • Bracketed splash screen version line with '<' and '>'.

  • Reduced the splash screen duration by 2 seconds.

  • Fixed bug in Acquire causing address error when End pressed in Tx mode.***

  • Show the CW pass band on the tuning display (new feature).

  • Cleared overrun error before looking for response during download config.***

  • Fixed address error when excess characters are entered for MYCALL or THEIRCALL.***

  • Restricted CW mode tuning to maximum of 1500 Hz and mode change to CW mode.

  • Restricted serial number to range of 1 to 999 regardless of EEPROM value.

  • Disabled tuning when in transmit mode to avoid address errors.***

  • Moved NUE-PSK and USB Ver. lines to top of LCD display

  • Accept and display a version number from the RTCC PIC firmware. (Inserted in unused date and time bits)

  • Fixed serial number operation in RTTY mode.***

  • Reduced RAM usage by marking canned strings as constant and by moving some global variables to local

  • Declared pADC_Buffer as a static variable and eliminated using malloc and free.  Also eliminated the heap

  • Changed/fixed beacon operation so beacon interval can be changed while running.

  • Partially fixed back space problem in non-CW mode (see below).

  • Fixed back space problems when backspacing onto line 6 & limited backspacing to lines 6 and 7.

  • Limited CW speed to between 5 and 50 WPM.

  • Made sure EEPROM contains "de " in front of MYCALL. ***

  • Added Ctrl-Z to terminate entering MYCALL and THEIRCALL.

  • Fixed Ctrl-L function to properly clear the test display and the LCD buffer.***

     (*** indicates bug fix)




v4.00 Release Notes
September 3, 2011


New Features …

1)      CW Mode – Combined “CW reader and Morse Keyboard” adds the oldest form of digital communications to the modem.  In transmit mode, key in your text and the modem will convert it to perfect Morse code and send it to your transceiver.  Select transmit speeds from 5 to 50 WPM.  In receive mode, CW from your receiver will be decoded and displayed on the LCD screen as ASCII text.

2)      Date Format – From the CONFIGURE menu select from three date formats for the RTCC display:

a.       “YYYY-MM-DD”  (default)

b.      “MM/DD/YYYY”

c.       “DD/MM/YYYY”

3)      Editing during receive – It is now possible to enter and edit MYCALL and THEIRCALL without interrupting an in-process receive operation.

4)      Serial Numbers – Serial number support is added to allow insertion of serial numbers in transmitted text.  Controls are provided for incrementing, decrementing, and resetting a three-digit serial number without interrupting an in-process receive operation.

5)      USB Firmware Configuration – Added the USB version and configuration number to the splash screen.

6)      Battery Voltage – Constantly displays the current battery voltage on the top line of the LCD display.  Out of spec voltage (less than 9 volts or more than 40 volts) will display in reverse video. 

Known Issue …

1)      Serial Update Problem – Boot loading the modem firmware using the USB Slave Port (USB B connector, port 1) is not reliable and should not be used.  Either remove the USB card and use a serial interface adapter or use the Flash Boot Load to load modem firmware.



   v3.01 Release Notes
      June 9, 2011

New Features ...


1) Real Time Clock CalendarThe RTCC capability is now a standard part of the USB add-on card, providing a way for the modem to maintain the current date and time, even when the modem is turned off.  The date and time are displayed on the main LCD of the modem, and a timestamp is given to each QSO file recorded to the USB thumb drive connected to the modem.  The Date may be set with the CTL-D keyboard command, as well as the Time with the ALT-D command.  When the RTCC circuits are not present, the v3 software still displays the "time" starting at 00:00:00 since powering on the modem, thus acting as an elapsed time counter.  The Time may still be set (ALT-D) without the RTCC hardware being present.  If/when the battery is replaced on the USB card, pin 4 of the PIC U3 must be momentarily grounded before modem power is applied in order to properly start the RTCC clock.


   v2.33c Release Notes
      February 19, 2010

New Features ...


1) Config Upload / Config Download — New feature pair, accessed from the modem’s CONFIGURE menu (beneath the Select pushbutton), allows the operator to save (Upload) the modem’s current “configuration settings” (user settings and macro strings) to a text file on the USB Flash Drive; edit this text file on a PC; and then set (Download) that modified text file into the modem. Great way to create macro strings offline and save them for later reminder or modification. See the How to Use Config Upload/Download page for usage details.  [NOTE:  The Upload feature is completely optional and the Download feature can easily be used alone to achieve the benefit of this software version.  However if you wish to also have the Config Upload capability, you will need to add an extra signal wire between the modem and USB cards and load the latest "C02" firmware to the USB chip ... see the Using the USB Card page for details on adding this wire and updating the firmware.]

2) Added Weighted Overlap and Add — Improved algorithm for PSK31 signal selectivity. The primary advantage is that it will be easier to confirm that a signal is PSK31 (when receiving the idle signal) and also easier to spot a weak signal close to a stronger signal. This algorithm has less spillover between adjacent bins of the FFT as well as lower side lobes in general. Further, the display looks "sharper" when the noise is lower.

3) Nonlinear Amplitude Processing of the FFT — Improved algorithm provides nonlinear gain to the display, thus enhancing the S/N by providing a longer time-constant to the noise, while using a shorter time-constant for stronger signals. Also provides further improvement in cosmetic quality.

4) Counter for the Beacon Mode — New ability to insert a counter into the Macro 7 Beacon string by entering the Alt-K key. The counter increments each time the Beacon transmits, thus displaying the increasing counter each time that the Beacon is transmitted. The Beacon counter is reset at power up.


   v2.10g Release Notes
      August 13, 2009

New Features ...

RTTY transmit implemented -- This latest software release adds full support for RTTY mode.  Just dial up RTTY from the Mode menu in Config, set your rig to USB, and find a RTTY signal on the band with its characteristic double bump seen on the spectrum display. Set the dual cursor on the double signal peaks and watch the RTTY text appear on the display!  If decoding doesn't immediate start, type Ctrl-R to reverse the order of the Mark and Space frequencies (probably due to the transmitting station being on the opposite sideband).  See the RTTY App Note for full details. 


   v2.0a Release Notes
      June 21, 2009

New Features ...

RTTY receive implemented -- Set rig to USB. (Set to LSB to reverse Mark/Space.) Center cursor between Mark and Space peaks. Turn RTTY mode on via Mode setting in Config menu. Tuning should be done with Rig. (If encoder used for tuning, the "automatic peak finder" may try to change the freq to either the Mark or Space frequency. This is because the timeout error launches the peak finder when encoder changes cease. In the future, this will be locked out when in RTTY mode.)


   v1.34f Release Notes
      February 22, 2009

New Features ...

1) Beacon mode has been added.  Using this new feature, the user is able to specify a text string up to 256 characters in length into macro buffer F7 and then turn on Beacon Mode by pressing Shift-F9.  The F7 macro should contain the Tx-ON control character Ctrl-S at the start of the string and the Tx-OFF control character Ctrl-Q at the end. The beacon transmission will then start and stop automatically with nothing being transmitted during the pauses. Once in Beacon mode, the reverse-video characters "BCN" are displayed at the right edge of the display and the F7 buffer begins transmitting as the text is displayed on the LCD.  Since the Tx-OFF control character Ctrl-Q is the last character in the string, the modem drops out of Tx mode and the modem stays in Rx mode until the Beacon Interval timer expires. When the Beacon Interval time expires (which must be greater than the time required to transmit the F7 buffer), the F7 buffer transmit cycle begins again. This "beacon cycle" continues as long as the modem is powered (i.e., transmit F7 buffer, wait for Beacon Interval to timeout, transmit F7 buffer, ...)  Beacon mode may be turned off at any time by pressing Alt-F9. The Beacon Interval is able to be set within the modem's Configure menus ... press-hold the Select pushbutton, dial two positions counter-clockwise and select Beacon Interval.  Adjust the dial to select time in seconds for the start of every F7 buffer transmit cycle.  It is important that the time be greater than the time required for F7 buffer to transmit.  A good guideline is to first program the F7 buffer with the desired string and play the F7 buffer once by pressing F7 while in Tx mode.  Time the transmission and add the number of seconds desired before the next transmission.  That combined time will be the Beacon Interval.  The user-set Beacon Interval time in the Config menus is retained only as long as modem power is applied.  You will need to re-enter the time each time you power up the modem.  The default Beacon Interval is 60 seconds.


2) PC Bootload is now the only way to load new software when running prog on the PC.  Previously, one would have to hold down the Select pushbutton on the modem when turning on the modem power, and then hit <Enter> on the PC to execute the prog -i com1 modem1_34f(modem+lowbootload).hex command to start the bootload. Now, just go into the Config menu, dial up PC Bootload and select Start Bootload to initiate the transfer on the modem side, and lastly move over to the PC and enter the prog command line.  One uses PC Bootload menu item when using an external serial adapter (like the SparkFun CP2102) and when using the internal USB card on the modem witht he USB cable running over to the PC.


   v1.33c Release Notes
      December 8, 2008

New Features ...

1) We have now completed the remaining two features of the USB Card.  Usage of all three capabilities is explained below ...

 1) REC MODE -- Records QSOs to a USB flash memory device.   The Ctrl-U command toggles REC mode on to save all incoming and outgoing text from the QSO to the "thumb drive" plugged into the rectangular USB port on the side of the modem.  Additional commands allow you to specify the name of the file being recorded on the flash device, as well as provide the ability to insert additional information to the file as explanatory text for the QSO (e.g., date/time, event, etc.).


 2) FLASH BOOTLOAD -- Loads new modem software from a flash device.  When activated from the menu under the Select pushbutton, this function allows you to "bootload" a new software hex file from the flash device to the modem processor.  A suitable hex file is provided on this website and all you need to do is download it to your flash device, insert it to the modem USB port, and select the Flash Bootload operation from the Select menu.  This operation eliminates the need to connect a serial adapter to P4 on the modem when upgrading the software.


 3) PC BOOTLOAD -- Loads new modem software from a computer.  This new capability allows you to connect the modem to a USB port on the PC using a suitable cable, and upgrade the modem software from the PC.  In effect, this function serves as a built-in serial adapter, thus eliminating the need for using a separate serial adapter for upgrading the modem software.  Just dial up this function in the Select menu, activate the same "prog" program on your PC as before, and watch your modem software get upgraded.


Important note ... The modem software containing these features is version 1.33c (or beyond) and you must have this loaded in order to realize these new capabilities.  Also, it is necessary for the USB card to be programmed with the "C01" version of firmware instead of the "A01" version we specified with earlier modem releases (like v1.30c2).    See the next section "Programming the USB Card" next for more details on this.

2) The "MyCall" buffer has been initialized to eliminate buffer overrun when reporting MyCall with no entry.

3) Modifications to create "C01" version of VNC1L firmware with prompts, drive change notifications, LED power-on flashing disabled. (To simplify modem code.)

   v1.30c1 Release Notes
       October 3, 2008

New Features ...

1) We have implemented a "Buffered Text Capture" routine, used for capturing MyCall, TheirCall, FileName, InsertText, and Macros.  Usage explained below ...

a) For entering and storing MyCall …  Ctrl-M opens the dialog. The callsign is entered.  Ctrl-Z closes the routine and stores the callsign in EEPROM.

b) For entering and storing TheirCall … Ctrl-T opens the dialog. The callsign is entered. Ctrl-Z closes and stores their call in RAM.

c) For extering a file Name for the USB Flash Drive file … Ctrl-N opens the dialog, a filename is entered (standard 8.3 format). Ctrl-Z closes and stores the filename in EEPROM.

d) Macros are recorded as before using Ctrl-Fn, but now the text entry is terminated with Ctrl-Z.  (F9 is no longer used for macro input completion.)

2) A piezo "beep" is generated to provide warning alerts for text entry.  For example, a beep sounds if "too many characters have been entered into a callsign".

3) Ctrl-U toggles recording on/off to the Flash Drive.  REC is vertically displayed at the right side of the LCD while in Record mode. Recording is aborted if no Flash Drive is detected.  If no USB expansion card is present, the Ctrl-U function aborts immediately with a beep of the piezo.  If the USB card is present, but the USB device is not, the function aborts after five seconds with Beep.

4) "On Screen" Insertion of a block of text may be made to the currently open Flash Drive file. For Inserting text into the recording file … Ctrl-I opens the dialog, Text is entered, and Ctrl-Z closes the routine and enters the text into the recording file.  The recording file must already be open (Ctrl-U) for this to work.  The recording file is left open for receiving text, until the Ctrl-U is pressed again to close the recording file.  This capability is provided for convenient identification of the resultant recorded data on the USB device.  (For example, placing a date/time, operator name, or operating location is a common use.)



   v1.20 Release Notes
       May 13, 2008

Bug fixes ...

1) CwID is now working.

2) Some non-printable characters no longer print as "garbage" on display.

3) "Right Half Of Display Blanking" has been fixed by adjusting the timing of the control signals to the LCD.

4) Improved locking onto PSK signals on the spectrum.

5) Smoother interaction with the Tune encoder control, primarily with the menu selections under the Select pushbutton.

New Features ...

1) F10 for TX Toggle ... F10 is now used to switch between Tx and Rx modes. (F12 was previously used for this, but using F10 is much more convenient for operators using the popular "2366" mini keyboards that require you to hold the Fn key to get to F11 and F12.)

2) Backspace ... The backspace key now works as expected when recording macros or transmitting. It always worked as far as the outgoing signal was concerned, but the display did not show the cursor backing up by blanking the previously-typed character.

3) Ctrl-S ("Switch To Transmit") ... is now available for use as a special control character at the beginning of a macro. The control character is looked for when a macro button is pressed, even while in receive, If the character is found at the beginning of a macro, the modem will automatically switch to transmit, and continue to play the rest of the macro. This means that you can generate a macro for calling CQ that will switch the modem to transmit without having to use F10, call CQ and return to receive mode if the macro is ended with Ctrl-Q ... all by using a single key press. This makes it possible to significantly reduce, or even eliminate, the need for pressing F10 when conducting a QSO.

4) Speed tuning ... 1X, 2X, 5X and 10X step rates are now available for tuning using the keyboard keys:
     1X: left/right arrow keys
     2X: up/down arrow keys
     5X: Alt + left/right arrow keys
     10X: Alt +up/down arrow keys

5) Configuration Menu Improvements ... we added several user interface improvements concerning the displaying, saving and loading of configurable modem settings.

     a) "Current setting display" -- When you dial up a configurable menu (Mode, Squelch, CwID, Backlight, PGA), the current setting is now shown. (Previously, the display always showed the first choice, regardless of another choice already being in effect.)

     b) "Save Configuration" ... A new menu item is available, one-position counter-clockwise from exit, whereby you can save the current settings to nonvolatile memory. Thus whatever changes made to the configurable items (Mode, Squelch, CwID, Backlight, PGA) will be automatically restored upon the next power-up.

     c) "Report Configuration" ... F12 now toggles the display of the current configuration settings. Pressing F12 once shows the current settings, and pressing F12 again (or any other key) brings you back to normal modem operation. This is a convenient way to view at a glance the current settings in the modem.

6) Supply Voltage ... is displayed in the splash screen on the display during power-up. Helpful when running on batteries to see the starting voltage level of the supply.


Back to the NUE-PSK Home Page


Page last updated:  December 9, 2011