// the find
luc-github/ESP3D
FW for ESP8266/ESP8285/ESP32 used with 3D printer
ESP3D adds WiFi control to 3D printers and CNC machines by running on a cheap ESP8266/ESP32 chip wired to the printer's UART. It speaks G-code passthrough, hosts a web UI, and supports Marlin, Grbl, Repetier, and Smoothieware. For makers who want remote monitoring and file uploads without replacing the printer's main board, this is the go-to solution.
The command set is thorough — 80+ ESP-prefixed commands cover everything from WiFi config to file management to OTA updates, all accessible over serial, HTTP, WebSocket, or Telnet. The modular architecture under esp3d/src/modules/ means you can compile out features you don't need, which matters when you're targeting an ESP8266 with 1MB flash. WebDAV support is a genuinely useful addition — drag-and-drop file transfers from your OS without a dedicated client. The web-based configurator at esp3d.io generates configuration.h for you, which eliminates the most common first-time user mistake of misconfiguring the build.
The configuration.h approach is old-school Arduino pain — one wrong #define and it silently compiles the wrong thing; there's no compile-time validation beyond basic sanity checks. The embedded web UI is a separate repo (ESP3D-WEBUI) with its own version matrix, so you can easily flash mismatched firmware and UI versions and end up debugging ghost behavior. The contributor list in the README contains two all-contributors tables that are clearly duplicated, which signals the repo housekeeping isn't tight. The 3.1 branch appears to be the active development line but the default branch relationship isn't obvious from the README, which will confuse new users trying to figure out which version to use.