Live data from Hacker News

Open-sourcing a more precise time appliance

engineering.fb.com

141–150 of 188 posts

Re: Open-sourcing a more precise time appliance

#141
post #66

Earlier quoted context omitted.

Nice project, I've been working on something similar, but with an Arduino (Adafruit ESP32), an Adafruit GPS featherwing and a RTC. I originally started with a Linux-based solution like yours but no matter what I did I couldn't get the accuracy below about 5ms and my goal is sub-ms (verified with an oscilloscope.)

Yeah, I think you're on the right track. I like less and less having a Linux box to maintain, and there is less control over the timing of internal operations compared to a microcontroller, of course. On the other hand, Chrony is really, really good, and it would be a lot of code and debugging to write something that good from scratch. With the Beaglebone, it's theoretically possible to drive the oscillator from a ca…

If you're looking for a relatively low-cost option for "always correct" wall clocks, Primex radio clocks are popular enough that they are very cheap used on eBay, and if you live in a city there is a decent chance there is a GPS-disciplined Primex transmitter within receiving range (hospitals, schools commonly have them, you can check with an SDR). Or for a standalone solution, the sadly discontinued Primex SNS series of digital and analog wall clocks are just WiFi NTP clients. Supply is becoming limited since they were discontinued but they still run fairly cheap used. Initial setup (WiFi credentials, NTP server, etc) is slightly eccentric but can be done with tools available online.

The analog wall clocks are battery powered and with the default config of re-sync every 3 days, the batteries last years.

Re: Open-sourcing a more precise time appliance

#142
I don't see ESP8266 mentioned here:

Overview: https://hackaday.com/2021/07/25/portable-gps-time-server-pow...

Developer story: https://www.linkedin.com/pulse/iot-maker-tale-stratum-1-time...

Repo: https://github.com/Montecri/GPSTimeServer

A simpler version from the comments: https://enginemonitor.blogspot.com/2020/09/gps-module.html?m...

Re: Open-sourcing a more precise time appliance

#143
post #119

