Skip to content

Commit 42b2648

Browse files
committed
Merge branch 'main' into dev
2 parents 834890e + c81ddfb commit 42b2648

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+18107
-603
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,4 +22,5 @@ ssl_certs/cacert.pem
2222
.DS_Store
2323
.aid
2424
/scripts/__pycache__
25-
/site
25+
/site
26+
.DS_Store

README.md

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@
5757
## 🚀 Quick Start
5858

5959
### 1️⃣ Flash & Go
60-
Use our [web installer](https://moonmodules.org/MoonLight/gettingstarted/installation/) to flash MoonLight directly via a USB cable to your ESP32, connect LEDs to it and you are ready to go.
60+
Use our [MoonLight Installer](https://moonmodules.org/MoonLight/gettingstarted/installation/) to flash MoonLight directly via a USB cable to your ESP32, connect LEDs to it and you are ready to go.
6161

6262
### 2️⃣ Connect & Configure
6363
Built-in access point makes WiFi setup effortless. Configure through the intuitive web interface.
@@ -126,17 +126,10 @@ Start creating stunning effects immediately on both mobile and desktop.
126126
### Version 0.6.0 - November 2025
127127
**The user-friendly baseline release**
128128

129-
**Coming Features:**
130-
131-
- Plug & Play Experience
132-
- Preset Controller for quick effect management
133-
- Enhanced Web Installer with one-click flashing
134-
- Large Display Drivers for massive installations
135-
- WLED Audio Sync for music synchronization
136-
- Refined Interface with polished UX
137-
138129
**From 0.6.0 Forward:** Community-driven development focused on ease of use, more effects, and expanded hardware support.
139130

131+
See [v0.7.0 Kanban board](https://github.com/users/MoonModules/projects/4) or log an [Issue](https://github.com/MoonModules/MoonLight/issues/new/choose) to report issues or request enhancements.
132+
140133
---
141134

142135
## 🏗️ Architecture & Flexibility

docs/buildprocess.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ Customize the settings as you see fit. A value of 0 will disable the specified f
4040
-D FT_DOWNLOAD_FIRMWARE=1
4141
-D FT_SLEEP=1
4242
-D FT_BATTERY=1
43+
-D FT_ETHERNET=1
4344
```
4445

4546
| Flag | Description |
@@ -51,6 +52,7 @@ Customize the settings as you see fit. A value of 0 will disable the specified f
5152
| FT_DOWNLOAD_FIRMWARE | Controls whether the firmware download feature is enabled. Disable this if you won't firmware pulled from a server. |
5253
| FT_SLEEP | Controls whether the deep sleep feature is enabled. Disable this if your device is not battery operated or you don't need to place it in deep sleep to save energy. |
5354
| FT_BATTERY | Controls whether the battery state of charge shall be reported to the clients. Disable this if your device is not battery operated. |
55+
| FT_ETHERNET | Controls whether an ethernet interface will be used. Disable this if your device has no ethernet interface connected. |
5456

5557
In addition custom features might be added or removed at runtime. See [Custom Features](statefulservice.md#custom-features) on how to use this in your application.
5658

docs/develop/development.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ After configuring the development server, a local webserver starts on [localhost
102102

103103
Firmware binaries come in 2 flavours: including boot and partition (merged) and MoonLight code only (release). They are stored in the build folder of the MoonLight repo and updated each time a build or upload (☑️ or ➡️) is done. Subfolder merged contains the first type, release the second type.
104104

105-
* Merged bins are used by the web installer, release bins by the [System update](https://moonmodules.org/MoonLight/system/update/) module (OTA). System update uses the bins stored in [GitHub releases](https://github.com/MoonModules/MoonLight/releases).
105+
* Merged bins are used by the [MoonLight Installer](https://moonmodules.org/MoonLight/gettingstarted/installer/), release bins by the [System update](https://moonmodules.org/MoonLight/system/update/) module (OTA). System update uses the bins stored in [GitHub releases](https://github.com/MoonModules/MoonLight/releases).
106106
* Merged bins starts flashing on address 0x0, release bins on address 0x10000.
107107
* All MoonLight partition schemes have a firmware size of 3MB. Smaller devices (e.g. ESP32-D0) have no OTA partition. System update is possible in this situation, but there is no fallback if update fails (need to flash using USB in that case) 🚧
108108

docs/develop/installation.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ The development environment consists of
8787

8888
!!! info "USB-to-serial chip drivers"
8989

90-
In some cases, ESP32-devices won't show connected. See USB-to-serial chip drivers at [MoonLight Web Installer](https://moonmodules.org/MoonLight/gettingstarted/installer/)
90+
In some cases, ESP32-devices won't show connected. See USB-to-serial chip drivers at [MoonLight Installer](https://moonmodules.org/MoonLight/gettingstarted/installer/)
9191

9292
* Erase the device if it is a new device or the device has not been used for MoonModules before: go to 👽 in the left menu and select Erase Flash
9393

docs/gettingstarted/hardware.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ To get started the minimal you need is an esp32-device connected via USB to your
88

99
## Minimal hardware
1010

11-
* One of the ESP32-devices shown in [MoonLight Web Installer](https://moonmodules.org/MoonLight/gettingstarted/installer/). [ESP32-S3 N16R8](https://s.click.aliexpress.com/e/_DBAtJ2H) recommended. Optional [Expansion board 44pin](https://s.click.aliexpress.com/e/_EJhmlIE)
11+
* One of the ESP32-devices shown in [MoonLight Installer](https://moonmodules.org/MoonLight/gettingstarted/installer/). [ESP32-S3 N16R8](https://s.click.aliexpress.com/e/_DBAtJ2H) recommended. Optional [Expansion board 44pin](https://s.click.aliexpress.com/e/_EJhmlIE)
1212
* Any WS2812 LED strip or panel. [256 LED panel](https://s.click.aliexpress.com/e/_EIKoYrg) recommended.
1313
* Connect the ESP32-device with USB to your computer, connect the LED strip or panel
1414

docs/gettingstarted/installation.md

Lines changed: 26 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,20 +6,25 @@
66

77
**[▶️ Watch the install tutorial](https://www.youtube.com/watch?v=7DQOEWa-Kwg)**
88

9+
## MoonLight Installer
910

10-
## MoonLight Web installer
11-
12-
Install Moonlight onto an ESP32 microcontroller using the MoonLight Web installer
11+
Install Moonlight onto an ESP32 microcontroller using the MoonLight Installer
1312

1413
**Step 1**: Get an **ESP32** and a **WS2812 LED-strip** or **LED-panel**. See [Hardware](https://moonmodules.org/MoonLight/gettingstarted/hardware/).
1514

1615
**Step 2**: Connect the ESP32 via USB, use an USB cable which supports data transfer
1716

18-
**Step 3**: Go to the [MoonLight Web Installer](https://moonmodules.org/MoonLight/gettingstarted/installer/). Select your ESP32-device, or if not listed, press others.
17+
!!! info "Bootloader mode"
18+
Some boards: Place the board in bootloader mode by press and holding the `Boot` button on the ESP32, press the `Reset` button on the ESP32 and then release the `Boot` button.
19+
20+
**Step 3**: Go to the [MoonLight Installer](https://moonmodules.org/MoonLight/gettingstarted/installer/). Select your ESP32-device, or if not listed, press others.
1921

2022
!!! info "Browser support"
23+
The installer works on Google Chrome or Microsoft Edge or similar browsers, not on Safari.
24+
25+
!!! tip "ESP32-P4-Nano"
2126

22-
The Web Installer works on Google Chrome or Microsoft Edge or similar browsers, not on Safari.
27+
On each esp32-p4-nano board, install [C6 firmware update](https://esp32-c6-firmware-update.github.io/) first, choose Via ESP32-P4 USB/UART port ("OTA update"), then press connect for MoonLight install.
2328

2429
**Step 4**: Connect to the ESP32-device
2530

@@ -43,6 +48,8 @@ Install Moonlight onto an ESP32 microcontroller using the MoonLight Web installe
4348
<img width="200" src="https://github.com/user-attachments/assets/b2391752-51c4-400e-b95c-4fa865e93595" />
4449
<img width="200" src="https://github.com/user-attachments/assets/5e2ceefd-4c31-4b72-a228-f29373b677ac" />
4550

51+
Keep this page visible until installation complete.
52+
4653
**Step 8**: Optionally Press **Logs and Console**
4754

4855
<img width="350" alt="Screenshot 2025-06-07 at 20 57 54" src="https://github.com/user-attachments/assets/9ac753dc-93b7-4f79-9419-0c81d1a4bc26" />
@@ -56,6 +63,9 @@ Install Moonlight onto an ESP32 microcontroller using the MoonLight Web installe
5663

5764
<img width="200" src="https://github.com/user-attachments/assets/9a146e3c-1a53-4906-ad2a-d70215efcf4b" />
5865

66+
!!! tip "Reset"
67+
Some boards need a reset to show up. Press the reset button on the ESP32 or press Reset in Step 8 above
68+
5969
**Step 2**: After connecting, MoonLight will show up in a **web browser** (all browsers supported). You will see this screen, select WiFi Station.
6070

6171
<img width="400" src="https://github.com/user-attachments/assets/f480356d-bf56-4a6b-b6f2-0be49fa27db3" />
@@ -97,6 +107,7 @@ Install Moonlight onto an ESP32 microcontroller using the MoonLight Web installe
97107
!!! info "Using hostname"
98108
* Restart the device to make the hostname known to your network (go to system status, scroll down and press restart)
99109
* Enter the hostname in your browser e.g. [http://ml-home.local](http://ml-home.local)
110+
* ESP32-P4-Nano: November 16, 2025: hostname is not working correctly, use IP address instead
100111

101112
!!! warning "reload UI"
102113
See step 2 ⚠️ if UI is not showing up, use [http://ml-home.local](http://ml-home.local) (replace ml-home with the hostname) or the IP address.
@@ -111,7 +122,7 @@ Install Moonlight onto an ESP32 microcontroller using the MoonLight Web installe
111122

112123
<img width="350" src="https://github.com/user-attachments/assets/8d8b9c2d-bed3-439e-a145-2bb204639c6c" />
113124

114-
* Add a layout Node by pressing the blue + button and select on off the 🚥 options (Panel 🚥 is a safe bet to start with). Scroll down to the Pin Control field and enter the pin number(s) you connected the strip or panel to.
125+
* Add a layout Node by pressing the blue + button and select on off the 🚥 options (Panel 🚥 is a safe bet to start with). Scroll down to the Pin Control field and enter the pin number(s) you connected the strip or panel to, make sure the pin exists, otherwise the device can crash and will restart in save mode. Correct the pin(s) in the Layout node and restart.
115126

116127
!!! info "Monitor"
117128
The Monitor should now show the effect
@@ -126,9 +137,16 @@ Install Moonlight onto an ESP32 microcontroller using the MoonLight Web installe
126137
The LEDs on your strip or panel should now show the effect
127138

128139
!!! tip "Choose driver"
129-
FastLED driver is best to start with if you have a normal (ws2812) LED strip or panel. Choose the Physical driver if you have more then 4 LED strips or panels or non standard LEDS (e.g. RGBW lights, curtains...). Other drivers (Virtual, Hub,) not supported yet.
140+
FastLED driver is best to start with if you have a normal (ws2812) LED strip or panel.
141+
142+
Choose the Physical driver if you have more then 4 LED strips or panels or non standard LEDS (e.g. RGBW lights, curtains...). Other drivers (Virtual, Hub,) not supported yet.
143+
130144
In some cases restart the device to make layout changes effective is needed.
145+
146+
For ESP32-P4-Nano, choose Physical driver, using the Parallel IO driver by @Troyhacks. Easy quick start: choose Pin 37 and connect a LED strip or panel as follows (Note: the pins on the board the jst connector is plugged in are in order +, Ground, Data !!! - Ignore the wire colors!):
131147

148+
<img width="200" src="../../media/moonlight/esp32-p4-nano-quickstart.jpeg"/>
149+
132150
**Step 4**: Press save (💾). Saves your setup to the file system, so if a device is restarted, your settings are still there.
133151

134152
!!! info "Next steps"
@@ -145,5 +163,5 @@ Install Moonlight onto an ESP32 microcontroller using the MoonLight Web installe
145163
* Download from GitHub
146164
* Upload from file. From a [GitHub release](https://github.com/MoonModules/MoonLight/releases), or created by VSCode, see [Develop / Installation](https://moonmodules.org/MoonLight/develop/installation/)
147165

148-
* To install the latest release, you can also use the [MoonLight Web Installer](https://moonmodules.org/MoonLight/gettingstarted/installer/) (no need to erase the device if updating)
166+
* To install the latest release, you can also use the [MoonLight Installer](https://moonmodules.org/MoonLight/gettingstarted/installer/) (no need to erase the device if updating)
149167
* Upload directly from VSCode, see [Develop / Installation](https://moonmodules.org/MoonLight/develop/installation/)

0 commit comments

Comments
 (0)