Skip to content

Commit 3b08eda

Browse files
committed
Merge branch 'dev'
2 parents aac3359 + 17fd35c commit 3b08eda

Some content is hidden

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

41 files changed

+6268
-5901
lines changed

docs/develop/development.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ There are 3 levels to add functionality:
8282

8383
* **Standard ESP32-Sveltekit code**, e.g. Connections, Wifi and System. MoonBase files is also made using standard sveltekit as example but contains a few components used in MoonLight modules. Might be rewriteen as MoonLight Module in the future.
8484
* [MoonLight Modules](https://moonmodules.org/MoonLight/moonbase/modules/) e.g. Lights Control, Effects, Info, Channels. They are subclasses of Modules.h/cpp and implement setupDefinition, onUpdate and optional loop. New modules need to be defined in main.cpp and added to menu.svelte. All further UI is generated by Module.svelte.
85-
* **MoonLight Nodes**: the easiest and recommended way. See Effects.h, Layouts.h, Modifiers.h and Drivers.h for examples. They match closest WLED usermods. Each node has controls, a setup and a loop and can be switched on and off. For specific purposes hasLayout() and hasModifier() can return true.
85+
* **MoonLight Nodes**: the easiest and recommended way. See Effects.h, Layouts.h, Modifiers.h and Drivers.h for examples. They match closest WLED usermods. Each node has controls, a setup and a loop and can be switched on and off. For specific purposes hasOnLayout() and hasModifier() can return true.
8686

8787
### Adding an ESP32 device Definition
8888

docs/develop/nodes.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ Nodes are inspired by WLED usermods, further developed in StarBase and now in Mo
1515

1616
MoonLight specific
1717

18-
* Node types: it is recommended that a node is one of the 4 types as described above. However each node could perform functionality of all types. To recognize what a node does the emojis 🚥, 🔥, 💎 and ☸️ are used in the name. The function hasLayout() and hasModifier() indicate the specific functionality the node supports. They control when a physical to virtual mapping is recalculated
19-
* **hasLayout()**: a layout node specify the amount of position of lights controlled. E.g. a panel of 16x16 or a cube of 20x20x20. If hasLayout() is true you should implement onLayout calling addLight(position) and addPin() for all the lights.
18+
* Node types: it is recommended that a node is one of the 4 types as described above. However each node could perform functionality of all types. To recognize what a node does the emojis 🚥, 🔥, 💎 and ☸️ are used in the name. The function hasOnLayout() and hasModifier() indicate the specific functionality the node supports. They control when a physical to virtual mapping is recalculated
19+
* **hasOnLayout()**: a layout node specify the amount of position of lights controlled. E.g. a panel of 16x16 or a cube of 20x20x20. If hasOnLayout() is true you should implement onLayout calling addLight(position) and addPin() for all the lights.
2020
* addPin() is needed if a LED driver is used to send the output to LED strips.
2121
* **hasModifier()**: a modifier node which manipulates virtual size and positions and lights using one or more of the functions modifySize, modifyPosition and modifyXYZ.
2222
* if the loop() function contains setXXX functions is used it is an **effect** node. It will contain for-loops iterating over each virtual ! light defined by layout and modifier nodes. The iteration will be on the x-axis for 1D effects, but also on the y- and z-axis for 2D and 3D effects. setRGB is the default function setting the RGB values of the light. If a light has more 'channels' (e.g. Moving heads) they also can be set.

docs/moonlight/overview.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,4 +117,7 @@ Effects, Modifiers, Layouts and drivers use emoji's to visualize their usage. Se
117117

118118
* ♫ Audio reactive FFT based
119119
* ♪ Audio reactive volume based
120-
* 🧊 3D supported (goals is to have all nodes support 3D 🚧)
120+
* ⭕ supports up to 0D
121+
* 📏 supports up to 1D
122+
* 🟦 supports up to 2D
123+
* 🧊 supports up to 3D

firmware/esp32-s3.ini

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ board = esp32-s3-devkitc-1 ; https://github.com/platformio/platform-espressif32/
6767
board_build.arduino.memory_type = qio_opi
6868
board_build.psram_type = opi
6969
board_build.extra_flags =
70+
-DBUILD_TARGET_ESP32_S3_STEPHANELEC_16P
7071
-DBOARD_HAS_PSRAM
7172
-D FT_BATTERY=1 ; battery feature
7273
-D VOLTAGE_PIN=8

interface/package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

interface/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "moonlight",
3-
"version": "0.5.9.3",
3+
"version": "0.6.0",
44
"private": true,
55
"scripts": {
66
"dev": "vite dev",

lib/framework/SleepService.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ void SleepService::sleepNow()
8080
ESP_LOGD(SVK_TAG, "Current level on GPIO%d: %d\n", _wakeUpPin, digitalRead(_wakeUpPin));
8181

8282
// special treatment for ESP32-C3 / C6 because of the RISC-V architecture
83-
#ifdef CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32C6
83+
#if CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32C6 // 🌙 not ifdef
8484
esp_deep_sleep_enable_gpio_wakeup(BIT(_wakeUpPin), (esp_deepsleep_gpio_wake_up_mode_t)_wakeUpSignal);
8585
#else
8686
esp_sleep_enable_ext1_wakeup(BIT(_wakeUpPin), (esp_sleep_ext1_wakeup_mode_t)_wakeUpSignal);

lib/framework/SystemStatus.cpp

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,22 +18,22 @@
1818

1919
#if CONFIG_IDF_TARGET_ESP32 // ESP32/PICO-D4
2020
#include "esp32/rom/rtc.h"
21-
#define ESP_PLATFORM "ESP32";
21+
// #define ESP_PLATFORM "ESP32"; // 🌙 use CONFIG_IDF_TARGET
2222
#elif CONFIG_IDF_TARGET_ESP32S2
2323
#include "esp32/rom/rtc.h"
24-
#define ESP_PLATFORM "ESP32-S2";
24+
// #define ESP_PLATFORM "ESP32-S2" // 🌙 use CONFIG_IDF_TARGET;
2525
#elif CONFIG_IDF_TARGET_ESP32C3
2626
#include "esp32c3/rom/rtc.h"
27-
#define ESP_PLATFORM "ESP32-C3";
27+
// #define ESP_PLATFORM "ESP32-C3"; // 🌙 use CONFIG_IDF_TARGET
2828
#elif CONFIG_IDF_TARGET_ESP32S3
2929
#include "esp32s3/rom/rtc.h"
30-
#define ESP_PLATFORM "ESP32-S3";
30+
// #define ESP_PLATFORM "ESP32-S3"; // 🌙 use CONFIG_IDF_TARGET
3131
#elif CONFIG_IDF_TARGET_ESP32C6
3232
#include "esp32c6/rom/rtc.h"
33-
#define ESP_PLATFORM "ESP32-C6";
33+
// #define ESP_PLATFORM "ESP32-C6"; // 🌙 use CONFIG_IDF_TARGET
3434
#elif CONFIG_IDF_TARGET_ESP32P4 // 🌙
3535
#include "esp32p4/rom/rtc.h"
36-
#define ESP_PLATFORM "ESP32-P4";
36+
// #define ESP_PLATFORM "ESP32-P4"; // 🌙 use CONFIG_IDF_TARGET
3737
#else
3838
#error Target CONFIG_IDF_TARGET is not supported
3939
#endif
@@ -138,7 +138,7 @@ esp_err_t SystemStatus::systemStatus(PsychicRequest *request)
138138
PsychicJsonResponse response = PsychicJsonResponse(request, false);
139139
JsonObject root = response.getRoot();
140140

141-
root["esp_platform"] = ESP_PLATFORM;
141+
root["esp_platform"] = CONFIG_IDF_TARGET; // 🌙 was ESP_PLATFORM;
142142
root["firmware_version"] = APP_VERSION;
143143
root["firmware_date"] = APP_DATE; // 🌙
144144
root["firmware_target"] = BUILD_TARGET; // 🌙

platformio.ini

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,8 @@ build_flags =
5555
${features.build_flags}
5656
-D BUILD_TARGET=\"$PIOENV\"
5757
-D APP_NAME=\"MoonLight\" ; 🌙 Must only contain characters from [a-zA-Z0-9-_] as this is converted into a filename
58-
-D APP_VERSION=\"0.5.9.3\" ; semver compatible version string
59-
-D APP_DATE=\"2025101810\" ; 🌙
58+
-D APP_VERSION=\"0.6.0\" ; semver compatible version string
59+
-D APP_DATE=\"2025102210\" ; 🌙
6060

6161
-D PLATFORM_VERSION=\"pioarduino-55.03.32\" ; 🌙 make sure it matches with above plaftform
6262

@@ -179,7 +179,7 @@ lib_deps =
179179
[HP_ALL_DRIVERS]
180180
build_flags =
181181
-D HP_ALL_DRIVERS
182-
-D HP_ALL_VERSION=\"20251017\"
182+
-D HP_ALL_VERSION=\"20251021\"
183183
lib_deps =
184184
; https://github.com/ewowi/I2SClocklessLedDriver.git#5d5508ca38a15497392950d4249cd0d910c3505d
185185
; https://github.com/ewowi/I2SClocklessLedDriver.git#d8cdb31f8b0d52c0562eb5b0ce4723e26f0dc62f
@@ -195,7 +195,10 @@ lib_deps =
195195
; https://github.com/ewowi/I2SClocklessLedDriver.git#f0d55a42f98b9b24f95c83b59c9f55ef83c8034e ; dev 20250921: DMA buffer variable and psram
196196
; https://github.com/ewowi/I2SClocklessLedDriver.git#eeb429d79b5b24facb5e8164e8588bdf526c6107 ; dev 20251007: prepare for ESP32-P4
197197
; https://github.com/ewowi/I2SClocklessLedDriver.git#b8d9d55e47c6f8dacaa106dc3b122b7e412efea9 ; dev 20251016: uint8_t pins
198-
https://github.com/ewowi/I2SClocklessLedDriver.git#e25ddeeb4c2f8c702f0a98ab3d47627dad05905a ; dev 20251017: no warnings
198+
; https://github.com/hpwit/I2SClocklessLedDriver.git#e25ddeeb4c2f8c702f0a98ab3d47627dad05905a ; dev 20251017: no waπrnings
199+
; https://github.com/hpwit/I2SClocklessLedDriver.git#6af7c8ce35021afb251d44e119a7a3d74fd087e4 ; dev 20251019: .h/cpp + setShowDelay
200+
; https://github.com/hpwit/I2SClocklessLedDriver.git#90967a0ec5803c80b18041d8f9eb4f917f60182c ; dev 20251020: setGlobalNumStrips
201+
https://github.com/hpwit/I2SClocklessLedDriver.git#8f0ed49eaf82730479c9e775df811fd8097dddd8 ; dev 20251021: updateDriver + deleteDriver + uint16_t lenghts
199202

200203
[HP_VIRTUAL_DRIVER]
201204
build_flags =

src/MoonBase/Utilities.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ static bool contains(const char *a, const char *b) {
157157
if (a == nullptr || b == nullptr) {
158158
return false;
159159
}
160-
return strnstr(a, b, sizeof(a)) != nullptr;
160+
return strstr(a, b) != nullptr;
161161
}
162162

163163

0 commit comments

Comments
 (0)