Document SignalRGB setup in README

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
mangavalkandClaude Opus 5.5 committed 2026-10-26 00:30:59 +01:00
1 parent 35240e5dfc
commit 1e1b14c1ec
1 file changed
+76 -1
+76 -1
View File
@@ -19,7 +19,82 @@ running anything that opens the TX.
| `test/watch_rx.py` | `python test/watch_rx.py [seconds]`: watches the fan's effect id via the RX only; works while SignalRGB runs. |
| `build-src/` | sources for `tuzc.exe` / `tuzd.exe`. |
The plugin hardcodes the fan MAC `e8:b5:62:62:32:e1` and RX slot 1 (from `lianli_poc.py scan`).
## Using it with SignalRGB
SignalRGB has no support for the wireless Lian Li kits. `LianLi_Wireless_SLINF_PoC.js` is a custom
plugin that drives one SL-INF wireless fan through the TX dongle.
### 1. Pair the fan
The fan must already be bound to your TX dongle. This is done once in L-Connect 3; after that L-Connect
can be uninstalled or must at least stay closed while SignalRGB runs.
### 2. Find your fan's address
Quit SignalRGB first (it holds the TX dongle), then:
```bash
python lianli_poc.py scan
```
```
TX master 16:e5:90:62:32:dc channel 8 firmware 16
RX hears 1 device(s):
device e8:b5:62:62:32:e1 SL-INF Wireless x1
bound to this TX: yes channel 8 rx slot 1
```
Copy the `device` address, the `rx slot` and the fan count (`x1`) into the top of the plugin:
```js
const FAN_MAC = [0xe8, 0xb5, 0x62, 0x62, 0x32, 0xe1];
const FAN_RX_SLOT = 1;
const FAN_COUNT = 1;
```
The values in the repo are for the original fan; a different or re-paired fan needs new values.
### 3. Install the plugin
Copy the plugin into SignalRGB's user plugin folder and restart SignalRGB (it only loads plugins at
startup):
```bash
cp LianLi_Wireless_SLINF_PoC.js "$USERPROFILE/Documents/WhirlwindFX/Plugins/"
```
The fan shows up as **Lian Li SL-INF Wireless (PoC)**. Place and resize it on the Layouts page so it
sits where the fan is in your case.
### 4. Settings
| Setting | Default | What it does |
|---|---|---|
| Lighting Mode | Canvas | `Canvas` follows the active effect, `Forced` shows Forced Color. |
| Forced Color | `#009bde` | Colour used in Forced mode. |
| Shutdown Color | `#8000ff` | Colour the fan keeps after SignalRGB closes or the PC shuts down. |
| Update Interval (ms) | 200 | Minimum time between uploads to the fan (100–2000). |
### Limitations
- Every colour change is a full compressed upload over the 2.4 GHz link, so the fan updates a few
times per second at most. Static colours and slow effects look fine; fast and audio effects step.
- Frames are only sent when the colours actually change.
- The 44 LEDs per fan are mapped as three rings (centre 8, inner 10, outer 8), mirrored on both
sides of the fan.
- One fan group only, at the address set in the plugin. There is no discovery: a SignalRGB plugin can
open only one USB device, and fan discovery needs the RX dongle.
- While SignalRGB runs, `lianli_poc.py` and `test/js_tuz_on_fan.py` can't open the TX dongle.
### Troubleshooting
- **Fan not listed:** check SignalRGB's log in `%LOCALAPPDATA%\WhirlwindFX\SignalRgb\Logs` for
`Custom Plugin File Loaded` and for errors from the `0416:8040` engine thread.
- **Listed but the fan doesn't change:** run `python test/watch_rx.py 10` while SignalRGB runs. A
new effect id appearing every second or so means uploads are reaching the fan. If the id never
changes, the address in the plugin is probably wrong or L-Connect has the dongle.
- **Back to normal:** delete the plugin from `Documents\WhirlwindFX\Plugins` and restart SignalRGB.
The fan keeps the Shutdown Color until something else sets it.
## Rebuilding tuzc.exe / tuzd.exe