Sig7Seg - controller for mechanical 7 segment

An i2c controller board for electromechanical seven segment displays like Signalex "02L" series flip displays

Similar projects worth following
Starting from
mayfourth has 14 orders / 0reviews
Ships from United States of America
I wanted low power mechanical 7 segment displays for stats around office which would only change once or twice a day. I found a set of Signalex "02L" series on ebay, but there was no controller interface for them an no convenient way to hook them up to the micro-controllers we were using. There's lots of breadboard examples of wiring these up, but I wanted a simple pcb that could be chained together. This is the mostly finished result.

This project has many personal first for me. Designing my own board in KiCad. Moving from through-hole parts to SMD. Working on a board with both 12 volt and 5 volt power. I'm sure to make a bunch of rookie mistakes, but looking forward to the feedback from the community on how to improve this and hearing about other displays that can be used with this board.

Since one 7 segment display is often not enough, this controller is designed to be chained together. The MCP23017 being used supports up to 8 i2c addresses, thus this is the limit of displays on a single i2c bus. Each 7 segment display will need its own controller board. Only one 12volt 500mA DC power supply is needed since the code flips one display at a time. The time to flip all segments on a single 4" display is 50 milliseconds, on the 6" to 12" displays it is 90 milliseconds. The boards are designed to allow chaining of standard DC 2.1mm x 5.5mm barrel jack for power and of the i2c bus. Power is only dawn for the displays while switching segments.

A second design of the board allows for an integrated Particle Photon micro-controller which will step down the 12 volt line and directly connect the i2c pins. This will allow for wireless control of all the displays. Only one of these Photon boards are required in the chain of displays. The remaining displays can use the non-Photon version of the controller.

This project is inspired by Andrew's work with Signalex displays using the MIC5801bn. I was unable to source these and hope to use easily accessible, low cost components with this project.

I test this with four Signalex 02L-4 displays, but should support the 6" to 12" displays as well (602L and others). This was originally constructed to be milled out on an Othermill, but the final design is not mill friendly given the number of vias and that some components would need to be flipped.

Gerber files for Particle Photon Shield version of sig7seg-i2c. 2 layer board of 3.08x1.98 inches (78.10x50.27 mm). Non-oval drill file.

x-zip-compressed - 20.80 kB - 10/08/2017 at 22:33


Gerber Files for standard version of sig7seg-i2c. 2 layer board of 1.97x1.98 inches (49.91x50.27 mm). Non-oval drill file.

x-zip-compressed - 18.26 kB - 10/08/2017 at 22:32


Code library for either Arduino or Particle Photon (version 1.0.0)

x-zip-compressed - 47.65 kB - 10/08/2017 at 04:50


  • 2 × TBD62083AFWG,EL Power Switch Lo Side 4A 18-Pin SOP
  • 1 × MCP23017T I2C 16-BIT I/O EXPANDER
  • 2 × 47K Resistor 1206 47K Ohm 5% 1/4W Thick Film
  • 1 × 1K Resistor 1206 1K Ohm 5% 1/4W Thick Film
  • 1 × (Photon PCB Only) VXO7805-500 Non-Isolated DC/DC Switch Converter

View all 7 components

  • Not compatible with AlfaZeta 7-segment, but...

    Corey Benn05/21/2019 at 14:56 0 comments

    These large AlfaZeta 7-segment flip displays do look similar to the ones I had been using, but turns you control the AlfaZeta ones with only two wires and reverse the polarity of them to get them to flip. Unfortunately, this makes the standard boards created here incompatible with them. I've got some thoughts on how to make it work as well, but going to require a different PCB layout. You should check out Rachel's video of how she got these working with a relays.

  • CircuitPython library

    Corey Benn01/28/2019 at 23:37 0 comments

    I've started to play around with CircuitPython and figured it would be easy to port this library over, so I've now added that to the Github Sig7Seg-i2c-mpy repo. You can grab the source and examples, or the pre-built mpy file if you just need the library. Only used this on a Trinket M0 so far, but will try to make sure everything works from a MicroPython ESP8266 as well (it should, just might need a few more Adafruit libraries pushed to it). Welcome any feedback from those of you that have used CircuitPython more than I have. 

View all 2 project logs

  • 1
    Solder on SMD Components

    I start with the two TBD62083 chips, then the MCP23017. There should be a dot on the PCB to help with chip alignment. Next solder on the three resistors (two 47K and one 1K). If you're building the Photon PCB version, do the 2 capacitors then the VXO7805.

  • 2
    Header Pins

    Solder on the 3 sets of three pin headers for the i2c address (A0, A1, and A2). You'll need to attach a jumper to each one to pull the pin high or low (chip will not work if these are left floating). The remaining header pins are optional depending on your setup. 

  • 3
    Attach 7 Segment Wires

    The board has labels for the three sets of wires from the 7-Segment display. Black wires (which are used for 12v power) can be attached in any order. The Orange and Red wires must attach to the corresponding letter position. Viewed from the BACK of the display, the wires follow this order (with "A" starting on the top center, and then "B" on the top left)

    B |   | F
      |   |
        - <----- G
    C |   | E
      | _ |

View all 4 instructions

Enjoy this project?



Keenan Rebera wrote 03/11/2020 at 21:22 point

Do these solenoids not need flyback diodes? I feel like there might be back EMF but I am unsure.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates