Releases: MoonModules/MoonLight
v0.5.9.3
Preparing for v0.6.0 - Bleeding Edge release 🔥
Functional
MoonBase
- Menu: Consolidate WiFi and Connections to Network
- ESP32-p4-nano 🎉 with @troyhacks
- ESP32-d0 1024->2048 LEDs max
MoonLight
Technical
Sveltekit
MoonBase
MoonLight
- Reorganise Effects, Modifiers, Layouts and Drivers in folders with @netmindz
- Layer files to Layers folder, Node files to Nodes folder
- addLayout -> onLayout + var -> fun()
- Bugfix white channel and always calculate with @limpkin
Full Changelog: v0.5.9.2...v0.5.9.3
v0.5.9.2
v0.5.9.1
Preparing for v0.6.0
Functional
MoonBase
- Add Voltage and Current, Rename pins to IO
- Disable sleep feature, battery feature specified in firmwares
MoonLight
- Reordering nodes keeps nodes unchanged!, memory tunings, MoonManEffect
- Bugfix filemanager hidden files, effects start, end, brightness (RO)
- Physical driver: no restart needed
- Rotate - Add static angle by @Brandon502
- Physical driver: DMA buffer as control
Technical
MoonBase
MoonLight
- Nodes.nodeName to Nodes.name
- Set Coord3D to int,int,int, pack and unpack into 3 bytes for monitor
- Refactor RotateNodifier for clarity and bounds handling by @Brandon502
- Make PhysicalDriver 'initLess'
- FastLED 3.10.3, Module IO and Tasks: improve UI, battery metrics tunings
- esp32-d0: d0 tuning...
Full Changelog: v0.5.9...v0.5.9.1
v0.5.9
This release positions MoonLight as the driver for real-world venues. See MoonLight @ Concert on YouTube/MoonModules and moonmodules.org/news. Also the M5Stack AtomS3R is introduced as the preferred microcontroller for basic setups.

Use MoonLight Web Installer to install. It is recommended to do a fresh install (erase device).
Note: Currently MoonLight runs best on devices with PSRAM (esp32-s3 devices, esp32-d0-wrover). d0 (standard esp32) and c3 will be supported in upcoming release. The MoonBase (no MoonLight) version runs fine on all devices. P4 is work in progress.
If you like MoonLight, give it a star, fork it or open an issue or pull request. It helps the project grow, improve and get noticed.
What's changed:
Functional changes
MoonBase
- WiFi hostname for mdns, AP and device name
- Atom S3R board
- show moon man on AtomS3R display
- Theme Selector day/night/auto
- Upload firmware dialog: preparing / installing / progress
MoonLight
- New MoonLight Homepage
- NoiseMeter effect
- Audio speed control for freqMatrix effect
- Game of Life effect by @Brandon502
- Blurz effect
- Split Moving Heads color and move effects
- Rubiks Cube, Particles, Checkerboard by @Brandon502
- AmbientMoveEffect and Frequency Saws Effect
- preset Loop on preset subset
Technical changes
ESP32-SvelteKit
MoonBase
MoonLight
This release works towards MoonLight 0.6.0 which is aimed at end users and is expected end of September 2025. Containing presets controller pad, user friendly installer, physical driver for large displays, WLED audio sync and more.
Progress can be tracked in the Kanban board
We need developers: to create new layouts, effects and modifiers, to create ci-automations, to connect Midi controllers, to make web installers, to improve the UI or whatever good idea you have. Contact us on Discord or Reddit if you want to help!
Full Changelog: v0.5.8...v0.5.9
v0.5.8
This release focuses on extensive codebase cleanup and standardization to establish a stable foundation for future development. FastLED and Yves his physical I2S drivers are consolidated into one repo, virtual will follow later! Drivers can now be used to output DMX or LEDs to Art-Net and use flicker free I2S on physical pins.

