[PATCH] Add support for Unifi AC Mesh

Christian Dresel fff at chrisi01.de
Mo Okt 30 16:33:54 CET 2017


hi

On 30.10.2017 14:49, Adrian Schmutzler wrote:
> Hallo,
> 
> siehe unten.
> 
>> -----Original Message-----
>> From: franken-dev [mailto:franken-dev-bounces at freifunk.net] On Behalf
>> Of Christian Dresel
>> Sent: Montag, 30. Oktober 2017 13:03
>> To: franken-dev at freifunk.net
>> Subject: [PATCH] Add support for Unifi AC Mesh
>>
>> This is the correct firmware for the Unifi AC Mesh I have only tested at
> Unifi
>> AC Mesh and not at Unifi AC lite But my information is, that both have the
>> same Hardware
>>
>> Signed-off-by: Christian Dresel <fff at chrisi01.de>
>> ---
>>  bsp/ar71xx/.config                                      |  4 ++++
>>  bsp/board_ar71xx.bsp                                    |  1 +
>>  src/packages/fff/fff-boardname/Makefile                 |  2 +-
>>  .../files/etc/uci-defaults/50-fff-boardname             |  3 +++
>>  src/packages/fff/fff-network/Makefile                   |  2 +-
>>  .../fff/fff-network/ar71xx/network.ubnt-unifiac-lite    | 17
>> +++++++++++++++++
>>  .../fff/fff-network/files/usr/sbin/configurenetwork     |  7 +++++++
>>  7 files changed, 34 insertions(+), 2 deletions(-)  create mode 100644
>> src/packages/fff/fff-network/ar71xx/network.ubnt-unifiac-lite
>>
>> diff --git a/bsp/ar71xx/.config b/bsp/ar71xx/.config index
> 0a5b9b9..46a1673
>> 100644
>> --- a/bsp/ar71xx/.config
>> +++ b/bsp/ar71xx/.config
>> @@ -66,6 +66,8 @@
>> CONFIG_TARGET_DEVICE_ar71xx_generic_DEVICE_ubnt-nano-m=y
>>  CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_generic_DEVICE_ubnt-nano-
>> m=""
>>  CONFIG_TARGET_DEVICE_ar71xx_generic_DEVICE_ubnt-unifi=y
>>  CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_generic_DEVICE_ubnt-
>> unifi=""
>> +CONFIG_TARGET_DEVICE_ar71xx_generic_DEVICE_ubnt-unifiac-lite=y
>> +CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_generic_DEVICE_ubnt-
>> unifiac-lite="-kmod-ath10k kmod-ath10k-ct"
>>  CONFIG_BUSYBOX_CUSTOM=y
>>  CONFIG_TARGET_PER_DEVICE_ROOTFS=y
>>  # CONFIG_BUSYBOX_CONFIG_BRCTL is not set @@ -89,6 +91,8 @@
>> CONFIG_PACKAGE_ath10k-firmware-qca9887-ct=m
>>  CONFIG_PACKAGE_ath10k-firmware-qca988x-ct=m
>>  CONFIG_PACKAGE_kmod-ath10k-ct=m
>>  CONFIG_PACKAGE_kmod-hwmon-core=m
>> +CONFIG_PACKAGE_ATH_DFS=y
>> +CONFIG_ATH_USER_REGD=y
> 
> In beiden Fällen lieber m?

festgestellt das es komplett unnötig ist ;) Das ist bereits durch
Abhängigkeiten aktiv (fff-wireless). Wird in v2 entfernt.

