README.md (1e86c1aa7d07ac618e7efd531d7e8be9448ef63c) | README.md (40773b7882a840f41a4b585d6e6866cc81fa13a9) |
---|---|
1<!-- 2Author: Xianjun jiao, Michael Mehari, Wei Liu 3SPDX-FileCopyrightText: 2019 UGent 4SPDX-License-Identifier: AGPL-3.0-or-later 5--> 6 7# openwifi 8<img src="./openwifi-arch.jpg" width="900"> --- 69 unchanged lines hidden (view full) --- 78- Restore openwifi board specific img file (from the table) into a SD card. To do this, program "Disks" in Ubuntu can be used (Install: "sudo apt install gnome-disk-utility"). After restoring, the SD card should have two partitions: BOOT and rootfs. You need to config the **correct files in the BOOT partition** according to the **board you have** by operation on your computer: 79 - Copy files in **openwifi/board_name** to the base directory of BOOT partition. 80 - Copy **openwifi/zynqmp-common/Image** (zcu102 board) or **openwifi/zynq-common/uImage** (other boards) to the base directory of BOOT partition 81- Connect two antennas to RXA/TXA ports. Config the board to SD card boot mode (check the board manual). Insert the SD card to the board. Power on. 82- Login to the board from your PC (PC Ethernet should have IP 192.168.10.1) with password **openwifi**. 83 ``` 84 ssh [email protected] 85 ``` | 1<!-- 2Author: Xianjun jiao, Michael Mehari, Wei Liu 3SPDX-FileCopyrightText: 2019 UGent 4SPDX-License-Identifier: AGPL-3.0-or-later 5--> 6 7# openwifi 8<img src="./openwifi-arch.jpg" width="900"> --- 69 unchanged lines hidden (view full) --- 78- Restore openwifi board specific img file (from the table) into a SD card. To do this, program "Disks" in Ubuntu can be used (Install: "sudo apt install gnome-disk-utility"). After restoring, the SD card should have two partitions: BOOT and rootfs. You need to config the **correct files in the BOOT partition** according to the **board you have** by operation on your computer: 79 - Copy files in **openwifi/board_name** to the base directory of BOOT partition. 80 - Copy **openwifi/zynqmp-common/Image** (zcu102 board) or **openwifi/zynq-common/uImage** (other boards) to the base directory of BOOT partition 81- Connect two antennas to RXA/TXA ports. Config the board to SD card boot mode (check the board manual). Insert the SD card to the board. Power on. 82- Login to the board from your PC (PC Ethernet should have IP 192.168.10.1) with password **openwifi**. 83 ``` 84 ssh [email protected] 85 ``` |
86- On board, run openwifi AP and the on board webserver | 86- Then, run openwifi AP and the on board webserver |
87 ``` | 87 ``` |
88 ~/openwifi/fosdem.sh 89 (Use "./fosdem.sh 1" to enable experimental AMPDU aggregation on top of 11n) | 88 cd openwifi 89 ./wgd.sh 90 ./fosdem.sh 91 (Use "./wgd.sh 1" to enable experimental AMPDU aggregation on top of 11n) |
90 (Use "./fosdem-11ag.sh" to force 11a/g mode) 91 ``` 92 **NOTE** adrv9361z7035 has ultra low TX power in 5GHz. Move **CLOSER** when you use that board in 5GHz!!! 93- After you see the "openwifi" SSID on your device (Phone/Laptop/etc), connect it. Browser to 192.168.13.1 on your device, you should see the webpage hosted by the webserver on board. 94 - Note 1: If your device doesn't support 5GHz (ch44), please change the **hostapd-openwifi.conf** on board and re-run fosdem.sh. 95 - Note 2: After ~2 hours, the Viterbi decoder will halt (Xilinx Evaluation License). Just power cycle the board if it happens. (If output of "./sdrctl dev sdr0 get reg rx 20" is always the same, it means the decoder halts) 96- To give the Wi-Fi client internet access, configure routing/NAT **on the PC**: 97 ``` --- 53 unchanged lines hidden (view full) --- 151 mount /dev/mmcblk0p1 /mnt 152 cp ~/BOOT.BIN /mnt 153 cd /mnt 154 sync 155 cd ~ 156 umount /mnt 157 ``` 158 **Power cycle** the board to load new FPGA bitstream. | 92 (Use "./fosdem-11ag.sh" to force 11a/g mode) 93 ``` 94 **NOTE** adrv9361z7035 has ultra low TX power in 5GHz. Move **CLOSER** when you use that board in 5GHz!!! 95- After you see the "openwifi" SSID on your device (Phone/Laptop/etc), connect it. Browser to 192.168.13.1 on your device, you should see the webpage hosted by the webserver on board. 96 - Note 1: If your device doesn't support 5GHz (ch44), please change the **hostapd-openwifi.conf** on board and re-run fosdem.sh. 97 - Note 2: After ~2 hours, the Viterbi decoder will halt (Xilinx Evaluation License). Just power cycle the board if it happens. (If output of "./sdrctl dev sdr0 get reg rx 20" is always the same, it means the decoder halts) 98- To give the Wi-Fi client internet access, configure routing/NAT **on the PC**: 99 ``` --- 53 unchanged lines hidden (view full) --- 153 mount /dev/mmcblk0p1 /mnt 154 cp ~/BOOT.BIN /mnt 155 cd /mnt 156 sync 157 cd ~ 158 umount /mnt 159 ``` 160 **Power cycle** the board to load new FPGA bitstream. |
161 162 To load FPGA dynamically without rebooting/power-cycle, check [Driver and FPGA dynamic reloading app note](./doc/app_notes/drv_fpga_dynamic_loading.md). |
|
159 160## Update Driver 161 162Since the pre-built SD card image might not have the latest bug-fixes/updates, it is recommended to update the driver on board. 163- Prepare Analog Devices Linux kernel source code (only need to run once): 164 ``` 165 cd openwifi/user_space; ./prepare_kernel.sh $XILINX_DIR ARCH_BIT build 166 (For Zynq 7000, ARCH_BIT should be 32, for Zynq MPSoC, ARCH_BIT should be 64) --- 4 unchanged lines hidden (view full) --- 171 cd openwifi/driver; ./make_all.sh $XILINX_DIR ARCH_BIT 172 (For Zynq 7000, ARCH_BIT should be 32, for Zynq MPSoC, ARCH_BIT should be 64) 173 (More arguments (max 5) beyond above two will be converted to #define argument in pre_def.h for conditional compiling) 174 ``` 175- Copy the driver files to the board via ssh channel 176 ``` 177 cd openwifi/driver; scp `find ./ -name \*.ko` [email protected]:openwifi/ 178 ``` | 163 164## Update Driver 165 166Since the pre-built SD card image might not have the latest bug-fixes/updates, it is recommended to update the driver on board. 167- Prepare Analog Devices Linux kernel source code (only need to run once): 168 ``` 169 cd openwifi/user_space; ./prepare_kernel.sh $XILINX_DIR ARCH_BIT build 170 (For Zynq 7000, ARCH_BIT should be 32, for Zynq MPSoC, ARCH_BIT should be 64) --- 4 unchanged lines hidden (view full) --- 175 cd openwifi/driver; ./make_all.sh $XILINX_DIR ARCH_BIT 176 (For Zynq 7000, ARCH_BIT should be 32, for Zynq MPSoC, ARCH_BIT should be 64) 177 (More arguments (max 5) beyond above two will be converted to #define argument in pre_def.h for conditional compiling) 178 ``` 179- Copy the driver files to the board via ssh channel 180 ``` 181 cd openwifi/driver; scp `find ./ -name \*.ko` [email protected]:openwifi/ 182 ``` |
179 Now you can use **wgd.sh** on board to load the new openwifi driver. | 183 Now you can use **wgd.sh** on board to load the new openwifi driver. **wgd.sh** also tries to reload FPGA img if system_top.bit.bin presents in the same directory. 184 Find more information in [Driver and FPGA dynamic reloading app note](./doc/app_notes/drv_fpga_dynamic_loading.md). 185 |
180 **Note**: If you have symbol or version error while loadng the driver, it could be because the kernel in the SD card image is too old. In this case, you need to follow [[Build openwifi Linux img from scratch](#Build-openwifi-Linux-img-from-scratch)] to generate your new SD card image. 181 182## Update sdrctl 183- Copy the sdrctl source files to the board via ssh channel 184 ``` 185 cd openwifi/user_space/sdrctl_src; scp `find ./ -name \*` [email protected]:openwifi/sdrctl_src/ 186 ``` 187- Compile the sdrctl **on board**: --- 79 unchanged lines hidden --- | 186 **Note**: If you have symbol or version error while loadng the driver, it could be because the kernel in the SD card image is too old. In this case, you need to follow [[Build openwifi Linux img from scratch](#Build-openwifi-Linux-img-from-scratch)] to generate your new SD card image. 187 188## Update sdrctl 189- Copy the sdrctl source files to the board via ssh channel 190 ``` 191 cd openwifi/user_space/sdrctl_src; scp `find ./ -name \*` [email protected]:openwifi/sdrctl_src/ 192 ``` 193- Compile the sdrctl **on board**: --- 79 unchanged lines hidden --- |