-------- In message <CAHDZN8n=pKMnve=l-i539tiho214ev80oe0gd_exdhgmk+j...@mail.gmail.com> , Ruslan Nabioullin writes: >On Tue, Feb 6, 2018 at 2:37 PM, Poul-Henning Kamp <p...@phk.freebsd.dk> wrote:
>> If you look in http://phk.freebsd.dk/phkrel/NTPns.20080902.tgz >> you will find a file called dcf77_blame.c with my code, >How difficult would it be to complete these modules and integrate them >with the rest of NTP, as NTP decoder modules? So instead of an AM HF >receiver, the setup for these signals would be: Well, NTPns *is* a NTP server program, but a very special one. If you really want to receive VLF for NTP purposes, you should hook a 1M sample/sec ADC to your antenna and implement _all_ the demodulation in software. (The BeagleBoneBlack with its two PRU units would be close to a perfect platform for this) The more stable your sample frequency your ADC has, the easier the software will be to write. You can carrier-track DCF77, 162kHz France, MSF and Loran-C in one go, by simply averaging the raw antennasignal in a long enough circular buffer, then multiply by a suitable SIN/COS complex signal. For signals on kHz spacing (50, 162, 198 any other you care for) you can make a single one millisecond (ie: 1000 samples) circular buffer, and extract all the phases from that buffer, by multiplying by suitable SIN/COS and averaging the result to DC. For 77.5 kHz you will need a 2 millisecond buffer. If you want to recover the phase modulation on 162 kHz you can use the phase from the first buffer as your reference. (See: http://phk.freebsd.dk/loran-c/SW) If you want to recover the PRNG phase on DCF77 you will need to do the full early/prompt/late correlation, but that is also pretty cheap as you can pre-generate the sequence to compare with at compile time. Alternatively make a full-second buffer and average into that with polarity suitably swapped based on AM pulse width, and do the early/prompt/later about once a minute or so in high-level software. Loran-C is the same basic story, I did that on a 32bit ARM some years ago. (See: http://phk.freebsd.dk/AducLoran/) So much code to write and so little time... -- Poul-Henning Kamp | UNIX since Zilog Zeus 3.20 p...@freebsd.org | TCP/IP since RFC 956 FreeBSD committer | BSD since 4.3-tahoe Never attribute to malice what can adequately be explained by incompetence. _______________________________________________ time-nuts mailing list -- time-nuts@febo.com To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.