[time-nuts] Soekris NTP server

Brendan Minish ei6iz.brendan at gmail.com
Sat Dec 30 19:18:46 EST 2006


On Sat, 2006-12-30 at 18:17 -0500, John Ackermann N8UR wrote:

> 
> R61/R62 is the access point for the high-resolution timer in the CPU
> chip.  Poul-Henning's extremely elegant hack has the PPS signal start
> the timer and at the same time bring the GPIO pin low.  Since the GPIO
> is interrupt-driven, it will always have jitter based on the Hz value.
> So, when the interrupt hits the GPIO pin and it triggers, the code looks
> at the timer register to find out how long ago the line actually went
> low.  That's how he gets nanosecond resolution with a millisecond
> interrupt rate.

Ohh, now I understand, that's a fantastic hack 
I have had a 4501 on order for a while but have been playing around with
an old 4521 (retired from wireless router service) I had here in the
mean time 


> I have no idea where the equivalent point would be on the 4521 board, or
> if it even has the high-res timer available.

I suspect that the 4521 will have an equivalent point since the boards
are very closely related indeed and the CPU is the same.

I have from the photo on your website established that the area around
r61/r62 loos the same on both boards and these 2 resistors are indeed
commoned at the side nearest the edge of the board. I'll give it a go
here and see what happens.
What ground reference are you using with this? com port pin 5 ground ok?

I presume a garmin (gps27?) with a nice long +5v pulse will do for test
purposes?
Any idea when TAPR are going to release the refclock and the fatPPS
boards 
 

the 4521 only has one serial port hence my issue with trying to kill off
the serial console ;-) However I guess I can use PPS in conjunction with
external NTP servers? 


> > And another dumb freeBSD question 
> > where is the correct place to put the commands I want to run every time
> > we boot 
> > 
> > basically I need to run 
> > 
> > sysctl machdep.elan_gpio_config=-----P...--..--------..---------
> > to set up the GPIO 
> > 
> > then I need to create a couple of symlinks in /dev 
> > for pps0 and gps0
> > 
> > we need to to this before the ntpd service is started or optionally
> > start the ntpd service here after doing the above 
> > 
> > thanks for all the help
> > .brendan 
> 
> I modify the ntpd startup script in /etc/rc.d to create the symlinks and
> set up the GPIO.  Other system defaults like IP address are set in
> /etc/rc.conf.

I had considered hacking them in there but it didn't 'feel' like the
right place to do it 

Gabriel Reyes has posted a better place for this to be done, that's of
course if the /cfg stuff gets read back before the /dev filesystem is
setup..

thanks for all the help
.brendan 





More information about the time-nuts mailing list