How to control LED color & brightness, how to set all LEDs low brightness, or off, and survive reboots

Short story: For all LEDs turn off, enter value 000000 for all LEDs Rainbow settings.

Long story:

  1. clean all content of /etc/config/rainbow (preferably use WinSCP, open the file, delete all content, save, so the file will show size 0 KB)

  2. from /etc/config/system delete all relevant entries (config led sections)
    It needs to be done via files instead of commandline or LUCI, because the config brought over from previous versions is not compatible, hence cannot be removed/fixed by LUCI and commandline.

  3. Reboot. Now you should see Power shining green, LAN and WAN (whatever you have connected) white, at max brightness, other LED including WIFI are off even when WIFI is working fine. If you see different setup, you have some other unknown configuration applied somewhere. In such case, you may want to perform factory reset https://docs.turris.cz/hw/omnia/rescue-modes/#re-flash-router to start with latest version from scratch.

  4. go to http://192.168.1.1/cgi-bin/luci/admin/system/leds and Add LED Action:

for Power LED:

Name: [blank, is not needed]
LED Name: rgb:power
Trigger: Always on

for WAN:

LED Name: rgb:wan
Trigger: Network device activity kernel netdev
Device: eth2
Trigger mode: Transmit Receive

for LAN:

LED Name: rgb:lan-0
Trigger: Network device activity kernel netdev
Device: lan0
Trigger mode: Transmit Receive

for LAN 1 to 4 accordingly, if you have it connected.

Now go to http://192.168.1.1/cgi-bin/luci/admin/system/rainbow
Add entries for Power, LAN0 (LAN 1 to 4 if you have it connected), WAN:

Color: custom - 010000

where the numbers represent RGB level in hex - as RRGGBB, from 00 to ff for respective color. Therefore 000000 means black = off, and 010000 is lowest red, 000100 lowest green, 000001 lowest blue.
I prefer the Power LED be off (value 000000), since Power light is not necesary because there are other LEDs shining that imply there must be power on.

Here is content of config files if you prefer editing them directly, using WinSCP:

/etc/config/rainbow

config led 'power'
	option status 'auto'
	option color '000000'

config led 'wan'
	option status 'auto'
	option color '010000'

config led 'lan_0'
	option status 'auto'
	option color '000100'

/etc/config/system

config led
	option sysfs 'rgb:power'
	option trigger 'default-on'

config led
	option sysfs 'rgb:wan'
	option trigger 'netdev'
	option dev 'eth2'
	list mode 'rx'
	list mode 'tx'

config led
	option sysfs 'rgb:lan-0'
	option trigger 'netdev'
	option dev 'lan0'
	list mode 'rx'
	list mode 'tx'
5 Likes

Thank you! This solution works, but it must be possible to this in the GUI? Preferably one button, “All LEDs off”

1 Like

Thank you for this info, but when I go to:

http://192.168.1.1/cgi-bin/luci/admin/system/leds

If I press any of the buttons on that page
(though I didn’t touch the “Delete” or “Reset” buttons),
I get this error message:

RPCError

RPC call to session/access failed with error -32002: Access denied at handleCallReply (http://192.168.1.1/luci-static/resources/rpc.js?v=git-22.347.45520-d30ab74:11:3)

The message appears at the top of the page, inside a red background.

How can I avoid getting this error message?

What do I need to do to set the correct permissions, or take the right steps, so that the buttons on this page (“Edit” & “Add LED action” etc.) actually function?

I’d like to make sure I don’t run into problems when I go through the steps outlined by xsys above.

(I’m trying to get my LEDs set to the colors I originally had them at before an upgrade broke them several months ago.

what I would try:
delete all config led sections from /etc/config/system, using WinSCP
rename /etc/config/rainbow file to rainbow.old
reboot
try again
eventually, if you dont have any complex settings, try factory reset 4 this way you will get rid of all errors and historical misconfigs.

Thanks for the suggestion, I’ll try this. But I don’t use WinSCP and I don’t use Microsoft Windows. I ssh into the router with the OpenSSH that’s on my Ubuntu MATE Linux box and I use the Vim text editor on text files.

I would ONLY try a factory reset as a last-ditch, bottom-of-the-barrel thing to do. Doing that would break more than it would fix.

Thank you for this manual.
My LED now shines less, but only because of the setting to, for example, 001100. The brightness button can reduce the brightness even more, and I set the maximum brightness to 001100. It’s not an ideal solution for me.
It seems to me that the Omnia does not save the brightness button settings and gives the maximum values every time it restarts.
Can you advise me where the value of the button is stored and why it is set to the maximum value on every reboot?

I would be glad to have a CLI command to control the brightness of the LEDs.
I just want to do what the LED control button on the router does, but I want to do it per SSH so that I don’t need to go to the router when I want to decrease the brightness. The solution in the first post sounds like a total overkill. Isn’t there really no one liner to control the brightness?

rainbow brightness 1

1 Like

Thank you, this works fantastic with the values 0 to 7.
Exactly what I needed.

It is possible to use a finer brightness setting … for me 1 is too bright at night

Example … rainbow brighteness -p 30 … is equal … raibow brightness 1

Compare
1 - 30
2 - 63
3 - 94
4 - 127
5 - 158
6 - 191
7 - 221
8 - 254

My nighttime minimum brightness is 5

7 Likes

Anyone has an Idea why Lan 4 refuses to turn off (Black)?
All other work. I can set any Color for Lan 4 even 000001. But not solid Black.