RDK Resources
[*RDK Preferred*]
Code Management Facility
RDK Forums
[RDK Conferences]
RDK Support
Archives
Papers & Presentations Archive
...
Prerequisites : (one time process)
Panel | ||||||
---|---|---|---|---|---|---|
| ||||||
→ Input command mysql in prompt, enter into mariadb console |
Panel | ||||||
---|---|---|---|---|---|---|
| ||||||
→ Input command mysql -u bpi -p, password is root |
Panel | ||||||
---|---|---|---|---|---|---|
| ||||||
→ create database OneWifiMesh; |
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
cat EasymeshCfg.json
{
"AL_MAC_ADDR": "a2:f0:d1:69:f5:ae",
"Colocated_mode": 1,
"Backhaul_SSID": "mesh_backhaul",
"Backhaul_KeyPassphrase": "test-backhaul",
"sta_4addr_mode_enabled": true
}
cat InterfaceMap.json
{
"PhyList": [
{
"Index": 0,
"RadioList": [
{
"Index": 2,
"RadioName": "wifi2",
"InterfaceList": [
{
"InterfaceName": "wifi2",
"Bridge": "brlan0",
"vlanId": 0,
"vapIndex": 3,
"vapName": "private_ssid_6g"
}
]
},
{
"Index": 1,
"RadioName": "wifi1",
"InterfaceList": [
{
"InterfaceName": "wifi1.1",
"Bridge": "brlan0",
"vlanId": 0,
"vapIndex": 2,
"vapName": "mesh_backhaul_5g"
},
{
"InterfaceName": "wifi1",
"Bridge": "brlan0",
"vlanId": 0,
"vapIndex": 1,
"vapName": "private_ssid_5g"
}
]
},
{
"Index": 0,
"RadioName": "wifi0",
"InterfaceList": [
{
"InterfaceName": "wifi0",
"Bridge": "brlan0",
"vlanId": 0,
"vapIndex": 0,
"vapName": "private_ssid_2g"
}
]
}
]
}
]
}
|
onewifi_pre_script.sh
path : /usr/ccsp/wifi
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
cat onewifi_pre_start.sh #!/bin/sh sleep 5 #To update al_mac_addr in EasyMeshCfg.json to avoid onewifi restarting during fresh boot-up #wan_mac="$(cat /sys/class/ieee80211/phy0/macaddress)" old_al_mac_addr=`cat /nvram/EasymeshCfg.json | grep AL_MAC_ADDR | cut -d '"' -f4` #if [ "$old_al_mac_addr" == "00:00:00:00:00:00" ]; then # sed -i "s/$old_al_mac_addr/$wan_mac/g" /nvram/EasymeshCfg.json #fi ip link set dev brlan0 down brlan_mac=`ifconfig brlan0 | grep HWaddr | cut -d " " -f9` mac_addr=$(echo $brlan_mac | tr -d ':') mac_increment=$((0x$mac_addr + 1)) brlan_inc_mac=$(printf "%012x" $mac_increment | sed 's/../&:/g;s/:$//') ip link set dev brlan0 address a2:f0:d1:69:f5:ae #ip link set dev brlan0 address $brlan_inc_mac sleep 1 ip link set dev brlan0 up #sed -i "s/$old_al_mac_addr/$brlan_inc_mac/g" /nvram/EasymeshCfg.json iw phy phy0 interface add wifi0 type __ap iw phy phy0 interface add wifi1 type __ap iw phy phy0 interface add wifi1.1 type __ap iw phy phy0 interface add wifi2 type __ap #iw phy phy0 interface add wifi2.1 type __ap #Obtain the wifi0 mac address wifi0_mac="$(cat /sys/class/ieee80211/phy0/macaddress)" #Strip the : and increment mac by 1 to get wifi1 macaddress mac=$(echo $wifi0_mac | tr -d ':') mac_incr=$((0x$mac + 2)) wifi1_mac=$(printf "%012x" $mac_incr | sed 's/../&:/g;s/:$//') mac_incr=$(($mac_incr + 2)) wifi1_1_mac=$(printf "%012x" $mac_incr | sed 's/../&:/g;s/:$//') #Increment again by 1 to get wifi2 address mac_incr=$(($mac_incr + 2)) wifi2_mac=$(printf "%012x" $mac_incr | sed 's/../&:/g;s/:$//') mac_incr=$(($mac_incr + 2)) wifi2_1_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 wifi1 down ifconfig wifi1.1 down ifconfig wifi2 down ifconfig wifi2.1 down ip link set dev wifi0 address $wifi0_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 ip link set dev wifi2.1 address $wifi2_1_mac ifconfig wifi0 up ifconfig wifi1 up ifconfig wifi1.1 up ifconfig wifi2 up ifconfig wifi2.1 up exit 0 |
Panel | ||||||
---|---|---|---|---|---|---|
| ||||||
→ In the cli use "Tab" to move between Update, Apply and Cancel button in the cli, use keys "j" and "k" to scroll up and down |
...