Skip to content

Flashing from a computer

psonnera edited this page Jul 20, 2026 · 4 revisions

Flashing from a computer

If you would rather not use the Android app, you can flash the firmware from a computer. On Windows this is done with the official M5Burner utility, which downloads the xDripMon firmware for you — Arduino is not required. macOS is the most involved option and is linked at the bottom.

This project ships a single build for the 16 MB M5Stack coresBasic 2.6 / 2.7, Fire, and Core2. One binary covers all three.

Windows

1. Install the M5Stack USB driver

Connect your M5Stack to your computer with the USB cable, open the device manager (right click on the Start button > Device Manager) and check under Ports (COM & LPT) if a new COM port appeared.

Device manager showing the M5Stack COM port

If a new COM port appears, no driver is needed: skip to Download and install M5Burner.

If no port appeared, go to the M5Stack download page, section USB Driver, and download the driver matching your device:

M5Stack USB Driver download page

In the Downloads folder, extract the .zip file, open the extracted folder and run the installer for the correct platform type of the driver (x64 for most computers).

Extracting the USB driver .zip file

Next, Accept, Next, Finish.

Reconnect your M5Stack and check the COM port appears in the device manager.

If you have previous versions of SiLabs drivers you might need to remove them in order to see the M5Stack serial port.

2. Download and install M5Burner

Go to the official M5Burner page https://docs.m5stack.com/en/uiflow/m5burner and download the Win x64 version.

M5Burner download page

From the Downloads folder, extract the .zip file, for example to C:\

You can extract it wherever you want, but avoid a path name with spaces inside.

From the extracted folder, run M5Burner.exe

If Windows Defender SmartScreen shows a warning, click More info then Run anyway. M5Burner is the official flashing tool from M5Stack, it is safe to run.

Windows Defender SmartScreen

3. Get the xDripMon firmware

The firmware is published on M5Burner by the developer and is found with the search bar.

  1. In the Device Type list on the left, select CORE — the xDripMon build is published there for all supported cores (Basic 2.6 / 2.7, Fire and Core2).

  2. Type xDrip in the search bar at the top and press Enter.

  3. On the xDripMon result, click Download.

Select CORE, search xDrip and click Download

4. Flash the firmware

Once downloaded, the firmware entry shows Remove and Burn buttons. Click Burn.

The Burn button on the downloaded firmware

A Notice warns that this is unofficial firmware. This is expected: xDripMon is a community firmware, not published by M5Stack. Click Continue.

Unofficial firmware notice

The burn window opens:

  1. Check your M5Stack is connected.
  2. Select the COM port of your device (the one you saw in the device manager).
  3. Select baudrate 921600.
  4. Click Start.

Burn window with COM port and baudrate

The firmware is written to your device, showing the progress:

Burning in progress

When it finishes, Burn successfully, click here to return appears. Click it to return to M5Burner.

Burn completed successfully

Troubleshooting: if the burn fails or stops, try again with a lower baudrate (115200), use a different USB cable or USB port, and make sure no other program (Arduino IDE, serial monitor) is using the COM port.

Congratulations, you programmed your M5Stack.

Continue with Device setup.

macOS

macOS has no bundled burner — it uses Homebrew + esptool from the command line, which is the most involved route. The steps are identical to the original project's guide; follow it and simply substitute this project's binaries from the release zip (the ESP32_16MB folder):

M5_NightscoutMon — macOS flashing guide

In short: install the CP210x driver, brew install esptool, then write_flash the bootloader, partitions and .ino binaries from the ESP32_16MB folder at offsets 0x1000, 0x8000 and 0x10000.

Build from source

To compile it yourself instead, use the Arduino IDE or arduino-cli with:

  • board package M5Stack 2.1.1 (targets M5Core / M5Fire / M5Core2)
  • libraries M5Unified (with M5GFX) and NimBLE-Arduino 2.x

Clone this wiki locally