Soekris Net 4501 NTP Server

Published 2011-10-04

Testing the Motorola Oncore UT+

We powered the Oncore device using an USB power supply. The current through the device measured 168-174 mA with active antenna attached. We connected TXD with the oscilloscope and RXD with a TX on a TTL-USB cable. Devices shared common ground with GPS RTN attached as well.

Initially everything was quiet as the tomb. But looking through the Motorola user guide chapter 6 and the checksum description we found an example "binary" command: @@Ea. This command enables and disable periodic position updates.

$ hd gps-cmd-ATAT-E-a-1.bin
00000000  40 40 45 61 01 25 0d 0a                           |@@Ea.%..|
00000008

First four bytes is the command, then a one-byte parameter, a checksum-byte and then two-byte command terminator.

After transmitting this command (cat gps-cmd-ATAT-E-a-1.bin >/dev/ttyUSB0) the GPS started generating a lot of serial traffic on the TDX pin.

Adjusting the Net4501 board for TTL

Our Soekris net4501 is not an OEM board and we have to get rid of the TTL-to-RS232 chip and hardwire DCD, TX and RX. The chip was removed but rewiring was pretty hard with our equipment. Ultimatly it resulted in broken surface mount slabs. To our luck a kind soul from Zyxel/Visipia promised to fix the rewiring for us. This should give us TTL signalling on the JP11 connector.

Next we have to build a NanoBSD image with NTPns.

Connecting Net4501 and Oncore UT+

We started out with power supply issues. Aparently our non-conforming USB adaptor wasn't enough. So we did an adhoc power regulator from a more powerful source:

10V+
 |               5V+
 +---LM7804----+-----+--------o
 |      |      |     >
 | 100nF|100nF |    < 1kO
 +---||-|-||---+     >
 |      |      |     |
 | 470uF|470nF |     v 3mm green
 +---||-|-||---+     |
        |            |
        +------------+--------o
        |
       GND

Since we aren't familiar with NTPns, we would like to check the TTL interfaces without running the NTPns. We started the Oncore UT+ and connected with TTL-FDTI cable. Issued the @@Ea1 command and saw position data. Next we started up the Net4501 and connected the TTL-FDTI cable and verified correct TTL communication. Then we connected GPS with Soekris. The GPS data propagated correctly.

Next we started NTPns and got a prompt... after looking a bit in NTPns/Doc/ntpns.txt we found these commands:

oncore 0 serial /dev/cuau1
show oncore 0

First command immediatly configured a oncore device on the serial connection. Next command displayed a state of the Oncore UT+ device:

serial port = /dev/cuau1
state = 9       visible/track/lock = 0/1/0      dop = 0.0 [m]
2011-12-14 19:50:59.000803698
lat = 0 (0.000000), lon = 0 (0.000000), ht 0 (0.00)
http://maps.google.com/maps?ll=0.000000,0.000000&spn=0.03,0.08&t=k
rcv_status = 0x9 =      utc_offset = 15
site_survey = 0 (~0 sec left)
Sat Dopler Elev Azi Health Mode SigStr IODE Status Offset
  5      0    0   0   04     8    48      0    a2  0.000000000

The GPS already had some sense of the time. NTPns reset the device:

serial port = /dev/cuau1
state = 12      visible/track/lock = 0/0/0      dop = 0.0 [m]
1998-01-01 12:00:15.000000000
lat = 0 (0.000000), lon = 0 (0.000000), ht 0 (0.00)
http://maps.google.com/maps?ll=0.000000,0.000000&spn=0.03,0.08&t=k
rcv_status = 0x9 = AcqSat/PosHold BadAlmanac
        utc_offset = 0
site_survey = 0 (~0 sec left)
Sat Dopler Elev Azi Health Mode SigStr IODE Status Offset