RDK Resources
[*RDK Preferred*]
Code Management Facility
RDK Forums
[RDK Conferences]
RDK Support
Archives
Papers & Presentations Archive
...
How to build the EasyMesh in Banana PI platform and validations steps are provided.
draw.io Diagram | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...
Prerequisites - One Time Process
rm
rm /usr/bin/dnsmasq |
2. Remove default gw entry from routing table since WAN access will be through backhaul connection.
route del default gw |
3. Copy below content to /nvram/EasymeshCfg.json file.
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{ "AL_MAC_ADDR": "00:0c:43:26:60:1b", "Colocated_mode": 0, "Backhaul_SSID": "mesh_backhaul", "Backhaul_KeyPassphrase": "test-backhaul", "sta_4addr_mode_enabled": true } |
4. Copy below content to /nvram/InterfaceMap.json file.
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{ "PhyList": [ { "Index": 0, "RadioList": [ { "Index": 2, "RadioName": "wifi2", "InterfaceList": [ { "InterfaceName": "wifi2", "Bridge": "brlan0", "vlanId": 0, "vapIndex": 4, "vapName": "private_ssid_6g" } ] }, { "Index": 1, "RadioName": "wifi1", "InterfaceList": [ { "InterfaceName": "wifi1.1", "Bridge": "brlan0", "vlanId": 0, "vapIndex": 3, "vapName": "mesh_sta_5g" }, { "InterfaceName": "wifi1", "Bridge": "brlan0", "vlanId": 0, "vapIndex": 2, "vapName": "private_ssid_5g" } ] }, { "Index": 0, "RadioName": "wifi0", "InterfaceList": [ { "InterfaceName": "wifi0.1", "Bridge": "brlan0", "vlanId": 0, "vapIndex": 1, "vapName": "mesh_backhaul_2g" }, { "InterfaceName": "wifi0", "Bridge": "brlan0", "vlanId": 0, "vapIndex": 0, "vapName": "private_ssid_2g" } ] } ] } ] } |
5. Copy below content to /usr/ccsp/wifi/onewifi_pre_script.sh.
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
#!/bin/sh sleep 5 iw phy phy0 interface add wifi0 type __ap iw phy phy0 interface add wifi0.1 type __ap iw phy phy0 interface add wifi1 type __ap iw phy phy0 interface add wifi2 type __ap iw phy phy0 interface add wifi1.1 type __ap #Obtain the wifi0 mac address wifi_mac="$(cat /sys/class/ieee80211/phy0/macaddress)" #Strip the : and increment mac by 1 to get wifi1 macaddress mac=$(echo $wifi_mac | tr -d ':') mac_incr=$((0x$mac + 8)) wifi0_mac=$(printf "%012x" $mac_incr | sed 's/../&:/g;s/:$//') #Increment again by 1 to get wifi2 address mac_incr=$(($mac_incr + 1)) wifi0_1_mac=$(printf "%012x" $mac_incr | sed 's/../&:/g;s/:$//') #Increment again by 1 to get wifi2 address mac_incr=$(($mac_incr + 1)) wifi1_mac=$(printf "%012x" $mac_incr | sed 's/../&:/g;s/:$//') mac_incr=$(($mac_incr + 1)) wifi1_1_mac=$(printf "%012x" $mac_incr | sed 's/../&:/g;s/:$//') mac_incr=$(($mac_incr + 1)) wifi2_mac=$(printf "%012x" $mac_incr | sed 's/../&:/g;s/:$//') #print the mac address echo $wifi0_mac echo $wifi1_mac echo $wifi2_mac #Update the mac address using ip link command ifconfig wifi0 down ifconfig wifi0.1 down ifconfig wifi1 down ifconfig wifi1.1 down ifconfig wifi2 down ip link set dev wifi0 address $wifi0_mac ip link set dev wifi0.1 address $wifi0_1_mac ip link set dev wifi1 address $wifi1_mac ip link set dev wifi1.1 address $wifi1_1_mac ip link set dev wifi2 address $wifi2_mac ifconfig wifi0 up ifconfig wifi1 up ifconfig wifi1.1 up ifconfig wifi2 up exit 0 |
6. Remove the below files from
cd /etc/systemd/system//multi-user.target.wants/ rm ieee1905_em_ctrl.service rm em_ctrl |
11. Wait for few minutes( for Agent to propagate SSID information from Controller to OneWifi in Extender1) and then check
...