Back in January, I did a workshop at CodeMash 2020 on soldering and programming an ESP32-based conference badge. It went very well, with near perfect success among the 50 or so participants. The hardware was simple to assemble, but somewhat limited in terms of peripheral capabilities – especially in regards to audio output.
In the spirit of continuous improvement, I have prototyped the next generation of the badge, dubbed the “ESP32 R4ge Pro”. Enhancements include:
- CD-quality audio
- Stereo speakers with volume control
- MEMS microphone
- A bigger and touch-sensitive screen
- Firmware-controlled screen dimming
- Twin analog joysticks
- Integrated battery charging
A number apps and games have already been created for the R4ge Pro in the GitHub repo, with more planned and in development. These include:
- Pong clone
- Drum sequencer
- Internet radio player
- Wave recorder and FFT frequency analyzer
- FM Synthesizer
- Bluetooth tank/robot remote control
What this ends up looking like on the PCB:
Assembly time is around 2 hours, depending on your experience and through-hole soldering skills. As with the original badge, a test sketch is provided to exercise all the peripherals and help ensure that you’ve got everything put together correctly.
Full Bill of Materials is available in the repo, and will cost you in the neighborhood of $60 all-in. The most expensive items are the TFT, ESP32, and I2S DAC – but they are also the most useful and reusable components.
There are a number of great benefits from using a badge like this. It provides a set of commonly-used peripherals guaranteed to work together. It allows you to try out a number of different ideas very quickly by freeing you up from the whole repeated breadboarding and hardware-debugging process. And let’s face it, breadboarded controls are usually pretty awkward and don’t provide an enjoyable user experience. It also facilitates creating libraries, leading to code re-use, and accelerated development.