Total Units Connected: 2196
 

X-Series Version History

The X-Series SPEs use the MSP430F2618 microcontroller. The older SPEs used the 'F149 (g18 version) and 'F169 (g20/g24 versions). The 'F2618 microcontroller uses the MSP430X CPU. The MSP430X CPU extends the memory map from 64KiB to 1MiB. Internal registers have been increased from 16 to 20 bits and a number of new instructions have been added to support the larger registers.

1.00.12 - 4 February 2010

Added support for the battery fuel gauge based on the DS2756 chip. This fuel gauge chip is to be included in future 14.4V Li-SOCl2 D-Cell battery packs. Fuel gauge status can be read with the ^HBFG command as well as being logged.

Improved the ease of entering escape mode after asserting DTR. It was found that when the SPE was configured for low power mode the escape sequence would not be accepted until after the cell phone module was powered up. This introduced a variable delay that made entry of the escape sequence difficult. This version accepts the escape sequence being entered almost immediately after DTR is asserted.

1.00.11 - 5 January 2010

Fixed a bug with incorrect sign extension of bit 15 of pressure readings from the HTP sensor.

1.00.10 - 29 June 2009

The support for the Harvest Humidity-Temperature-Pressure sensor that was introduced in version 1.00.08 had a limitation that prevented it from correctly storing readings from a wired sensor number two (either numbered or un-numbered). This is corrected in this version.

1.00.09 - 26 June 2009

Changed XT2 oscillator mode from 2 to 1 to reduce power consumption.

In the TACC2 interrupt handler, separated the code that updates HC595Img into two steps because the compilier was generating incorrect code. The result was that the input 3&4 pullup was being left on.

Increased the size of the serial FIFOs from 32 bytes to 128 bytes each. When testing with H.24 samples it was found that two LCP packets were arriving from the H.24 quickly enough that the FIFO was overflowing and the second packet was getting lost. The greater RAM size on the 'F2618 allowed the problem to be solved by increasing the FIFO size.

When longer values of analog sampling interval were used, incorrect "ADC time overrun" debug messages were produced. This has been fixed.

1.00.08 - 26 February 2009

Changed the analog sampling to force a sample to be taken at power on.

Changed the writing of log records to wait for the completion of any analog conversion that might be in progress. This is how it used to work before the changes that were made with the introduction of the WIND option to the ^HASI command. The old code looked at whether the ADC was turned on, however, with the new sampling control code the ADC was being turned on after the sampling delay instead of before it. This new code now also looks at whether a sampling delay is in progress.

It was noticed that the presence of the RST option in the ^HLOP setting was not causing a log record to be written until on the minute following a reset. This was rectified by the addition of a call to the InstantTrigger function at startup.

The ^HTALK command was introduced to allow a server to redirect a client SPE to a second server.

Changed the default DAC setting to zero. During the installation of a software update the DAC is first set to the default setting before the configured setting is retrieved from the external flash memory. This caused serious problems for some sensors.

Fixed a problem with the units watchdog resetting occasionally. This was caused by a bug in the debug output code in which an interrupt flag was checked before entering a low power mode. There was a finite probability that the interrupt could occur after the flag was checked but before entering low power mode. After the last bit of a character was sent the interrupt was disabled from within the ISR. This could enable the low power mode to be entered after the interrupt had ben disabled. The interrupt is now disabled outside of the ISR. The modified debug output code is also less prone to produce corrupt characters.

Added support for the Harvest Humidity-Temperature-Pressure sensor. Humidity reported by this sensor is reported in a additional field of the log record, along with the pressure, distinct from the temperature readings. This means that only one such sensor can be attached to a system but all eight temperature positions in the log record can still be used for temperature.

The input filter time query command was only returning values for the first two inputs on an SPE-MIB. This was due to a conditional compliation error that has been corrected in this version.

1.00.07 - 11 September 2008

Made it possible to use up to eight wireless temperature sensors by:

  • Removing the assignment of error codes to temperature reading positions one and two when wired sensors are not connected.
  • Making the assignment of humidity readings to temperature reading positions five and six conditional on humidity sensors being detected.

Previously only four wireless sensors could be used.

1.00.06 - 6 August 2008

Changed the analog sampling so that the wind direction input (analog input 2) can be sampled independantly of the other analog inputs. This allows the analog inputs to be configured for sampling less often and with a sampling delay and still have the wind direction sampled every second. The sampling interval command, ^HASI, now takes a second optional parameter, WIND, that enables wind sampling every second regardless of the selected sampling interval.

The digital groups have been extened to now include the four radio temperature sensor digital inputs (13-16).

Fixed a bug with the ^HWHY command and announcement option returning incorrect causes.

1.00.05 - 15 May 2008

Modified bootloader to set DAC output to zero imediately after reset, before the RAM is initialized and the flash is checked. This limits the duration of the DAC power on glitch. It was discovered that at power up the DAC output went to full supply voltage until after it was configured. It wasn't possible to completely eliminate this problem but by changing the bootloader code it was possible to reduce the duration to less than a millisecond.

Reduced the cell phone power lockout time from 30 seconds down to 10 seconds. It had been set to 30 seconds to cope with some of the g18 engines that took an extended period without power before the reset circuit would operate correctly.

An interesting problem occurred with restarts after code downloads not working. This was found to be caused by the cellphone keeping the GPRS session alive despite the loss of DTR during the restart. This is a consequence of the change in the DTR behaviour setting (&D1) that was introduced with version 1.04.04. Following the restart the GPRS session was suspended so attempts to initiate a new session are rejected. A further twist is that because the session still exists the carrier detect is still active so the SPE keeps the cellphone on to allow pass through operation of circuit switched data. If the DTR timeout was set long enough then after five minutes the SPE would power cycle the phone and all would come right.

To address this problem the SPE now checks carrier detect at power on and terminates any suspended GPRS session. Also the connect timeout was reduced from five minutes to three minutes.

1.00.04 - 27 February 2008

Turned on watchdog. This had been disabled during debugging and got forgotten.

1.00.03 - 18 February 2008

Added initialization of the Basic Clock Module+ register BCSCTL3. This register wasn't present on earlier versions and includes a setting for the frequency range to the XT2 oscillator. Not setting this might cause operational problems for the XT2 oscillator since the default setting does not match the crystal frequency being used.

Added symbolic options to the ^HFES flash erase command. The symbolic options are ALL, CODE and LOGS. These erase all segments or those segments used for the downloaded code image or the logs respecively.

1.00.02 - 11 January 2008

Same as 1.00.01 but with the version number changed. This version was just for testing the code downloading.

1.00.01 - 11 January 2008

First working version for the MSP430F2618 microcontroller.