Outback Dingo wrote:
> Well, having this conversation before, according to Ubiquiti using the
> OpenWRT HAL it is not possible to change the polarization of the
> antenna, due to the HAL differences, however maybe one of the devs can
> help to clarify this
This has nothing to do with the HAL. All that UBNT is doing in their HAL
for external antenna selection is mess with a few GPIO pins. While going
through the GPIO settings, I noticed that the Loco2 uses different pins 
than the NanoStation2. Please try this patch to see if it fixes your 
issue.


diff --git a/package/madwifi/files/lib/wifi/madwifi.sh 
b/package/madwifi/files/lib/wifi/madwifi.sh
index e7d83d3..5b066f3 100755
--- a/package/madwifi/files/lib/wifi/madwifi.sh
+++ b/package/madwifi/files/lib/wifi/madwifi.sh
@@ -90,11 +90,20 @@ enable_atheros() {
        config_get_bool softled "$device" softled 1
 
        devname="$(cat /proc/sys/dev/$device/dev_name)"
-       antgpio=
+       local antgpio=
+       local invert=
        case "$devname" in
-               NanoStation2) antgpio=7;;
-               NanoStation5) antgpio=1;;
+               NanoStation2) antgpio=7; invert=1;;
+               NanoStation5) antgpio=1; invert=1;;
+               NanoStation Loco2) antgpio=2;;
        esac
+       if [ -n "$invert" ]; then
+               _set="clear"
+               _clear="set"
+       else
+               _set="set"
+               _clear="clear"
+       fi
        if [ -n "$antgpio" ]; then
                softled=0
                config_get antenna "$device" antenna
@@ -106,14 +115,13 @@ enable_atheros() {
                esac
                        
                [ -x "$(which gpioctl 2>/dev/null)" ] || antenna=
+               gpioctl "dirout" "$antgpio" >/dev/null 2>&1
                case "$antenna" in
                        horizontal|vertical|auto)
-                               gpioctl "dirout" "$antgpio" >/dev/null 2>&1
-                               gpioctl "set" "$antgpio" >/dev/null 2>&1
+                               gpioctl "$_clear" "$antgpio" >/dev/null 2>&1
                        ;;
                        external)
-                               gpioctl "dirout" "$antgpio" >/dev/null 2>&1
-                               gpioctl "clear" "$antgpio" >/dev/null 2>&1
+                               gpioctl "$_set" "$antgpio" >/dev/null 2>&1
                        ;;
                esac
        fi
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to