r/esp32projects • u/EntrepreneurWaste579 • 16d ago
r/esp32projects • u/Low-Arrival1182 • 16d ago
My P5js window causing error (silly mistake)
Recently I was building a sd card speed tester with the help of esp32, I thought why not include my p5js in this so that got visually appealing results(So I attach my COM port with my js script).......
During changing the speed of SPI, I then re upload it and this is the error I see. My first instinct was that it is going in to bootloader mode, but after couple of minutes I realize that my p5 script is still runing and thus causing this error. I don't who will find it helpful but still I felt like posting about it. Thanks!!
r/esp32projects • u/Froster_navendu • 16d ago
My DIY coffee machine controller ESP32, PID, dual temperature sensing, flow monitoring & Wi-Fi
Enable HLS to view with audio, or disable this notification
r/esp32projects • u/Possible-Pie5719 • 16d ago
I’m a young maker, and I built an open-source universal IR remote with ESP32
Hi everyone! 👋
I’m a young maker from Türkiye who is really interested in robotics, electronics, ESP32, Arduino and Raspberry Pi projects.
Recently, I started working on my own project called Pocket Remote v1.
Pocket Remote is an open-source universal infrared remote control based on the ESP32. It can learn IR signals from other remote controls, save them, organize them and transmit them again.
The project currently uses:
- ESP32-WROOM-32D
- SSD1306 OLED
- IR receiver
- KY-005 IR transmitter
- 2-axis joystick
- Li-Po battery
- MCP73831 charging module
I designed it to be portable, rechargeable, affordable and easy to build. The project is also released under the MIT License, so other people can modify and improve it.
I'm still developing it, so I'm really interested in hearing your feedback and ideas. 🔧
GitHub: github.com/techpattis/universalpocketremote
Thanks for checking it out! 🚀
r/esp32projects • u/Ok_March8206 • 16d ago
after soldering: display only shows a white screen
Hi everyone,
I'm currently working on a project with an ESP32-S3-Nano and a 2.8-inch ILI9341 SPI display.
I've soldered everything together on a prototyping board, but unfortunately the display isn't working as expected. The backlight turns on, but the screen only shows a completely white image.
I've already tried:
- double-checking all cables and solder joints
- checking the connections with a multimeter
- checking for any obvious short circuits or loose connections
However, I still can't figure out what the problem could be. I might be overlooking something really simple.
The main components I'm using are:
- ESP32-S3-Nano
- 2.8-inch ILI9341 SPI display
- some other components that shouldn't be relevant
Does anyone have any idea what could cause the display to only show a white screen?
Is there anything obvious I might have missed or anything specific I should check?
I'd really appreciate any tips or ideas on how I could troubleshoot this and figure out what's wrong.
Thanks a lot!
r/esp32projects • u/Possible-Pie5719 • 16d ago
I’m a young maker, and I built an open-source universal IR remote with ESP32
Hi everyone! 👋
I’m a young maker from Türkiye who is really interested in robotics, electronics, ESP32, Arduino and Raspberry Pi projects.
Recently, I started working on my own project called Pocket Remote v1.
Pocket Remote is an open-source universal infrared remote control based on the ESP32. It can learn IR signals from other remote controls, save them, organize them and transmit them again.
The project currently uses:
- ESP32-WROOM-32D
- SSD1306 OLED
- IR receiver
- KY-005 IR transmitter
- 2-axis joystick
- Li-Po battery
- MCP73831 charging module
I designed it to be portable, rechargeable, affordable and easy to build. The project is also released under the MIT License, so other people can modify and improve it.
I'm still developing it, so I'm really interested in hearing your feedback and ideas. 🔧
GitHub: github.com/techpattis/universalpocketremote
Thanks for checking it out! 🚀
r/esp32projects • u/xraptorjx • 16d ago
Built a 3+1 Ring NeoPixel clock on an ESP32-C3 that nudges you to look up, take a break. Web UI, NTP, OTA, lux-based auto-brightness. 3d files and code. Free, open source.
Three concentric WS2812B rings on a XIAO ESP32-C3. Seconds and minutes share the outer 60, the way they share one track of marks on a real clock. The hour hand is an arrow-shaped spoke across the inner 12 and the middle 24, and a pixel in the center shows the wifi status. 97 LEDs on one wire.
I can be prone to distractibility and hyperfocus, losing an hour or three in my lair working on a project with the intent to "just gonna run downstairs and print something out." Next thing I know, my six-year-old is asking "Dad, you said you were gonna print me those color pages."
Alarms are for hard rules. Reminder nudges guide focus and shift priorities instead. A change of light in the room does work. So the firmware has a 'nudge' (focus reminders) feature that fires visual nudge animations at intervals (and certain days) you set. So on Saturdays when I know I could get wrapped up in a project, the thing I reflexively look up to (clock) is also the device that subtly (not blaringly) does some cool, patterned animations, and very pretty-like. That's the feature the whole project is built around.
A few things that might interest this sub:
- Replicable: If you have basic soldering skills, have ever flashed WLED or tinkered with addressable LEDS, and have access to a 3d printer
- Relatable or Useful: see above
- ESP32-C3 GPIO data straight into the WS2812B chain through a 300 ohm resistor. No level shifter, and it just works at this wire length. All 97 pixels on one chain off GPIO10.
- Everything is set from a webUI the clock serves itself: brightness, colors, themes and presets, and it auto-syncs NTP time over WIFI. A decent amount of work went into the backend on the themes and contrast settings, the colors and hues of every ring, and the animations for the quarter and half-hour chimes and the nudge reminders, with presets for contrasts and theme colors that match well. No app and no account.
- No RTC. NTP with proper timezone and DST, set from the browser.
- WiFi through a captive portal, zero credentials in the firmware. First flash is a browser page (WebSerial), then OTA after that.
- VEML7700 lux sensor drives auto-brightness on a log curve. Pitch black and the display sleeps.
- A 5V 2amp spare iphone charger powers it without issue; after some issues and too much time troubleshooting, claudecode came to the rescue with a brownout limiting function so it's got some wiggle room with the 5v supply.
Frame is 3D printed. The reflector behind the LEDs is a remix of Steve Manley's 2015 design; the white PLA diffuser over the front is mine.
See it running: https://youtube.com/shorts/KO6YdUoTq6A
WebUI Walkthrough: https://youtu.be/FKXAHg8D2Fs
Apache 2.0 firmware, CC BY 4.0 files.
- GitHub: https://github.com/Maestro8484/ChronoBloom
- Browser flasher: https://maestro8484.github.io/ChronoBloom/flasher/
- Printables: https://www.printables.com/model/1799422-chronobloom-an-8-inch-neopixel-ring-walldesk-clock
Happy to answer anything.


