Add support for Ubiquiti Bullet M

Submitted by Christian Dresel on March 31, 2016, 8:45 a.m.

Details

Message ID 1459413934-23610-1-git-send-email-fff@chrisi01.de
State Accepted, archived
Headers show

Commit Message

Christian Dresel March 31, 2016, 8:45 a.m.
Signed-off-by: Christian Dresel <fff@chrisi01.de>

	new file:   bsp/ar71xx/root_file_system/etc/network.ubnt-bullet-m
	modified:   bsp/board_ar71xx.bsp
	modified:   bsp/default/root_file_system/etc/rc.local.tpl
---
 .../root_file_system/etc/network.ubnt-bullet-m     | 31 ++++++++++++++++++++++
 bsp/board_ar71xx.bsp                               |  2 ++
 bsp/default/root_file_system/etc/rc.local.tpl      |  3 +++
 3 files changed, 36 insertions(+)
 create mode 100644 bsp/ar71xx/root_file_system/etc/network.ubnt-bullet-m

Patch hide | download patch | download mbox

diff --git a/bsp/ar71xx/root_file_system/etc/network.ubnt-bullet-m b/bsp/ar71xx/root_file_system/etc/network.ubnt-bullet-m
new file mode 100644
index 0000000..1e9223f
--- /dev/null
+++ b/bsp/ar71xx/root_file_system/etc/network.ubnt-bullet-m
@@ -0,0 +1,31 @@ 
+WANDEV=eth0
+SWITCHDEV=eth0
+CLIENT_PORTS=""
+WAN_PORTS=""
+BATMAN_PORTS=""
+
+. /etc/network.mode
+
+CLIENTIF="w2ap"
+ETHMESHMAC=
+ROUTERMAC=w2mesh
+
+uci set network.$SWITCHDEV=interface
+uci set network.$SWITCHDEV.ifname=$SWITCHDEV
+uci set network.mesh.ifname="bat0"
+
+if [ "$ETHMODE" = "WAN" ] ; then
+  ## Activate for WAN:
+  echo "net.ipv6.conf.$WANDEV.accept_ra_defrtr = 1" >> /etc/sysctl.conf
+  echo "net.ipv6.conf.$WANDEV.accept_ra_pinfo = 1" >> /etc/sysctl.conf
+  echo "net.ipv6.conf.$WANDEV.autoconf = 1" >> /etc/sysctl.conf
+  echo "net.ipv6.conf.$WANDEV.accept_ra_rtr_pref = 1" >> /etc/sysctl.conf
+  uci set network.wan.ifname=$WANDEV
+elif [ "$ETHMODE" = "CLIENT" ] ; then
+  ## Activate Client:
+  CLIENTIF="w2ap eth0"
+  uci set network.mesh.ifname="bat0 $SWITCHDEV"
+else
+  ## Activate BATMAN:
+  uci set network.ethmesh.ifname="$SWITCHDEV"
+fi
diff --git a/bsp/board_ar71xx.bsp b/bsp/board_ar71xx.bsp
index 4876631..6b9c21f 100644
--- a/bsp/board_ar71xx.bsp
+++ b/bsp/board_ar71xx.bsp
@@ -14,6 +14,8 @@  board_postbuild() {
 
     cp $target/bin/ar71xx/openwrt-ar71xx-generic-ubnt-loco-m-xw-squashfs-*.bin ./bin/
 
+    cp $target/bin/ar71xx/openwrt-ar71xx-generic-ubnt-bullet-m-squashfs-*.bin ./bin/
+
     cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wr740n-v4-squashfs-*.bin ./bin/
 
     cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wr741nd-v2-squashfs-*.bin ./bin/
diff --git a/bsp/default/root_file_system/etc/rc.local.tpl b/bsp/default/root_file_system/etc/rc.local.tpl
index ddf208d..1e8294d 100755
--- a/bsp/default/root_file_system/etc/rc.local.tpl
+++ b/bsp/default/root_file_system/etc/rc.local.tpl
@@ -26,6 +26,9 @@  case "$BOARD" in
     nanostation-m)
         BOARD=ubnt-nano-m
         ;;
