19c2daa00SOllivier Robert<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 29c2daa00SOllivier Robert 39c2daa00SOllivier Robert<html> 49c2daa00SOllivier Robert 59c2daa00SOllivier Robert <head> 6ea906c41SOllivier Robert <meta http-equiv="content-type" content="text/html;charset=iso-8859-1"> 79c2daa00SOllivier Robert <meta name="generator" content="HTML Tidy, see www.w3.org"> 89c2daa00SOllivier Robert <title>NTP PARSE clock data formats</title> 99c2daa00SOllivier Robert <link href="scripts/style.css" type="text/css" rel="stylesheet"> 109c2daa00SOllivier Robert </head> 119c2daa00SOllivier Robert 129c2daa00SOllivier Robert <body> 139c2daa00SOllivier Robert <h3>NTP PARSE clock data formats</h3> 14ea906c41SOllivier Robert <p>The parse driver currently supports several clocks with different query mechanisms. In order for you to find a sample that might be similar to a clock you might want to integrate into parse I'll sum up the major features of the clocks (this information is distributed in the parse/clk_*.c and ntpd/refclock_parse.c files).</p> 15*2b15cb3dSCy Schubert<p>Last update: 16*2b15cb3dSCy Schubert <!-- #BeginDate format:En2m -->21-Oct-2010 23:44<!-- #EndDate --> 17*2b15cb3dSCy Schubert UTC</p> 189c2daa00SOllivier Robert <hr> 199c2daa00SOllivier Robert <h4>Meinberg clocks</h4> 209c2daa00SOllivier Robert <pre> 219c2daa00SOllivier RobertMeinberg: start=<STX>, end=<ETX>, sync on start 229c2daa00SOllivier Robert pattern="\2D: . . ;T: ;U: . . ; \3" 239c2daa00SOllivier Robert pattern="\2 . . ; ; : : ; \3" 249c2daa00SOllivier Robert pattern="\2 . . ; ; : : ; : ; ; . . " 259c2daa00SOllivier Robert</pre> 269c2daa00SOllivier Robert <p>Meinberg is a German manufacturer of time code receivers. Those clocks have a pretty common output format in the stock version. In order to support NTP Meinberg was so kind to produce some special versions of the firmware for the use with NTP. So, if you are going to use a Meinberg clock please ask whether there is a special Uni Erlangen version. You can reach <a href="http://www.meinberg.de/">Meinberg</a> via the Web. Information can also be ordered via eMail from <a href="mailto:%20info@meinberg.de">info@meinberg.de</a></p> 279c2daa00SOllivier Robert <p>General characteristics:<br> 28ea906c41SOllivier Robert Meinberg clocks primarily output pulse per second and a describing ASCII string. This string can be produced in two modes: either upon the reception of a question mark or every second. NTP uses the latter mechanism. DCF77 AM clocks have a limited accuracy of a few milliseconds. The DCF77 PZF5xx variants provide higher accuracy and have a pretty good relationship between RS232 time code and the PPS signal. Except for early versions of the old GPS166 receiver type, Meinberg GPS receivers have a very good timing relationship between the datagram and the pulse. The beginning of the start bit of the first character has basically the same accuracy as the PPS signal, plus a jitter of up to 1 bit time depending on the selected baud rate, i.e. 52 μs @ 19200. PPS support should always be used, if possible, in order to yield the highest possible accuracy.</p> 29ea906c41SOllivier Robert <p>The preferred tty setting for Meinberg DCF77 receivers is 9600/7E2:</p> 309c2daa00SOllivier Robert <pre> 319c2daa00SOllivier Robert CFLAG (B9600|CS7|PARENB|CREAD|HUPCL) 329c2daa00SOllivier Robert IFLAG (IGNBRK|IGNPAR|ISTRIP) 339c2daa00SOllivier Robert OFLAG 0 349c2daa00SOllivier Robert LFLAG 0 359c2daa00SOllivier Robert </pre> 36ea906c41SOllivier Robert <p>The tty setting for Meinberg GPS16x/17x receivers is 19200/8N1:</p> 379c2daa00SOllivier Robert <pre> 389c2daa00SOllivier Robert CFLAG (B19200|CS8|PARENB|CREAD|HUPCL) 399c2daa00SOllivier Robert IFLAG (IGNBRK|IGNPAR|ISTRIP) 409c2daa00SOllivier Robert OFLAG 0 419c2daa00SOllivier Robert LFLAG 0 429c2daa00SOllivier Robert </pre> 43ea906c41SOllivier Robert <p>All clocks should be run at datagram once per second.<br><br></p> 44ea906c41SOllivier Robert <p>Format of the Meinberg standard time string:</p> 459c2daa00SOllivier Robert<pre> 46ea906c41SOllivier Robert <b><i><STX></i>D:<i>dd.mm.yy</i>;T:<i>w</i>;U:<i>hh.mm.ss</i>;<i>uvxy</i><i><ETX></i></b> 479c2daa00SOllivier Robert pos: 0 000000001111111111222222222233 3 489c2daa00SOllivier Robert 1 234567890123456789012345678901 2 499c2daa00SOllivier Robert 50ea906c41SOllivier Robert <i><STX></i> = start-of-text, ASCII code 0x02 51ea906c41SOllivier Robert <i>dd.mm.yy</i> = day of month, month, year of the century, separated by dots 52ea906c41SOllivier Robert <i>w</i> = day of week (1..7, Monday = 1) 53ea906c41SOllivier Robert <i>hh:mm:ss</i> = hour, minute, second, separated by dots 54ea906c41SOllivier Robert <i>u</i> = '#' for GPS receivers: time is <b>not</b> synchronized 55ea906c41SOllivier Robert '#' for older PZF5xx receivers: no correlation, not synchronized 56ea906c41SOllivier Robert '#' for other devices: never sync'ed since powerup 57ea906c41SOllivier Robert ' ' if nothing of the above applies 58ea906c41SOllivier Robert <i>v</i> = '*' for GPS receivers: position has <b>not</b> been verified 59ea906c41SOllivier Robert '*' for other devices: freewheeling based on internal quartz 60ea906c41SOllivier Robert ' ' if nothing of the above applies 61ea906c41SOllivier Robert <i>x</i> = 'U' if UTC time is transmitted 62ea906c41SOllivier Robert 'S' if daylight saving time is active 63ea906c41SOllivier Robert ' ' if nothing of the above applies 64ea906c41SOllivier Robert <i>y</i> = '!' during the hour preceding start or end of daylight saving time 65ea906c41SOllivier Robert 'A' during the hour preceding a leap second 66ea906c41SOllivier Robert ' ' if nothing of the above applies 67ea906c41SOllivier Robert <i><ETX></i> = end-of-text, ASCII code 0x03 689c2daa00SOllivier Robert</pre> 69ea906c41SOllivier Robert <p>Format of the Uni Erlangen time string for PZF5xx receivers:</p> 709c2daa00SOllivier Robert<pre> 71ea906c41SOllivier Robert <b><i><STX></i><i>dd.mm.yy</i>; <i>w</i>; <i>hh:mm:ss</i>; <i>tuvxyza</i><i><ETX></i></b> 729c2daa00SOllivier Robert pos: 0 000000001111111111222222222233 3 739c2daa00SOllivier Robert 1 234567890123456789012345678901 2 74ea906c41SOllivier Robert 75ea906c41SOllivier Robert <i><STX></i> = start-of-text, ASCII code 0x02 76ea906c41SOllivier Robert <i>dd.mm.yy</i> = day of month, month, year of the century, separated by dots 77ea906c41SOllivier Robert <i>w</i> = day of week (1..7, Monday = 1) 78ea906c41SOllivier Robert <i>hh:mm:ss</i> = hour, minute, second, separated by colons 79ea906c41SOllivier Robert 80ea906c41SOllivier Robert <i>t</i> = 'U' if UTC time is transmitted, else ' ' 81ea906c41SOllivier Robert <i>u</i> = '#' for older PZF5xx receivers: no correlation, not synchronized 82ea906c41SOllivier Robert '#' for PZF511 and newer: never sync'ed since powerup 83ea906c41SOllivier Robert ' ' if nothing of the above applies 84ea906c41SOllivier Robert <i>v</i> = '*' if freewheeling based on internal quartz, else ' ' 85ea906c41SOllivier Robert <i>x</i> = 'S' if daylight saving time is active, else ' ' 86ea906c41SOllivier Robert <i>y</i> = '!' during the hour preceding start or end of daylight saving time, else ' ' 87ea906c41SOllivier Robert <i>z</i> = 'A' during the hour preceding a leap second, else ' ' 88ea906c41SOllivier Robert <i>a</i> = 'R' alternate antenna (reminiscent of PZF5xx), usually ' ' for GPS receivers 89ea906c41SOllivier Robert <i><ETX></i> = end-of-text, ASCII code 0x03 909c2daa00SOllivier Robert</pre> 91ea906c41SOllivier Robert <p>Format of the Uni Erlangen time string for GPS16x/GPS17x receivers:</p> 929c2daa00SOllivier Robert<pre> 93ea906c41SOllivier Robert <b><i><STX></i><i>dd.mm.yy</i>; <i>w</i>; <i>hh:mm:ss</i>; <i>+uu:uu</i>; <i>uvxyzab</i>; <i>ll.lllln</i> <i>lll.lllle</i> <i>hhhh</i>m<i><ETX></i></b> 94ea906c41SOllivier Robert pos: 0 0000000011111111112222222222333333333344444444445555555555666666 6 959c2daa00SOllivier Robert 1 2345678901234567890123456789012345678901234567890123456789012345 6 969c2daa00SOllivier Robert 97ea906c41SOllivier Robert <i><STX></i> = start-of-text, ASCII code 0x02 98ea906c41SOllivier Robert <i>dd.mm.yy</i> = day of month, month, year of the century, separated by dots 99ea906c41SOllivier Robert <i>w</i> = day of week (1..7, Monday = 1) 100ea906c41SOllivier Robert <i>hh:mm:ss</i> = hour, minute, second, separated by colons 101ea906c41SOllivier Robert <i>+uu:uu</i> = offset to UTC in hours and minutes, preceded by + or - 102ea906c41SOllivier Robert <i>u</i> = '#' if time is <b>not</b> synchronized, else ' ' 103ea906c41SOllivier Robert <i>v</i> = '*' if position has <b>not</b> been verified, else ' ' 104ea906c41SOllivier Robert <i>x</i> = 'S' if daylight saving time is active, else ' ' 105ea906c41SOllivier Robert <i>y</i> = '!' during the hour preceding start or end of daylight saving time, else ' ' 106ea906c41SOllivier Robert <i>z</i> = 'A' during the hour preceding a leap second, else ' ' 107ea906c41SOllivier Robert <i>a</i> = 'R' alternate antenna (reminiscent of PZF5xx), usually ' ' for GPS receivers 108ea906c41SOllivier Robert <i>b</i> = 'L' during a leap second, i.e. if the seconds field is 60, else ' ' 109ea906c41SOllivier Robert <i>ll.lllln</i> = position latitude in degrees, 'n' can actually be 'N' or 'S', i.e. North or South 110ea906c41SOllivier Robert <i>lll.lllle</i> = position longitude in degrees, 'e' can actually be 'E' or 'W', i.e. East or West 111ea906c41SOllivier Robert <i>hhhh</i> = position altitude in meters, always followed by 'm' 112ea906c41SOllivier Robert <i><ETX></i> = end-of-text, ASCII code 0x03 1139c2daa00SOllivier Robert</pre> 114ea906c41SOllivier Robert <p>Examples for Uni Erlangen strings from GPS receivers:</p> 115ea906c41SOllivier Robert<pre> 116ea906c41SOllivier Robert \x02 09.07.93; 5; 08:48:26; +00:00; ; 49.5736N 11.0280E 373m \x03 117ea906c41SOllivier Robert \x02 08.11.06; 3; 14:39:39; +00:00; ; 51.9828N 9.2258E 176m \x03 118ea906c41SOllivier Robert</pre> 119ea906c41SOllivier Robert <p>The Uni Erlangen formats should be used preferably. Newer Meinberg GPS receivers can be configured to transmit that format, for older devices there may be a special firmware version available.</p> 120ea906c41SOllivier Robert <p>For the Meinberg parse look into clk_meinberg.c<br><br></p> 121ea906c41SOllivier Robert <hr> 1229c2daa00SOllivier Robert <h4>Raw DCF77 Data via serial line</h4> 1239c2daa00SOllivier Robert <p>RAWDCF: end=TIMEOUT>1.5s, sync each char (any char),generate psuedo time codes, fixed format</p> 1249c2daa00SOllivier Robert <p>direct DCF77 code input</p> 1259c2daa00SOllivier Robert <p>In Europe it is relatively easy/cheap the receive the german time code transmitter DCF77. The simplest version to process its signal is to feed the 100/200ms pulse of the demodulated AM signal via a level converter to an RS232 port at 50Baud. parse/clk_rawdcf.c holds all necessary decoding logic for the time code which is transmitted each minute for one minute. A bit of the time code is sent once a second.</p> 1269c2daa00SOllivier Robert <pre> 1279c2daa00SOllivier Robert The preferred tty setting is: 1289c2daa00SOllivier Robert CFLAG (B50|CS8|CREAD|CLOCAL) 1299c2daa00SOllivier Robert IFLAG 0 1309c2daa00SOllivier Robert OFLAG 0 1319c2daa00SOllivier Robert LFLAG 0 1329c2daa00SOllivier Robert</pre> 1339c2daa00SOllivier Robert <h4>DCF77 raw time code</h4> 134ea906c41SOllivier Robert <p>From "Zur Zeit", Physikalisch-Technische Bundesanstalt (PTB), Braunschweig und Berlin, März 1989<br> 1359c2daa00SOllivier Robert </p> 1369c2daa00SOllivier Robert <p>Timecode transmission:</p> 1379c2daa00SOllivier Robert <pre> 1389c2daa00SOllivier Robert AM: 1399c2daa00SOllivier Robert 1409c2daa00SOllivier Robert time marks are send every second except for the second before the 1419c2daa00SOllivier Robert next minute mark 1429c2daa00SOllivier Robert time marks consist of a reduction of transmitter power to 25% 1439c2daa00SOllivier Robert of the nominal level 1449c2daa00SOllivier Robert the falling edge is the time indication (on time) 1459c2daa00SOllivier Robert time marks of a 100ms duration constitute a logical 0 1469c2daa00SOllivier Robert time marks of a 200ms duration constitute a logical 1 1479c2daa00SOllivier Robert</pre> 1489c2daa00SOllivier Robert <p>see the spec. (basically a (non-)inverted psuedo random phase shift) encoding:</p> 1499c2daa00SOllivier Robert <pre> 1509c2daa00SOllivier Robert FM: 1519c2daa00SOllivier Robert 1529c2daa00SOllivier Robert Second Contents 1539c2daa00SOllivier Robert 0 - 10 AM: free, FM: 0 1549c2daa00SOllivier Robert 11 - 14 free 1559c2daa00SOllivier Robert 15 R - alternate antenna 1569c2daa00SOllivier Robert 16 A1 - expect zone change (1 hour before) 1579c2daa00SOllivier Robert 17 - 18 Z1,Z2 - time zone 1589c2daa00SOllivier Robert 0 0 illegal 1599c2daa00SOllivier Robert 0 1 MEZ (MET) 1609c2daa00SOllivier Robert 1 0 MESZ (MED, MET DST) 1619c2daa00SOllivier Robert 1 1 illegal 1629c2daa00SOllivier Robert 19 A2 - expect leap insertion/deletion (1 hour before) 1639c2daa00SOllivier Robert 20 S - start of time code (1) 1649c2daa00SOllivier Robert 21 - 24 M1 - BCD (lsb first) Minutes 1659c2daa00SOllivier Robert 25 - 27 M10 - BCD (lsb first) 10 Minutes 1669c2daa00SOllivier Robert 28 P1 - Minute Parity (even) 1679c2daa00SOllivier Robert 29 - 32 H1 - BCD (lsb first) Hours 1689c2daa00SOllivier Robert 33 - 34 H10 - BCD (lsb first) 10 Hours 1699c2daa00SOllivier Robert 35 P2 - Hour Parity (even) 1709c2daa00SOllivier Robert 36 - 39 D1 - BCD (lsb first) Days 1719c2daa00SOllivier Robert 40 - 41 D10 - BCD (lsb first) 10 Days 1729c2daa00SOllivier Robert 42 - 44 DW - BCD (lsb first) day of week (1: Monday -> 7: Sunday) 173ea906c41SOllivier Robert 45 - 49 MO1 - BCD (lsb first) Month 174ea906c41SOllivier Robert 50 MO10 - 10 Months 1759c2daa00SOllivier Robert 51 - 53 Y1 - BCD (lsb first) Years 1769c2daa00SOllivier Robert 54 - 57 Y10 - BCD (lsb first) 10 Years 1779c2daa00SOllivier Robert 58 P3 - Date Parity (even) 1789c2daa00SOllivier Robert 59 - usually missing (minute indication), except for leap insertion 1799c2daa00SOllivier Robert</pre> 1809c2daa00SOllivier Robert <hr> 1819c2daa00SOllivier Robert <h4>Schmid clock</h4> 1829c2daa00SOllivier Robert <p>Schmid clock: needs poll, binary input, end='\xFC', sync start</p> 1839c2daa00SOllivier Robert <p>The Schmid clock is a DCF77 receiver that sends a binary time code at the reception of a flag byte. The contents if the flag byte determined the time code format. The binary time code is delimited by the byte 0xFC.</p> 1849c2daa00SOllivier Robert <pre> 1859c2daa00SOllivier Robert TTY setup is: 1869c2daa00SOllivier Robert CFLAG (B1200|CS8|CREAD|CLOCAL) 1879c2daa00SOllivier Robert IFLAG 0 1889c2daa00SOllivier Robert OFLAG 0 1899c2daa00SOllivier Robert LFLAG 0 1909c2daa00SOllivier Robert 1919c2daa00SOllivier Robert</pre> 1929c2daa00SOllivier Robert <p>The command to Schmid's DCF77 clock is a single byte; each bit allows the user to select some part of the time string, as follows (the output for the lsb is sent first).</p> 1939c2daa00SOllivier Robert <pre> 1949c2daa00SOllivier Robert Bit 0: time in MEZ, 4 bytes *binary, not BCD*; hh.mm.ss.tenths 1959c2daa00SOllivier Robert Bit 1: date 3 bytes *binary, not BCD: dd.mm.yy 1969c2daa00SOllivier Robert Bit 2: week day, 1 byte (unused here) 1979c2daa00SOllivier Robert Bit 3: time zone, 1 byte, 0=MET, 1=MEST. (unused here) 1989c2daa00SOllivier Robert Bit 4: clock status, 1 byte, 0=time invalid, 1999c2daa00SOllivier Robert 1=time from crystal backup, 2009c2daa00SOllivier Robert 3=time from DCF77 2019c2daa00SOllivier Robert Bit 5: transmitter status, 1 byte, 2029c2daa00SOllivier Robert bit 0: backup antenna 2039c2daa00SOllivier Robert bit 1: time zone change within 1h 2049c2daa00SOllivier Robert bit 3,2: TZ 01=MEST, 10=MET 2059c2daa00SOllivier Robert bit 4: leap second will be 2069c2daa00SOllivier Robert added within one hour 2079c2daa00SOllivier Robert bits 5-7: Zero 2089c2daa00SOllivier Robert Bit 6: time in backup mode, units of 5 minutes (unused here) 2099c2daa00SOllivier Robert</pre> 2109c2daa00SOllivier Robert <hr> 2119c2daa00SOllivier Robert <h4>Trimble SV6 ASCII time code (TAIP)</h4> 2129c2daa00SOllivier Robert <p>Trimble SV6: needs poll, ascii timecode, start='>', end='<', query='>QTM<', eol='<'</p> 2139c2daa00SOllivier Robert <p>Trimble SV6 is a GPS receiver with PPS output. It needs to be polled. It also need a special tty mode setup (EOL='<').</p> 2149c2daa00SOllivier Robert <pre> 2159c2daa00SOllivier Robert TTY setup is: 2169c2daa00SOllivier Robert CFLAG (B4800|CS8|CREAD) 2179c2daa00SOllivier Robert IFLAG (BRKINT|IGNPAR|ISTRIP|ICRNL|IXON) 2189c2daa00SOllivier Robert OFLAG (OPOST|ONLCR) 2199c2daa00SOllivier Robert LFLAG (ICANON|ECHOK) 2209c2daa00SOllivier Robert</pre> 2219c2daa00SOllivier Robert <p>Special flags are:</p> 2229c2daa00SOllivier Robert <pre> PARSE_F_PPSPPS - use CIOGETEV for PPS time stamping 2239c2daa00SOllivier Robert PARSE_F_PPSONSECOND - the time code is not related to 2249c2daa00SOllivier Robert the PPS pulse (so use the time code 2259c2daa00SOllivier Robert only for the second epoch) 2269c2daa00SOllivier Robert 2279c2daa00SOllivier Robert Timecode 2289c2daa00SOllivier Robert 0000000000111111111122222222223333333 / char 2299c2daa00SOllivier Robert 0123456789012345678901234567890123456 \ posn 2309c2daa00SOllivier Robert >RTMhhmmssdddDDMMYYYYoodnnvrrrrr;*xx< Actual 2319c2daa00SOllivier Robert ----33445566600112222BB7__-_____--99- Parse 2329c2daa00SOllivier Robert >RTM 1 ;* < Check 2339c2daa00SOllivier Robert</pre> 2349c2daa00SOllivier Robert <hr> 2359c2daa00SOllivier Robert <h4>ELV DCF7000</h4> 2369c2daa00SOllivier Robert <p>ELV DCF7000: end='\r', pattern=" - - - - - - - \r"</p> 2379c2daa00SOllivier Robert <p>The ELV DCF7000 is a cheap DCF77 receiver sending each second a time code (though not very precise!) delimited by '`r'</p> 2389c2daa00SOllivier Robert <pre> 2399c2daa00SOllivier Robert Timecode 2409c2daa00SOllivier Robert YY-MM-DD-HH-MM-SS-FF\r 2419c2daa00SOllivier Robert 2429c2daa00SOllivier Robert FF&0x1 - DST 2439c2daa00SOllivier Robert FF&0x2 - DST switch warning 2449c2daa00SOllivier Robert FF&0x4 - unsynchronised 2459c2daa00SOllivier Robert</pre> 2469c2daa00SOllivier Robert <hr> 2479c2daa00SOllivier Robert <h4>HOPF 6021 und Kompatible</h4> 2489c2daa00SOllivier Robert <p>HOPF Funkuhr 6021 mit serieller Schnittstelle Created by F.Schnekenbuehl <frank@comsys.dofn.de> from clk_rcc8000.c Nortel DASA Network Systems GmbH, Department: ND250 A Joint venture of Daimler-Benz Aerospace and Nortel.</p> 2499c2daa00SOllivier Robert <pre> 2509c2daa00SOllivier Robert hopf Funkuhr 6021 2519c2daa00SOllivier Robert used with 9600,8N1, 2529c2daa00SOllivier Robert UTC via serial line 2539c2daa00SOllivier Robert "Sekundenvorlauf" ON 2549c2daa00SOllivier Robert ETX zum Sekundenvorlauf ON 2559c2daa00SOllivier Robert dataformat 6021 2569c2daa00SOllivier Robert output time and date 2579c2daa00SOllivier Robert transmit with control characters 2589c2daa00SOllivier Robert transmit evry second 2599c2daa00SOllivier Robert </pre> 2609c2daa00SOllivier Robert <p>Type 6021 Serial Output format</p> 2619c2daa00SOllivier Robert <pre> 2629c2daa00SOllivier Robert 000000000011111111 / char 2639c2daa00SOllivier Robert 012345678901234567 \ position 2649c2daa00SOllivier Robert sABHHMMSSDDMMYYnre Actual 2659c2daa00SOllivier Robert C4110046231195 Parse 2669c2daa00SOllivier Robert s enr Check 2679c2daa00SOllivier Robert 2689c2daa00SOllivier Robert s = STX (0x02), e = ETX (0x03) 2699c2daa00SOllivier Robert n = NL (0x0A), r = CR (0x0D) 2709c2daa00SOllivier Robert 2719c2daa00SOllivier Robert A B - Status and weekday 2729c2daa00SOllivier Robert 2739c2daa00SOllivier Robert A - Status 2749c2daa00SOllivier Robert 2759c2daa00SOllivier Robert 8 4 2 1 2769c2daa00SOllivier Robert x x x 0 - no announcement 2779c2daa00SOllivier Robert x x x 1 - Summertime - wintertime - summertime announcement 2789c2daa00SOllivier Robert x x 0 x - Wintertime 2799c2daa00SOllivier Robert x x 1 x - Summertime 2809c2daa00SOllivier Robert 0 0 x x - Time/Date invalid 2819c2daa00SOllivier Robert 0 1 x x - Internal clock used 2829c2daa00SOllivier Robert 1 0 x x - Radio clock 2839c2daa00SOllivier Robert 1 1 x x - Radio clock highprecision 2849c2daa00SOllivier Robert 2859c2daa00SOllivier Robert B - 8 4 2 1 2869c2daa00SOllivier Robert 0 x x x - MESZ/MEZ 2879c2daa00SOllivier Robert 1 x x x - UTC 2889c2daa00SOllivier Robert x 0 0 1 - Monday 2899c2daa00SOllivier Robert x 0 1 0 - Tuesday 2909c2daa00SOllivier Robert x 0 1 1 - Wednesday 2919c2daa00SOllivier Robert x 1 0 0 - Thursday 2929c2daa00SOllivier Robert x 1 0 1 - Friday 2939c2daa00SOllivier Robert x 1 1 0 - Saturday 2949c2daa00SOllivier Robert x 1 1 1 - Sunday 2959c2daa00SOllivier Robert</pre> 2969c2daa00SOllivier Robert <hr> 2979c2daa00SOllivier Robert <h4>Diem Computime Clock</h4> 2989c2daa00SOllivier Robert <p>The Computime receiver sends a datagram in the following format every minute</p> 2999c2daa00SOllivier Robert <pre> 3009c2daa00SOllivier Robert Timestamp T:YY:MM:MD:WD:HH:MM:SSCRLF 3019c2daa00SOllivier Robert Pos 0123456789012345678901 2 3 3029c2daa00SOllivier Robert 0000000000111111111122 2 2 3039c2daa00SOllivier Robert Parse T: : : : : : : \r\n 3049c2daa00SOllivier Robert 3059c2daa00SOllivier Robert T Startcharacter "T" specifies start of the timestamp 3069c2daa00SOllivier Robert YY Year MM Month 1-12 3079c2daa00SOllivier Robert MD Day of the month 3089c2daa00SOllivier Robert WD Day of week 3099c2daa00SOllivier Robert HH Hour 3109c2daa00SOllivier Robert MM Minute 3119c2daa00SOllivier Robert SS Second 3129c2daa00SOllivier Robert CR Carriage return 3139c2daa00SOllivier Robert LF Linefeed 3149c2daa00SOllivier Robert</pre> 3159c2daa00SOllivier Robert <hr> 3169c2daa00SOllivier Robert <h4>WHARTON 400A Series Clock with a 404.2 Serial interface</h4> 3179c2daa00SOllivier Robert <p>The WHARTON 400A Series clock is able to send date/time serial messages in 7 output formats. We use format 1 here because it is the shortest. We set up the clock to send a datagram every second. For use with this driver, the WHARTON 400A Series clock must be set-up as follows :</p> 3189c2daa00SOllivier Robert <pre> 3199c2daa00SOllivier Robert Programmable Selected 3209c2daa00SOllivier Robert Option No Option 3219c2daa00SOllivier Robert BST or CET display 3 9 or 11 3229c2daa00SOllivier Robert No external controller 7 0 3239c2daa00SOllivier Robert Serial Output Format 1 9 1 3249c2daa00SOllivier Robert Baud rate 9600 bps 10 96 3259c2daa00SOllivier Robert Bit length 8 bits 11 8 3269c2daa00SOllivier Robert Parity even 12 E 3279c2daa00SOllivier Robert</pre> 3289c2daa00SOllivier Robert <p>WHARTON 400A Series output format 1 is as follows :</p> 3299c2daa00SOllivier Robert <pre> 3309c2daa00SOllivier Robert Timestamp STXssmmhhDDMMYYSETX 3319c2daa00SOllivier Robert Pos 0 12345678901234 3329c2daa00SOllivier Robert 0 00000000011111 3339c2daa00SOllivier Robert 3349c2daa00SOllivier Robert STX start transmission (ASCII 0x02) 3359c2daa00SOllivier Robert ETX end transmission (ASCII 0x03) 3369c2daa00SOllivier Robert ss Second expressed in reversed decimal (units then tens) 3379c2daa00SOllivier Robert mm Minute expressed in reversed decimal 3389c2daa00SOllivier Robert hh Hour expressed in reversed decimal 3399c2daa00SOllivier Robert DD Day of month expressed in reversed decimal 3409c2daa00SOllivier Robert MM Month expressed in reversed decimal (January is 1) 3419c2daa00SOllivier Robert YY Year (without century) expressed in reversed decimal 3429c2daa00SOllivier Robert S Status byte : 0x30 + 3439c2daa00SOllivier Robert bit 0 0 = MSF source 1 = DCF source 3449c2daa00SOllivier Robert bit 1 0 = Winter time 1 = Summer time 3459c2daa00SOllivier Robert bit 2 0 = not synchronised 1 = synchronised 3469c2daa00SOllivier Robert bit 3 0 = no early warning 1 = early warning 3479c2daa00SOllivier Robert</pre> 3489c2daa00SOllivier Robert <hr> 3499c2daa00SOllivier Robert <script type="text/javascript" language="javascript" src="scripts/footer.txt"></script> 3509c2daa00SOllivier Robert </body> 3519c2daa00SOllivier Robert 3529c2daa00SOllivier Robert</html> 353