TP-Link WA850RE Signal Leds problem Fix (LEDE 17.01.2)

Greetings i have noticed that the wa850re v1.2 leds don't work as intended when using WDS.

I have configured 2 networks: WDS Client (wlan0) and WDS AP (wlan0-1), but the signal leds don't light up,wireless keeps flashing.

Edit: i found out that the problem with signal leds it's missing package
Fix:
install rssileds

opkg install http://downloads.lede-project.org/releases/packages-17.01/mips_24kc/base/rssileds_0.2-1_mips_24kc.ipk

OR

  1. Download http://downloads.lede-project.org/releases/packages-17.01/mips_24kc/base/rssileds_0.2-1_mips_24kc.ipk

  2. Transfer package via scp

  3. opkg install rssileds_0.2-1_mips_24kc.ipk

Optional extra:

WARNING! using Luci to configure leds will erase the config of the signal leds, edit /etc/config/system manually.

To have activity indication on 'wireless' and 're' leds edit /etc/config/system and:

  1. Add

config led 'led_re'
option name 'RE'
option sysfs 'tp-link:blue:re'
option trigger netdev
option dev 'wlan0'
option mode 'rx tx link'

  1. find config led 'led_wlan' and change

option trigger 'netdev'
option dev 'wlan0-1'
option mode 'rx tx link'

I first did a workaround (before i found out that rssidleds was missing) by modifying a script, i'll leave it here just in case if someone wants to use it, transfer it via scp and call it from /etc/rc.local (in LUCI system>startup>local startup) and don't forget to set execution permissions (chmod +x).

#WA850RE_leds_fix.sh
#2017 alfrix

LED_lan=tp-link:blue:lan
LED_wlan=tp-link:blue:wlan
LED_re=tp-link:blue:re

echo "netdev" > /sys/class/leds/$LED_lan/trigger 
echo "netdev" > /sys/class/leds/$LED_wlan/trigger
echo "netdev" > /sys/class/leds/$LED_re/trigger

echo "link tx rx" > /sys/class/leds/$LED_lan/mode 
echo "link tx rx" > /sys/class/leds/$LED_wlan/mode
echo "link tx rx" > /sys/class/leds/$LED_re/mode

echo "eth0" > /sys/class/leds/$LED_lan/device_name 
echo "wlan0-1" > /sys/class/leds/$LED_wlan/device_name
echo "wlan0" > /sys/class/leds/$LED_re/device_name


LED1="tp-link:blue:signal1"
LED2="tp-link:blue:signal2"
LED3="tp-link:blue:signal3"
LED4="tp-link:blue:signal4"
LED5="tp-link:blue:signal5"

 
Led_On() { 
	  echo "default-on" > /sys/class/leds/$1/trigger 
}
 
Led_Off() {
	  echo "none" > /sys/class/leds/$1/trigger
}
  
while true ; do
  RSSI=`cat /proc/net/wireless | awk 'NR==3 {print $4}' | sed 's/\.//'`
  #echo "RSSI: $RSSI"
 
  if [ -z $RSSI ] || [ $RSSI -ge 0 ]; then STRENGTH=0 #error
  elif [ $RSSI -ge -50 ] ; then STRENGTH=5 #amazing
  elif [ $RSSI -ge -60 ] ; then STRENGTH=4 #excellent
  elif [ $RSSI -ge -70 ] ; then STRENGTH=3 #good
  elif [ $RSSI -ge -80 ] ; then STRENGTH=2 #fair
  elif [ $RSSI -ge -90 ] ; then STRENGTH=1 #bad
  else STRENGTH=0
  fi
 
    case $STRENGTH in
      5)  Led_On $LED5;Led_On $LED4;Led_On $LED3;Led_On $LED2;Led_On $LED1;;
      4)  Led_On $LED4;Led_On $LED3;Led_On $LED2;Led_On $LED1;Led_Off $LED5;;
      3)  Led_On $LED3;Led_On $LED2;Led_On $LED1;Led_Off $LED4;Led_Off $LED5 ;;
      2)  Led_On $LED2;Led_On $LED1;Led_Off $LED3;Led_Off $LED4; Led_Off $LED5 ;;
      1)  Led_On $LED1;Led_Off $LED2;Led_Off $LED3;Led_Off $LED4;Led_Off $LED5 ;;
      0)  Led_Off $LED1;Led_Off $LED2;Led_Off $LED3;Led_Off $LED4;Led_Off $LED5 ;;
    esac
 
sleep 5

# Turn all off to see when it refreshes

Led_Off $LED1;
Led_Off $LED2;
Led_Off $LED3;
Led_Off $LED4;
Led_Off $LED5; 

done
exit
1 Like