Core One ESP32-S3 Gcode Console/Progress Viewer
 
Notifications
Clear all

Core One ESP32-S3 Gcode Console/Progress Viewer  

  RSS
gb160
(@gb160)
Reputable Member
Core One ESP32-S3 Gcode Console/Progress Viewer

This isn't so much as a mod, more of an addition really.
This started off as a way of allowing me to enter specific gcode commands, like really precise X/Y/Z movements, without the overhead of running an ocotoprint setup.
I knew it was possible to enter these commands over the serial interface so I went about writing some esp32 firmware that would achieve this. I bought a couple of those tiny ESP32-S3 Super Mini boards, these things are tiny, no bigger than a postage stamp (at least where I live). 

This basically acts as a USB Host and runs a simple web server where I can input GCode commands to execute, but while I was doing that I noticed the Core one is basically spitting out relatively useful status updates continuously over serial, so I just reported the values to the web browser as a nice little bonus.

I know there are other ways to get this information, Prusa Connect/Link etc , but it always seemed a bit cumbersome to have to open another app to do this, so I wrote a simple Menubar app for MacOS that is constantly reporting these values to the Menubar in the top right of the desktop....that way I can be working on other stuff and with a quick glance up can see whats going on on my printer, print progress etc, without breaking my current work flow. I knew I'd find a use for that extra usbc port at the back of the Core One.

When you consider the esp32-s3 can be picked up for around £5 (even cheaper if you want to order from chin and wait a week) I just find the world we live in wild  these days...considering I grew up in the 80s where computers used tapes for storage and took up a quarter of the room 😂

Posted : 12/09/2025 4:16 pm
3 people liked
gb160
(@gb160)
Reputable Member
Topic starter answered:
RE: Core One ESP32-S3 Gcode Console/Progress Viewer

Posted : 12/09/2025 4:23 pm
2 people liked
Ibashyougood
(@ibashyougood)
Member
RE: Core One ESP32-S3 Gcode Console/Progress Viewer

This is awesome! Can you share a guide to do this? 😀

Posted : 14/11/2025 10:59 pm
1 people liked
mnentwig
(@mnentwig)
Estimable Member
RE:

Nice... I haven't touched any console for G-code but it seems like a logical step.

ESP32 is an extremely capable platform, as long as you can fit the problem into the "hard" constraints like SRAM size. Beyond that (e.g. "WROVER modules" with SPI RAM) it stops being fun e.g. juggling GPIOs and strapping pins - for high volume, maybe. R&D would rather upgrade to a more expensive chip)

Random hint: Check Olimex ESP32 ethernet boards as platform. They are well accepted, judging by Digikey or Mouser stock for ETH connectivity. The LAN chip is "not recommended for new designs" but seems well-stocked for the foreseeable future. Power-hungry though, as in 350 mA/3.3 V (ETH locks the clock rate). Or use WLAN and forget everything I wrote 🙂 )

This post was modified 2 days ago 3 times by mnentwig
Posted : 14/11/2025 11:18 pm
1 people liked
gb160
(@gb160)
Reputable Member
Topic starter answered:
RE: Core One ESP32-S3 Gcode Console/Progress Viewer

I’ll tidy up the code and put in on GitHub when I get the chance mate. The web interface is much more polished now, those screenshots are from the very first version.

The only requisite is the esp32 must be one of the newer ones that supports usb host mode. The esp32 s3 is ideal as it’s cheap and tiny.

If you use the S3 or a version with just one usb port, you’ll need one of those usb-otg cables to power the esp, they’re cheap (around £$€1 from AliExpress/Temu)… you could apply power straight to the header pins on the esp but that’s a bit messy.

Posted : 14/11/2025 11:50 pm
2 people liked
gb160
(@gb160)
Reputable Member
Topic starter answered:
RE: Core One ESP32-S3 Gcode Console/Progress Viewer

One other thing, this isn't a case of just uploading a sketch in Arduino IDE..you'll probably have to install esp-idf as currently your wifi details will have to be hard coded somewhere.
The plan all along was to implement some sort of setup mode where Wifi details could be gathered, like virtually all other IOT devices. That part shouldn't be hard, but I'll look to see if there's another way to install the firmware without having to go through the ordeal of using esp-idf.

Unless someone already knows of a simpler way to get the code installed ?

Posted : 15/11/2025 7:52 am
mnentwig
(@mnentwig)
Estimable Member
RE:

 

