1、添加wifi驱动
make menuconfig
Ralink 选择wifi模块驱动
取消默认的wifi驱动选项
Kernel Modules -> WireLess Drivers -> kmod-rt2800-soc 取消选择
首先编译好之后,更新固件,这是一种方式,另外一种是配件安装方式。
2、 cd /etc/config 文件夹
可以看到wireless配置文件
里面就有wifi的配置信息
直接修改固件的配置文件
1)修改wifi的ssid
2)修改密码
3)打开关闭wifi
信道、功耗等等
3、修改源代码方式
进入源码package/hiwooya-wifi
grep -rn "HI-WOOYA" ./
查到/package/hiwooya-wifi/ralink-wifi-mt7688/files/lib/wifi/ralink.sh 里面找到关键字修改
4、无线wifi扩展STA
无线中继 sta apclent
1)扫描周围wifi
aps 脚本命令
aps 脚本实现源码
river@pc:~/openwrt/openwrt-hiwooya-stable/package/hiwooya-wifi$ find . -name "aps"
./ralink-wifi-mt7628/files/usr/bin/aps
./ralink-wifi/files/usr/bin/aps
./ralink-wifi-mt7688/files/usr/bin/aps
具体两个命令实现
iwpriv ra0 set SiteSurvey=1
iwpriv ra0 get_site_survey
2)连接连接目标wifi
需要setwifi 这个脚本
教程提示路径是在/openwrt-hiwooya-stable/package/hiwooya-wifi/ralink-wifi-mt7688/files/usr/bin
但是只看到aps 没看到setwifi
setwifi源码的真实路径应该是
river@pc:~/openwrt/openwrt-hiwooya-stable$ find . -name "setwifi"
./build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/root-ramips/usr/sbin/setwifi
./files/usr/sbin/setwifi
具体有效命令
uci set wireless.ra0.channel=$chanel
uci set wireless.@wifi-iface[0].ApCliSsid="$ussid"
uci set wireless.@wifi-iface[0].ApCliPassWord=$upass
uci set wireless.@wifi-iface[0].ApCliAuthMode=$umode
uci set wireless.@wifi-iface[0].ApCliEncrypType=$uencryp
uci commit
首先把setwifi源码放在跟aps一起
./hiwooya-wifi/ralink-wifi-mt7688/files/usr/bin/aps
river@pc:~/openwrt/openwrt-hiwooya-stable$ find . -name "setwifi"
./build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/root-ramips/usr/sbin/setwifi
./files/usr/sbin/setwifi
river@pc:~/openwrt/openwrt-hiwooya-stable$ cp files/usr/sbin/setwifi package/hiwooya-wifi/ralink-wifi-mt7688/files/usr/bin/
river@pc:~/openwrt/openwrt-hiwooya-stable$ ls package/hiwooya-wifi/ralink-wifi-mt7688/files/usr/bin/
aps flash_mac ia nr setwifi vn vw
当然最好还要 ls -al setwifi 和其他脚本的 权限是否一样,确保运行能正常
river@pc:~/openwrt/openwrt-hiwooya-stable$ ls -al package/hiwooya-wifi/ralink-wifi-mt7688/files/usr/bin/
total 40
drwxrwxr-x 2 river river 4096 7月 11 18:19 .
drwxrwxr-x 3 river river 4096 7月 9 18:58 ..
-rwxrwxr-x 1 river river 213 7月 9 18:58 aps
-rwxrwxr-x 1 river river 7869 7月 9 18:58 flash_mac
-rwxrwxr-x 1 river river 26 7月 9 18:58 ia
-rwxrwxr-x 1 river river 28 7月 9 18:58 nr
-rwxrwxr-x 1 river river 3175 7月 11 18:19 setwifi
-rwxrwxr-x 1 river river 23 7月 9 18:58 vn
-rwxrwxr-x 1 river river 24 7月 9 18:58 vw
river@pc:~/openwrt/openwrt-hiwooya-stable$
重新编译代码,更新固件运行系统,测试setwifi命令
使用使用setwifi ssid pwd 命令联网
我测试是可以上网了,外如果sta通过setwifi还是无法上网
可以查看ifconfig是否获取上一级路由的ip地址,如果没有,需要修改
修改network添加
vi etc/config/network
config interface 'mywan'
option ifname 'apcli0
option proto 'dhcp'
ping www.baidu.com
然后应该就可以获得上级路由ip了
pc或者手机连接开发板发出的ap热点,查看是否可以上网
如果不能 需要修改防火墙
config zone
option name wan
list network 'wan'
list network 'mywan'
list network 'wan6'
list network '4g'
list network 'wwan'
option input REJECT
option output ACCEPT
option forward REJECT
option masq 1
option mtu_fix 1
3)测试上网
定制OpenWrt系统
希望定制自己配置的系统,又不希望修改原系统的配置
修改添加files文件夹
files文件夹相当于系统运行之后的根目录/
比如如果想要在/etc/config/下面放置或者修改什么文件,可以在files文件夹下,新建对应的
目录,然后放置需要修改配置的文件。重新编译系统,就可以实现要求。
5、files 对应开发板根目录
把file/etc/config/network 添加network文件
6、开发板命令控制gpio
LED1 手册中对应GPIO#43
LED2 手册中对应GPIO#42
修改复用:mt7688_pinmux
mt7688_pinmux get
mt7688_pinmux set ephy gpio
控制led
cd sys/class/gpio
echo 43 > export
ls
cd gpio43
cat direction
echo out > direction
echo 1 > value
7、openwrt 和windows互传文件
系统还没有 SSH服务器,需要打开ssh
如果没有方发现ssh
需要执行更新命令 更新扩展软件包:
./scripts/feeds update -a
安装扩展软件包:
./scripts/feeds install -a
进入配置界面:
make menuconfig
Network SSH
选择
openssh-keygen
openssh-sftp-server
openssh-server