12-02-2019, 03:16 PM
My Pi-based WSPR beacon has been off-air the last few weeks due to a mishap with the heatsink over the ARM chip shorting a couple of components out. A new Pi-zero-W board has finally been installed, re-programmed, yes - heatsinked again but with precautions, and is now back on-air on the 6, 30, 20, 17 and 15 metre WSPR segments as of about 0400UT today. The precautions took the form of placing tape over the exposed components before adding some silicon grease compound, fitting the heatsink and holding it in the final position with a couple of blobs from a hot glue gun !
It is amazing how much of a spread there is between the clock frequencies of the SMD-style clock oscillators. The old PCB was adjusted to the correct frequency on 50.293 within about 3 Hz but the replacement board ended up about 400Hz high using the same frequency setting values. (Re-trimmed to under 20Hz now.)
I have been slowly trimming the operating frequencies on the 5 bands over the last 2 days back to within about 20Hz of ideal (/ centre) but the downward drift with temperature was really obvious today - the shack temperature was about 37/38 degrees Celsius when I finished working in there this afternoon. I will keep a check on the frequencies over the next week or so, trim only if really necessary, and then I should be able to let it run 24/7 without supervision again.
The RF output power is 5 watts on all bands except for 18MHz, which is 2 watts.
An hour after reconnecting to the antennas, there are reports already for 10 and 14 MHz from all over VK, ZL, KH6, OE9, IS8... A VK3 report for 18MHz but nothing reported for 21 and 50 MHz as yet.
P.S. I am thinking about adding a 90 second hardware watchdog timer to reset the Zero board if it 'freezes' - and having read about issues with the internal watchdog option.
Has anyone else needed to do the hardware approach on a Pi Zero or Zero W running WSPR ??
PPS I have utilised a spare output (pin C.2) on my 20X2 Picaxe band switch detection driver board to couple to the reset pin on the Zero board to achieve the 'hardware' watchdog function.
The Picaxe code has been altered to enable the timer3 support and when the 3 x 4017 frequency counters (driven by GPIO CLK0 / pin 4 with WSPR RF) produce a non-zero value then the timer3 count is reset (ie operating normally & generating WSPR RF) but if there is no RF then the timer3 counts towards or beyond a preset count. If it exceeds the count then it fires the output pin C.2 low and resets the Pi Zero board. If RF starts before that point then it resets the timer3 value back to zero. The preset count value is the equivalent of about 400 seconds so that it has plenty of time for the Zero to boot the Raspbian OS software, start the WSPR daemon and then wait up to two minutes for the start of a WSPR transmit period.
So far the watchdog has only done a reset once and that was when I commanded off the WSPR daemon during testing...
It is amazing how much of a spread there is between the clock frequencies of the SMD-style clock oscillators. The old PCB was adjusted to the correct frequency on 50.293 within about 3 Hz but the replacement board ended up about 400Hz high using the same frequency setting values. (Re-trimmed to under 20Hz now.)
I have been slowly trimming the operating frequencies on the 5 bands over the last 2 days back to within about 20Hz of ideal (/ centre) but the downward drift with temperature was really obvious today - the shack temperature was about 37/38 degrees Celsius when I finished working in there this afternoon. I will keep a check on the frequencies over the next week or so, trim only if really necessary, and then I should be able to let it run 24/7 without supervision again.
The RF output power is 5 watts on all bands except for 18MHz, which is 2 watts.
An hour after reconnecting to the antennas, there are reports already for 10 and 14 MHz from all over VK, ZL, KH6, OE9, IS8... A VK3 report for 18MHz but nothing reported for 21 and 50 MHz as yet.
P.S. I am thinking about adding a 90 second hardware watchdog timer to reset the Zero board if it 'freezes' - and having read about issues with the internal watchdog option.
Has anyone else needed to do the hardware approach on a Pi Zero or Zero W running WSPR ??
PPS I have utilised a spare output (pin C.2) on my 20X2 Picaxe band switch detection driver board to couple to the reset pin on the Zero board to achieve the 'hardware' watchdog function.
The Picaxe code has been altered to enable the timer3 support and when the 3 x 4017 frequency counters (driven by GPIO CLK0 / pin 4 with WSPR RF) produce a non-zero value then the timer3 count is reset (ie operating normally & generating WSPR RF) but if there is no RF then the timer3 counts towards or beyond a preset count. If it exceeds the count then it fires the output pin C.2 low and resets the Pi Zero board. If RF starts before that point then it resets the timer3 value back to zero. The preset count value is the equivalent of about 400 seconds so that it has plenty of time for the Zero to boot the Raspbian OS software, start the WSPR daemon and then wait up to two minutes for the start of a WSPR transmit period.
So far the watchdog has only done a reset once and that was when I commanded off the WSPR daemon during testing...
Doug VK4ADC @ QG62LG51
http://www.vk4adc.com
This Forum is only going to be as interesting as the posts it contains.
If you have a comment or question, post it as it may trigger or answer the query in someone else's mind.
http://www.vk4adc.com
This Forum is only going to be as interesting as the posts it contains.
If you have a comment or question, post it as it may trigger or answer the query in someone else's mind.