+    bullet-m)
+        BOARD=ubnt-bullet-m
+        ;;
     loco-m-xw)
         BOARD=ubnt-loco-m-xw
         ;;

Comments

Christian Dresel March 31, 2016, 9 a.m.
Hallo

auf Wunsch hab ich heute die Firmware für den Bullet-m 2,4GHz Titanium
gebaut. Ich denke die Firmware sollte auch problemlos auf der normalen
Bullet-m laufen.
Wenn man es ganz richtig macht, sollte man diese Firmware absofort auch
für die Nanostation Loco M2 und Picostation verwenden. Die ubnt-nano-m
die wir auch anbieten sollte eigentlich für die Nanostation M2 (oder
andere Geräte mit 2 Ethernetports) Verwendung finden. Dazu muss
allerdings das Ethernetconfig noch angepasst werden (Patch Welcome).

Aufgrund von fehlender Antenne war das Testen ein klein wenig
schwieriger als normal, es sieht aber so aus als würde alles problemlos
funktionieren. Allerdings hatte ich sporadisch beim umstellen der
Netzwerkconfig Bootprobleme (oder das WLAN war mal wieder zu schwach,
keine Antenne und so). Erst nach dem 2. Versuch kam das Gerät wieder
hoch. Dies scheint aber nur zu passieren wenn man die Netzwerksettings
umstellt. Ich bitte um Rückmeldung ob noch jemand anders das Problem
bestätigen kann.

Ein erster Build zum testen liegt bereits hier [1]

Die Ethernetschnittstelle lässt sich wie bei allen Geräten die nur einen
Port besitzen normal über das WebUI einstellen.

Viel Spaß mit dem Geräten und ein riesen großes !!Danke!! an Wolfgang
für das bereitstellen der Hardware. Ich werde für das schnucklige Teil
bestimmt eine gute Verwendung finden :)

!!!Bitte beachten!!!
Ich weiß noch immer nicht, ob das Bootloop-Problem mit der Ubiquiti
Firmware 5.6.X bereits gefixt wurde. Aus diesem Grund hab ich mein Gerät
(wurde mit 5.6.3 ausgeliefert) vor dem ersten Flashen auf 5.5.11
downgradet und erst danach die Freifunkfirmware geflasht. Die Firmware
dafür gibt es hier [2]. Auf "See past Firmware" klicken und dann
XM.v5.5.11.28002.150723.1344.bin herunterladen und normal im
Original-WebUI flashen. Ist auf jeden Fall sicherer als wenn man das
Gerät in eine Dauerbootloop schickt (auch div. Rettungsmethoden helfen
da anscheinend nicht mehr!)

mfg

Christian

[1] http://fff-gw-cd1.fff.community/dev/alpha/20160310-7-gc795ffa-bulletm/

[2] https://www.ubnt.com/download/airmax-m/bulletm

