Wireless LEDs
Jump to navigation
Jump to search
The XO has two leds dedicated to providing information on the wireless subsystem status. In this document we'll call them L (for left - the keyhole led) and R (for the led in the right hand).
The behavior of such LEDs can be customized with two iwpriv commands:
iwpriv eth0 ledgpio <parameters> iwpriv eth0 ledbhv <parameters>
As of today (Oct 2008, build 8.2-767) these parameters have the following values:
iwpriv eth0 ledgpio eth0 ledgpio:1 1 2 12 3 16 for state in `seq 0 10`; do iwpriv eth0 ledbhv ${state}; done eth0 ledbhv:0 1 1 0 0 2 1 0 0 3 1 0 eth0 ledbhv:1 1 2 4 1 2 1 0 1 3 2 4 eth0 ledbhv:2 1 0 0 2 2 1 0 2 3 0 0 eth0 ledbhv:3 1 1 0 3 2 1 0 3 3 1 0 eth0 ledbhv:4 1 1 0 4 2 1 0 4 3 1 0 eth0 ledbhv:5 1 0 0 5 2 1 0 5 3 1 0 eth0 ledbhv:6 1 1 0 6 2 1 0 6 3 1 0 eth0 ledbhv:7 1 1 0 7 2 1 0 7 3 1 0 eth0 ledbhv:8 1 2 5 8 2 1 0 8 3 2 5 eth0 ledbhv:9 1 0 0 9 2 2 4 9 3 1 0 eth0 ledbhv:10 1 0 0 10 2 1 0 10 3 1 0
But How do I interpret those numbers?
ledgpio This command is used to set/get LEDs. iwpriv ethX ledgpio <LEDs> will set the corresponding LED for the GPIO Line. iwpriv ethX ledgpio will give u which LEDs are Enabled. Usage: iwpriv eth1 ledgpio 1 0 2 1 3 4 will enable LED 1 -> GPIO 0 LED 2 -> GPIO 1 LED 3 -> GPIO 4 iwpriv eth1 ledgpio shows LED information in the format as mentioned above. Note: LED0 is invalid Note: Maximum Number of LEDs are 16. ledbhv This command can be used to change default LEDs behaviors. A given LED behavior can be on, off or blinking. The duty/cycle can be set when behavior is programmed as blinking. Usage: 1. To get default LED behavior iwpriv mshX ledbhv <firmware state> 2. To set or change default LED behavior iwpriv mshX ledbhv <firmware state> <lednum> <behavior> <arg> firmware state: The following are some of the relevant states. 00: disconnected 01: firmware is scanning 02: firmware is connected and awake 03: firmware is sleeping 04: connected deep sleep 06: firmware disconnected link lost 07: firmware disconnected disassociated 09: data transfer while firmware is associated and not scanning. (If firmware is already in this state, LED behavior does not change on this data transfer). 10: firmware idle, not scanning, not disconnected or disassociated. lednum: 1 or 2 for first and second LED. behavior: 0 for steady ON, 1 - steady off and 2- blinking. arg: It is used when behavior is 2 to set duty and cycle. It is defined as (duty << 4 | cycle). Here duty could be 0..4 and cycle 0..5 for 34, 74, 149, 298, 596, 1192 ms respectively. Examples: 1. To get default behavior for scan iwpriv mshX ledbhv 1 2. To get default behavior while data transfer iwpriv mshX ledbhv 9 3. To turn off LED 2 iwpriv mshX ledbhv 2 2 1 0 iwpriv mshX ledbhv 10 2 1 0 4. To enable LED 2 and blink LED 1 while data transfer. iwpriv mshX ledbhv 9 2 0 0 iwpriv mshX ledbhv 9 1 2 4 5. To change duty cycle of LED 2 during data transfer iwpriv mshX ledbhv 9 2 2 36 6. To turn ON LED 2 when firmware is disassociated/disconnected. iwpriv mshX ledbhv 0 2 0 0