TP-Link TL-MR3020 GPIOs

Hat schon jemand die Schiebeschalter beim MR3020 unter Gluon mit einer Funktion belegt? Der Schalter ist auf die GPIO 18 und 20 gelegt.

https://wiki.openwrt.org/toh/tp-link/tl-mr3020#gpios

Gerne würde ich den Schalter wie folgt belegen:

3G   (1+0) VPN-Uplink auf dem WAN/LAN Port
WISP (0+1) Mesh on WAN/LAN Port
AP   (1+1) Freifunk auf dem WAN/LAN Port

Hat jemand schon eine Lösung fertig die beim Start den Status des Schalters abfragt und bei Änderung im laufenden Betrieb den Port ändert?

1 Like

Das wäre wirklcih praktisch!

der link oben beschreibt doch schon ganz gut was zu tun ist … ohne gewähr … rtfm
viell. hilft das hier noch GPIO [Old OpenWrt Wiki]

#!/bin/sh

# export gpio to userspace
echo "20" > /sys/class/gpio/export
echo "18" > /sys/class/gpio/export

# define in or out
echo "in" > /sys/class/gpio/gpio20/direction
echo "in" > /sys/class/gpio/gpio18/direction


while true ; do

# read them out (not sure if path is correct)
pina=$(cat /sys/class/gpio/export/gpio20)
pinb=$cat /sys/class/gpio/export/gpio18)


    if [ $pina == 1 ] ; then 
       if [ $pinb == 1] ; then 
       # a=1, b=1
       else
       # a=1, b=0
       fi
       else
       if [ $pinb == 1 ] ; then
           # a=0 b=1
       else
           # a=0, b=0
       fi
    fi
    
    sleep 10
done

# you need logic to not do every 10 seconds the same thing, especialy if nothing changed