Am 31.03.2016 um 10:45 schrieb Christian Dresel:
> Signed-off-by: Christian Dresel <fff@chrisi01.de>
> 
> 	new file:   bsp/ar71xx/root_file_system/etc/network.ubnt-bullet-m
> 	modified:   bsp/board_ar71xx.bsp
> 	modified:   bsp/default/root_file_system/etc/rc.local.tpl
> ---
>  .../root_file_system/etc/network.ubnt-bullet-m     | 31 ++++++++++++++++++++++
>  bsp/board_ar71xx.bsp                               |  2 ++
>  bsp/default/root_file_system/etc/rc.local.tpl      |  3 +++
>  3 files changed, 36 insertions(+)
>  create mode 100644 bsp/ar71xx/root_file_system/etc/network.ubnt-bullet-m
> 
> diff --git a/bsp/ar71xx/root_file_system/etc/network.ubnt-bullet-m b/bsp/ar71xx/root_file_system/etc/network.ubnt-bullet-m
> new file mode 100644
> index 0000000..1e9223f
> --- /dev/null
> +++ b/bsp/ar71xx/root_file_system/etc/network.ubnt-bullet-m
> @@ -0,0 +1,31 @@
> +WANDEV=eth0
> +SWITCHDEV=eth0
> +CLIENT_PORTS=""
> +WAN_PORTS=""
> +BATMAN_PORTS=""
> +
> +. /etc/network.mode
> +
> +CLIENTIF="w2ap"
> +ETHMESHMAC=
> +ROUTERMAC=w2mesh
> +
> +uci set network.$SWITCHDEV=interface
> +uci set network.$SWITCHDEV.ifname=$SWITCHDEV
> +uci set network.mesh.ifname="bat0"
> +
> +if [ "$ETHMODE" = "WAN" ] ; then
> +  ## Activate for WAN:
> +  echo "net.ipv6.conf.$WANDEV.accept_ra_defrtr = 1" >> /etc/sysctl.conf
> +  echo "net.ipv6.conf.$WANDEV.accept_ra_pinfo = 1" >> /etc/sysctl.conf
> +  echo "net.ipv6.conf.$WANDEV.autoconf = 1" >> /etc/sysctl.conf
> +  echo "net.ipv6.conf.$WANDEV.accept_ra_rtr_pref = 1" >> /etc/sysctl.conf
> +  uci set network.wan.ifname=$WANDEV
> +elif [ "$ETHMODE" = "CLIENT" ] ; then
> +  ## Activate Client:
> +  CLIENTIF="w2ap eth0"
> +  uci set network.mesh.ifname="bat0 $SWITCHDEV"
> +else
> +  ## Activate BATMAN:
> +  uci set network.ethmesh.ifname="$SWITCHDEV"
> +fi
> diff --git a/bsp/board_ar71xx.bsp b/bsp/board_ar71xx.bsp
> index 4876631..6b9c21f 100644
> --- a/bsp/board_ar71xx.bsp
> +++ b/bsp/board_ar71xx.bsp
> @@ -14,6 +14,8 @@ board_postbuild() {
>  
>      cp $target/bin/ar71xx/openwrt-ar71xx-generic-ubnt-loco-m-xw-squashfs-*.bin ./bin/
>  
> +    cp $target/bin/ar71xx/openwrt-ar71xx-generic-ubnt-bullet-m-squashfs-*.bin ./bin/
> +
>      cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wr740n-v4-squashfs-*.bin ./bin/
>  
>      cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wr741nd-v2-squashfs-*.bin ./bin/
> diff --git a/bsp/default/root_file_system/etc/rc.local.tpl b/bsp/default/root_file_system/etc/rc.local.tpl
> index ddf208d..1e8294d 100755
> --- a/bsp/default/root_file_system/etc/rc.local.tpl
> +++ b/bsp/default/root_file_system/etc/rc.local.tpl
> @@ -26,6 +26,9 @@ case "$BOARD" in
>      nanostation-m)
>          BOARD=ubnt-nano-m
>          ;;
> +    bullet-m)
> +        BOARD=ubnt-bullet-m
> +        ;;
>      loco-m-xw)
>          BOARD=ubnt-loco-m-xw
>          ;;
>
Tim Niemeyer April 4, 2016, 4:47 p.m.
Hi

Am Donnerstag, den 31.03.2016, 10:45 +0200 schrieb Christian Dresel:
> Signed-off-by: Christian Dresel <fff@chrisi01.de>
Reviewed-by: Tim Niemeyer <tim@tn-x.org>

> 
> 	new file:   bsp/ar71xx/root_file_system/etc/network.ubnt-bullet-m
> 	modified:   bsp/board_ar71xx.bsp
> 	modified:   bsp/default/root_file_system/etc/rc.local.tpl
Hier sind wieder so komische "Anmerkungen" im Commit-Log.
Welche Dateien geändert wurden sehe ich ja im Patch schon. Das gehört
hier einfach nicht rein! Beim nächsten mal bitte unbedingt drauf achten.

Tim

