[PATCH v4 2/2] fff-wireless: Provide device-specific WiFi settings and set TX power

Tim Niemeyer tim at tn-x.org
Sa Mär 3 19:40:35 CET 2018


From: Adrian Schmutzler <freifunk at adrianschmutzler.de>

Like the network.* files, this introduces wifi.* files to set
device-specific settings.

In contrast to the former, the wifi.* settings are only run during
firstboot and only if there is a file present.

In this patch, we set the antenna gain values for the devices not
treated correctly in OpenWRT.

Side conditions:
- The script requires 50-fff-boardname and 60-fff-wireless
  beforehand, so I chose 62 as number.
- The wifi command is not necessary, since after firstboot
  configurehood will run "wifi" in any case

Signed-off-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
Reviewed-by: Fabian Bläse <fabian at blaese.de>
Signed-off-by: Tim Niemeyer <tim at tn-x.org>
- Changed to base on the ubnt board names

---

Changes in v4:
- introduce new board names for ubnt
Series-changes: 3
- Allow for amplifier in Picostation 2 dB -> 12 dB
- Use a single file for common ubnt devices since images are
  frequently not correctly chosen
Series-changes: 2
- Provide data for Ubiquiti devices.
Series-prefix: RFC

 src/packages/fff/fff-wireless/Makefile                           | 4 ++--
 .../fff/fff-wireless/files/etc/uci-defaults/62-config-wireless   | 9 +++++++++
 src/packages/fff/fff-wireless/files/etc/wifi.tl-wr1043nd-v1      | 2 ++
 src/packages/fff/fff-wireless/files/etc/wifi.ubnt-loco-m         | 2 ++
 src/packages/fff/fff-wireless/files/etc/wifi.ubnt-loco-m-xw      | 2 ++
 src/packages/fff/fff-wireless/files/etc/wifi.ubnt-nano-m         | 2 ++
 src/packages/fff/fff-wireless/files/etc/wifi.ubnt-pico-m         | 2 ++
 src/packages/fff/fff-wireless/files/etc/wifi.ubnt-power-m-xw     | 2 ++
 src/packages/fff/fff-wireless/files/etc/wifi.ubnt-unifi          | 3 +++
 src/packages/fff/fff-wireless/files/etc/wifi.ubnt-unifiac-lite   | 3 +++
 10 files changed, 29 insertions(+), 2 deletions(-)
 create mode 100644 src/packages/fff/fff-wireless/files/etc/uci-defaults/62-config-wireless
 create mode 100644 src/packages/fff/fff-wireless/files/etc/wifi.tl-wr1043nd-v1
 create mode 100644 src/packages/fff/fff-wireless/files/etc/wifi.ubnt-loco-m
 create mode 100644 src/packages/fff/fff-wireless/files/etc/wifi.ubnt-loco-m-xw
 create mode 100644 src/packages/fff/fff-wireless/files/etc/wifi.ubnt-nano-m
 create mode 100644 src/packages/fff/fff-wireless/files/etc/wifi.ubnt-pico-m
 create mode 100644 src/packages/fff/fff-wireless/files/etc/wifi.ubnt-power-m-xw
 create mode 100644 src/packages/fff/fff-wireless/files/etc/wifi.ubnt-unifi
 create mode 100644 src/packages/fff/fff-wireless/files/etc/wifi.ubnt-unifiac-lite

diff --git a/src/packages/fff/fff-wireless/Makefile b/src/packages/fff/fff-wireless/Makefile
index c15b2f1..c548654 100644
--- a/src/packages/fff/fff-wireless/Makefile
+++ b/src/packages/fff/fff-wireless/Makefile
@@ -1,7 +1,7 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=fff-wireless
-PKG_VERSION:=0.0.2
+PKG_VERSION:=6
 PKG_RELEASE:=1
 
 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
@@ -13,7 +13,7 @@ define Package/$(PKG_NAME)
     CATEGORY:=Freifunk
     TITLE:= Freifunk-Franken wireless configuration
     URL:=http://www.freifunk-franken.de
-    DEPENDS:=+ at ATH_USER_REGD +wireless-tools
+    DEPENDS:=+ at ATH_USER_REGD +wireless-tools +fff-boardname
 endef
 
 define Package/$(PKG_NAME)/description
