Pages: [1]   Go Down

Author Topic: Linux Program to Decode Time Signals WWVB etc  (Read 371 times)

KN6LMJ

  • Posts: 9
    • HomeURL
Linux Program to Decode Time Signals WWVB etc
« on: May 31, 2022, 06:33:43 PM »

I'm brand new to learning about time signals sent from various government labs and NIST.
I've been searching the web for information on how to decode these signals using my HF rig and digital mode
connections I already use for JS8, FT8 etc.
 
Most of what I've found is about how to use an AT uC to decode in hardware with an external antenna.
I figured there'd be already be some program or mode of FLdigi or something, to decode various time signals on the HF bands.

Can someone please point me in the right direction or suggest a tool they like. I'm running Ubuntu 20.04  on my machines. TIA.
Logged

WW5F

  • Posts: 451
    • HomeURL
Re: Linux Program to Decode Time Signals WWVB etc
« Reply #1 on: June 01, 2022, 04:05:42 AM »

I spent some time a few years ago trying to figure this out myself.  Best way I found to do it is with something like this:

https://www.sparkfun.com/products/retired/10060

And feeding its output (through a MAX232 chip -- https://www.ti.com/product/MAX232 ) into an RS232 port of a Linux time server using NTP.  (finding the right version of NTP was tricky because people just don't use WWV/B any more....)

But when WWVB "Upgraded" their antennas last year, I lost the WWVB signal down here in my neck of the woods in Texas.  So my only good source of time now is GPS with PPS feeding an NTP time server.

Spend some time here:

https://www.nist.gov/pml/time-and-frequency-division/time-distribution/radio-station-wwvb

and especially some time here:

https://www.nist.gov/pml/time-and-frequency-division/radio-stations/wwvb/wwvb-time-code-format

And keep in mind the WWVB time signal is "in between" the tones you hear on 60 Khz.

Two 800 millisecond "gaps" side by side is the TOP of the minute.  One 800 millisecond "gap" is every 10 seconds.  In between is Binary Coded Decimal.  A 500 millisecond "gap" is a binary "1".  A 200 millisecond "gap" is a binary "0".

Searching extensively (looking further down the pages on some search engines) you'll find some programs that'll decode it and print time on the screen.  There are several folks who've figured out how to display time using one of those little raspberry PI computers.  And some folks have figured out how to build low output transmitters on 60 Khz for their house to send a time signal to their WWVB wrist watches.

Good luck.

Logged

KN6LMJ

  • Posts: 9
    • HomeURL
Re: Linux Program to Decode Time Signals WWVB etc
« Reply #2 on: June 01, 2022, 08:30:28 AM »

Thanks WW5F, I guess home brew it will be.

If I recall correctly, one of those beacons is Morse encoded.  I've read that decoding computer generated Morse is not too hard compared to human.

I'll read the links after work. Thanks for your help !
« Last Edit: June 01, 2022, 08:53:11 AM by KN6LMJ »
Logged

KD2BD

  • Member
  • Posts: 27
    • KD2BD Website
Re: Linux Program to Decode Time Signals WWVB etc
« Reply #3 on: June 01, 2022, 10:19:46 AM »

Can someone please point me in the right direction or suggest a tool they like. I'm running Ubuntu 20.04  on my machines. TIA.

I've done a lot of work with WWVB over the past 19 years.  I designed a receiver that decodes the legacy time code and also serves as a 10 MHz frequency standard.

My receiver uses a PIC16F88 Microcontroller to decode and display the UTC date and time.  It also produces an RS-232 output that can set my Slackware Linux workstation to within 1 millisecond of NTP:



An article describing my receiver appeared in the November/December 2015 issue of QEX magazine:

http://www.arrl.org/files/file/QEX_Next_Issue/2015/Nov-Dec_2015/Magliacane.pdf

WWVB transmits its time code at a rate of 1 bit per second, and it takes one minute to receive an entire frame of data.  As such, even a PIC running at 4 MHz is overkill for this sort of thing.  Imagine a multi-core 3 GHz Linux box...

So, my approach was to handle the RF processing, filtering, and synchronous demodulation in hardware.  Then have the PIC decode the time, run a clock/calendar in its firmware, and use an RS-232 connection between the PIC and the PC to set my PC's clock.

Otherwise, the receiver has its own LCD display to show the current date, time, and UT1 offset as well.  No external computer is needed.

Food for thought...  I know that's not the approach you were interested in, but I am not aware of any "purely software" approaches to WWVB reception.  I remember hearing about one for DCF77 on 77.5 kHz in Germany, but I believe it is a Windoze program.

73 de John, KD2BD
Logged

K7TMG

  • Member
  • Posts: 4
Re: Linux Program to Decode Time Signals WWVB etc
« Reply #4 on: July 26, 2022, 12:33:06 PM »

It's not a native linux application but F6CTE's Clock program will decode various time signals. It might work with wine.

From https://multipsk.fr/index_anglais.html
"The radio driven digital clock', bundled with MultiPSK, provides date and time from FRANCE-INTER, DCF 77, HBG, MSF, BBC, WWVB, WWV, WWVH, CHU, RAI, JJY, a GPS or Internet.'
Logged

WA8NVW

  • Member
  • Posts: 367
Re: Linux Program to Decode Time Signals WWVB etc
« Reply #5 on: July 29, 2022, 07:19:40 AM »

It's possible that I have completely overlookeded something significant, but I don't see where APRS (the topic of this sub-forum) has any part to play in the discussions here.  APRS uses a variable latency packet-based protocol not envisioned or capable of the transport and delivery of high-accuracy timing signals.   It does work well for non-precise position data in three dimensions, time being the fourth.
That said, I don't see any forums more appropriate for discussing aspects of GPS references or precise time/frequency standards and signals. 
Moderators, should another forum topic be added to address this interest?
Logged
Pages: [1]   Go Up