|
| 1 | +# NRC7292 Software Package |
| 2 | + |
| 3 | +## Notice |
| 4 | +### Release roadmap |
| 5 | +- v1.3.0 (2020.05.30) |
| 6 | + |
| 7 | +### Latest release |
| 8 | +- [NRC7292_SW_PKG_v1.3.0](https://github.com/newracom/nrc7292_sw_pkg_draft/releases/tag/v1.3.0) |
| 9 | + |
| 10 | +### Release package contents |
| 11 | +- host |
| 12 | + - cli_app |
| 13 | + - evk |
| 14 | + - nrc_driver |
| 15 | + |
| 16 | +## NRC7292 Software Package User Guide |
| 17 | +### (Optional) Install toolchain |
| 18 | +To build host driver, GNU ARM embedded toolchain is needed. |
| 19 | +Please follow commands to install toolchain by using toolchain in this repository. |
| 20 | +``` |
| 21 | +tar -xf gcc-arm-none-eabi-7-2018-q2-update-linux.tar.bz2 |
| 22 | +vi ~/.bashrc |
| 23 | + export PATH="~/gcc-arm-none-eabi-7-2018-q2-update/bin:$PATH" |
| 24 | +``` |
| 25 | +### Get NRC7292 Software Package |
| 26 | +NRC7292 Software package is provided in this repository. Please refer to the following git command to get it. |
| 27 | +``` |
| 28 | +cd ~/ |
| 29 | +git clone https://github.com/newracom/nrc7292_sw_pkg_draft.git |
| 30 | +``` |
| 31 | +### Prepare host platform (Raspberry Pi 3 Model B+) |
| 32 | +#### Install Newracom Device Tree (DT) overlay |
| 33 | +You can get Device Tree Source (DTS) for NRC7292 in dts directory. Please install DT overlay by following commands below. |
| 34 | +``` |
| 35 | +cd /boot/overlays |
| 36 | +sudo dtc -I dts -O dtb -o newracom.dtbo newracom-overlay.dts |
| 37 | +sudo vi /boot/config.txt |
| 38 | + dtoverlay=newracom |
| 39 | +``` |
| 40 | +### Install release package |
| 41 | +Please upload the contents in host/evk/sw_pkg to sw_pkg directory on host platform, and follow below commands to install release package. |
| 42 | +``` |
| 43 | +cd sw_pkg |
| 44 | +chmod +x ./update.sh |
| 45 | +./update.sh |
| 46 | +``` |
| 47 | +And you can also install key binaries or build host driver as below. |
| 48 | +#### (Optional) Install firmware/driver/cli_app binaries |
| 49 | +Please follow below commands to install firmware, driver and cli_app. |
| 50 | +``` |
| 51 | +cd host/evk/binary |
| 52 | +cp ./cli_app ~/nrc_pkg/script |
| 53 | +cp ./nrc.ko ~/nrc_pkg/sw/driver |
| 54 | +cp ./nrc7292_cspi.bin ~/nrc_pkg/sw/firmware |
| 55 | +``` |
| 56 | +#### (Optional) Build host driver |
| 57 | +You can get the pre-built host driver in nrc_pkg/sw/driver, but you can build it by youself by following below commands. |
| 58 | +``` |
| 59 | +cd host/nrc_driver/source/nrc_driver/nrc |
| 60 | +make clean |
| 61 | +make |
| 62 | +cp nrc.ko ~/nrc_pkg/sw/driver |
| 63 | +``` |
| 64 | +### Run NRC7292 Software Package |
| 65 | +#### Configure start script |
| 66 | +There are a couple of configurable parameters as below. |
| 67 | +``` |
| 68 | +# Default Configuration (you can change value you want here) |
| 69 | +txpwr_val = 17 # TX Power |
| 70 | +maxagg_num = 8 # 0(AMPDU off) or >2(AMPDU on) |
| 71 | +cqm_off = 0 # 0(CQM on) or 1(CQM off) |
| 72 | +fw_name = 'uni_s1g.bin' |
| 73 | +guard_int = 'long' # 'long'(LGI) or 'short'(SGI) |
| 74 | +supplicant_debug = 0 # WPA Supplicant debug option : 0(off) or 1(on) |
| 75 | +hostapd_debug = 0 # Hostapd debug option : 0(off) or 1(on) |
| 76 | +power_save = 0 # power save : 0(off) or 1(on) |
| 77 | +``` |
| 78 | +You can apply your parameters by updating start.py script file. |
| 79 | +``` |
| 80 | +vi nrc_pkg/script/start.py |
| 81 | +``` |
| 82 | +#### Access Point (AP) running procedure |
| 83 | +The following is the parameters for start.py script file. |
| 84 | +``` |
| 85 | +Usage: |
| 86 | + start.py [sta_type] [security_mode] [country] [channel] [sniffer_mode] |
| 87 | +Argument: |
| 88 | + sta_type [0:STA | 1:AP | 2:SNIFFER | 3:RELAY] |
| 89 | + security_mode [0:Open | 1:WPA2-PSK | 2:WPA3-OWE | 3:WPA3-SAE] |
| 90 | + country [US:USA | JP:Japan | TW:Taiwan | KR:Korea | EU:EURO | CN:China] |
| 91 | + ----------------------------------------------------------- |
| 92 | + channel [S1G Channel Number] * Only for Sniffer |
| 93 | + sniffer_mode [0:Local | 1:Remote] * Only for Sniffer |
| 94 | +Example: |
| 95 | + OPEN mode STA for Korea : ./start.py 0 0 KR |
| 96 | + Security mode AP for US : ./start.py 1 1 US |
| 97 | + Local Sniffer mode on CH 40 for Japan : ./start.py 2 0 JP 40 0 |
| 98 | +Note: |
| 99 | + sniffer_mode should be set as '1' when running sniffer on remote terminal |
| 100 | +``` |
| 101 | +The following shows an example of AP running for US channel, and its channel can be configured in nrc_pkg/script/conf/US/ap_halow_open.conf. For WPA2/WPA3 modes, please refer to nrc_pkg/script/conf/US/ap_halow_[sae|owe|wpa2].conf files. |
| 102 | +``` |
| 103 | +cd nrc_pkg/script |
| 104 | +./start.py 1 0 US |
| 105 | +``` |
| 106 | +#### Station (STA) running procedure |
| 107 | +The following shows an example of STA running for US channel, and its channel can be configured in nrc_pkg/script/conf/US/sta_halow_open.conf. For WPA2/WPA3 modes, please refer to nrc_pkg/script/conf/US/sta_halow_[sae|owe|wpa2].conf files. |
| 108 | +``` |
| 109 | +cd nrc_pkg/script |
| 110 | +./start.py 0 0 US |
| 111 | +``` |
| 112 | +#### Sniffer running procedure |
| 113 | +The following shows an example of local mode sniffer running for US channel 159. |
| 114 | +``` |
| 115 | +cd nrc_pkg/script |
| 116 | +./start.py 2 0 US 159 0 |
| 117 | +``` |
0 commit comments