Archer a9 stock has option to turn off all LEDs
So it's working on OpenWrt 19.07.4 for:
Archer C7 v4
Archer C7 v5
Archer C50 v4
Not working:
Archer C7 v2
Hi!
I found this topic when I move to OpenWRT from stock, but haven't got the answer "How to turn off leds from 11pm to 8am"
So, here's my way for Archer C7 v4, using uci
First I set up "daytime" rules for each LED, including USB.
Second, wrote a shell script ledcontrol.sh, which can turn all rules to "none" (that turns led off) or to "daytime" state
#!/bin/sh
case "$1" in
on)
uci set system.led_lan1.trigger='switch0'
uci set system.led_lan1.port_mask='0x04'
uci set system.led_lan1.speed_mask='0x08'
uci set system.led_lan2.trigger='switch0'
uci set system.led_lan2.port_mask='0x08'
uci set system.led_lan2.speed_mask='0x08'
uci set system.led_lan3.trigger='switch0'
uci set system.led_lan3.port_mask='0x10'
uci set system.led_lan4.trigger='switch0'
uci set system.led_lan4.port_mask='0x20'
uci set system.led_lan4.speed_mask='0x08'
uci set system.@led[4].trigger='phy0assoc'
uci set system.@led[5].trigger='phy1assoc'
uci set system.@led[6].trigger='netdev'
uci set system.@led[6].mode='link'
uci set system.@led[6].dev='eth0.2'
uci set system.@led[7].trigger='none'
uci set system.@led[8].trigger='none'
uci set system.@led[9].trigger='usbport'
uci set system.@led[9].port='usb1-port1'
uci set system.@led[10].trigger='usbport'
uci set system.@led[10].port='usb2-port1'
uci set system.@led[11].trigger='heartbeat'
uci commit && reload_config
;;
off)
uci set system.led_lan1.trigger='none'
uci set system.led_lan2.trigger='none'
uci set system.led_lan3.trigger='none'
uci set system.led_lan4.trigger='none'
uci set system.@led[4].trigger='none'
uci set system.@led[5].trigger='none'
uci set system.@led[6].trigger='none'
uci set system.@led[7].trigger='none'
uci set system.@led[8].trigger='none'
uci set system.@led[9].trigger='none'
uci set system.@led[10].trigger='none'
uci set system.@led[11].trigger='none'
uci commit && reload_config
;;
*)
echo "Usage: $0 {on|off}"
exit 1
esac
Finaly, added this script to crontab:
0 23 * * * /usr/bin/ledcontrol.sh off
0 8 * * * /usr/bin/ledcontrol.sh on
Maybe it looks "kinda dirty", but works for me several months.
I added the following LEDs to the LED Configuration page:
This added some extra LEDs that can be configured with system.@led[index]
. I think these values vary from router to router. I think that after doing your LEDs configuration the best way to know the names is by running the following command: uci show system | grep "system.led"
as mentioned in https://openwrt.org/docs/guide-user/base-system/led_configuration#led_section
Thanks for sharing this script @nihochuha, after adding the LEDs it was breezy to update it.
Best regards!