I cannot find any source files for the FPGA code in the repository (no .v .vhd .vhdl files and I can't see anything by looking around manually). The FPGA directory [1] contains some binaries and some documents relating to commercial code from a Swiss firm [2]. I've seen plenty of projects described as open source when the firmware is open source and the hardware is closed but this is the first time I've seen one wher…

Valve did something similar for the Vive tracker dev kit. There was a time before the standalone tracker was available https://www.vive.com/us/accessory/vive-tracker/ where if you wanted a tracker that wasn't a full controller you had to build it yourself. This involved a paid workshop in Seattle to get access to the dev kit and learn their tooling. Hardware was open source, but firmware was closed. If you wanted fir…

The Valve situation sounds like they attempted to open source after the fact, which doesn’t work with large hardware projects.

The only way to really open source a hardware project of this magnitude is to set open source as a constraint from the start. If you don’t, you inevitably end up with someone licensing some code somewhere from a vendor that can’t be open sourced. It gets integrated deeply enough that the project can’t exist without that piece and it’s too late to rewrite around it so the open source commitment goes out the window.

If I had to guess, it sounds like Valve tried to work around the situation with the workshop where participants entered into some contract as part of the workshop.

And if I had to guess about the Facebook situation, it was probably decided to open source the project after the fact. I’m guessing they wrote the website copy while someone else went off to try to secure open source permission for all components involved and they never reconciled the two efforts, hence the weird dead eBay links and missing files.

Re: Open-sourcing a more precise time appliance

#144

Earlier quoted context omitted.

There are plenty of practical applications for it. Imagine super high speed, high precision robotics, maybe a synthetic fiber layup machine or an exotic milling machine, that moves at 10m/s. If you have 1us of precision and accuracy then you can send movement commands that are precise down to 10um.

But does that really require an absolute time reference?

In these cases mostly not, they require low jitter references and a good counter.

An example that does - I work for IceCube, a big neutrino detector at the South Pole. The detector is essentially a time of flight system that detects emitted light as it propagates through the ice when a neutrino interaction happens. We need good time distribution in the system so we can marry up hits from the 5000 odd sensors in the ice (and successive hits may be nanoseconds apart), and we need good absolute precision because we collaborate with other observatories.

Also pretty much all radio telescopes that do long baseline interferometry need excellent absolute timing. The South Pole Telescope has (I think) the most accurate clock on station, a hydrogen maser-based system. We use GPS.

Re: Open-sourcing a more precise time appliance

#145

Earlier quoted context omitted.

Yeah, I think you're on the right track. I like less and less having a Linux box to maintain, and there is less control over the timing of internal operations compared to a microcontroller, of course. On the other hand, Chrony is really, really good, and it would be a lot of code and debugging to write something that good from scratch. With the Beaglebone, it's theoretically possible to drive the oscillator from a ca…

Yours does look fantastic. Also enjoy mashing up accuracy with nixie tubes, feels very atomic '50s futurism: - Atomic: http://www.nixie.dk/~jthomas/atomicnixie.html - WWVB: http://www.nixie.dk/~jthomas/wwvb.html

A WWVB receiver is on my todo list. I did buy a cheap module that they use in clocks, and I get no signal whatsoever (New York City). WWV (shortwave) I can hear sporadically. That is basically a result of the modules using the legacy WWVB signal, and not the newer phase-modulation signal, which is easier to receive at low signal strengths.

Having said that, this has been on my to-build list for a while, though: http://www.maxmcarter.com/rubidium/index.php

I also want to run the WWV-time-of-arrival experiment myself, and I think I have all the equipment necessary, just haven't done it. https://www.physics.princeton.edu//pulsar/K1JT/HFTOA_1.pdf

Re: Open-sourcing a more precise time appliance

#146

I cannot find any source files for the FPGA code in the repository (no .v .vhd .vhdl files and I can't see anything by looking around manually). The FPGA directory [1] contains some binaries and some documents relating to commercial code from a Swiss firm [2]. I've seen plenty of projects described as open source when the firmware is open source and the hardware is closed but this is the first time I've seen one wher…

It's a particular module for the Xilinx Artix 7 XC7A100T, made by a Shanghai-based integrator. As an individual user, you could buy these on Aliexpress, from eBay resellers, or from Amazon resellers. Facebook presumably has an arrangement with the contract manufacturer that's not going to be possible for an individual developer ordering ones and twos to replicate.

However, to modify the HDL, you'd need a $3,000 license for Xilinx Vivado, which is pretty much a nonstarter for amateurs.

[1]: https://store.digilentinc.com/arty-a7-artix-7-fpga-developme...

Re: Open-sourcing a more precise time appliance

#147
Didn't DJB suggest massive improvements to NTP decades ago? https://cr.yp.to/libtai.html No one seemed to care.

This system seems to be special only because it's from MyFace.

Additionally, everyone has direct access to stratum 1 timing via cheap GPS receivers.

TimeNuts have been doing this stuff for decades: http://www.leapsecond.com/time-nuts.htm

Again, this seems just another piece of bullshit for the zukers and other MyFace lusers...

Re: Open-sourcing a more precise time appliance

#148
> the ConnectX-6 Dx network card

I would caution people against using the Mellanox/NVIDIA network interface cards in anything they care about. The driver license is proprietary and you have to build it for your kernel as a DKMS module in a semi manual process. Makes future system updates a real bother. I realize this probably doesn't apply so much to FB internally since they build and maintain their own distro in house.

Stuff that's just a couple of years old won't even build the driver for current debian bullseye. Have to run buster? No thanks.

As with so many other things NVIDIA the root cause of this is their absurd licensing approach to open source software and drivers for their hardware.

Re: Open-sourcing a more precise time appliance

#149

> the ConnectX-6 Dx network card I would caution people against using the Mellanox/NVIDIA network interface cards in anything they care about. The driver license is proprietary and you have to build it for your kernel as a DKMS module in a semi manual process. Makes future system updates a real bother. I realize this probably doesn't apply so much to FB internally since they build and maintain their own distro in hou…

I’ve been wondering about SmartNICs recently and imagine all sorts of ideas for them. Which brand do you recommended?

> Makes future system updates a real bother.

Sounds like their GPU drivers too.

Re: Open-sourcing a more precise time appliance

#150

> the ConnectX-6 Dx network card I would caution people against using the Mellanox/NVIDIA network interface cards in anything they care about. The driver license is proprietary and you have to build it for your kernel as a DKMS module in a semi manual process. Makes future system updates a real bother. I realize this probably doesn't apply so much to FB internally since they build and maintain their own distro in hou…

I’ve been wondering about SmartNICs recently and imagine all sorts of ideas for them. Which brand do you recommended? > Makes future system updates a real bother. Sounds like their GPU drivers too.

I recommend Intel for 100GbE stuff. Intel's heritage of proper open source drivers (written by their own staff, in house) for FreeBSD and Linux goes back really far.

You could look at the man pages for their very expensive 10GbE server NICs in 2003-2004 and see the @intel.com email addresess of the persons who wrote them.

Post reply on HN