Software update to handle week rollover since 30-Jul-2017.
This is a small monitor for Trimble Thunderbolt. It is based on »TSIP2LCD TSIP GPS to HD44780 LCD decoder , from Matej Kogovsek. An ATmega8515 microprocessor and a standard two lines 16x2 LCD are used. Total cost should amount to less than 15,- Euro (abt. 20,- US$). Some soldering skills are required. I used a perfo board for my prototype. You will also need a programmer for ATmega microprocessors (maybe a good friend will help you if you do not own one).
The image below shows, what the display looks like in normal operation with my thunderbolt in good health.
1st line shows time of day, letter "S" indicating time zone in use (G-GPS,U-UTC,M-MEZ,S-MESZ) and count of received satellites or if
no satellites are received, date.
Note letter "S" indicating DST or Central-European-Summer-Time (MESZ-CEST) with Jp set.
2nd line cycles through various states indicating health of Tbold and alarms if there are any.
for the next image I disconnected the antenna. Note letter "U" since I also removed jumper Jp to switch to UTC. No satellites
are available, therefore we have same space to display date instead count of sats.
and reconnected antenna to show recover status
Could not be much simpler:
If you want so, you can make it even simpler by omitting the reset button (I did), J1 for in circuit serial programming ISP (I did not) and Jp (I did not) to enable time zone (MEZ-CET in the compiled version). UTC will be used with Jp removed (pin21 left open). Since pinout of backlight polarity is not standardized (pins 15/16) nor is the resistor to limit LED current, you are a bit on your own. I got my LCD from a Chinese dealer on Ebay
The following images give you an impression what the hardware looks like with LCD removed. Also Jp
(upper right corner of topview) has been removed.
Top view on the left, botton view on the right.
Software is written in C and can be compiled using WinAVR2010. Programming the device with avrdude is provided in the make file. You may need to adapt this to your programmer. I use the simple LPT - 4 resistor version, that is compatible with STK200. (google for "pony simple parallel programmer schematic")
This monitor provides information about Tbolts health. It does listen to Tbolt only.
It is assumed, that Tbolt has been set up properly with TboltMonitor and/or LadyHeather (LH).
Therefore no position or self survey data are shown. You should know where you are and
precision survey should have been completed ( see LH for this ). Also I could not see
any use for displaying DAC or Temperature data because you need them in a time scale. For this
LH, that can be run in parallel to tbolt2LCD by using an y-cable, is a powerful tool.
Super Packets 0x8f-ab and 0x8f-ac are used for decoding ( see description in Tbolt manual);
to obtain count of fixed satellites we also use packet 0x6d. This is output also from
Tbolt after powering up ( may be because set up so by TboltMonitor and/or LH).
This monitor may be compiled to two different versions:
1st version: by defining "#define TOW" in main.c Tbolts GPS Seconds of Week and Week Number are used for decoding time and date.
10bit week rollover since 30-Jul-2017 is handled crrectly (hopefully) in this version.
UTC offset from GPS time is included automatically and MEZ (CET) and ME(S)Z ( CEST/CEDT) are shown, when
connecting pin 21 (Port PC0) to ground via Jp instead of UTC when left open. DST is determined automatically
following European rules. Overseas people please help yourself (should not be too difficult) or comment out that code before
compiling. Alternate time zones eg. Pacific Time may easily be edited in instead of MEZ (CET).
2nd version: by commenting out "#define TOW" at compile time Tbolts time and date info from bytes 10 to 16
is used and you can set up Tbolt to use GPS or UTC time eg. with TboltMonitor or LH.
10bit week rollover since 30-Jul-2017 is handled crrectly (hopefully) in this version.
No further user interaction is required.
1st line of LCD displays: hh:mm:ssT Sats:# (T:time zone U/M/S)
if no sats received or packet 0x6d not active: hh:mm:ssTDDMonYY
2nd line of LCD cycles through various status messages:
>Decoding Status -- (only shown if bad) decoded to text
>Disciplining Mode -- decoded to text
>Disciplining Activity -- decoded to text
>Minor Alarms -- (only if occurs) decoded to text
>Critical Alarm -- (only if occurs) no cycling anymore, bitfield output hexadecimal only.
Since we are in trouble we may use other tools anyway.
>Receiver Mode is not shown. When properly set up for timing, it always states "OverDetermined"
Software can be »downloaded here to your target directory.
For program development I used »WinAVR2010. Start Programmers Notepad after download and open project tbolt2lcd.pnproj.As always : no commercial use allowed, all under GNU-Licence and on your own risk.
Mail to: goetz .at. g-romahn.de