Micro Dot pHAT is an unashamedly old school LED matrix display board, with up to 30x7 pixels, using the Lite-On LTP-305 matrices. It's perfect for building a retro scrolling message display or a tiny 30 band spectrum analyser.

We were first tipped off about these gorgeous little retro displays when we stumbled across a Python library for driving the similar Osram SLx2016 4-digit displays, written by Andy Cui. For quite a while, we've been selling the tiny little 7-segment bubble displays (QDSP6064) that were used in the Hewlett Packard 3x-series calculators. But these Lite-On LTP-305 displays really were something else; a cut above!

LTP-305R sine  wave

We got a couple of packets of samples, one of the LTP-305G green matrices, and one of the LTP-305R red matrices. As soon as we saw them, we fell in love with them. Before the day was out, Phil had breadboarded a prototype, and a few days later he had designed the first prototype PCB.

We'll look at the features of the board, and then look at its development.

Features

The board uses three IS31FL3730 matrix driver chips, each driving two of the matrix displays. The IS31FL3730 matrix driver is the same chip that we use to drive our Flotilla matrix module, and it talks to the Pi over I2C. We've set each driver chip to have a different, consecutive I2C address: 0x61, 0x62, and 0x63.

IS31FL3730 driver chip

Phil's using these driver chips in an extremely clever way, in effect round-robin-ing them, updating them extremely quickly one after the other, to drive two displays at once.

The displays themselves have 5x7 pixels, plus a decimal point, and the LEDs on them are multiplexed, as opposed to charlieplexed. Because the diodes are biased in different ways across the rows and columns, individual LEDs can be lit by applying voltage in the correct direction to an intersection of a given row and column. You can see the wires connecting the LEDs in the image below

LTP-305 displays

The LTP-305 displays were originally made by Texas Instruments, before being manufactured by Lite-On, and you can see an excerpt from the original Texas Instruments datasheet below. They certainly have some heritage!

Texas Instruments datasheet

The idea with Micro Dot pHAT is that you can add your desired number and colours of LTP-305 displays. If you want to have just two displays, then you can. If you want six displays, in alternating red and green, then you can. It's up to you (but we love the red ones!)

Development

As we said above, Phil breadboarded a prototype using a matrix-less Flotilla matrix driver, to understand how to light the displays, and roughed out a Python library to control them.

The design of the PCB in Eagle took Phil a few days, as routing all of the connections between six displays and three driver chips was tricky, to say the least.

Eagle

Paul put together some suitably retro silkscreen, with the product name in the Scoreboard typeface and helpfully labelled all of the salient information, like display numbers and driver chip I2C addresses.

Phil sent off for the first set of prototypes from Dirty PCBs, and a week or so later they arrived. There were a couple of issues that needed addressing. The first was that the through-holes for the displays were a pretty tight fit, although they did fit. The second was that there was some noise in the data being sent to the displays, resulting in some garbling.

The second set of prototypes came from Eurocircuits, as we often do, and Phil widened the through-holes, moved the decoupling caps closer to the displays to reduce noise, and re-routed things to make it a bit neater. This spin hit the nail on the head, so we went ahead and ordered the production PCBs.

Using Micro Dot pHAT

We think the use cases for Micro Dot pHAT will overlap a lot with those of Scroll pHAT, although with Micro Dot pHAT you're getting almost four times the number of pixels (210 vs. 55).

It's ideal for things like a Twitter ticker, displaying weather information, system information, or displaying data from our other pHATs like Enviro pHAT or pHAT DAC (spectrum analyser).

With its six displays, it'd be perfect for building a retro clock or countdown timer, or you could even build some really simple games like pong or snake.

We've put together a Python library, one-line installer and some nice examples to try out, as well as a guide to assembling and soldering Micro Dot pHAT, and a getting started guide to explain how the Python library works.