Use MoonLight Web Installer to install this release. It is recommended to do a fresh install (erase device).
Note: Currently MoonLight runs best on esp32-s3 devices. d0 (standard esp32) and c3 will be fixed in next release, p4 not planned yet. The MoonBase (no MoonLight) version runs fine on d0 devices.
If you like MoonLight, give it a star, fork it or open an issue or pull request. It helps the project grow, improve and get noticed.
What's changed:
Functional changes
MoonBase
- esp32-Moonbase stand alone firmware.
MoonLight
- FastLED Max Power setting used by all drivers including Art-Net
- calculate white for RGBW LEDs
- Wheel Layout
- Moving Head layouts to driver light preset
- Buttons to indicate restart is needed or Safemode is active (after crash)
- Updated panel(s) layout, cube layout, scrolling text effect including system info
- Rename instances to devices
- Editor -> Virtual layers / Physical layer and Physical module -> Drivers, Virtual module -> Effects module
- Readonly controls, Art-Net port control
- Delayed writing (save and cancel), FastLED back to RMT (default)
- Direct response sliders. Try it to see how awesome that is !
- Channel view direct response while hovering over channels!
- Manage TX power in WiFi module, esp32-s3 config tuning
- GEQ3DEffect by @troyhacks
- Noise2D, StarField Praxis and Waverly StarField by @Brandon502 and Praxis by @Flavourdynamics
- Moving Heads using driver preset
- Text controls, read only controls, move fastLED info from Info to Node
Technical changes
ESP32-SvelteKit
- Removed async workers in PsychicHttp by @theelims
- MQTT updates by @theelims
- Robust deep sleep handling by @theelims
MoonBase
- esp32-Moonbase stand alone, Physical buffer to 100, dynamic lights alloc
- consistent naming: esp32-d0/s3/p4
MoonLight
- colorOrder driven by Physical node control!
- offsetRed/Green/Blue
- effectTask, driverTask and UI in svelte kit loop function
- 2 compile options HP_ALL_DRIVERS and ESP32_LEDSDRIVER
- platform = 54.03.21, physical driver no wait
- platform 54.03.21, esp32D0 HP All Drivers, I2SClocklessLedDriver latest by @hpwit
- move to USE_ESP_IDF_LOG
- PSRAM: support up to 120K leds, channels and mappingTable in PSRAM
This release works towards MoonLight 0.6.0 which is aimed at end users and is expected in September 2025. Containing presets controller pad, user friendly installer, physical and virtual driver for large displays, WLED audio sync and more.
Progress can be tracked in the Kanban board
We need developers: to create new layouts, effects and modifiers, to create ci-automations, to connect Midi controllers, to make web installers, to improve the UI or whatever good idea you have. Contact us on Discord or Reddit if you want to help!
Full Changelog: v0.5.7...v0.5.8
v0.5.7
This release is a dive into the deep as we move to the latest of the latest of our software stack: ESP-IDF 5, FastLED 3.10.1, Svelte 5, DaisyUI 5 and Tailwind 4. Added Presets, Channel View, SafeMode. Added multiple Layout, Effects and Modifier nodes and moved LED and Art-Net drivers as nodes. Reorganised platformio and added new boards.
So don't expect everything to work smoothly. But we improve from here!
Use MoonLight Web Installer to install this release. It is recommended to do a fresh install (erase device) of this release as file system structure has been changed.
If you like MoonLight, give it a star, fork it or open an issue or pull request. It helps the project grow, improve and get noticed.

What's changed:
ESP32-SvelteKit
MoonBase
- esp32 C3 supermini platform support by @limpkin in #15
- Add board definition for ESP32-S3-ZERO module by @Flavourdynamics in #27
- Added an guide to configure MKDocs Preview for real time visualization of changes to project docs in VS Code by @Flavourdynamics in #28
MoonLight
- Updated to latest ESP Live Script by @hpwit
- Global palette in Lights Control Module
- Channel View (hover on channels to test them)
- Wave effect (Saw, triangle, Sinus, square)
- Human Sized Cube layout
- Lights: add offSets for multichannel lights (Moving heads) to control pan, tilt, zoom etc.
- RGB and brightness to static effect (to use as background effect)
- Distortion effect
- Support multiple layout nodes with @limpkin
- Safemode after crash
- Presets in Lights control module! Save and retrieve from FS
- Circle modifier: 1D (e.g. FreqMatrix) displayed as a circle
- Rotate and rippleYZ modifier
- SK6812 support by allowing color order & white specification by @limpkin in #17
- MoonLight info module
- @troyhacks moving heads layout and effects
- Pinwheel Bugfix by @Brandon502 in #23
- Art-Net brightness correction
- SE16 layout for Stephan Electronics board with @limpkin
- LEDs drivers as Nodes
- Art-Net from module to Node, add FPS limiter, universes and channels control
- FastLED 3.9.19 to 3.10.1
- Sin3 Wave with @PatHightree, noise Wave
- ESP-IDF v5.4.1
- ESP32-S3: FASTLED_USES_ESP32S3_I2S others FASTLED_ESP32_HAS_RMT5
- Lights.leds -> lights.channels
- xyz max 2047, 255, 31
- File Manager show hidden
- (system) Tasks Module
- New MoonLight Web Installer
New Contributors
- @limpkin made their first contribution in #15
- @Brandon502 made their first contribution in #23
- @Flavourdynamics made their first contribution in #27
This release works towards MoonLight 0.6.0 which is aimed at end users and is expected in September 2025. Containing presets controller pad, user friendly installer, physical and virtual driver for large displays, WLED audio sync and more.
Progress can be tracked in the Kanban board
We need developers: to create new layouts, effects and modifiers, to create ci-automations, to connect Midi controllers, to make web installers, to improve the UI or whatever good idea you have. Contact us on Discord or Reddit if you want to help!
Full Changelog: v0.5.6...v0.5.7
v0.5.6
This release supports WLED audio sync and has a number of audio effects added. Node controls have improved a lot, now also supported in live scripts. Furthermore multi channel fixtures has improved which is used by the Moving Heads effect to show audio via Artnet on DMX moving heads. See on discord.

