v1.29 SPI1 Firmware Upgrade
March 1, 2019
===========================

1. First start the spi1firm128.exe application included in this package.  
2. Select the PC serial port to be used for the connection from the drop down list.  
3. Attach cable W16400CPI06 between the PC serial port and the communications port D on the SPI1.  
4. Attach the SPI1 AC or DC charger cable to the SPI1 on ports A, B or C.
5. Click the 'Start Firmware Download' button on the spi1firm127 application.
6. When the firmware download is complete, the PC application should display 'Passed'.  The application may take up to 2 minutes to complete.  If 'failed' is displayed after completion, check the cable connections and serial port and attempt to re-download the firmware.
7. Remove the serial cable from the SPI1 communications port D.


SPI1 Change Log

Version 1.29 (Feb 28, 2019)
-Corrected display of AC sync indicator on main status screen.

Version 1.28 (Jan 16, 2019)
-Added AC sync disable to relay type code(add 256 to original relay code).

Version 1.27 (Oct 4, 2016)
-Added half-hour and quarter-hour time zone offset entry.

Version 1.26 (July 16, 2015)
-Fixed issue with occasional missing interruption cycles at top of minute for on-first interruption mode where the off time equals the UTC offset parameter.

Version 1.25 (Nov 28, 2014)
-Increased low battery threshold by 40mV to 5.23V to improve battery life.
-Add battery monitor IC initialization each time SPI1 powers up.
-Add support for new Telit JN3 SirfStarIV GPS receiver.  Now shows up as GPS type 6.  Requires v1.18+ firmware on SDL1.

Version 1.24 (August 19, 2011)
-Added support for J30 GPS firmware v3.5.0.15+.

Version 1.23 (September 22, 2010)
-Fixed bug in scheduler where activating daily repeat would revert start date to current day.

Version 1.22 (March 12, 2010)
-Added internal pull-up to PORTF7 to prevent floating input.
-Added GSW3.6.X GPS firmware to list of firmware that has the UTC leap second bug corrected.
-Added support for SirfStarIII GPS receiver firmware that powers up at 4800bps NMEA instead of 9600bps.
-Added quick disable-all-schedules function to scheduler menu([MENU][2][.]).
-Added key press injection and LCD capture via RS-232 port for automated testing.  Users can also utilize this with SPI1Config v1.0.0.9 or higher through the Virtual SPI1 Keyboard/LCD button.
-Added additional checks to verify menu system integrity.

Version 1.21 (August 3, 2009)
-Fixed an issue with unit-to-unit parameter cloning.
-Removed UTC label from RTC test screen, since it displays local time.
-Added a GPS-once-only synchronization mode ([MENU][3][0][2]).  This means that the SPI1 can be turned on in an area that has GPS coverage, allowed to synchronize, and then moved to any area without GPS coverage for interruption with degraded timing synchronization accuracy.  Interruption timing synchronization to other SPI1 units will degrade as time goes on from power up, but should remain within +/-60ms over a 6 hour period.  If the SPI1 is reset to factory defaults, or is operated in an area with significant temperature difference from last area it was used in normal gps operation, it should be allowed to run through a calibration cycle of 45 minutes with this mode off before this mode is used.  Otherwise, timing accuracy will be significantly worse than +/-60ms over 6 hours.  The gps-once mode must be re-enabled at each power-up as a safety feature.  Note that when used with a SDL1 datalogger, it is not possible to attain accurate datalog time stamps when this mode is active--datalog time stamp accuracy will be +/-2s.

Version 1.20 (March 20, 2009)
-Added configurable interruption cycle type (on first, off first)
-Added GSW3.5.X GPS firmware to list of firmware that has the UTC leap second bug corrected.

Version 1.19 (December 19, 2008)
-Added check for stationary mount interrupter.  Allow power down on stationary interrupter while external power present.

Version 1.18 (November 5, 2008)
-Added scheduler Bluetooth enable screen for SDL1 datalogger.  Requires SDL1 version 1.15 firmware.  See SDL1 release notes for more information.
-Added Bluetooth MAC address status screen. [MENU][1][.].
-Added support for SirfstarIII GPS firmware GSW3.2.5_3.3.01.06-F02P3.00.

Version 1.17 (October 9, 2008)
-Fixed battery charging bug introduced in V1.16.  Battery charge level limiting was not allowing fast charge to terminate.