> 
>>  CONFIG_PACKAGE_kmod-ifb=y
>>  CONFIG_PACKAGE_kmod-ledtrig-heartbeat=y
>>  CONFIG_PACKAGE_kmod-ledtrig-netdev=y
>> diff --git a/bsp/board_ar71xx.bsp b/bsp/board_ar71xx.bsp index
>> 1137b0d..c3adf23 100644
>> --- a/bsp/board_ar71xx.bsp
>> +++ b/bsp/board_ar71xx.bsp
>> @@ -26,6 +26,7 @@ images=("lede-ar71xx-generic-cpe210-220-squashfs-
>> sysupgrade.bin"
>>          "lede-ar71xx-generic-tl-mr3020-v1-squashfs-sysupgrade.bin"
>>          "lede-ar71xx-generic-ubnt-bullet-m-squashfs-sysupgrade.bin"
>>          "lede-ar71xx-generic-ubnt-unifi-squashfs-sysupgrade.bin"
>> +	"lede-ar71xx-generic-ubnt-unifiac-lite-squashfs-sysupgrade.bin"
> 
> Hier Leerzeichen statt Tab.

blöd wenn Tabstop genausolang wie Anzahl Leerzeichen, ist mir auch erst
in der Mail aufgefallen wird in v2 geändert.

> 
>>          "lede-ar71xx-generic-tl-wdr3500-v1-squashfs-sysupgrade.bin"
>>          "lede-ar71xx-generic-tl-wdr3600-v1-squashfs-sysupgrade.bin"
>>          "lede-ar71xx-generic-tl-wdr4300-v1-squashfs-sysupgrade.bin"
>> diff --git a/src/packages/fff/fff-boardname/Makefile
> b/src/packages/fff/fff-
>> boardname/Makefile
>> index 31e6731..499ae91 100644
>> --- a/src/packages/fff/fff-boardname/Makefile
>> +++ b/src/packages/fff/fff-boardname/Makefile
>> @@ -1,7 +1,7 @@
>>  include $(TOPDIR)/rules.mk
>>
>>  PKG_NAME:=fff-boardname
>> -PKG_VERSION:=0.0.2
>> +PKG_VERSION:=3
>>  PKG_RELEASE:=1
>>
>>  PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
>> diff --git a/src/packages/fff/fff-boardname/files/etc/uci-defaults/50-fff-
>> boardname b/src/packages/fff/fff-boardname/files/etc/uci-defaults/50-fff-
>> boardname
>> index 94b9884..45d6db7 100755
>> --- a/src/packages/fff/fff-boardname/files/etc/uci-defaults/50-fff-
>> boardname
>> +++ b/src/packages/fff/fff-boardname/files/etc/uci-defaults/50-fff-board
>> +++ name
>> @@ -31,6 +31,9 @@ case "$BOARD" in
>>      unifi)
>>          BOARD=ubnt-unifi
>>          ;;
>> +    unifiac-lite)
>> +        BOARD=ubnt-unifiac-lite
>> +        ;;
>>      loco-m-xw)
>>          BOARD=ubnt-loco-m-xw
>>          ;;
>> diff --git a/src/packages/fff/fff-network/Makefile b/src/packages/fff/fff-
>> network/Makefile
>> index b7805c8..f0c20c6 100644
>> --- a/src/packages/fff/fff-network/Makefile
>> +++ b/src/packages/fff/fff-network/Makefile
>> @@ -1,7 +1,7 @@
>>  include $(TOPDIR)/rules.mk
>>
>>  PKG_NAME:=fff-network
>> -PKG_VERSION:=8
>> +PKG_VERSION:=9
>>  PKG_RELEASE:=1
>>
>>  PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
>> diff --git a/src/packages/fff/fff-network/ar71xx/network.ubnt-unifiac-lite
>> b/src/packages/fff/fff-network/ar71xx/network.ubnt-unifiac-lite
>> new file mode 100644
>> index 0000000..f69bb14
>> --- /dev/null
>> +++ b/src/packages/fff/fff-network/ar71xx/network.ubnt-unifiac-lite
>> @@ -0,0 +1,17 @@
>> +WANDEV=eth0
>> +SWITCHDEV=eth0
>> +CLIENT_PORTS=""
>> +WAN_PORTS=""
>> +BATMAN_PORTS=""
>> +ONE_PORT="YES"
>> +
>> +. /etc/network.mode
>> +. /lib/functions/system.sh
>> +. /lib/functions/uci-defaults.sh
>> +. /lib/ar71xx.sh
>> +
>> +# Load second MAC from Flash because we haven't any Interface with this
>> +MAC where we can copy the MAC from
>> +
>> +NEWROUTERMAC=$(mtd_get_mac_binary EEPROM 0x0) ETHMESHMAC=
> 
> ETHMESHMAC wird nicht ausgewertet, wenn leer => rausschmeißen

v2...

> 
>> +ROUTERMAC=w2mesh
>> \ No newline at end of file
>> diff --git a/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
>> b/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
>> index c6b3113..1c0f4dd 100755
>> --- a/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
>> +++ b/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
>> @@ -184,6 +184,13 @@ if [[ -n "$ROUTERMAC" ]]; then
>>          echo "Fixing MAC on br-mesh (mesh)"
>>          sleep 10
>>          NEW_MACADDR=$(cat /sys/class/net/$ROUTERMAC/address)
>> +        # We need this to set the original MAC for the ubnt-unifiac-lite
> from a
>> variable and not from an Interface
>> +        if [[ -n "$NEWROUTERMAC" ]]; then
>> +                NEW_MACADDR=$NEWROUTERMAC
>> +                echo "were here"
>> +                echo $NEW_MACCADDR
>> +                echo "we leave here"
>> +        fi
> 
> Weiß nicht, ob das vll. eleganter geht. Das würde dann aber durch fblaeses
> Patch eh wieder korrigiert.

hab das mit fblaeses soweit abgesprochen das man dies erstmal so ok
wäre. Dazu hab ich meine Debugausgaben in der v2 entfernt, sind hier
ziemlich unnötig und waren noch beim experiementieren überbleibsel.

v2 kommt gleich

mfg

Christian

> 
> Grüße
> 
> Adrian
> 
>>          uci set network.mesh.macaddr=$NEW_MACADDR
>>          uci commit
>>          ifconfig br-mesh down
>> --
>> 2.11.0
>>
>> --
>> franken-dev mailing list
>> franken-dev at freifunk.net
>> http://lists.freifunk.net/mailman/listinfo/franken-dev-freifunk.net
> 

-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : signature.asc
Dateityp    : application/pgp-signature
Dateigröße  : 833 bytes
Beschreibung: OpenPGP digital signature
URL         : <http://lists.freifunk.net/pipermail/franken-dev-freifunk.net/attachments/20171030/f65e8aa2/attachment.sig>


Mehr Informationen über die Mailingliste franken-dev