7-segment and character displays with SimHub
Last updated · SimHub 9.11.22
SimHub drives MAX7219 and MAX7221 digit displays, TM1637 four- and six-digit modules, TM1638 modules — which also provide buttons — plus I2C character LCDs in 20×4 and 16×2, and SSD1306 OLED panels. Pick by what you are showing: seven-segment digits are the most legible at a glance and can only show numbers, character LCDs hold text but are dim, and OLED is the most flexible and the smallest. The TM1638 is worth singling out because it gives you digits and physical buttons on one module and one set of pins.
Digits are underrated next to RGB. A number you can read without interpreting is often more useful than a bar you have to judge, and these modules cost very little.
What SimHub supports
| Module | What it is | Best for |
|---|---|---|
| MAX7219 / MAX7221 | 8-digit seven-segment driver, chainable | Lap times, positions, anything numeric that needs several digits |
| TM1637 | 4-digit seven-segment module | One value — gear, speed, position. Cheapest option. |
| TM1637 6-digit | 6-digit version (RobotDyn and similar) | A lap time in minutes, seconds and thousandths |
| TM1638 | Digits, LEDs and buttons on one module | A compact combined display and button panel |
| I2C LCD 20×4 | Character LCD, four lines of twenty | Multiple labelled values at once |
| I2C LCD 16×2 | Character LCD, two lines of sixteen | A compact two-line readout |
| SSD1306 OLED | Small graphical OLED | Mixed text and simple graphics, high contrast |
The TM1638 is the one people overlook. Digits, indicator LEDs and physical buttons on a single module using one set of pins. If you were planning a small display and a few buttons, that is one component and one wiring job instead of two.
Choosing between them
The decision is mostly about legibility versus flexibility.
- Seven-segment is the most legible
- Big, bright, high-contrast digits readable in peripheral vision and in daylight. It can only show numbers and a handful of letters, and that constraint is also why it is so readable.
- Character LCD holds the most information
- Four lines of twenty characters is a lot — labels and values together. The cost is contrast: these are dim, and backlit LCDs wash out badly in a bright room.
- OLED is the most flexible and the smallest
- Text, symbols, simple graphics, excellent contrast. Physically small, so it needs to be close to be read, and it is the slowest to update of the three.
For a driving readout, seven-segment usually wins. For a pit-lane or setup display you look at while stationary, a character LCD or OLED holds far more.
Wiring and pins
- MAX7219 uses three pins — data, clock and load — and modules chain, so several 8-digit displays share the same three.
- TM1637 uses two: clock and data.
- TM1638 uses three, and gives you buttons on the same three. This is the pin-efficiency argument for it.
- I2C displays use the two I2C pins, and multiple I2C devices share them by address — the most pin-efficient option if you have several.
- SSD1306 is usually I2C, so it shares those two pins as well.
Every pin assigned in SimHub must be unique. This is the rule that stops firmware builds, and it bites hardest here — adding a display to a build that already has LEDs and buttons is exactly when defaults collide. Assign pins explicitly rather than accepting what the wizard offers. See Arduino setup.
Power is far less of an issue than with RGB strips — these modules draw modest current and generally run happily from the Arduino's own supply. If you are combining one with an LED strip, the strip is still the thing that needs an external supply.
What to display
The constraint is digits, so choose values that are short and that you act on.
- Gear — one digit, and the most-read value on any rig.
- Speed — three digits.
- Lap time — needs six digits to be useful, which is what the 6-digit TM1637 exists for.
- Delta to best — arguably more useful than the lap time itself, and shorter.
- Fuel remaining, or laps of fuel — laps is the more actionable of the two.
- Position — two digits.
- Tyre temperatures — four values, so this wants a 20×4 LCD rather than a digit module.
A rule that holds up: if you have to think about what a number means, it does not belong on a driving display. Laps of fuel remaining beats litres, because litres requires arithmetic while you are braking.
Common questions
Which 7-segment display should I use with SimHub?
A TM1637 4-digit module for a single value like gear or speed — it is the cheapest and simplest. A MAX7219 for several digits or when you want to chain displays. A 6-digit TM1637 if you specifically want a lap time in minutes, seconds and thousandths.
What is the TM1638 good for?
It provides digits, indicator LEDs and physical buttons on one module using one set of pins. If you were going to build a small display and a few buttons separately, it does both as a single component with a single wiring job.
Can I use an OLED display with SimHub?
Yes — SSD1306 panels are supported. They give the best contrast and the most flexibility, showing text and simple graphics, but they are physically small and slower to update than seven-segment digits, so they suit a close-up readout rather than a glance.
Do these displays need an external power supply?
Generally no — they draw modest current and run from the Arduino's own supply. It is RGB LED strips that need external power, so if you are combining a display with LEDs, the strip is still the thing to size a supply for.
Can I have several displays on one Arduino?
Yes. MAX7219 modules chain on three shared pins, and I2C devices share two pins by address. The limit is usually SimHub's rule that every assigned pin must be unique across all features, which is what stops firmware builds.
Seven-segment or character LCD?
Seven-segment for anything read while driving — bigger, brighter, higher contrast, readable in peripheral vision. Character LCD for a stationary readout where you want several labelled values at once, accepting that they are dim and wash out in a bright room.
Sources
Related guides
SimHub is developed independently by Wotever and is not affiliated with oesimracing. This page was checked against SimHub 9.11.22 on 4 August 2026; where the interface has moved on since, the version stamp tells you how far. More on what SimHub is and what it costs.