> ---
>  .../root_file_system/etc/network.ubnt-bullet-m     | 31 ++++++++++++++++++++++
>  bsp/board_ar71xx.bsp                               |  2 ++
>  bsp/default/root_file_system/etc/rc.local.tpl      |  3 +++
>  3 files changed, 36 insertions(+)
>  create mode 100644 bsp/ar71xx/root_file_system/etc/network.ubnt-bullet-m
> 
> diff --git a/bsp/ar71xx/root_file_system/etc/network.ubnt-bullet-m b/bsp/ar71xx/root_file_system/etc/network.ubnt-bullet-m
> new file mode 100644
> index 0000000..1e9223f
> --- /dev/null
> +++ b/bsp/ar71xx/root_file_system/etc/network.ubnt-bullet-m
> @@ -0,0 +1,31 @@
> +WANDEV=eth0
> +SWITCHDEV=eth0
> +CLIENT_PORTS=""
> +WAN_PORTS=""
> +BATMAN_PORTS=""
> +
> +. /etc/network.mode
> +
> +CLIENTIF="w2ap"
> +ETHMESHMAC=
> +ROUTERMAC=w2mesh
> +
> +uci set network.$SWITCHDEV=interface
> +uci set network.$SWITCHDEV.ifname=$SWITCHDEV
> +uci set network.mesh.ifname="bat0"
> +
> +if [ "$ETHMODE" = "WAN" ] ; then
> +  ## Activate for WAN:
> +  echo "net.ipv6.conf.$WANDEV.accept_ra_defrtr = 1" >> /etc/sysctl.conf
> +  echo "net.ipv6.conf.$WANDEV.accept_ra_pinfo = 1" >> /etc/sysctl.conf
> +  echo "net.ipv6.conf.$WANDEV.autoconf = 1" >> /etc/sysctl.conf
> +  echo "net.ipv6.conf.$WANDEV.accept_ra_rtr_pref = 1" >> /etc/sysctl.conf
> +  uci set network.wan.ifname=$WANDEV
> +elif [ "$ETHMODE" = "CLIENT" ] ; then
> +  ## Activate Client:
> +  CLIENTIF="w2ap eth0"
> +  uci set network.mesh.ifname="bat0 $SWITCHDEV"
> +else
> +  ## Activate BATMAN:
> +  uci set network.ethmesh.ifname="$SWITCHDEV"
> +fi
> diff --git a/bsp/board_ar71xx.bsp b/bsp/board_ar71xx.bsp
> index 4876631..6b9c21f 100644
> --- a/bsp/board_ar71xx.bsp
> +++ b/bsp/board_ar71xx.bsp
> @@ -14,6 +14,8 @@ board_postbuild() {
>  
>      cp $target/bin/ar71xx/openwrt-ar71xx-generic-ubnt-loco-m-xw-squashfs-*.bin ./bin/
>  
> +    cp $target/bin/ar71xx/openwrt-ar71xx-generic-ubnt-bullet-m-squashfs-*.bin ./bin/
> +
>      cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wr740n-v4-squashfs-*.bin ./bin/
>  
>      cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wr741nd-v2-squashfs-*.bin ./bin/
> diff --git a/bsp/default/root_file_system/etc/rc.local.tpl b/bsp/default/root_file_system/etc/rc.local.tpl
> index ddf208d..1e8294d 100755
> --- a/bsp/default/root_file_system/etc/rc.local.tpl
> +++ b/bsp/default/root_file_system/etc/rc.local.tpl
> @@ -26,6 +26,9 @@ case "$BOARD" in
>      nanostation-m)
>          BOARD=ubnt-nano-m
>          ;;
> +    bullet-m)
> +        BOARD=ubnt-bullet-m
> +        ;;
>      loco-m-xw)
>          BOARD=ubnt-loco-m-xw
>          ;;
> -- 
> 2.1.4
>
Tim Niemeyer April 6, 2016, 4:44 p.m.
Hi

Rebased und applied.

Tim