Version 1.16 (October 8, 2008, internal test release) 
-Added pass-through mode to allow programming of Jupiter 30 GPS engine firmware through external serial connector.  The GPS firmware can not be field updated--the entire SPI1 must be returned to Mobiltex for update.
-Removed interim fix for 1s time jump on units equipped with Jupiter 30 GPS receiver with updated GPS engine firmware.  GPS engines that have not had their firmware updated will continue to operate with the band-aid fix introduced in version 1.15 firmware with the same limitations.
-Added firmware check to ensure that Jupiter 30 GPS engine firmware has been updated.  If the firmware is not updated, a warning message is presented on the screen at power-up.  Units with updated Jupiter 30 firmware will show 'G5' in the [MENU][1][0] firmware versions display.  'G2' type GPS receivers are un-affected by the leap-second problem and do not require GPS engine firmware updates.
-Added firmware check to ensure that the SDL1 has been upgraded to 1.14 or higher.
-Added fast charge terminate when external charge is not detected.
-Added support for SDL1 with extended 12V low range.
-Added passing of SPI1 version and UTC offset settings to SDL1 so that those parameters can be recorded in data files.

Version 1.15 (August 21, 2008)
-Interim fix for 1s time jump on units equipped with Jupiter 30 GPS receiver (G3 shown in [MENU][1][0]).  This is an interim fix software that will work correctly until late 2009.  Beyond that, UTC leap seconds will be incorrect.  It is the intent that this firmware will only be used until an appropriate firmware update is available for the Jupiter 30 GPS receiver from Navman to fix the UTC time output from the module. 

Version 1.14 (April 15, 2008)
-Added display of on or off to datalogger status screen.  Only active with SDL1 1.11 or higher firmware.
-Improved responsiveness of the datalogger status screen.  Previously, the screen was only updated every 800ms, now it is updated whenever a new datapoint is received from the datalogger.
-Added a no-gps mode of operation to allow interruption without GPS acquisition.  Interruption will not be synchronized to other units when operating in this mode.  As a safety feature, this mode is reset to disabled each time the unit is powered up. [MENU][3][0][1] to set.  Main status screen will show "DIS" in the SAT field when mode is activated.
-Split configuration menu into two pages.  Page 2 contains no-GPS and factory defaults.

Version 1.13 (March 31, 2008)
-Added ability to enable datalogger in an already active schedule.  Any change in schedule parameters will cause the gps receiver to turn back on, allowing the SDL1 to attain time lock.  When the datalogger is activated on a currently active schedule, if the gps receiver was off, it may take the datalogger 30s to acquire the current time before it will start logging.
-Changed the datalogger status screen so that it displays "GPS" in the active field until the datalogger completes acquiring time from the GPS receiver.
-Changed the datalogger status screen so that it displays "-" in all fields until valid data points are received.

Version 1.12 (Nov 28, 2007)
-Reduced RAM usage.  Added stack check function.

Version 1.11 (Nov 27, 2007)
-Added double beep confirmation to power down.
-Added GPS type indication in the serial and code status screen([MENU][1][0]).
-Re-tooled the keypad interrrupt scan routines to simplify the statemachine and add a key buffer for storage of multiple key presses.  48ms for key press and 48ms for key release are required now.

Version 1.10 (Nov 23, 2007)
-More changes for Jupiter 30 Revision I hardware.

Version 1.09 (Sept 20, 2007)
-Added support for high sensitivity SirfstarIII GPS receivers.
-Added parameter for backlight always on with external power.
-Fixed time zone calculations for timezones >+9, or <-9 hours.
-Changed operation of the menu key so that it goes to the main menu from any submenu, or if the main menu is currently displayed, pops up to main status menu.

Version 1.08 (Sept 13, 2007)
-Fixed scheduler where a lower numbered schedule going active prevented a higher numbered schedule from being deactivated.
-Changed datalogger digital filter to default on.
-Improved keypad debounce.

Version 1.07 (Aug 24, 2007)
-Changed datalogger high range to 150V from 75V.
-Changed interruption offtime maximum to 60000 from 59999 for consitency, as having the off time equal the cycle is a valid condition for de-polarization operations.

Version 1.06 (May 10, 2007)
-Extended datalogger on-offset and off-offset limits to allow offsets up to the full on and off periods.

Version 1.04 (October 26, 2006)
-Changed relay dwell time set to 0,5,10,15,20,30,50,80ms to accommodate mercury relays.
-Added 75V range to datalogger range select.