diff --git a/src/packages/fff/fff-wireless/files/etc/uci-defaults/62-config-wireless b/src/packages/fff/fff-wireless/files/etc/uci-defaults/62-config-wireless
new file mode 100644
index 0000000..f900b2c
--- /dev/null
+++ b/src/packages/fff/fff-wireless/files/etc/uci-defaults/62-config-wireless
@@ -0,0 +1,9 @@
+#!/bin/sh
+# Copyright 2018 Adrian Schmutzler
+# License GPLv3
+
+BOARD="$(uci get board.model.name)"
+
+if [ -s "/etc/wifi.$BOARD" ] ; then
+	. "/etc/wifi.$BOARD"
+fi
diff --git a/src/packages/fff/fff-wireless/files/etc/wifi.tl-wr1043nd-v1 b/src/packages/fff/fff-wireless/files/etc/wifi.tl-wr1043nd-v1
new file mode 100644
index 0000000..f1a7017
--- /dev/null
+++ b/src/packages/fff/fff-wireless/files/etc/wifi.tl-wr1043nd-v1
@@ -0,0 +1,2 @@
+uci -q set wireless.radio0.antenna_gain=3
+uci -q commit wireless
diff --git a/src/packages/fff/fff-wireless/files/etc/wifi.ubnt-loco-m b/src/packages/fff/fff-wireless/files/etc/wifi.ubnt-loco-m
new file mode 100644
index 0000000..3c5110e
--- /dev/null
+++ b/src/packages/fff/fff-wireless/files/etc/wifi.ubnt-loco-m
@@ -0,0 +1,2 @@
+uci -q set wireless.radio0.antenna_gain=9
+uci -q commit wireless
diff --git a/src/packages/fff/fff-wireless/files/etc/wifi.ubnt-loco-m-xw b/src/packages/fff/fff-wireless/files/etc/wifi.ubnt-loco-m-xw
new file mode 100644
index 0000000..3c5110e
--- /dev/null
+++ b/src/packages/fff/fff-wireless/files/etc/wifi.ubnt-loco-m-xw
@@ -0,0 +1,2 @@
+uci -q set wireless.radio0.antenna_gain=9
+uci -q commit wireless
diff --git a/src/packages/fff/fff-wireless/files/etc/wifi.ubnt-nano-m b/src/packages/fff/fff-wireless/files/etc/wifi.ubnt-nano-m
new file mode 100644
index 0000000..8b44ac8
--- /dev/null
+++ b/src/packages/fff/fff-wireless/files/etc/wifi.ubnt-nano-m
@@ -0,0 +1,2 @@
+uci -q set wireless.radio0.antenna_gain=11
+uci -q commit wireless
diff --git a/src/packages/fff/fff-wireless/files/etc/wifi.ubnt-pico-m b/src/packages/fff/fff-wireless/files/etc/wifi.ubnt-pico-m
new file mode 100644
index 0000000..2cac523
--- /dev/null
+++ b/src/packages/fff/fff-wireless/files/etc/wifi.ubnt-pico-m
@@ -0,0 +1,2 @@
+uci -q set wireless.radio0.antenna_gain=12
+uci -q commit wireless
diff --git a/src/packages/fff/fff-wireless/files/etc/wifi.ubnt-power-m-xw b/src/packages/fff/fff-wireless/files/etc/wifi.ubnt-power-m-xw
new file mode 100644
index 0000000..9d3ff90
--- /dev/null
+++ b/src/packages/fff/fff-wireless/files/etc/wifi.ubnt-power-m-xw
@@ -0,0 +1,2 @@
+uci -q set wireless.radio0.antenna_gain=18
+uci -q commit wireless
diff --git a/src/packages/fff/fff-wireless/files/etc/wifi.ubnt-unifi b/src/packages/fff/fff-wireless/files/etc/wifi.ubnt-unifi
new file mode 100644
index 0000000..903c7b6
--- /dev/null
+++ b/src/packages/fff/fff-wireless/files/etc/wifi.ubnt-unifi
@@ -0,0 +1,3 @@
+# No support for Unifi AP Pro!
+uci -q set wireless.radio0.antenna_gain=3
+uci -q commit wireless
diff --git a/src/packages/fff/fff-wireless/files/etc/wifi.ubnt-unifiac-lite b/src/packages/fff/fff-wireless/files/etc/wifi.ubnt-unifiac-lite
new file mode 100644
index 0000000..9b4438d
--- /dev/null
+++ b/src/packages/fff/fff-wireless/files/etc/wifi.ubnt-unifiac-lite
@@ -0,0 +1,3 @@
+uci -q set wireless.radio0.antenna_gain=4
+uci -q set wireless.radio1.antenna_gain=3
+uci -q commit wireless
-- 
2.11.0



Mehr Informationen über die Mailingliste franken-dev