Am Donnerstag, den 31.03.2016, 10:45 +0200 schrieb Christian Dresel:
> Signed-off-by: Christian Dresel <fff@chrisi01.de>
> 
> 	new file:   bsp/ar71xx/root_file_system/etc/network.ubnt-bullet-m
> 	modified:   bsp/board_ar71xx.bsp
> 	modified:   bsp/default/root_file_system/etc/rc.local.tpl
> ---
>  .../root_file_system/etc/network.ubnt-bullet-m     | 31 ++++++++++++++++++++++
>  bsp/board_ar71xx.bsp                               |  2 ++
>  bsp/default/root_file_system/etc/rc.local.tpl      |  3 +++
>  3 files changed, 36 insertions(+)
>  create mode 100644 bsp/ar71xx/root_file_system/etc/network.ubnt-bullet-m
> 
> diff --git a/bsp/ar71xx/root_file_system/etc/network.ubnt-bullet-m b/bsp/ar71xx/root_file_system/etc/network.ubnt-bullet-m
> new file mode 100644
> index 0000000..1e9223f
> --- /dev/null
> +++ b/bsp/ar71xx/root_file_system/etc/network.ubnt-bullet-m
> @@ -0,0 +1,31 @@
> +WANDEV=eth0
> +SWITCHDEV=eth0
> +CLIENT_PORTS=""
> +WAN_PORTS=""
> +BATMAN_PORTS=""
> +
> +. /etc/network.mode
> +
> +CLIENTIF="w2ap"
> +ETHMESHMAC=
> +ROUTERMAC=w2mesh
> +
> +uci set network.$SWITCHDEV=interface
> +uci set network.$SWITCHDEV.ifname=$SWITCHDEV
> +uci set network.mesh.ifname="bat0"
> +
> +if [ "$ETHMODE" = "WAN" ] ; then
> +  ## Activate for WAN:
> +  echo "net.ipv6.conf.$WANDEV.accept_ra_defrtr = 1" >> /etc/sysctl.conf
> +  echo "net.ipv6.conf.$WANDEV.accept_ra_pinfo = 1" >> /etc/sysctl.conf
> +  echo "net.ipv6.conf.$WANDEV.autoconf = 1" >> /etc/sysctl.conf
> +  echo "net.ipv6.conf.$WANDEV.accept_ra_rtr_pref = 1" >> /etc/sysctl.conf
> +  uci set network.wan.ifname=$WANDEV
> +elif [ "$ETHMODE" = "CLIENT" ] ; then
> +  ## Activate Client:
> +  CLIENTIF="w2ap eth0"
> +  uci set network.mesh.ifname="bat0 $SWITCHDEV"
> +else
> +  ## Activate BATMAN:
> +  uci set network.ethmesh.ifname="$SWITCHDEV"
> +fi
> diff --git a/bsp/board_ar71xx.bsp b/bsp/board_ar71xx.bsp
> index 4876631..6b9c21f 100644
> --- a/bsp/board_ar71xx.bsp
> +++ b/bsp/board_ar71xx.bsp
> @@ -14,6 +14,8 @@ board_postbuild() {
>  
>      cp $target/bin/ar71xx/openwrt-ar71xx-generic-ubnt-loco-m-xw-squashfs-*.bin ./bin/
>  
> +    cp $target/bin/ar71xx/openwrt-ar71xx-generic-ubnt-bullet-m-squashfs-*.bin ./bin/
> +
>      cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wr740n-v4-squashfs-*.bin ./bin/
>  
>      cp $target/bin/ar71xx/openwrt-ar71xx-generic-tl-wr741nd-v2-squashfs-*.bin ./bin/
> diff --git a/bsp/default/root_file_system/etc/rc.local.tpl b/bsp/default/root_file_system/etc/rc.local.tpl
> index ddf208d..1e8294d 100755
> --- a/bsp/default/root_file_system/etc/rc.local.tpl
> +++ b/bsp/default/root_file_system/etc/rc.local.tpl
> @@ -26,6 +26,9 @@ case "$BOARD" in
>      nanostation-m)
>          BOARD=ubnt-nano-m
>          ;;
> +    bullet-m)
> +        BOARD=ubnt-bullet-m
> +        ;;
>      loco-m-xw)
>          BOARD=ubnt-loco-m-xw
>          ;;
> -- 
> 2.1.4
>