-
-
Notifications
You must be signed in to change notification settings - Fork 149
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Timebeat TimeCard Mini PCIe Card #497
Comments
I have a couple versions of the card now, and am planning on a project using them at LTX23... |
For bringup, a few notes:
|
More notes:
To quickly grab NTP time just to move forward, I ran:
Then I moved along to test out some interfaces.
|
After enabling USB 2/3, I can now see all the devices:
And plugging in the BlinkStick works:
And Blinkstick works too:
|
I'm also going to try out GPIO, using an Adafruit 240x240 TFT display. First, install CircuitPython on the Pi:
Check that I2C and SPI interfaces are present after reboot:
Install the Python libraries required to drive the display:
Install some font / rendering libraries useful for display:
Then I tested a few of Adafruit's examples, like their CPU/system stats example, and their Pillow Animated Gif player. All seemed to work okay. |
I also noticed there was a
I'm guessing this is a PPS output that is running, I haven't yet measured anything off the outputs on the timebeat board, and I also haven't tried getting a GPS signal yet. Still just getting familiar with the hardware interfaces. |
Some checking on the U-blox GPS hardware (it should offer a serial UART on
Observing the output of the module directly:
This indicates that at least in my basement, I'm not getting any position data (heh, underground, inside... of course not). The NMEA Analyser is quite handy here. I might also be able to use the Python The NMEA Reference Manual has been extremely helpful learning the ins and outs of everything... |
Next tasks:
It looks like right now the OXCO is not being used:
|
Out of the box, the CM4 image from Timebeat has the primary time source configured as PTP over timebeat:
clock_sync:
adjust_clock: true
primary_clocks:
- protocol: ptp
domain: 10
serve_multicast: true
server_only: true
announce_interval: 1
sync_interval: 0
delayrequest_interval: 0
interface: eth0
- protocol: pps
interface: eth0
pin: 0
index: 0
utc_offset: 37
secondary_clocks:
- protocol: timecard-mini
device: '/dev/serial0'
baud: 9600 That seems to have been causing the 115% CPU load while it was running (and times were always showing as 1969 since it wasn't getting any time data there). I decided to move the
I also tried setting the output to |
I was also wondering how to get the SiTime OXCO working with the U-blox GPS module, and right now at least using Timebeat's software, that configuration is not working—you could probably program the U-blox to use it manually, but we're getting into the arcane territory where I start remembering AT commands and how crazy fun cellular modem control is... So for now I'll work with the GPS module's 100 ppb accurate internal oscillator, and let the little 5 ppb SiTime module bake its heart out, not to be used for the time being. |
I've put all the code I'm using for this card (along with detailed setup instructions) in this repo for LTX 2023: https://github.com/geerlingguy/ltx2023 |
Timebeat's TimeCard mini PCIe card sits in a server's PCIe slot, exposing two serial interfaces (one to an optional Raspberry Pi CM4, one to an optional GPS unit), and the card also holds a TXCO (Temperature Controlled Crystal Oscillator) or OXCO (Oven-Controlled Crystal Oscillator) to hold time very accurately if the signal is lost.
The text was updated successfully, but these errors were encountered: