From 49c560dbdcb1f1df1eb32bb17df79101950573e7 Mon Sep 17 00:00:00 2001 From: jcleigh Date: Tue, 11 Nov 2025 12:53:42 -0600 Subject: [PATCH 1/5] Adds WLED app --- public/images/apps/wled_icon.png | Bin 0 -> 990 bytes src/content/apps/wled.mdx | 73 +++++++++++++++++++++++++++++++ 2 files changed, 73 insertions(+) create mode 100644 public/images/apps/wled_icon.png create mode 100644 src/content/apps/wled.mdx diff --git a/public/images/apps/wled_icon.png b/public/images/apps/wled_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..c33d995fffccab5de8348b570be6c6ad6aeb270f GIT binary patch literal 990 zcmeAS@N?(olHy`uVBq!ia0vp^CqS5k8A#4*i(3Pv7>k44ofvPP)Tsw@I14-?iy0WW zg+Z8+Vb&Z8py2ZWpAc6defgL9|2rwvzf2XX1+X=`Qmiu^V6BgX3m^c zJ!4|^^oiBeCR9)Dub$FhJ-M%DQg6+~o|*|gHT~VSeOqTG!T6-`Y~&(p=xr&~WG}_Z*;CeM^G;f*Jn*H@C2|wzU&Kc<9K{<0nqtS9tJW z;)TG69~}R&g0rVhjj>7q1#Q*^En#3_GWT?G45^s&_V($ZLk1!Z53eOY_F`oGs97T* zfBkvk%fI^y4|gQb^5EoDwVYd!@~{4B$)$OpU#<&&{mNn0_q`7Bj2FcOa3u0{ zF4_t3dc-+2%;1wXdR4XJrD=&Ehrs274r&iKGM%`Yd`#*s^Tlm;iQh!_xHHVWmkv>% z?yybn#A=x(#tLc*`x!aej$E-%DVx5ti>FBN-(OCJo9|z?=)X9W|EwXzq2UIQPy#wB z=%~W;?Ul1R6hF6L2<1!>s!1w$I#Kz-RAd4dhk*11E)Nw2Uk9z!2`@Ll`FHl%Lvx?G zoQjW69Jl#7x9xwxT%Z9$yd60@6Edosck;k_-VW{#aRF%oaRGe= zGX*_`IENgE7>7MTm+ok&VBE-vqT#A|%6mlY$nrd4w^n7jvFZP@K498p@O1TaS?83{ F1OO`D=MMk? literal 0 HcmV?d00001 diff --git a/src/content/apps/wled.mdx b/src/content/apps/wled.mdx new file mode 100644 index 0000000..073e74f --- /dev/null +++ b/src/content/apps/wled.mdx @@ -0,0 +1,73 @@ +--- +title: "WLED" +description: "Controller for a WLED device: power, color presets, effects, brightness, live WiFi/device status, resilient error handling." +icon: "/images/apps/wled_icon.png" # Placeholder; replace with actual icon asset if added +category: "utility" +preloaded: false +customizable: true +fileLocation: "/apps/wled" +--- + +# WLED + +Controller for a WLED device (e.g. Octolamp). Manage power, colors, effects, brightness, and inspect live WiFi / device status directly from the badge. + +## Features + +- **Status Monitor**: Real‑time WiFi + WLED connectivity with clear state messages +- **Power Toggle**: Immediate on/off control with confirmation +- **Color Presets**: 10 presets (WHITE, RED, GREEN, BLUE, YELLOW, CYAN, MAGENTA, ORANGE, PURPLE, PINK) +- **Effect Picker**: Popular WLED effects (SOLID, BLINK, BREATHE, RAINBOW, RAINBOW CYCLE, SCAN, FLOW, PACIFICA, SUNRISE) +- **Brightness Control**: 0–100% slider (maps to 0–255 raw value) + +## Controls + +### Status View +- **A**: Enter Control Menu (when WLED reachable) +- **B**: Refresh status (retry WiFi / device) +- **C**: Skip pending WLED queries (continue without device) +- **UP / DOWN**: (no action in status view) +- **HOME**: Exit to launcher + +### Control Menu +- **UP / DOWN**: Navigate items +- **A**: Select item +- **HOME**: Back to launcher + +### Pickers (Color / Effect / Brightness) +- **UP / DOWN**: Cycle options / adjust level +- **A**: Apply selection +- **HOME**: Exit to launcher + +## Install + +1. Copy the `badge/apps/wled/` folder from [`badger/home`](https://github.com/badger/home/tree/main/badge/apps/wled). +2. Paste into `/apps/wled/` on the BADGER drive in USB disk mode. +3. Eject badge, reboot, launch WLED from menu. + +## File Layout + +``` +/apps/wled/ + ├── __init__.py # Main app: UI modes, HTTP requests, parsing, rendering + ├── README.md # Detailed usage + troubleshooting (upstream) + └── icon.png # Optional launcher icon (replace placeholder path above) +``` + +## Configuration (`/secrets.py`) + +Add required variables to the root-level `secrets.py`: + +```python +# WiFi credentials (required) +WIFI_SSID = "YourNetworkName" +WIFI_PASSWORD = "YourNetworkPassword" + +# WLED device IP (required) +WLED_IP = "192.168.1.100" # Replace with your device's IP +``` + +## Source + +View the complete source code on GitHub: +- [WLED controller app](https://github.com/badger/home/blob/main/badge/apps/wled/__init__.py) From 0d49c2fea73f87b3c2b1b9aff86b0ff523b25fbf Mon Sep 17 00:00:00 2001 From: Jordan Cleigh Date: Thu, 13 Nov 2025 15:57:57 -0600 Subject: [PATCH 2/5] Update src/content/apps/wled.mdx Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- src/content/apps/wled.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/content/apps/wled.mdx b/src/content/apps/wled.mdx index 073e74f..4b74725 100644 --- a/src/content/apps/wled.mdx +++ b/src/content/apps/wled.mdx @@ -1,7 +1,7 @@ --- title: "WLED" description: "Controller for a WLED device: power, color presets, effects, brightness, live WiFi/device status, resilient error handling." -icon: "/images/apps/wled_icon.png" # Placeholder; replace with actual icon asset if added +icon: "/images/apps/wled_icon.png" category: "utility" preloaded: false customizable: true From 5d285e22eb4b0d66c11742b0552f475835e0c744 Mon Sep 17 00:00:00 2001 From: Jordan Cleigh Date: Thu, 13 Nov 2025 15:58:08 -0600 Subject: [PATCH 3/5] Update src/content/apps/wled.mdx Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- src/content/apps/wled.mdx | 1 - 1 file changed, 1 deletion(-) diff --git a/src/content/apps/wled.mdx b/src/content/apps/wled.mdx index 4b74725..3e593ae 100644 --- a/src/content/apps/wled.mdx +++ b/src/content/apps/wled.mdx @@ -69,5 +69,4 @@ WLED_IP = "192.168.1.100" # Replace with your device's IP ## Source -View the complete source code on GitHub: - [WLED controller app](https://github.com/badger/home/blob/main/badge/apps/wled/__init__.py) From c7a611b101d90e5073461b414795872f4844749d Mon Sep 17 00:00:00 2001 From: Jordan Cleigh Date: Thu, 13 Nov 2025 15:58:22 -0600 Subject: [PATCH 4/5] Update src/content/apps/wled.mdx Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- src/content/apps/wled.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/content/apps/wled.mdx b/src/content/apps/wled.mdx index 3e593ae..70df246 100644 --- a/src/content/apps/wled.mdx +++ b/src/content/apps/wled.mdx @@ -51,7 +51,7 @@ Controller for a WLED device (e.g. Octolamp). Manage power, colors, effects, bri /apps/wled/ ├── __init__.py # Main app: UI modes, HTTP requests, parsing, rendering ├── README.md # Detailed usage + troubleshooting (upstream) - └── icon.png # Optional launcher icon (replace placeholder path above) + └── icon.png # Launcher icon ``` ## Configuration (`/secrets.py`) From f1559f9fbb615c9550942dc5f6e589230cf55eb5 Mon Sep 17 00:00:00 2001 From: Jordan Cleigh Date: Thu, 13 Nov 2025 15:58:34 -0600 Subject: [PATCH 5/5] Update src/content/apps/wled.mdx Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- src/content/apps/wled.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/content/apps/wled.mdx b/src/content/apps/wled.mdx index 70df246..10e5424 100644 --- a/src/content/apps/wled.mdx +++ b/src/content/apps/wled.mdx @@ -26,7 +26,7 @@ Controller for a WLED device (e.g. Octolamp). Manage power, colors, effects, bri - **A**: Enter Control Menu (when WLED reachable) - **B**: Refresh status (retry WiFi / device) - **C**: Skip pending WLED queries (continue without device) -- **UP / DOWN**: (no action in status view) +- **UP / DOWN**: (no action in status view) - **HOME**: Exit to launcher ### Control Menu