Releases: MoonModules/MoonLight
Nightly 20260507
Changelog
* This Changelog was automatically generated by github_changelog_generator
v1.0.0
MoonLight is open-source software that lets you control a wide range of DMX and LED lights using ESP32 microcontrollers, for home, for artists, and for stages.
Release highlights: Live Scripts, Ethernet, DMX in/out, Multiple Layers, and SuperSync device control
MoonLight 1.0 is a milestone release. Since v0.9.0, MoonLight gained Live Scripts for code-driven effects without a firmware rebuild, full Ethernet and DMX in/out support, multiple independent virtual layers, Arti-FX effects ported from WLED-MM, and a completely reworked device SuperSync with robust group-based control and WLED coexistence.
Use MoonLight Installer to install.
If you like MoonLight, give it a ⭐️, fork it or open an issue or pull request. It helps the project grow, improve and get noticed.
⚠️ v1.0.0 is the final MoonLight release
As of May 2026, active development is moving to ProjectMM. MoonLight v1.0.0 remains fully usable — see MoonLight v1.0.0 and Beyond for the full story.
What's Changed
MoonBase
-
Live Scripts — write and run effect scripts directly from the browser without rebuilding firmware. See Live Scripts
-
Ethernet — multiple ethernet types (LAN8720, W5500, PoE). See IO Module
-
WiFi improvements — reconnection guard prevents duplicate connection attempts; hostname drives mDNS, AP name, and device name from a single setting. See WiFi Station
-
Searchable drop-downs — type to filter effects, layouts, and drivers in long lists
-
SuperSync group control — devices grouped by hostname prefix synchronise light state automatically. Control broadcasts go on MoonLight-private port 65507; discovery stays on the WLED-compatible port 65506, so MoonLight and WLED coexist without interfering. See Devices
MoonLight
-
Multiple virtual layers — run independent effects on overlapping LED ranges and composite them. See Layouts
-
DMX in/out — receive and send DMX512 over RS-485. See Drivers module
-
Network in/out — Art-Net and sACN input and output. See Drivers module
-
Arti-FX effects — effects ported from WLED-MM's Arti-FX scripting engine. See Effects Module
-
REST API — control brightness, palette, and preset from external systems
-
FastLED Audio improvements — DominantFreqHz and magnitude channels exposed to effects. See Drivers module
Pull Requests
- Searchable drop-downs by @ewowi in #142
- Live Scripts re-animation by @ewowi in #144
- bug fix: use board preset to know how to display voltage and current by @limpkin in #145
- Ethernet supporting ethernet types by @ewowi in #151
- Ethernet WiFi and host-name by @ewowi in #152
- Live scripts by @ewowi in #153
- Arti-FX effects by @ewowi in #155
- DMX in/out, Ethernet, Livescripts by @ewowi in #158
- Multiple Layers by @ewowi in #159
- network in/out by @ewowi in #160
- Livescripts tutorial, WiFi handling, Network in/out, rest API by @ewowi in #161
- Update installer.md by @Flavourdynamics in #162
- Device sync and FastLED audio by @ewowi in #165
- UDP port segregation by @ewowi in #172
New Contributors
- @limpkin made their first contribution in #145
- @Flavourdynamics made their first contribution in #162
Full Changelog: v0.9.0...v1.0.0
Nightly 20260506
Changelog
Unreleased
Merged pull requests:
v0.9.1 (2026-05-04)
Implemented enhancements:
- Support (DMX) lights of different type #30
Fixed bugs:
- Using the LightCrafter16 board I repeatedly see cali handle prompts in the logging #164
Closed issues:
- can't save changes #171
- Is there DMX OUT funtionallity? #157
- Ethernet pin configuration for ESP32 D0 WROOM builds with LAN8720 chip #156
- firmware download fails for esp32-p4-eth #154
- adding driver / effect at the end of the screen: can't select item #147
- impossible to add nodes or drivers #138
- debug improvement: single file export to reproduce bugs #105
- MoonLight on ESP32-D0 / Non PSRAM boards unstable #60
- http server only seems to handle one active connection, leading to interface freezes #48
- bouncing balls: have an option to rotate effect #45
- Tune FastLED to IDF5 and add I2S drivers #29
- Change platform to Tasmota #24
- Artnet / DMX in/out #8
- Multiple virtual layers #7
Merged pull requests:
- UDP port seggregation #172 (ewowi)
- Device sync and FastLED audio #165 (ewowi)
- Update installer.md #162 (Flavourdynamics)
- Livescripts tutorial, WiFi handling, Network in/out, rest API #161 (ewowi)
- network in/out #160 (ewowi)
- Multiple Layers #159 (ewowi)
- DMX in/out, Ethernet, Livescripts #158 (ewowi)
- Arti-FX effects #155 (ewowi)
- Live scripts #153 (ewowi)
- Ethernet WiFi and host-name #152 (ewowi)
- Ethernet supporting ethernet types #151 (ewowi)
- bug fix: use board preset to know how to display voltage and current #145 (limpkin)
- Live Scripts re-animation #144 (ewowi)
- Searchable drop-downs #142 (ewowi)
* This Changelog was automatically generated by github_changelog_generator
v0.9.0
MoonLight is open-source software that lets you control a wide range of DMX and LED lights using ESP32 microcontrollers, for home, for artists, and for stages.
MoonLight in concert, see Art-Net below
Release highlights: Sensors, palettes, FastLED Audio and FastLED Channels API
Next to WLED Audio sync, MoonLight now also supports microphone audio processing ! Using brand new FastLED Audio, planned for FastLED v4.0 but now already available as pre-release in MoonLight. Connect a digital microphone (e.g. INMP441) to an ESP32. Functionality is still beta and updated versions will be released in the nightly builds.
Use MoonLight Installer to install.
If you like MoonLight, give it a ⭐️, fork it or open an issue or pull request. It helps the project grow, improve and get noticed.
What's Changed
MoonBase
-
I2C Support / Sensors / IMU. See IO Module and Driver Nodes
-
MyHome boards. See IO Module
-
Nightly firmware. See System update module and MoonLight Installer
MoonLight
-
FastLED Audio. See Drivers module
-
FastLED Channels API. See Drivers module
-
More Palettes from WLED-MM. See Lights control module
-
Art-Net IP-ranges. See Drivers module
See also MoonLight in Concert
-
Audio Volume reactive effects from WLED-MM. See Effects Module
-
Ring layouts. CarLight Layout. See Layouts
Pull Requests
- Channel reorg RGBW by @ewowi in #109
- esp32-d0-pico2 fixes by @ewowi in #108
- Add palettes and effects by @ewowi in #110
- Ring Layouts by @ewowi in #113
- Device-to-Device SuperSync by @ewowi in #114
- Nightly builds by @netmindz in #115
- Matrix builds by @netmindz in #117
- Group based device SuperSync by @ewowi in #119
- Nightly firmware by @ewowi in #120
- LED tubes by @ewowi in #123
- FastLED Channels API by @ewowi in #121
- I2C support and IMU driver by @ewowi in #124
- Add new Board MyHome-Control ESP32 P4 Shield V2 by @wled-install in #125
- Add MyHome-Control V57 PRO Controller (ESP32, 8MB Flash, 2MB PSRAM) by @wled-install in #126
- Add Controller V57 to the web installer table by @wled-install in #127
- Sensors by @ewowi in #128
- Effects and Art-Net by @ewowi in #129
- FastLED audio by @ewowi in #130
- Palettes and effects by @ewowi in #131
- Claude code setup by @ewowi in #133
- Unit tests and CI by @ewowi in #134
- Nodes and Modules Refactor by @ewowi in #136
New Contributors
- @netmindz made their first contribution in #115
- @wled-install made their first contribution in #125
Full Changelog: v0.8.0...v0.9.0
v0.8.0
MoonLight is open-source software that lets you control a wide range of DMX and LED lights using ESP32 microcontrollers, for home, for artists, and for stages.
In this release: 16K LEDs via Art-Net to FPP / HUB75 ColorLight cards
Use MoonLight Installer to install.
If you like MoonLight, give it a ⭐️, fork it or open an issue or pull request. It helps the project grow, improve and get noticed.
What's Changed
- January 21, patch1 applied (esp32-d0-pico2 and updatedItem bug fix)
- February 27, patch2 applied (Firmware update module, bug in finding the right firmware)
MoonBase
-
Dig-Next-2 board preset and esp32-d0-pico2 firmware with @intermittech
-
Lightcrafter16 board by @limpkin
-
Updated Installer with @viabro
-
Home Assistant integration with @viabro
MoonLight
- ESP32-P4 parlio driver supporting variable length LED strips on different pins, see #95
- Parallel LED Driver (including ESP32-P4 parlio driver) supporting RGBW LED strips where the W is on a different channel e.g. WRGB / WS2814
- Double buffering: Effects is a producer task, Drivers is a consumer task, each running on a separate processor core for higher speed, see Architecture
- Allow for high processor load without making the system too angry
- Support for high speed, large displays Art-Net out, support for FPP / HUB75 Colorlight card setups. 16K tuned (98K in next release)
- Drive lots of LEDs: 16K boundary changed to 130K (!) LEDs pre-allocated on PSRAM setups (4096 on non-PSRAM)
- Toronto Bar Gourds layout (a local speciality), with @troyhacks
-
1D effects use the Y-Axis (instead of the X-Axis) - Use the Single Column layout for LED strips
-
Support for ws2814 led strips
-
Star Sky Effect, see MoonLight effects by @limpkin
Pull Requests
- code for toggle button support by @limpkin in #80
- using a unique low level semaphore to prevent simultaneous access to pixel data by @limpkin in #82
- double buffering by @ewowi in #84
- 1D effects x to y-axis conversion by @ewowi in #81
- SE16V2 / Lightcrafter16 board support by @limpkin in #86
- Add Home Assistant integration by @ewowi in #87
- support for ws2814 led strips, white channel first by @limpkin in #88
- voltage & current readout for lightcrafter16 by @limpkin in #89
- Move from main to module IO by @ewowi in #90
- moving pin high and low out of the define, handling low level rs485 by @limpkin in #91
- Drive lots of LEDs (130K max) by @ewowi in #93
- Prepare for 0.7.1 by @ewowi in #94
- poc pal by @ewowi in #92
- starsky effect by @limpkin in #96
- correctly handle overflow, restore initial direction changing logic by @limpkin in #100
- Add node mutex by @ewowi in #103
- 71 preps by @ewowi in #104
- prep71 by @ewowi in #106
- pre 71 fixes by @ewowi in #107
Full Changelog: v0.7.0...v0.8.0
v0.7.0
MoonLight is open-source software that lets you control a wide range of DMX and LED lights using aESP32 microcontrollers, for home, for artists, and for stages.
Use MoonLight Installer to install.
If you like MoonLight, give it a ⭐️, fork it or open an issue or pull request. It helps the project grow, improve and get noticed.
What's Changed
SvelteKit
- Ethernet support, see Ethernet
MoonBase
MoonLight
Pull Requests
- uint16_t for fixed rectangle effect, ir_led: remove unnecessary logs by @limpkin in #57
- do not allow ir code 0 by @limpkin in #58
- add heap-optimization: request heap optimization review by @ewowi in #62
- d0 tuning by @ewowi in #63
- Board presets tuning by @ewowi in #66
- Board preset add presets by @ewowi in #70
- Board presets more presets by @ewowi in #71
- Board presets ESP32-P4 by @ewowi in #72
- Board presets p4 by @ewowi in #74
- Update board definitions by @wladwnt in #73
- rename UI components by @ewowi in #75
- Lots of effects by @ewowi, @Brandon502 and @BobLoeffler68 in #77
- v0.7.0 preparations by @ewowi in #76
New Contributors
- @wladwnt made their first contribution in #73
- @BobLoeffler68 made their first contribution in #77
Full Changelog: v0.6.0...v0.7.0
v0.6.0
MoonLight v0.6.0 is here!
MoonLight is open-source software that lets you control a wide range of DMX and LED lights using aESP32 microcontrollers, for home, for artists, and for stages.
This version marks the first end-user–ready release, featuring an easy installer, step-by-step YouTube tutorials, and an updated website.
Under the hood, MoonLight has been fine-tuned into a stable foundation for future growth, built as a community-driven project. Extending it with new effects or hardware drivers is now simpler than ever.
MoonLight v0.6.0 works best on ESP32-S3 and ESP32-P4. ESP32-D0 and C3 max 1024 LEDs.
We’re looking for developers to help shape the future of MoonLight:
- FastLED Developer – unleash creative lighting effects and optimize driver performance
- UI Developer – enhance the user experience with Svelte 5
- System Developer – build drivers and board presets (e.g. for QuinLED or custom DIY boards)
Connect with us on YouTube, Discord, Reddit, GitHub, and MoonModules.org.
Use MoonLight Web Installer to install. It is recommended to do a fresh install (erase device).
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
Sveltekit
MoonBase
- Add Voltage and Current, Rename pins to IO
- Disable sleep feature, battery feature specified in firmwares
- Add SE16 to installer
- Download firmware working - ESP32-S3 only
- Menu: Consolidate WiFi and Connections to Network
- ESP32-p4-nano 🎉 with @troyhacks
(ae5f96f)
MoonLight
- Reordering nodes keeps nodes unchanged!, memory tunings, MoonManEffect
- Bugfix filemanager hidden files, effects start, end, brightness (RO)
- Physical driver: no restart needed with @hpwit
- Rotate - Add static angle by @Brandon502
- Physical driver: DMA buffer as control
- ESP32-D0 supported - Max 1024 LEDs)
- ESP32-P4 LED ParlioDriver by @troyhacks
- ESP32-P4 LED Parlio output on LEDs 🔥 with @troyhacks
- Add blackhole effect by @ewowi in #37
- infrared receiver driver by @limpkin in #38
- Updated Edit Nodes UI
Technical
Sveltekit
MoonBase
- onSizeChanged refactor, rotate modifier: rotateBPM and refactor
- pioarduino-55.03.32
- Add nodes sandboxes, addControl supports more types
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...
- 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
- Node name(), dim(), tag() refactor - StarLight style
- Change doc structure: group (moonbase/moonlight) and module + WLED 🐙
- Bugfix initled and updateDriver while changing channelsPerLight
- IR driver: code refactor to run inits NOT in interrupts by @limpkin in #39
- brightness control working! by @limpkin in #40
- more IR key mapping by @limpkin in #53
- Refactor Logging system, arduino logging default
Full Changelog: v0.5.9...v0.6.0
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 [https://moonmodules.org/MoonLight/gettingstarted/installation/), 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


