The electronic hardware of the device includes a battery, a speaker, and three boards:
- The board with the LED matrix (display)
- The board with an ESP32 microcontroller, control interfaces, and a USB-C port
- The board with an OLED display and encoder
The boards interconnect via FPC (Flexible Printed Circuit) cables. We’re considering a more rigid connection through spring-loaded contacts.

The design allows for a battery sized 17 x 120 x 20 mm. A lithium-ion battery of this size would have an estimated capacity of 3200 mAh. We measured the LED matrix’s consumption in a busy state with a timer, yielding around 135 mAh.
Accounting for the ESP32 and OLED display’s consumption, we estimate a total current draw of 350 mAh per hour, allowing the device to display the status for approximately 9 hours without recharging.
We will be ordering custom-sized batteries for the final device.
The speaker
We positioned the speaker on the side of the device and incorporated four small openings in the case to enhance sound clarity. Our tests revealed that there was no noticeable difference in loudness when using either 8 Ohm or 4 Ohm speakers.
Due to the limited number of pins available to connect the ESP32 microcontroller, we decided not to include an external DAC (Digital-to-Analog Converter). Instead, we used a pulse width modulation (PWM) module built into the microcontroller and installed an external low-pass filter. Following the filter, we installed a D-class digital audio amplifier.
While the sound produced is sufficiently loud, we did encounter some polyphony. We avoided using a buzzer so Busy Status Bar could have pleasant audio feedback.

RS-485 communication
The device is equipped with an RS-485 interface commonly used in industrial networks. We’ve allocated four pins for this: twisted pair, ground, and power. We’re considering its usage in the B2B segment for network panel connection or for creating an array from multiple devices. We haven’t decided on a protocol yet, but we’re planning to adapt according to market demands.

Stay tuned
If you enjoyed this project and its development story, follow for the latest updates and feel free to share your feedback.
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.