From the box to a playing cube in fifteen minutes.
No soldering and no compiling: you buy the cube, flash the image straight from the browser (or with one terminal command) and connect it to Wi-Fi with your phone. Every step is below.
WHAT YOU NEEDM5Stack Core2 cubeUSB-C data cableWindows / macOS computerhome Wi-Fi, 2.4 GHzBT speaker (optional)
STEP 01BUY
Buy the cube
M5Stack Core2 — one box with the screen, speaker, battery and both radios, ~€50. No soldering iron required for anything. Buy it from the official M5Stack store ↗ (ships worldwide), or in Poland from Botland ↗ (approx. 220 PLN, 24 h shipping). Every revision so far — v1.0, v1.1, v1.3 — runs the same file.
STEP 02IMAGE
Download the system image
A single .bin file with the whole system — no compiling, no development environments. Current release: 0.2.1 (a catalogue of 218 measured stations, a browser station console with an on-device QR code, automatic station logos).
By downloading you accept the terms: GPL-3.0 license (full sources in the GitHub repository ↗), project name protected, no warranty. Full text: LICENSE-0-2-1.txt.
Use a USB-C cable that carries data (many “charging” cables have no data lines and the computer will see nothing). The cube shows up as a serial port through its CH9102 chip. If your system does not see it, install the driver from the M5Stack driver page ↗ (the “CH9102 Driver” section, Windows and macOS builds) and replug the cable.
STEP 04FLASH
Flash the image
▣ FROM THE BROWSER — THE MAIN PATH
Three moves, nothing to install: 1. open this page in Chrome or Edge on a computer, cube on the cable · 2. click the button and pick the port · 3. confirm erase and install — the page flashes the system and reboots the cube (~2 min).
This browser has no Web Serial — open in Chrome/Edge or expand the options below.Web Serial blocked — expand the options below.
In the port picker the cube may appear as an “Unnamed device”, “USB Single Serial”, cu.usbserial-… (macOS) or COM… (Windows) — the name comes from the cube's factory USB chip (CH9102), not from our system. Unplug other USB-serial devices and the cube will be the only entry.
Other options: stable release 0.1 and terminal install (esptool)
▣ RELEASE 0.1 FROM THE BROWSER
This browser has no Web Serial.Web Serial blocked.
Terminal (Safari/Firefox/Linux, or if you prefer the classic way). esptool is Espressif’s official tool. You install it once and use it with a single command:
▣ WINDOWS
Install Python ↗ — tick “Add python.exe to PATH” in the installer.
Open the Command Prompt (Start → type “cmd”) and install the tool:
python -m pip install esptool
Find the port number: Device Manager → Ports (COM & LPT) — e.g. COM5.
Flash the image (swap COM5 and the file name for yours):
After 1–2 minutes you will see Hash of data verified — the cube reboots on its own straight into the radio.
STEP 05FIRST BOOT
Connect to Wi-Fi with your phone
The cube brings up its own temporary setup network. On your phone: join the OpenRadio-Setup network and enter the one-time code shown on the cube’s screen. The portal opens by itself (if not, go to 192.168.4.1), add your home Wi-Fi there and you are done. The phone is no longer needed.
Right after that the cube asks about stations: you pick nine from a catalogue of 218 tested ones, and you can go through the list on a computer first. You change it later in the settings, with no reflashing.
STEP 06SPEAKER
Pair a Bluetooth speaker (optional)
The built-in speaker always plays first. Want better sound: put your BT speaker in pairing mode and tap scan on the cube’s Bluetooth screen — the speaker gets remembered and the two connect on their own from then on. A tip straight from our measurements: the cube likes to sit more than 2 m from the router, whose transmitter can drown out Bluetooth.
Common stumbles:
computer does not see the cube→9 times out of 10 it is a cable with no data lines — grab another one; then the CH9102 driver (Step 03)
“Permission denied” / port busy→close the programs holding the serial port (Arduino IDE, serial monitors) and try again — no sudo needed
flash OK, but nothing plays→unplug and replug the power (power-cycle); on the first station start the cube buffers for about 2 s
Tomasz Fiedoruk — strategic advisor: AI, IT, marketing
Two AI agents wrote this system. I supervised it, and I answer for it. That's how I work for clients: I frame the decision, run the build and put my name on the result. Doing this since 2003, 8 systems in production, 47 projects under NDA.