User Tools

Site Tools


doc:appunti:hardware:gps_logger_i_blue_747

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
doc:appunti:hardware:gps_logger_i_blue_747 [2019/10/10 22:45] – [Week Rollover Bug] niccolodoc:appunti:hardware:gps_logger_i_blue_747 [2019/10/10 22:47] – [Week Rollover Bug] niccolo
Line 67: Line 67:
 ===== Week Rollover Bug ===== ===== Week Rollover Bug =====
  
-It turned out that several GPS based on the MTK chipset are affected by a **Week Rollover Bug**. You discover that your device is affected by the bug because the GPX you save from it, will have a **timestamp badly in the past**.+It turned out that several GPS based on the MTK chipset are affected by a **Week Rollover Bug**. You discover that your device is affected by the bug because the GPX files you save from it, will have a **timestamp badly in the past**.
  
 Actually I have two i-Blue 747 GPS data loggers. The older one is a **Model ID 001B**, which has already manifested the problem: today is **2019-10-10**, but GPX points logged have a timestamp of **2000-02-24**. If you do the math, you can find that there is a **difference of exactly 1024 weeks**. This means that the device internally stores timestamps using a **week counter of only 10 bits**. So exactly 1024 weeks after its //EPOCH// (the begin of the time it can handle), the timestamps rolls-back of that amount of time. Actually I have two i-Blue 747 GPS data loggers. The older one is a **Model ID 001B**, which has already manifested the problem: today is **2019-10-10**, but GPX points logged have a timestamp of **2000-02-24**. If you do the math, you can find that there is a **difference of exactly 1024 weeks**. This means that the device internally stores timestamps using a **week counter of only 10 bits**. So exactly 1024 weeks after its //EPOCH// (the begin of the time it can handle), the timestamps rolls-back of that amount of time.
  
-The other logger of mine is a **Model ID 001D**, which instead is still recording corrected timestamps today. I suspect that the week counter is nevertheless 10 bits, and just the hard-coded EPOCH is more recent. So the bug is **just to come in the near future**. +The other logger of mine is a **Model ID 001D**, which instead is still recording correct timestamps today. I suspect that the week counter is nevertheless 10 bits, and just the hard-coded EPOCH is more recent. So the bug is **just to come in the near future**. 
-==== Credits ====+===== Credits =====
  
 I wish to thank all the people behind the **[[http://sourceforge.net/projects/bt747/|BT747 project]]**: everything I made is derived from their work. I wish to thank all the people behind the **[[http://sourceforge.net/projects/bt747/|BT747 project]]**: everything I made is derived from their work.
doc/appunti/hardware/gps_logger_i_blue_747.txt · Last modified: 2019/10/11 17:47 by niccolo