Output—
—
PD contract —
Input—
—
PD contract —
Battery—
—
—
Input current
—
Temperature—
—
charger —
Faults—
—
UPS uptime
Voltages V, last 10 min
Device log
Commands
Careful: the output port powers this computer. “Output off” and “Power-cycle”
drop VBUS — your laptop falls back to its own battery and the serial link re-connects
after the PD contract is re-negotiated.
HTTP mode net.config → ESP32, stored in NVS
Empty value clears the override (falls back to the firmware default).
Values are write-only over the wire (the protocol has no read-back op) and persist in the
ESP32's NVS across reboots. Switching the backend mode itself (MQTT / Arkiv / HTTP) is done from
the OLED menu on the device. Setup guide:
docs.web3pi.io/ups/http-mode.
Firmware RP2040 · UF2 via BOOTSEL
This browser can't flash over USB
The WebUSB API is not available here. Flashing needs a desktop Chromium browser:
- Google Chrome (61+)
- Microsoft Edge (79+)
- Opera (48+)
Firefox and Safari do not implement WebUSB. Telemetry above is unaffected.
No file selected.
-
1
Reboot to bootloader Needs the serial link connected — the session closes and the port is tapped at 1200 baud, restarting the RP2040 as “RP2 Boot”. Device already showing the
RPI-RP2drive? Skip to step 2. -
2
Connect bootloader Pick “RP2 Boot” in the browser's USB dialog.
-
3
Flash
The UPS power path runs on a separate MCU — the output keeps powering your device while
the RP2040 sits in the bootloader. Erase, write and verify run entirely in the browser.
No file selected.
Connect the UPS first — this mode streams over the normal serial session.
Streams the image over the UPS link into the ESP32's spare OTA slot (
net.fw_xfer,
stop-and-wait — takes a few minutes). On commit the ESP32 checks the SHA-256 and reboots into
the new firmware; the OTA rollback safety applies — an unhealthy build reverts automatically.
Requires ESP32 firmware already on the two-OTA layout (older units: migrate once via
ESP32 · direct USB).
This browser can't connect to serial devices
The Web Serial API is not available here. Use a desktop browser that supports it:
- Google Chrome (89+)
- Microsoft Edge (89+)
- Mozilla Firefox (151+)
- Opera (75+)
Safari and mobile browsers are not supported.
No file selected.
One-time OTA-layout migration files (optional)
Not selected — region untouched.
Not selected — region untouched.
Not selected — region untouched.
Plug the M.2 module's own USB port into this computer (ESP32-S3 USB-Serial-JTAG).
App-only updates need just the .bin; the optional files + NVS erase reproduce the documented
one-time migration from the factory single-app layout to the two-OTA layout.
Per the firmware README: never full-erase (
erase_flash) a provisioned unit —
it wipes the per-device prov partition at 0x310000, which must survive.
Every region is MD5-verified after writing.
