(Based on this original post: https://www.bilibili.com/opus/1004368610304458758)
-
Verify required libraries
Ensure your DSM has the necessary libraries by running:lsmod | grep i2cExpected output (example):
i2c_algo_bit 16384 1 i915 i2c_i801 28672 0 -
Compatibility Note
- The script was tested on
DS3622xs(lacksi2csupport by default). - Either install the libraries manually or switch to a compatible model like
SA6400.
- The script was tested on
-
Download the CLI Tool
Get the latest release:
ugreen_leds_cliGet the ug_leds_en.sh script from this repo.
-
Folder Setup
Create this structure (replacexxxxwith your username):/volume1/homes/xxxx/ugreen_leds/ ├── ug_leds_en.sh └── ugreen_leds_cli
-
DSM Task Scheduler
- Path:
Control Panel → Task Scheduler - Action: Add a new User-defined script task.
- Path:
-
Task Configuration
- Name:
ugreen_led - User:
root - Frequency: Every 5 minutes (adjustable)
- Run Command:
cd /volume1/homes/xxxx/ugreen_leds chmod +x ug_leds_en.sh chmod +x ugreen_leds_cli bash ug_leds_en.sh
- Name:
| Component | Status | Color/Behavior | Condition |
|---|---|---|---|
| Power | Normal | White | Default |
| Alert | Red (blinking) | CPU temp > 90°C (requires sensors plugin in RR) |
|
| Network | Online | Blue | Gateway reachable |
| Offline | Red | No connection | |
| Disk (1–8) | Healthy | Green | SMART OK |
| Failed | Red | SMART Failure | |
| Unknown | Yellow | Undetermined state | |
| Overheat | Yellow (blinking) | Temp > 50°C |
- Replace
xxxxin paths with your actual DSM username. - Ensure scripts are executable (
chmod +x). - For CPU temp alerts, install
lm-sensorsif missing.
Let me know if you'd like any adjustments!