As you may already know, there is a number leap run in GPS History decoder of the AVL firmware.
The cause of this issue is that the date/time is represented as the number of seconds elapsed since the midnight of 1980-01-06 and the field used to stored this value is 30-bit long. This means that this field reached its maximum capacity on 2014-01-14 13:47 UTC and started from zero again.
This affects the users that read the history data with usr, rmc or txt modes. If you read the history in binary format, you need to add the correct offset to the decoder in your server. Please, have in mind that the data saved to Flash storage is not wrong – only the readout of the txt decoder has a wrong offset.
Also, if you rely on TCP.SENDMODE=2, this issue does not affect you.
Falcom has made available following firmware versions in order to address this issue:
– we recommend to make a History Backup before update FW with “GPS.History.SetRead,all;GPS.History.Push,TCP,fmt=bin”
– use “steppIII_2.5.12_rc10_20140115122131.frp” for all older Devices (Flash 2MB only)
– use “avl_2.11.0_rc8_20140115110804.frp” for all newer devices (8MB Flash size)
– use “avl_2.9.0_rc12_20140115133315.frp” for all 2.9.x FW devices as this update will not erase the History on update – a later update (after read the history) to avl_2.11.0_rc8_20140115110804.frp” is recommended
– use “avl_2.10.0_rc10_20140115143103.frp” for all 2.10.x FW devices as this update will not erase the History on update – a later update (after read the history) to avl_2.11.0_rc8_20140115110804.frp” is recommended
An updated version of the AppNote for History decoding and a new Java code snippet is also available.
All the updated documents are available under this link.
Please, remember that for devices running on firmware version 2.10.x (and newer) you can initiate the WebUpdate procedure via TCP, UDP or SMS. For that purpose, you can use following commands:
We know a firmware update is not an easy task for large fleets with thousands of devices installed in the field. In those cases, it is probably an easier solution to address this issue from the server side:
– as mentioned above, if you use “GPS.History.SetRead,all;GPS.History.Read,fmt=bin” you need to add the correct offset to the date/time value.
– if you read data from history between two timestamps, you many need to make a full backup of the history, clear the history records and start saving data with a fresh history. In this case, you would be able to retrieve data between two timestamps referring to it as 06.01.1980.
We apologize for all the inconvenience caused by this issue.
For any further request related to this topic, please contact us at firstname.lastname@example.org.