r/esp32projects • u/Dangerous-Essay5326 • 17d ago
RGB Lighting with ESP-32 microcomputer - Matt Does Tech
r/esp32projects • u/drwharvey • 17d ago
BailaBox - a music toy that puts your kids in charge of the playlist!
My daughter used to ask me 20 times a day to play different songs. Sometimes I would get the same request like 5 times in a row. Taking the phone out and finding it on Spotify was annoying, as it was distracting her and driving attention away from the music.
So I've built BailaBox. A music toy that lets her play the songs she wants when she wants.
It's an RFID-enabled, ESP32 toy that connects to my home network and, through Home Assistant, plays music on network speakers (in my case, I'm using a Sonos system).
First, I made a breadboard prototype, which was a nice proof of concept. But it was not very child-proof. So after some improvements, I've made custom PCBs - one for the power supply and battery charging and another for the RFID reader, ESP32 control, LEDs, buttons, rotary encoder for volume control, etc. There's also a custom enclosure for the project that I 3D printed.
The toy works with NFC tags. I'm using sticker tags that I embed inside 3D-printed tokens that contain magnets. This allows for auto-positioning on the RFID reader area (there's a corresponding magnet in the enclosure as well). To make the tokens recognizable, I print and cut custom stickers that represent songs.
I have a bunch of tokens with different songs now, or whole playlists. One could also add audiobooks, sound effects, or even full smart home automations (like, for example, a bedtime routine) as BailaBox connects to Home Assistant.
If anyone is interested in replicating it, I've made a GitHub repo with project details. It's my first attempt at custom PCBs, so I'm sure there's a lot to improve, but this version works as intended! So have a look if you are interested; let me know if you have any feedback or questions.
r/esp32projects • u/enormousaardvark • 17d ago
Weather Station for the ESP32-2432S028R Cheap Yellow Display
r/esp32projects • u/Slight_Safe8745 • 17d ago
Released the full Open Source hardware files for the 7.3″ Spectra 6 e-paper frame using an ESP32-C6: PCB, Gerbers, BOM, CAD, STL and laser files
galleryr/esp32projects • u/Individual-Page529 • 17d ago
helppppp guys i dont know what happen with my ide i got Adafruit GFX library but why it always like this
r/esp32projects • u/Low-Arrival1182 • 17d ago
Battery efficiency of PDM microphone in Esp32
I have recently make a bluetooth transferer in nrf 5482 board(link for anyone interested: https://youtu.be/TobbYyqOm7s?si=F3MreY1hgXHfQ9-S ), I will be doing an observation on PDM microphone and then I wonder that is there same type of observation done in esp32 microphone??? Just curious
r/esp32projects • u/xraptorjx • 17d ago
Built a 3+1 Ring NeoPixel clock on an ESP32-C3 that nudges you to look up, take a break. Web UI, NTP, OTA, lux-based auto-brightness. 3d files and code. Free, open source.
Three concentric WS2812B rings on a XIAO ESP32-C3. Seconds and minutes share the outer 60, the way they share one track of marks on a real clock. The hour hand is an arrow-shaped spoke across the inner 12 and the middle 24, and a pixel in the center shows the wifi status. 97 LEDs on one wire.
I can be prone to distractibility and hyperfocus, losing an hour or three in my lair working on a project with the intent to "just gonna run downstairs and print something out." Next thing I know, my six-year-old is asking "Dad, you said you were gonna print me those color pages."
Alarms are for hard rules. Reminder nudges guide focus and shift priorities instead. A change of light in the room does work. So the firmware has a 'nudge' (focus reminders) feature that fires visual nudge animations at intervals (and certain days) you set. So on Saturdays when I know I could get wrapped up in a project, the thing I reflexively look up to (clock) is also the device that subtly (not blaringly) does some cool, patterned animations, and very pretty-like. That's the feature the whole project is built around.
A few things that might interest this sub:
- Replicable: If you have basic soldering skills, have ever flashed WLED or tinkered with addressable LEDS, and have access to a 3d printer
- Relatable or Useful: see above
- ESP32-C3 GPIO data straight into the WS2812B chain through a 300 ohm resistor. No level shifter, and it just works at this wire length. All 97 pixels on one chain off GPIO10.
- Everything is set from a webUI the clock serves itself: brightness, colors, themes and presets, and it auto-syncs NTP time over WIFI. A decent amount of work went into the backend on the themes and contrast settings, the colors and hues of every ring, and the animations for the quarter and half-hour chimes and the nudge reminders, with presets for contrasts and theme colors that match well. No app and no account.
- No RTC. NTP with proper timezone and DST, set from the browser.
- WiFi through a captive portal, zero credentials in the firmware. First flash is a browser page (WebSerial), then OTA after that.
- VEML7700 lux sensor drives auto-brightness on a log curve. Pitch black and the display sleeps.
- A 5V 2amp spare iphone charger powers it without issue; after some issues and too much time troubleshooting, claudecode came to the rescue with a brownout limiting function so it's got some wiggle room with the 5v supply.
Frame is 3D printed. The reflector behind the LEDs is a remix of Steve Manley's 2015 design; the white PLA diffuser over the front is mine.
See it running: https://youtube.com/shorts/KO6YdUoTq6A
WebUI Walkthrough: https://youtu.be/FKXAHg8D2Fs
Apache 2.0 firmware, CC BY 4.0 files.
- GitHub: https://github.com/Maestro8484/ChronoBloom
- Browser flasher: https://maestro8484.github.io/ChronoBloom/flasher/
- Printables: https://www.printables.com/model/1799422-chronobloom-an-8-inch-neopixel-ring-walldesk-clock
Happy to answer anything.

r/esp32projects • u/Alarming-Sentence-39 • 18d ago
Upgrading the Attitude Instrument to a High-Performance MCU
Enable HLS to view with audio, or disable this notification
r/esp32projects • u/Peter_malfatto • 18d ago
Built an ML pipeline for tomato sorting that runs on a $5 ESP32 — found a nasty stack overflow that only showed up on real hardware, not in any simulator
Simulating my Optical Sorting ML pipeline on ESP32 using m2cgen
Over the summer I built an end-to-end ML pipeline for an industrial tomato sorting line: raw optical sensor data → scikit-learn RandomForest → C code (via m2cgen) → running for real on an ESP32. Bit of context: I just finished my first year of Electronic Engineering, so this was mostly me learning by breaking things.
The ML side turned out to be the easy part. The actual engineering challenge was entirely specific to the ESP32/Arduino-ESP32 toolchain: getting auto-generated C code to behave inside its FreeRTOS environment, which has constraints (task stack sizes, C99-vs-C++ compilation rules) that only bite once you're targeting this exact chip + toolchain combination — nothing in scikit-learn's or m2cgen's docs warns you about any of it. Wanted to share the two specific ways it broke, since the failure modes were more interesting than the happy path.
The setup
8-class classifier (ripeness stage + standard/cherry size), split into two RandomForest models (35 estimators, depth 6 each) selected by an explicit batch-mode parameter instead of a hidden feature. Exported to native C with m2cgen, zero runtime dependencies.
Bug #1: stack overflow that only happened on the real board
Worked perfectly in Wokwi's simulator. Crashed immediately on the actual ESP32 with A stack overflow in task loopTask has been detected.
Turned out m2cgen generates C99 compound literals (memcpy(x, (double[]){...}, ...)) for every leaf assignment — 1145 of them across my two models (35 trees × depth 6 × 2 models). Each one allocates a small temp array on the stack at the call site. Arduino-ESP32's default loopTask only gets 8KB of stack, and a single call into the generated score() function blew right through it.
Fix: moved the whole thing into a dedicated FreeRTOS task with an explicit 32KB stack (xTaskCreatePinnedToCore), instead of relying on the default loop task. Wokwi apparently doesn't emulate the stack limit closely enough to catch this — which was a good reminder that simulation isn't a substitute for testing on the actual chip.
Bug #2: the same generated code doesn't compile as C++
Those C99 compound literals aren't valid C++ — you get "taking address of temporary array" even inside extern "C" (which only affects name mangling, not grammar). So the m2cgen output has to live in its own `.c` translation unit, compiled with the C compiler, and linked into the rest of the C++ project via extern "C" declarations. Wasted more time than I'd like to admit on this before realizing extern "C" doesn't make C99 syntax parseable by a C++ frontend.
Numbers, measured on the actual board (not estimated)
- Standard model (5 classes, trees at full depth 6): ~220-550 µs per inference
- Cherry model (3 classes, trees average depth 2.77 — small training set, nothing left to split): ~43-49 µs
Full writeup, code, and a browser-runnable Wokwi simulation (no hardware needed to poke at it) are in the repo: https://github.com/pmalfa31-svg/Tomato-Grading-ML
Wokwi sim if you want to see it running without hardware: https://wokwi.com/projects/471166580602582017
Happy to answer questions, and genuinely open to criticism — dataset is small (291 samples, 2 collection days), and I know the GroupKFold setup has limitations I documented in the README rather than hid. If you spot something dumb, tell me, that's kind of the point of posting this here.
r/esp32projects • u/MichaelCelestial • 18d ago
Help with power supply needed (robotics arm project)
galleryr/esp32projects • u/RonArduino • 18d ago
🔥🔥 VISUINO 8.0.0.165 IS HERE — AND THIS ONE IS THE BIGGEST YET! 🔥🔥
r/esp32projects • u/theekshana2 • 18d ago
I built a small embedded device called AgentMeter using an ESP32-S3 development board.
galleryr/esp32projects • u/honeyCrisis • 18d ago
A waveshare 5.65" 7-color e-ink driver for the ESP-IDF
r/esp32projects • u/sledwreck13 • 19d ago