Unless someone already knows of a simpler way to get the code installed ?

I use "esptool.py" with command line arguments but haven't yet shipped that (instead, using ESP-IDF for initial flashing in a test harness, later updates OTA).

Installing it via "pip" might be one option and there appear to be other solutions - web-based or executable.

For simplicity, I copy the AI-answer below. It's unconfirmed information but looks superficially correct (e.g. links at top)

https://www.espressif.com/en/support/download/other-tools
https://docs.espressif.com/projects/esp-test-tools/en/latest/esp32/production_stage/tools/flash_download_tool.html

Note, there may be references to the wrong processor (plain ESP32).

1. esptool.py (stand-alone, no ESP-IDF)

Official Espressif tool.

Pure Python.

Works on Windows, macOS, Linux.

Users only need:

Python installed

pip install esptool

Flash command example:

esptool.py --chip esp32 write_flash -z 0x1000 firmware.bin

Pros: reliable, official Cons: needs Python installed

2. Espressif WebFlasher (browser-only!)

This is usually the simplest for end-users.

Runs in Chrome/Edge/Opera using WebSerial.

No installation required.

You can create your own custom flashing webpage with:

device selection

“Flash firmware” button

progress bar

The official Espressif flasher template is here: https://espressif.github.io/esptool-js/

Your users just click Flash → select COM port → done.

Pros: Extremely user-friendly, zero installation Cons: Only works over WebSerial-compatible browsers

3. Espressif Flash Download Tool (Windows GUI)

Windows executable (no installation)

GUI for uploading .bin files to ESP32

Often distributed by companies as the end-user flasher

Pros: Stand-alone EXE Cons: Windows only; GUI is a bit “industrial”

This post was modified 2 days ago 2 times by mnentwig
Posted : 15/11/2025 9:40 am
2 people liked
gb160
(@gb160)
Reputable Member
Topic starter answered:
RE: Core One ESP32-S3 Gcode Console/Progress Viewer

 

Posted by: @mnentwig

 

Unless someone already knows of a simpler way to get the code installed ?

I use "esptool.py" with command line arguments but haven't yet shipped that (instead, using ESP-IDF for initial flashing in a test harness, later updates OTA).

Installing it via "pip" might be one option and there appear to be other solutions - web-based or executable.

For simplicity, I copy the AI-answer below. It's unconfirmed information but looks superficially correct (e.g. links at top)

https://www.espressif.com/en/support/download/other-tools
https://docs.espressif.com/projects/esp-test-tools/en/latest/esp32/production_stage/tools/flash_download_tool.html

Note, there may be references to the wrong processor (plain ESP32).

1. esptool.py (stand-alone, no ESP-IDF)

Official Espressif tool.

Pure Python.

Works on Windows, macOS, Linux.

Users only need:

Python installed

pip install esptool

Flash command example:

esptool.py --chip esp32 write_flash -z 0x1000 firmware.bin

Pros: reliable, official Cons: needs Python installed

2. Espressif WebFlasher (browser-only!)

This is usually the simplest for end-users.

Runs in Chrome/Edge/Opera using WebSerial.

No installation required.

You can create your own custom flashing webpage with:

device selection

“Flash firmware” button

progress bar

The official Espressif flasher template is here: https://espressif.github.io/esptool-js/

Your users just click Flash → select COM port → done.

Pros: Extremely user-friendly, zero installation Cons: Only works over WebSerial-compatible browsers

3. Espressif Flash Download Tool (Windows GUI)

Windows executable (no installation)

GUI for uploading .bin files to ESP32

Often distributed by companies as the end-user flasher

Pros: Stand-alone EXE Cons: Windows only; GUI is a bit “industrial”

Yeah I got the same results from Claude 😂
Option 2 definitely seems to be the simplest so I'll put together a guide . I'll have to implement the WIFI credentials setup first as my details are hardcoded into the code at the moment which is no good to anyone.(except me 😅)

Side note here is the current web interface:

Posted : 15/11/2025 9:57 am
2 people liked
Ibashyougood
(@ibashyougood)
Member
RE: Core One ESP32-S3 Gcode Console/Progress Viewer

Looks very good!!! I have an M5stack cardputer somewere, maybe that could work, has an S3, USB to serial connection, wifi, and like 40 other things xD just need to solder a USB-C to Serial cabel!

Following with interest!

Posting on Github would be awesome! 😀

Posted : 15/11/2025 1:18 pm
1 people liked
Share: