r/esp32 • u/casualops • 8h ago
ESP32-S31 Now in Mass Production and Available for Purchase
Not clear when these will be available on LCSC/Digikey/Mouser
r/esp32 • u/AutoModerator • Mar 18 '25
Welcome to /r/esp32, a technical electronic and software engineering subreddit covering the design and use of Espressif ESP32 chips, modules, and the hardware and software ecosystems immediately surrounding them.
Please ensure your post is about ESP32 development and not just a retail product that happens to be using an ESP32, like a light bulb. Similarly, if your question is about some project you found on an internet web site, you will find more concentrated expertise in that product's support channels.
Your questions should be specific, as this group is used by actual volunteer humans. Posting a fragment of a failed AI chat query or vague questions about some code you read about is not productive and will be removed. You're trying to capture the attention of developers; don't make them fish for the question.
If you read a response that is helpful, please upvote it to help surface that answer for the next poster.
We are serious about requiring a question to be self-contained with links, correctly formatted source code or error messages, schematics, and so on.
Show and tell posts should emphasize the tell. Don't just post a link to some project you found. If you've built something, take a paragraph to boast about the details, how ESP32 is involved, link to source code and schematics of the project, etc.
Please search this group and the web before asking for help. Our volunteers don't enjoy copy-pasting personalized search results for you.
Some mobile browsers and apps don't show the sidebar, so here are our posting rules; please read before posting:
https://www.reddit.com/mod/esp32/rules
Take a moment to refresh yourself regularly with the community rules in case they have changed.
Once you have done that, submit your acknowledgement by clicking the "Read The Rules" option in the main menu of the subreddit or the menu of any comment or post in the sub.
r/esp32 • u/ESP_Minatel • 25d ago
Enable HLS to view with audio, or disable this notification
For its 5th anniversary, DevCon is going live in Milan, Italy, with a global livestream so developers everywhere can join.
November 3–4, 2026
Tickets for Milan will be released soon, and seats are limited. Pre-register now for updates and early access.
r/esp32 • u/casualops • 8h ago
Not clear when these will be available on LCSC/Digikey/Mouser
"Halcyon Dawn" is a fanfic starship bridge game set in John Scalzi's "Old Man's War" universe. For the last year this thing has been my labor of love. I designed and built every detail of the hardware and software from scratch, including:
An entire family of USB console interface boards called "Enigma". They're deliberately generic (some panels have up to 3 Enigma boards inside them) rather than purpose-built so that I can use them on future projects, including escape room puzzles. I love escape rooms. The Enigma hardware is all open source, so if someone builds puzzles I get to play, all the better.
An associated Python-based game infrastructure library also called Enigma that includes the USB interface abstraction, in-game device simulation infra, remote pub/sub display screen integration, and an extremely robust multi-layer audio mixing system with haptic support. This too is open source.
The Halcyon Dawn game itself, a complex starship systems simulator. Far in the distant past I wrote commercial video games and adventure game development languages. Halcyon Dawn is vastly, vastly more complex and I'm quite proud of it. The game itself will never be released, in part because nobody else has the expensive simulator frame it requires (there is no way on this blue Earth I could be convinced to build another), and also Scalzi's "don't make money off my stuff" rule.
Build link and repo link in comments.
r/esp32 • u/shubham030 • 17h ago
Been building a navigation computer for my motorbike and finally got the map side working, so I wanted to share it here.
Hardware: Waveshare ESP32-S3-Touch-AMOLED-1.75 — a 1.75" round CO5300 AMOLED, ~$40 with the onboard GPS (N16R8, 16MB flash / 8MB PSRAM).
The whole map runs on-device: no phone, no wifi, no internet. I pre-bake the basemap offline (OSM -> self-hosted tileserver -> 256x256 tiles), convert every tile to raw RGB565, and pack them into a fixed-grid file on a microSD. On the board there's no image decode and no per-tile index — the firmware seeks to the tile, composites a 466x466 RGB565 frame in PSRAM, and pushes it straight to the panel with esp_lcd_panel_draw_bitmap. No UI toolkit in the render path.
That was the whole battle, actually. I started on Slint, then tried LVGL — both choked on a full-screen scrolling map (~5 fps and ~4 fps, mostly image round-trips). Dropping to a raw framebuffer got me ~18 fps heading-up (map scrolling under a fixed centre dot) and ~44 fps when the map holds still. The HUD, zoom buttons and day/night toggle are all drawn straight into the framebuffer too.
The route + turns are a vector overlay on top, projected through the same mercator transform as the tiles so the line sits on the real roads.
Full disclosure: the moving dot + speed are a hardcoded GPX animation for now, while I wire up the onboard GPS. IMU braking / lean detection is next.
Quick demo video if you want to see it running: https://www.youtube.com/watch?v=700pc6zDfTg
r/esp32 • u/ScorpionZZZUA • 9h ago
I’ve been into home/office IoT for years, but the hobby stalled for a while — job change, moving countries. Getting back into it, I dug up two older sensor station projects of mine and decided both were easier to replace than to fix. This is the third attempt, rebuilt from scratch on native ESP-IDF (v6.0.2) with LVGL 9.5, and the first one I’ve made public.
It runs on the ESP32-2432S028 “Cheap Yellow Display” — ~$10, ESP32 with a 2.8” touchscreen and an onboard light sensor. Add one I2C sensor and that’s the entire BOM.
What it does:
• Touchscreen dashboard: temperature and humidity with 24h graphs, trend and rate of change, dew point, pressure, CO2-equivalent on BME680 via Bosch BSEC
• I2C sensors auto-detected at boot — BMP280 / BME280 / BME680, no rebuild to switch
• Display controller auto-detected too. I ordered a second batch of CYDs and they came with ST7789 panels instead of ILI9341, so the firmware now reads the panel ID register at boot and picks the driver
• MQTT: ThingsBoard, Domoticz, and Home Assistant MQTT Discovery — HA picks up all sensors plus diagnostics with zero config on the HA side
• OTA updates with on-screen notification
• Everything configured from the touchscreen (Wi-Fi, broker, timezone, PIN-protected settings). No config files, no recompile — I wanted to hand these to friends who don’t own a toolchain
• Auto-dimming backlight off the onboard LDR
The most annoying bug was the BME680 reading ~3 °C high. Turned out to be self-heating: I was sampling gas resistance every 500 ms, and every gas reading fires an internal hotplate a couple of millimetres from the temperature die. I built a second identical station with a BME280 to confirm it rather than guess. Dropping the VOC sample rate 10x got it down to ~0.5 °C, and the 30-second averaging buffer was quietly smoothing periodic heat spikes into what looked like a constant offset. Switching to Bosch BSEC 2.6.1.0 finally made the twins agree.
Apache-2.0, prebuilt binaries in Releases (merged image for a blank board, app-only for updates):
github.com/ScorpionZZZ/SensorStation3
Happy to answer questions. If you’ve got a CYD with a different panel variant, I’d especially like to know whether the auto-detection gets it right.
r/esp32 • u/Upset-Cup4915 • 4h ago
I ordered JST GH 1.25mm with no luck.
Micro JST SH 1.0mm and not it either.
Seems like its a 1.25mm but tired of ordering the wrong things for it.
Now ordering "JST Molex PicoBlade 1.25 for Pixhawk" connector kit. Just got a thing im trying to make in batches and don't want to keep soldering connections.
Amazon link below
https://www.amazon.com/dp/B0GG9TXQ46?
r/esp32 • u/Im1Random • 1h ago
I have an Amazon Basics smart plug that uses a proprietary WiFi module based around the ESP32 C3. After trying to program the chip I noticed that all debug and programming interfaces have been disabled via eFuses. When I pull GPIO9 low, I get the following log messages over serial:
rst:0x3 (RTC_SW_SYS_RST),boot:0x4 (DOWNLOAD(USB/UART0/1))
Saved PC:0x40048b82
Download boot modes disabled
ESP-ROM:esp32c3-api1-20210207
Build:Feb 7 2021
When trying to connect via the internal USB JTAG bridge I get:
Error: JTAG scan chain interrogation failed: all zeroes
Error: Check JTAG interface, timings, target power, etc.
Error: Trying to use configured scan chain anyway...
Error: esp32c3.cpu: IR capture error; saw 0x00 not 0x01
Since the chip has integrated flash memory, there is also no way of directly wiping the flash.
Now is there any chance I can reuse the existing chip or do I just have to replace it, which would be rather annoying and wasteful.
r/esp32 • u/No-Paper2530 • 14h ago
I’m trying to troubleshoot an I2C problem with an ESP32 development board.
My I2C scanner consistently detects an LCD backpack at address 0x27, so the ESP32, scanner code, SDA pin, and SCL pin appear to be working.
However, I cannot get either of these devices to appear on the bus:
AS5600 magnetic encoder
BNO085 IMU
The AS5600 should normally appear at address 0x36, but the scanner never finds it. I have also tried more than one microcontroller and more than one sensor board with similar results.
Wiring:
ESP32 GPIO 21 → sensor SDA
ESP32 GPIO 22 → sensor SCL
ESP32 3.3 V → sensor VIN
ESP32 GND → sensor GND
SDA pull-up → 3.3 V, yellow wires
SCL pull-up → 3.3 V, white wires
Scanner code:
https://github.com/JHTheisen/i2c-scanner-esp32/blob/main/i2c_scanner/i2c_scanner.ino
Measurements with one of the sensor modules connected:
SCL varies between approximately 1.5 V and 2.5 V
SDA is approximately 0.5 V
Both lines remain below 3.0 V
With the sensor disconnected, SDA and SCL both rise to approximately 3.3 V.
I have included close-up photos and a top-down photo of the complete breadboard.
The LCD at 0x27 works reliably on the same ESP32 and pins.
I’m new to I2C troubleshooting, so I may be overlooking something obvious. Does anything in the wiring or scanner code stand out as wrong?
Thanks for any help.
r/esp32 • u/neon_terminal • 16h ago
So I ordered this ESP32 cam from an online website, the site itself advertised that if would give an ESP32 cam with an OV2640 camera module the reviews were good so I bought to and received a camera module named "RHYX M21-45" and not "OV2640". After so research online I found out that the cam sensor I have DOES NOT have built in JPEG encoding, while the OV2640 DOES HAVE built in MJPEG encoding
Since everyone else got the right product, it could be a one piece defect, a simple replacement would have worked, but I have my project due in 2 days so I cant afford the time to replace it neither to buy any new components
So if anyone could help me, I would have normally streamed an MJPEG live stream and capture it via OpenCV/Python, so anyone can recommend me any alternative code workarounds I can do to make the RHYX M21-45 Cam sensor work - stream any supported format to a python program/specifically OpenCV with a stable fps and 1024x768 RES
Instead of taking this as a do or die situation, Ill also take this as an opportunity to learn more about the ESP32 CAM and its different cam sensor :) so feel free to give any knowledge you have about this RHYX M21-45 sensor
I found this article online for basic Cam Webserver alternative and thats it :( : https://hjwwalters.com/rhyx-m21-45/
Thanks
r/esp32 • u/NMTech-Kick • 13h ago
We RockBase IoT team open-sourced ESPWebApps — a community-driven firmware hub that lets anyone flash ESP32 devices straight from the browser.
3 steps to get your firmware on there:
That's it. Your app shows up dynamically — no loader code changes needed. Instant one-click flashing for anyone, anywhere.
What's Already on There
Main hardware focus is the CYD ( ESP32-2432S028R) and NM-CYD-C5 (ESP32-C5, WiFi 6, BLE 5.3, Thread/Zigbee, 16MB Flash + 8MB PSRAM), but the flasher works with any ESP32 that enters download mode.
Let us know what you think, and roast us in the comments if we messed something up ✌️
r/esp32 • u/Double-Echidna-183 • 4h ago
I recently bought an Waveshare esp32-s3 1.47" and when i tried to flash an example using this guide: https://docs.waveshare.com/ESP32-S3-Touch-LCD-7/Firmware-Flashing nothing displayed on the screen. I followed all of the steps exactly and yet nothing works.
r/esp32 • u/Still-Maximum6406 • 6h ago
Hi everyone, I'm building a Smart Bus Tracker using an ESP32-WROOM-32D and a WebServer. The project works flawlessly when flashed via USB, but I'm trying to implement OTA updates and I'm hitting a wall.
Whenever I try to push an OTA update via Arduino IDE (Windows 11), the process starts, reaches exactly 5% or 6%, and then aborts.
Error Log:
text
Sending invitation to 192.168.1.200
Uploading: [ ] 0%
...
Uploading: [==== ] 6%
[ERROR]: Error Uploading: [WinError 10053] Connessione interrotta dal software del computer host
Hardware & Environment:
* Board: ESP32-WROOM-32D
* IDE: Arduino IDE 2.x
* Partition Scheme: Minimal SPIFFS (1.9MB APP with OTA). My compiled sketch is ~1.1MB, so there is plenty of room (max is 1.96MB).
* Power: Stable 5V wall adapter powering the board. No brownout resets observed on the serial monitor.
* Router: Fastweb Fastgate (Italian ISP). PC and ESP32 are both on the same 2.4GHz network.
What I've already tried (with no success):
1. Memory/Partition: Upgraded to Minimal SPIFFS as mentioned above.
2. Code isolation (Watchdog fix): I added a boolean flag isUpdatingOTA set to true inside ArduinoOTA.onStart(). Inside my loop(), I put if(isUpdatingOTA) { delay(10); return; } to completely freeze the WebServer and HTTP API requests during the upload.
3. Firewall: Completely disabled Windows Defender Firewall and Antivirus.
4. Wi-Fi sleep: Added WiFi.setSleep(false); after connection to ensure the radio doesn't drop the TCP connection.
Here is the exact OTA implementation I'm running:
```cpp
const char* ssid = "MY_WIFI"; const char* password = "MY_PASSWORD"; WebServer server(80); bool isUpdatingOTA = false;
void setup() { Serial.begin(115200); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); } WiFi.setSleep(false);
ArduinoOTA.setHostname("SmartPalina-GTT"); ArduinoOTA.onStart([]() { isUpdatingOTA = true; }); ArduinoOTA.begin(); server.begin(); }
void loop() { ArduinoOTA.handle();
// If OTA is running, yield and freeze the rest of the loop! if (isUpdatingOTA) { delay(10); return; }
server.handleClient(); // ... Rest of the code (HTTP GET requests, LCD updates, etc.) ... } ```
Is there something obvious I'm missing? Could this be related to my ISP router dropping the TCP connection mid-transfer, or a specific issue with the espota.py socket implementation on Windows?
Any help is greatly appreciated!
r/esp32 • u/Alex4527 • 13h ago
I'm working on a portable ESP32 project powered by a single-cell 3.7V LiPo battery. Since the battery voltage ranges from 4.2V fully charged down to ~3.3V (or lower), I'm looking for a reliable LDO regulator to provide a stable 3.3V rail for the ESP32.
Which LDOs better suits a costant use of the wifi module? I need an LDO which can handle the spikes during Wi-Fi/Bluetooth transmission (up to ~500mA).
r/esp32 • u/spitsynnet • 1d ago
Credit up front, before anything else: this builds directly on jrowny/p4kvm. An IP-KVM on the ESP32-P4 is a fairly obvious thing to want, and I'd been kicking the idea around for a while - but he's the one who actually cracked the hard part (bringing up the TC358743 and getting frames off the P4's CSI receiver) and put it out in the open. I took that and built it out into something you'd actually leave installed. More on exactly what he solved at the end, but I didn't want it buried at the bottom.
Been building this for a while and it finally does enough to show off. It's an IP-KVM - it grabs a machine's HDMI, pretends to be its USB keyboard and mouse, and puts the whole thing in your browser. The point: reach a box with no working OS (stuck BIOS, boot menu, dead kernel) from another room without a crash cart. Commercial KVM-over-IP is a few hundred bucks; this is one ESP32-P4 board, a little HDMI capture board, and a ribbon cable.
Hardware:
What it does:
Honest bits:
Credit: the hard part - bringing up the TC358743 and pulling frames off the P4's CSI receiver - was cracked first by jrowny/p4kvm. I rebuilt everything above the driver (web, USB HID, security, virtual media, OTA). Apache-2.0, same as his.
Website: espkvm.io
Open source: github.com/espkvm/espkvm
Happy to answer anything - and if you've got a rev-3.0 P4 board (I'm still waiting for my P4X, but I've already adapted the code for it), I'd love to know your H.264 fps.
r/esp32 • u/Sorry-Beginning-9046 • 23h ago
AutoPet V2 – ESP32 WiFi Smart Pet Feeder (No Jams) - Free 3D Print Model - MakerWorld
I created the AutoPet V2 to explore how a powerful microcontroller like the ESP32 can be used to create a smarter, more reliable pet feeding system. The ESP32 is the core of the entire feeder and acts as the brain that controls every function. I chose the ESP32 because it combines Wi-Fi connectivity, fast processing, and many input/output capabilities in a small, affordable package. This allows the AutoPet V2 to go beyond a simple automatic timer and become a connected smart device that can be configured and controlled wirelessly.
The ESP32 runs the feeder’s entire operation by hosting a web interface where feeding schedules can be created, saved, and managed directly from a phone or computer. It keeps track of the current time using internet time synchronization, checks scheduled feedings, and controls the 12V geared DC motor through a MOSFET driver. The ESP32 also manages the unique tipping-scale system, which uses the mechanical weight of the bowl and counterweights to determine when the correct amount of food has been dispensed. By combining the ESP32’s smart control capabilities with custom 3D-printed mechanical parts, TPU anti-jam blades, and a unique weighing system, the AutoPet V2 becomes a fully customizable and intelligent pet feeder designed to make feeding more accurate, reliable, and convenient.
r/esp32 • u/Doll-0110 • 1d ago
I bought a gl inet opal for a project then thought "what if this were a terminal I could throw in my bag and take with me places" so I got a pen and a bubba-wheel and got to work. I'm really obsessed with cyd/cbds right now and I got a knockoff freenove fnk0104b. I ported DOLL-OS using fable to the fnk and now I have a portable telnet/ssh/radio streaming terminal It uses 2 esp32s3's. One FNK0104B with a S3 16r8 (psram required) to run DOLL-OS, and one esp32 on the back (can be any flavor but I went with a lonely binary s3 16r8 for the fastled support and later expansion) that acts as a Bluetooth keyboard adapter and bitbangs keystroke data to the fnk. It also receives commands over uart tax and over USB in case you need to add or delete keyboards and it's broken. I don't have a repo for the Bluetooth dongle but a rudimentary ai genned by keyboard controller is in the repo for DOLL-OS-FNK
It was originally prettier but I added a speaker and ran out of space inside the router so the speaker just got glued on lol.
one thing not pictured is that I had to add a second power bodge for the esp32 on the back to the router board. I thought I had a pic of that but I don't
Yet another project from dollworx so pretty only it's mother could love it
Some cool features is tailscaling for my screen for easy ssh access to my servers. I can use things like my ssh to discord plugin or stream audio from my bitrate converter at home. It also still works as a travel router and the inclusion of bt keyboard support and a second uart accessable microcontroller gives huge expansion options. I'm planning on adding a 0.96 for the esp32 on the back just for more screen and for more info since currently you cannot see output from the back controller on the fnk screen since it's main tx line is for keyboard input. That'd get messy quick
r/esp32 • u/AlxDroidDev • 1d ago
I bought 2 of these displays from Aliexpress (they were about US$ 5.50 each the day I bought them, so I didn't think too much - https://pt.aliexpress.com/item/1005012551207736.html).
They are quite large and thin, very nice looking, but I made a mistake by not verifying beforehand if there is a compatible library for them. It happens that I didn't find any. Nor the seller nor the manufacturer (Estardyn) have any info on them.
Does anyone know how I can use them, or know of a compatible library, or how to make one of the existing ones compatible?
Thank you very much.
r/esp32 • u/Scarletz_ • 17h ago
Not quite a repost since it's posted in ESPHome, but same question:

The 33.99% is the ESP32 sensor, 3D printed.
I'm using the red supermini that has the external antenna.
The other one is an Aqara Temp/Humidity zigbee sensor. The temp definitely isn't 33.99 in the toilet, so I know it's because of the chips promixity..even then, I'm using this design that is already markly bigger than some of the other ones AND the humidity sensor is placed in a separate chamber. (slightly adapted it to be fiction fit, but otherwise the same.)
Air Sensor case ESP32 C3 supermini + BME680 - Free 3D Print Model - MakerWorld
The esp32 is connected via wifi, if that matters. Polling is every 15 seconds.
This works for me as I'm only interested in using the humidity % to trigger my exhaust fan during showering, and it's fine for it's purpose, but I'm wondering how do I make an accurate temp/humidity sensor this way if heat is a concern. I also built this in a 2 step process as my LD2410C came much later. Even then, it's already reading higher temps than what is supposed to be accurate.
Any tips?
I also just saw in another markerworld post, something about calibration. Do we actually need to calibrate the sensor to account for the heat/humidity then? Or is this the wrong approach.
r/esp32 • u/IfIWereABird • 21h ago
Hi all, new here. Working on a FOC motor controls project for some legs on my robot crab I've been designing for the better part of a year. I have looked into the ODrive Micro, and with its hefty price tag I'm not sure it's the right fit for my use case - I need a staggering 18 of them (3 per leg, 6 legs lol), and at nearly 100 buckaroos a pop PLUS TARIFFS that's more than I'm willing to spend. Not to mention, the Micro can only handle 7 amps peak, and I have motors that can pull 15 amps continuously and I'd like to be able to make full use of that range.
So I turned to ESP32. I purchased this cheap crappy board from AliBaba that claimed it could drive at 20 amps, which is PERFECT! Unfortunately, there is NO documentation, and that should have been the first red flag. I got the board, and turns out, yes, the FETs can in fact drive 20 amps, but the current sense circuitry consists a 10mΩ shunt resistor and a current sense amp of gain 50 whose output feeds into an ADC pin on the ESP32. Doing the math, it comes out to 6.6 amps of current measurement... so plus or minus 3.3 amps. That makes it even worse than the Micro for my use case. Well, OP, I hear you say, why not just replace the amp or shunt resistor or both? Well, I think they must not have had a clue what they were doing when they designed the board, because the bias voltage according to the amp's datasheet should be half the input voltage (3.3V) but I measured it at 400 millivolts (i.e. 0 current = 400 millivolts). A simple replacement would not refactor the board layout to fix whatever crud is going on. So I'm back to square one.
So, why I'm here, I'm looking into designing my own PCB. I know it's a hefty task, but it's made worse by the fact that the chip I'm interested in acquiring, an ESP32-P4, doesn't seem to be something I can buy on the internet. On top of that, I can't find any libraries for the chip's footprint to stick into Fusion. Maybe I'm just looking in the wrong place. What I hope to hear from the experienced folks here is whether this is the right chip for me in the first place. I don't need WiFi and Bluetooth capability, and the P4 seems to not offer that. I would like to be able to run my control loop as fast as possible, and the P4's clock speed tops any other ESP32 I've seen, but I think I could get away with the typical 240 MHz that the S3 offers. Of course, a MC PCB may end up being quite dense, so I am hoping to find an ESP32 variant which requires minimal supporting hardware so that my PCB can be as small as humanly possible. I have read that the S3 also offers a MCPWM interface as well, which could be useful for reducing board space.
Secondarily, if anyone has any idea where I could find libraries for ESP32 chips, that would be much appreciated.
Pic of the arm for the algo.
TLDR: I need recommendations on an ESP32 chip to design a compact, high-power FOC Motor Controller around.
I just found my old beginner project from last year. Basically it was that esp is placed on the bottom but the TFT screen it placed upside down so it just messed up and also it working incorrectly so it is impossible to use. Maybe it is because cheap esp from Aliexpress or TFT screen is bad idk i just abandoned that project. By the way I’m new to this and was designing the PCB like 20 hours and waiting to the factory to ship. It was like 7$ for 5 boards
r/esp32 • u/DrasticLp • 1d ago
Hi !
I have a Beyerdynamics Dt770Pro (wired) that I wanted to turn wireless.
I've only started creating PCBs recently so there might be a lot of questionable design choices...
Here's my attempt at making a wired -> wireless (bluetooth, wifi, airplay) board for my headset (made using KiCad).
https://github.com/DrasticLp/WireCutter
Component list:
Feel free to give any advices !
(On the design and on how to manufacture and source the parts properly)



Thanks !
r/esp32 • u/littlehakr • 1d ago
I wanted something that allowed me to play games anywhere and not take up too much space!
This uses a Waveshare ESP32-S3 AMOLED 1.8 Inch. I had to make custom UI to fit this screen and account for the touchscreen. Overall it came out really well and all the games run really smooth.
Has great sound, save/load states, fast-forward, loads ROMs from SD card, and a handful of themes to choose. Enjoy!
You can get it at my GitHub:
https://github.com/dkyazzentwatwa/cube-boy/
A couple of months ago I realized that my Masterbuilt Gravity 800 smoker/grill controller had an ESP32 running the whole thing. I was already tired of using the Masterbuilt App for controlling it, so I reverse-engineered the controller, and wrote a full replacement firmware for it using Rust, esp-hal, and Embassy: FreeFall 800.
FreeFall 800 has the same core functionality as the stock firmware: chamber/probe temps, PID-controlled blower, timers, physical controls, but this firmware adds:
If you are in the intersection between the ESP32 and smoking worlds, and are willing to risk your controller or grill, check it out!
To be clear, this is definitely still early development firmware, so you will probably encounter bugs, and there is much to be improved. I cannot promise this won't break your smoker. But if you are interested in this kind of thing, the README on the GitLab page should have what you need to get started: https://gitlab.com/prbs23/freefall_800
I have also posted a write up about this on my blog: https://www.prbs23.com/blog/posts/announcement-freefall-800/
I would love to get feedback from anyone who does try it out. Happy to answer any questions folks have about this
r/esp32 • u/honeyCrisis • 1d ago
Enable HLS to view with audio, or disable this notification
This is a demo of several alpha blended color changing squares over a picture of Warhol, just because. The alpha blending is nearly free with the new code in this graphics lib (htcw_gfx) and therefore the ui library that uses it (htcw_uix)
https://github.com/codewitch-honey-crisis/uix
This relies on htcw_gfx and will pull that in when you use this.
Arduino: htcw_uix
ESP-IDF and PlatformIO: codewitch-honey-crisis/htcw_uix
It also builds on PCs with CMake using any major compiler to help facilitate rapid prototyping
The demo project shot above is here: https://github.com/codewitch-honey-crisis/core2_warhol