I've recently acquired an AMS BetaBrite RGY LED board... just the main unit, no cables, no software.

I was able to determine (through minor trial and error) that it used a 12V source to power it.

However, upon plugging it in, I noticed that none of the green LEDs were working, and about half of the red LEDs weren't lighting up, so I opened it up...



Oh.

At this point, I had two options:

Rebuild it using the current boards, properly thermal regulate the main transistors, hope the main PCB isn't damaged

Or

Desolder the old board(s?) for components, and build an Arduino-based system



...I went with the latter.

Now, what I've learned so far is:

There's three "layers" of boards: the power supply and main control board, the distribution and secondary control board, and the LED boa

There's a total of 14 transistors to supply voltage to one row at a time.

The reason for the 14 transistors is it's a 7-character-tall display, with 2 for each color: red, and green.

Each LED board has a 2x7 by 10 display, and there are 24 pins. 2x7+10=24, which means it's a bit-shift method for sure.

I'm finding ICs underneath each one, which tells me that only one LED is on at the time. Also, this tells me that each IC (bank) on the secondary board is controlling the cathode of the LED, and the transistors on the primary board are controlling the anode.




ICs I've found so far:


Goldstar GM76C88L-15, 8 kilobit(?) SRAM

Siemens SAB 8031A-16-P, Microcontroller

National Semiconductor DM74LS373N

National Semiconductor DS2003CN

...and many more I'll edit in once I can find them.

One thing I plan on doing is modifying this so that it can easily be serviced in the future; there were many dead spiders throughout the unit, and cleaning it was a bit crazy. This includes adding header sets so that I can easily disconnect and reconnect the LED boards. (I've already mentally designed it so I don't accidentally flip the board and install it upside-down or offset.)

What recommendations would you guys have?

PS: I'm also not opposed to the idea of having something like a RPi0W in the design to make it easier to simply use the Arduino as an interface, and allowing the Pi to be the main control unit.