This release includes a web installer to flash MoonLight to an ESP32(-S3) without using developer tools. See Get started
What has changed:
ESP32-SvelteKit
- Replace rtc_get_reset_reason(0) with esp_reset_reason() PR 86 by @stamp
- /rest/coreDump endpoint PR 87 by @stamp
- Save merged binary under /build/merged by @theelims
MoonBase
- expessif espressif32 @ 6.10.0 to espressif32 @ 6.11.0
- Add env:ESP32-P4 and env:olimex-esp32-p4 🚧
- Add env:esp32-s3-devkitc-1-n8r8v
- Web Installer
MoonLight
- addControl Node controls for precompiled and LiveScripts, with @hpwit
- Layout Nodes: add Ring241
- Split into Light Control Module, Animations Module and Live Scripts Module
- addPin function in Layout node defines pin(s)
- Add @hpwit Physical and Virtual driver 🚧 (FastLED default compiled in builds)
- Node class can be Layout AND Effect AND Modifier (instead of OR)
- Simplify Lights types: specify RGB, tilt, pan, zoom offsets in Lights struct
- Add @netmindz WLED audio sync as Node
- Effect Nodes: add Ripples (3D) and SphereMove (3D), add FreqMatrix (1D) and @troyhacks PaintBrush effect
- onUpdate queued from http task into loopTask (solves crashes)
- Live Script effects synchronised with loop(), with @hpwit
- Moving Head node tuning with @troyhacks
- FastLED 3.9.16 to 3.9.19
This release works towards MoonLight 0.6.0 which is aimed at end users and is expected in September 2025. Containing presets controller pad, user friendly installer, physical and virtual driver for large displays, WLED audio sync and more.
Progress can be tracked in the Kanban board
We need developers: to create new layouts, effects and modifiers, to create ci-automations, to connect Midi controllers, to make web installers, to improve the UI or whatever good idea you have. Contact us on Discord or Reddit if you want to help!
If you like this release, consider starring the repo:
Full Changelog: v0.5.5...v0.5.6
v0.5.5
Repo reorg: Forget about StarMod, StarBase, StarLight, MoonBase !
There is now only one repo: https://github.com/MoonModules/MoonLight
And one Documentation: https://moonmodules.org/MoonLight/
MoonLight is a MoonModules.org project.
The MoonLight repo has 2 'features': MoonBase and MoonLight. If you want a fork without MoonLight you can -D FT_MOONLIGHT=0 and make whatever you like, and you get UI, Wifi, System monitoring, NPT, MQTT, Download manager, Instance manager, File manager and Moon-Modules out of the box.
What's Changed
ESP32SvelteKit
- Update from Svelte 4 to Svelte 5 by @theelims
MoonBase
- File manager
- Instances
- Modules: A module defines its (data) definition in JSON and defines its business logic (onUpdate). UI, web sockets, rest api and file persistence is provided by the system. (Compare with WLED usermods, except core functionality is also wrapped in modules (e.g. Animations, Artnet, Instances).
- Link to docs on each screen
MoonLight
-
Physical and virtual layer of lights
- Physical layer: representing the physical lights
- Virtual layer: represents virtual lights mapped to physical lights
- Nodes control the layers
-
From Leds to Lights
- FastLED leds array extended
- Supports multiple types which are union overlayed. CRGB as the core type, channels as the general type
- Can also hold light positions to send to the UI preview
- Lights header contains meta data like nrOfLights, size, channelsPerLight
- setPixelColor -> setPixel -> setLight: setLight is the new function to set a light, set its color, or set its tilt and pan ...
-
- Layout node 🚥(PKA fixtures): adds lights in the virtual layer based on its position. Will use modifier nodes if defined
- Modifier node 💎: to determine how to map a light (e.g. mirrored)
- Effect node 🔥: Writes into the virtual layer, which writes into the physical layer using the mapping made by layout and modifiers
- Unlimited nr of nodes, running multiple effects with multiple modifiers on multiple layouts. Each node can be switched on and off
- Unlimited node controls e.g. a layout node has size and width, an effect node has speed etc.
-
Livescripts from @hpwit for all node types
- supporting layout definitions, modifiers and effects.
- examples can be found here
- works on esp32-s3 builds, excluded from esp32dev as it doesn't fit on the flash partition ATM
-
Monitor: Using native webGL (no space consuming threejs in WWWData.h anymore)
-
Artnet: sends the lights array via AsyncUDP to Led or DMX controller (code by @troyhacks)
Example of multiple nodes of different types with controls:
Resulting into:
IMG_97123.mov
This release is a developer release and works towards MoonLight 0.6.0 which is aimed at end users and is expected in September 2025. Containing presets controller pad, user friendly installer, physical and virtual driver for large displays, WLED audio sync and more.
Progress can be tracked in the Kanban board
We need developers: to create new layouts, effects and modifiers, to create ci-automations, to connect Midi controllers, to make web installers, to improve the UI or whatever good idea you have. Contact us on Discord or Reddit if you want to help!
Get started here
If you like this release, consider starring the repo:
Full Changelog: v0.5.4...v0.5.5
v0.5.4
Full Changelog: v0.5.3...v0.5.4
v0.5.3
Full Changelog: ewowi/ESP32-sveltekit@v0.5.0...v0.5.3