2.3 Upload Firmware and YAML

Check List · Step 3 of 12 · Install FluidNC online or offline, then load the V4.7B I/O-test YAML
ℹ️
If the supplied FluidNC firmware and V4.7B YAML already start without errors, keep them and continue to Step 2.4. Reinstallation is optional and is normally needed only for recovery, replacement modules or an intentional firmware update.
⚠️
Correct processor: V4.7B uses a plug-in classic ESP32 / ESP32-WROOM-32 module. Never select ESP32-S3, and never run files whose names end in _s3.
RECOMMENDED
🌐 Method A · Online Web Installer
Chrome or Edge, internet connection, visual installer and the clearest path for a first-time user.
ALTERNATIVE
💻 Method B · Offline Windows Tools
Official FluidNC Windows release ZIP, local batch files and FluidTerm. Useful for recovery or an offline workshop PC.
⚠️
Choose one firmware-installation method. Do not run the online and offline installers one after another. Both methods continue to the same “Upload and Activate the V4.7B YAML” section below.
0
Shared Preparation
METHOD A

Online · FluidNC Web Installer

Recommended for most users
1
Open the Official Installer and Connect
FluidNC Web Installer Connect button
Click Connect, then select the ESP32 serial port.
2
Select Install, Current Stable Release and Classic ESP32
FluidNC installer Install page with ESP32-WROOM selected
The screenshot version is an example; follow the ESP32-WROOM processor label rather than the pictured version number.
3
Select Wi-Fi and the Installation Type
FluidNC WiFi firmware variant selection
Select the Wi-Fi firmware variant.
FluidNC fresh install and firmware update choices
Fresh install erases files; firmware update preserves filesystem data.
4
Include WebUI and Complete the Installation
Upload speed: 921600 is faster, but some USB cables, USB-UART chips or computers are not stable at that speed. If connection, writing or verification repeatedly fails, select 115200 under Installation speed and try again. This setting changes only the firmware flashing speed; it does not change your machine or FluidNC communication settings.
FluidNC installer WebUI 2 selection
Enable WebUI 2 when following this checklist layout.
FluidNC installation progress complete
Wait for the installer to report completion.
The installer screenshots are shared with the V4.96 tutorial because both use a classic ESP32. Official version numbers and minor interface details may change.
METHOD B

Offline · Official Windows Release Package

Classic ESP32 scripts only
Download ZIP
Extract Folder
Run install-wifi.bat
Upload YAML
1
Download and Extract the Official Windows Package
2
Install Wi-Fi Firmware for the Classic ESP32
For V4.7B, run install-wifi.bat. The scripts containing _s3 are for different hardware.
install-wifi.batWrites the Wi-Fi firmware for the classic ESP32, then starts FluidTerm.
erase.batOptional destructive recovery step. Erases everything; use only for incompatible/corrupt firmware, then run install-wifi.bat again.
install-fs.batOptional first-install filesystem step. Adds/replaces WebUI filesystem data but erases existing local files.
⚠️
Offline filesystem choice: on a blank/erased module, either run install-fs.bat or upload wifi/index.html.gz with FluidTerm. Do not replace the filesystem on a working controller until its YAML, macros and other files have been backed up.
3
Upload Local Files with FluidTerm
fluidterm.batOfficial local serial terminal and file-upload tool included in the Windows release package
🌐
wifi/index.html.gzFluidNC WebUI file. Upload it when WebUI is missing/outdated or when you used only install-wifi.bat. Skip it if install-fs.bat already installed the same WebUI successfully.
📄
v47b-xyyza-standard-config.yamlV4.7B checklist configuration. Upload this exact test file and wait for FluidTerm to report that the transfer is complete.
Recommended naming: keep v47b-xyyza-standard-config.yaml so it is clearly identifiable, then activate it with $Config/Filename=v47b-xyyza-standard-config.yaml.

Optional default-file method: make a copy of the test YAML, rename the copy to config.yaml, upload it and confirm overwrite. Back up the old config.yaml first. If the controller was previously set to another filename, also send $Config/Filename=config.yaml; uploading the file alone does not guarantee that it becomes active.

BOTH METHODS

Upload and Activate the V4.7B Test YAML

📥
Download the exact file: v47b-xyyza-standard-config.yaml. Keep its filename and indentation unchanged.
1
Upload the YAML
FluidNC File browser Upload and Active config buttons
Upload the V4.7B YAML, then select it as the active configuration.
2
Activate, Restart and Read the Startup Log
$Config/Filename=v47b-xyyza-standard-config.yamlSelect the V4.7B I/O-test YAML.
FluidNC startup message after restart
After restart, check the startup messages before continuing.
⚠️
This is an I/O-test YAML, not a finished machine configuration. It deliberately maps XYYZA signals and diagnostic outputs. Do not home, cut, engrave or operate a real machine with it unchanged.
Expected Results