The ESP32 has quickly became my favorite microcontroller. My project uses an ESP32 to display the decimal value with the two 7 segment displays, the binary equivalent is displayed with the LEDs, and the hexadecimal equivalent with the OLED display.
Here's a clip of just the mechanical digits in action:
Here's a video of the entire converter working:
It is using an ESP32 equipped with an OLED display, two mechanical 7 segment displays and 14 relays. I'm using two NXP MC33996's along with the DPDT relays in an h-bridge configuration. To set each segment it need at least a 1ms pulse and to reset the segment it needs to be pulsed with the opposite polarity. This was a proof of concept before I designed a much larger clock with 6 digits and 46 relays with two sets of flip dots as colons.
The NXP MC33996 is a great chip that allows me to control 32 outputs with 5 wires using SPI.
The relays are not necessary and are purely a aesthetic decision and the digits could just as easily been driven with an MC33880 operating as an SPI octal h-bridge.
I programmed the device to display the digits as if I were writing them on paper. Instantaneously displaying digits does not look/sound as good to me. I have released all of the build files and source code.
This project will lead to a much larger PCB with 6 mechanical digits and 46 relays. Hopefully you guys find this interesting. Let me know if you have any questions.
Electromechanical Decimal to Binary to Hexadecimal Converter
9. February 2018 , Letztes Update: 10. February 2018
- Arduino Source Code (3.49 KB )Arduino Source Code for my Project
- KICAD PCB BUILD FILES (332.57 KB )KICAD PCB BUILD FILES