Protocol decoder:dcf77
Name | DCF77 time protocol |
---|---|
Description | European longwave time signal (77.5kHz carrier signal) |
Status | supported |
License | GPLv2+ |
Source code | decoders/dcf77 |
Input | logic |
Output | dcf77 |
Probes | DATA |
Optional probes | — |
Options | — |
The dcf77 protocol decoder supports the DCF77 european longwave time signal (77.5kHz carrier signal).
Hardware
DCF77 on the Pollin DCF1 module
The dcf77/pollin_dcf1_module directory in sigrok-dumps contains a set of example captures of a DCF77 signal. The hardware used for receiving the signal is a Pollin DCF1 module (3.3V supply). The Pollin order number for the module is 810 054.
The dumps were made January 9, 2012 in the evening/night. Only the dcf77_480s_pon_interrupted.sr dump was made January 10, 2012 in the evening.
The logic analyzer used was a Saleae Logic (at 1MHz).
Probe setup:
Probe | DCF1 module |
---|---|
1 (black) | PON |
2 (brown) | DATA |
Photos:
Protocol
Time code interpretation (taken from Wikipedia)
The time is represented in binary-coded decimal (BCD). It represents civil time, including summer time adjustments. The time transmitted is the time of the following minute; e.g. during December 31 23:59, the transmitted time encodes January 1 00:00.
Bit | Weight | Meaning | Bit | Weight | Meaning | Bit | Weight | Meaning | |||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
PM | AM | PM | AM | PM | AM | ||||||||
:00 | 1 | M | Start of minute. Always 0. | :20 | S | Start of encoded time. Always 1. | :40 | 10 | Day of month (continued) | ||||
:01 | 1 | Civil warning bits, provided by the Bundesamt für Bevölkerungsschutz und Katastrophenwarnung (Federal Office of Civil protection and Disaster Relief). Also contains weather broadcasts. |
:21 | 1 | Minutes 00–59 |
:41 | 20 | ||||||
:02 | 1 | :22 | 2 | :42 | 1 | Day of week Monday=1, Sunday=7 | |||||||
:03 | 1 | :23 | 4 | :43 | 2 | ||||||||
:04 | 1 | :24 | 8 | :44 | 4 | ||||||||
:05 | 1 | :25 | 10 | :45 | 1 | Month number 01–12 | |||||||
:06 | 1 | :26 | 20 | :46 | 2 | ||||||||
:07 | 1 | :27 | 40 | :47 | 4 | ||||||||
:08 | 1 | :28 | P1 | Even parity over minute bits 21–28. | :48 | 8 | |||||||
:09 | 1 | :29 | 1 | Hours 0–23 |
:49 | 10 | |||||||
:10 | 0 | :30 | 2 | :50 | 1 | Year within century 00–99 | |||||||
:11 | 0 | :31 | 4 | :51 | 2 | ||||||||
:12 | 0 | :32 | 8 | :52 | 4 | ||||||||
:13 | 0 | :33 | 10 | :53 | 8 | ||||||||
:14 | 0 | :34 | 20 | :54 | 10 | ||||||||
:15 | R | Call bit: abnormal transmitter operation. Previously: backup antenna in use. |
:35 | P2 | Even parity over hour bits 29–35. | :55 | 20 | ||||||
:16 | A1 | Summer time announcement. Set during hour before change. |
:36 | 1 | Day of month. 01–31 |
:56 | 40 | ||||||
:17 | Z1 | Set to 1 when CEST is in effect. | :37 | 2 | :57 | 80 | |||||||
:18 | Z2 | Set to 1 when CET is in effect. | :38 | 4 | :58 | P3 | Even parity over date bits 36–58. | ||||||
:19 | A2 | Leap second announcement. Set during hour before leap second. |
:39 | 8 | :59 | 0 | Minute mark: no amplitude modulation. |
Resources
- Wikipedia: DCF77
- PTB: DCF77 (German)