Introduction: Electromechanical Decimal to Binary to Hexadecimal Converter
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(display) each individual segment it needs 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 design a much larger clock with 6 digits and 46 relays with two sets of flip dots as colons. The sound is amazing and I could not be happier with how it turned out.
Step 1: Bill of Materials
(1 ×) ESP32 with OLED Display
(11 ×) LEDs - 0805 SMD
(1 ×) Dual Voltage Power Supply - RD-50A MEAN WELL
(11 ×) 180 ohm Resistors for LEDs - 805 SMD
(3 ×) 470uF Electrolytic Capacitors
(2 ×) 47uF Electrolytic Capacitors
(3 x) Momentary Push Button - SMD
(3 ×) 10K Pull-up Resistors - 805 SMD
(14 ×) DPDT Relays
(14 ×) Schottky Diodes - 1.5KE18CA-T - Used as flyback diodes for the relays
(14 ×) TVS Diodes - 1.5KE18CA-T - Used as flyback diodes for the AC segment coils
Here is an overview of the mechanical 7 segment displays:
Step 2: Schematic With PCB Build Files
You can order the board shown in the video from a PCB manufacturer or you can solder it up on your own with through hole components if you'd like with my schematic.
Step 3: Solder the PCB
In this video I use a stainless steel solder paste stencil to perfect put solder where I want. I use a hotplate set to 170C and a hot air gun to solder the SMD components.
Step 4: Program the ESP32 With the Arduino IDE
Download the Arduino core for the ESP32 here:
Download my attached source code and program your ESP32 with the Arduino IDE.
Step 5: Questions?
Thank you for reading my Instructable. Let me know if you have any questions and I will be happy to answer what I can.
Anthony Garofalo(Proto G)