Releases: nebeleben/plaiiin-light
Release list
PlaiiinLightOS v1.9.13
Firmware build for PlaiiinLightOS v1.9.13.
Forms shipped
tower · wormhole · display · cube · rocket · strip
Every form ships for two SoCs: esp32 (Xtensa, no suffix) and esp32c3
(RISC-V, -esp32c3 suffix), e.g. tower-flash.bin vs
tower-esp32c3-flash.bin. Match the asset to your board's chip — a
lamp reports its own via GET /api/ota/info (target).
What's in each form
| File | Purpose | Flash to |
|---|---|---|
<form>-flash.bin |
USB first-flash (bootloader + partitions + OTA data + app) | offset 0x0 |
<form>-app.bin |
OTA payload — POST to /api/ota on a running lamp |
(OTA, no offset) |
<form>-effects.bin |
byForm SPIFFS image (effects + form-template) | offset 0x3C0000 |
<form>.manifest.json |
ESP Web Tools manifest for browser-based flashing | — |
(For a SoC variant, <form> is the suffixed stem, e.g. strip-esp32c3-flash.bin.)
DIY flash recipes
CLI (esptool) — pass the matching --chip; the C3 bootloader is baked at 0x0:
# esp32 form (e.g. tower)
esptool.py --chip esp32 -p /dev/cu.usbserial-* write_flash 0x0 tower-flash.bin
esptool.py --chip esp32 -p /dev/cu.usbserial-* write_flash 0x3C0000 tower-effects.bin
# esp32c3 variant (e.g. strip / shrumLight)
esptool.py --chip esp32c3 -p /dev/cu.usbmodem* write_flash 0x0 strip-esp32c3-flash.bin
esptool.py --chip esp32c3 -p /dev/cu.usbmodem* write_flash 0x3C0000 strip-esp32c3-effects.binBrowser (ESP Web Tools): point the install button at <form>.manifest.json
(e.g. tower.manifest.json or strip-esp32c3.manifest.json) — the manifest's
chipFamily selects the right target automatically.
Verification
See SHA256SUMS.
PlaiiinLightOS v1.9.12
Firmware build for PlaiiinLightOS v1.9.12.
Forms shipped
tower · wormhole · display · cube · rocket · strip (esp32)
SoC variants (RISC-V) carry a -<chip> suffix: strip-esp32c3 (shrumLight).
Assets without a suffix are esp32 (Xtensa). Match the asset to your
board's chip — a lamp reports its own via GET /api/ota/info (target).
What's in each form
| File | Purpose | Flash to |
|---|---|---|
<form>-flash.bin |
USB first-flash (bootloader + partitions + OTA data + app) | offset 0x0 |
<form>-app.bin |
OTA payload — POST to /api/ota on a running lamp |
(OTA, no offset) |
<form>-effects.bin |
byForm SPIFFS image (effects + form-template) | offset 0x3C0000 |
<form>.manifest.json |
ESP Web Tools manifest for browser-based flashing | — |
(For a SoC variant, <form> is the suffixed stem, e.g. strip-esp32c3-flash.bin.)
DIY flash recipes
CLI (esptool) — pass the matching --chip; the C3 bootloader is baked at 0x0:
# esp32 form (e.g. tower)
esptool.py --chip esp32 -p /dev/cu.usbserial-* write_flash 0x0 tower-flash.bin
esptool.py --chip esp32 -p /dev/cu.usbserial-* write_flash 0x3C0000 tower-effects.bin
# esp32c3 variant (e.g. strip / shrumLight)
esptool.py --chip esp32c3 -p /dev/cu.usbmodem* write_flash 0x0 strip-esp32c3-flash.bin
esptool.py --chip esp32c3 -p /dev/cu.usbmodem* write_flash 0x3C0000 strip-esp32c3-effects.binBrowser (ESP Web Tools): point the install button at <form>.manifest.json
(e.g. tower.manifest.json or strip-esp32c3.manifest.json) — the manifest's
chipFamily selects the right target automatically.
Verification
See SHA256SUMS.
PlaiiinLightOS v1.9.11
Firmware build for PlaiiinLightOS v1.9.11.
Forms shipped
tower · wormhole · display · cube · rocket · strip
What's in each form
| File | Purpose | Flash to |
|---|---|---|
<form>-flash.bin |
USB first-flash (bootloader + partitions + OTA data + app) | offset 0x0 |
<form>-app.bin |
OTA payload — POST to /api/ota on a running lamp |
(OTA, no offset) |
<form>-effects.bin |
byForm SPIFFS image (effects + form-template) | offset 0x3C0000 |
<form>.manifest.json |
ESP Web Tools manifest for browser-based flashing | — |
DIY flash recipes
CLI (esptool):
esptool.py --chip esp32 -p /dev/cu.usbserial-* write_flash 0x0 tower-flash.bin
esptool.py --chip esp32 -p /dev/cu.usbserial-* write_flash 0x3C0000 tower-effects.binBrowser (ESP Web Tools): point the install button at tower.manifest.json.
Verification
See SHA256SUMS.
PlaiiinLightOS v.1.9.10
Firmware build for PlaiiinLightOS v.1.9.10.
Forms shipped
tower · wormhole · display · cube · rocket · strip
What's in each form
| File | Purpose | Flash to |
|---|---|---|
<form>-flash.bin |
USB first-flash (bootloader + partitions + OTA data + app) | offset 0x0 |
<form>-app.bin |
OTA payload — POST to /api/ota on a running lamp |
(OTA, no offset) |
<form>-effects.bin |
byForm SPIFFS image (effects + form-template) | offset 0x3C0000 |
<form>.manifest.json |
ESP Web Tools manifest for browser-based flashing | — |
DIY flash recipes
CLI (esptool):
esptool.py --chip esp32 -p /dev/cu.usbserial-* write_flash 0x0 tower-flash.bin
esptool.py --chip esp32 -p /dev/cu.usbserial-* write_flash 0x3C0000 tower-effects.binBrowser (ESP Web Tools): point the install button at tower.manifest.json.
Verification
See SHA256SUMS.
PlaiiinLightOS v1.9.9
Firmware build for PlaiiinLightOS v1.9.9.
Forms shipped
tower · wormhole · display · cube · rocket · strip
What's in each form
| File | Purpose | Flash to |
|---|---|---|
<form>-flash.bin |
USB first-flash (bootloader + partitions + OTA data + app) | offset 0x0 |
<form>-app.bin |
OTA payload — POST to /api/ota on a running lamp |
(OTA, no offset) |
<form>-effects.bin |
byForm SPIFFS image (effects + form-template) | offset 0x3C0000 |
<form>.manifest.json |
ESP Web Tools manifest for browser-based flashing | — |
DIY flash recipes
CLI (esptool):
esptool.py --chip esp32 -p /dev/cu.usbserial-* write_flash 0x0 tower-flash.bin
esptool.py --chip esp32 -p /dev/cu.usbserial-* write_flash 0x3C0000 tower-effects.binBrowser (ESP Web Tools): point the install button at tower.manifest.json.
Verification
See SHA256SUMS.
PlaiiinLightOS v1.9.8
Firmware build for PlaiiinLightOS v1.9.8.
Forms shipped
tower · wormhole · display · cube · rocket · strip
What's in each form
| File | Purpose | Flash to |
|---|---|---|
<form>-flash.bin |
USB first-flash (bootloader + partitions + OTA data + app) | offset 0x0 |
<form>-app.bin |
OTA payload — POST to /api/ota on a running lamp |
(OTA, no offset) |
<form>-effects.bin |
byForm SPIFFS image (effects + form-template) | offset 0x3C0000 |
<form>.manifest.json |
ESP Web Tools manifest for browser-based flashing | — |
DIY flash recipes
CLI (esptool):
esptool.py --chip esp32 -p /dev/cu.usbserial-* write_flash 0x0 tower-flash.bin
esptool.py --chip esp32 -p /dev/cu.usbserial-* write_flash 0x3C0000 tower-effects.binBrowser (ESP Web Tools): point the install button at tower.manifest.json.
Verification
See SHA256SUMS.
PlaiiinLightOS v1.9.7
Firmware build for PlaiiinLightOS v1.9.7.
Forms shipped
tower · wormhole · display · cube · rocket · strip
What's in each form
| File | Purpose | Flash to |
|---|---|---|
<form>-flash.bin |
USB first-flash (bootloader + partitions + OTA data + app) | offset 0x0 |
<form>-app.bin |
OTA payload — POST to /api/ota on a running lamp |
(OTA, no offset) |
<form>-effects.bin |
byForm SPIFFS image (effects + form-template) | offset 0x3C0000 |
<form>.manifest.json |
ESP Web Tools manifest for browser-based flashing | — |
DIY flash recipes
CLI (esptool):
esptool.py --chip esp32 -p /dev/cu.usbserial-* write_flash 0x0 tower-flash.bin
esptool.py --chip esp32 -p /dev/cu.usbserial-* write_flash 0x3C0000 tower-effects.binBrowser (ESP Web Tools): point the install button at tower.manifest.json.
Verification
See SHA256SUMS.
PlaiiinLightOS v1.9.6
Firmware build for PlaiiinLightOS v1.9.6.
Forms shipped
tower · wormhole · display · cube · rocket
What's in each form
| File | Purpose | Flash to |
|---|---|---|
<form>-flash.bin |
USB first-flash (bootloader + partitions + OTA data + app) | offset 0x0 |
<form>-app.bin |
OTA payload — POST to /api/ota on a running lamp |
(OTA, no offset) |
<form>-effects.bin |
byForm SPIFFS image (effects + form-template) | offset 0x3C0000 |
<form>.manifest.json |
ESP Web Tools manifest for browser-based flashing | — |
DIY flash recipes
CLI (esptool):
esptool.py --chip esp32 -p /dev/cu.usbserial-* write_flash 0x0 tower-flash.bin
esptool.py --chip esp32 -p /dev/cu.usbserial-* write_flash 0x3C0000 tower-effects.binBrowser (ESP Web Tools): point the install button at tower.manifest.json.
Verification
See SHA256SUMS.