Skip to content

Commit 908f35a

Browse files
committed
clarifications
1 parent 703d537 commit 908f35a

2 files changed

Lines changed: 14 additions & 11 deletions

File tree

.github/copilot-instructions.md

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,15 @@
11
# WLED-MM — ESP32/ESP8266 LED Controller Firmware
22

3-
WLED is a fast, feature-rich ESP32/ESP8266 webserver for controlling NeoPixel (WS2812B, WS2811, SK6812) LEDs and SPI-based chipsets. WLED-MM is a fork focused on higher performance (ESP32, ESP32-S3, PSRAM boards), large installs, and advanced audio analysis.
3+
WLED is a fast, feature-rich ESP32/ESP8266 webserver for controlling NeoPixel (WS2812B, WS2811, SK6812) LEDs and SPI-based chipsets.
4+
WLED-MM is a fork focused on higher performance (ESP32, ESP32-S3, PSRAM boards), large installs, and advanced audio analysis.
5+
6+
Always reference these instructions first and fallback to search or bash commands only when you encounter unexpected information that does not match the info here.
7+
8+
## Setup
9+
10+
- Node.js 20+ (see `.nvmrc`)
11+
- Install dependencies: `npm ci`
12+
- PlatformIO (required only for firmware compilation): `pip install -r requirements.txt`
413

514
## Hardware Targets
615

@@ -11,14 +20,6 @@ WLED is a fast, feature-rich ESP32/ESP8266 webserver for controlling NeoPixel (W
1120
| ESP32-S2, ESP32-C3 | Supported |
1221
| ESP8266 | Deprecated — should still compile, but not actively maintained |
1322

14-
Always reference these instructions first and fallback to search or bash commands only when you encounter unexpected information that does not match the info here.
15-
16-
## Setup
17-
18-
- Node.js 20+ (see `.nvmrc`)
19-
- Install dependencies: `npm ci`
20-
- PlatformIO (required only for firmware compilation): `pip install -r requirements.txt`
21-
2223
## Build and Test
2324

2425
| Command | Purpose | Typical Time |

.github/cpp.instructions.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -244,9 +244,11 @@ uint32_t wg = (((c1 >> 8) & TWO_CHANNEL_MASK) * amount) & ~TWO_CHANNEL_MASK;
244244
return rb | wg;
245245
```
246246

247-
### Bit Shifts Over Division (RISC-V boards)
247+
### Bit Shifts Over Division (mainly for RISC-V boards)
248248

249-
On most ESP32 variants (Xtensa core), the compiler already converts power-of-two divisions to shifts at `-O2`, so manual shifts rarely help. On RISC-V based ESP32 boards (ESP32-C3, ESP32-C6, ESP32-H2) the compiler may not do this automatically, so explicit shifts can be beneficial:
249+
ESP32 and ESP32-S3 (Xtensa core) have a fast "integer divide" instruction, so manual shifts rarely help.
250+
The compiler already converts power-of-two unsigned divisions to shifts at `-O2`.
251+
On RISC-V based boards (ESP32-C3, ESP32-C6, ESP32-C5) explicit shifts can be beneficial:
250252

251253
Prefer bit shifts for power-of-two operations:
252254

0 commit comments

Comments
 (0)