I've had a broken Symmetricom ND-4 wall mount NTP clock display sitting around for ages. For some reason, this turned into one of those projects where I decided I really wanted to get it working. It was such a simple device that it seemed stupid that I couldn't fix it.
Poking around showed that the power supply seemed fine, but the Realtek RTL8019AS Ethernet chip was obviously faulty (AKA, it got hot!).
I tried replacing it, first with a pull from a different board, and then with a new one (I have a hot-air rework station and reflow oven). This didn't fix it, and some more research / probing of the (Rabbit 2000) processor showed that there were more issues - the UART was obviously trying to send something, but the baud-rate was nothing sensible, etc.
Eventually, I gave up trying to repair the processor board and it just sat in the corner of my workshop, gathering dust. But it kept bugging me, and so I decided to give it another whirl.
The display itself is a 7 segment LED driven by a MAX7219 ("Serially Interfaced, 8-Digit, LED Display Driver") with 4" high digits. This is a very common LED display driver, and there is a nice Python library for driving it, so....
ND-4 | MAX7219 | Function | Pi Pin |
---|---|---|---|
VCC | VCC | 2 | |
GND | GND | 6 | |
PA0 | CLK | SPI CLK(11) | 23 |
PA1 | LOAD/CS | SPI CE0(8) | 24 |
PA2 | DIN | MOSI(10) | 19 |
The Pi speaks NTP to get the correct time and uses the luma.led_matrix library to drive the display.
Code is here: https://github.com/wkumari/symmetricom-nd4-python