TQT507开发板wifi蓝牙使用指南
例程开发板:TQT507 内核版本:4.9.170
本指南旨在为广大TQT507开发板用户提供详细的WiFi和蓝牙使用方法,帮助您轻松实现无线通信功能。
随着物联网技术的不断发展,WiFi和蓝牙已经成为无线通信领域两项重要的技术。而作为具有较高性价比的ARM Cortex-A53开发板,TQT507提供了丰富的硬件资源和完整的软件支持,非常适合进行无线通信相关的应用开发。
在编写本指南时,我们参考了官方文档、开源社区和亲身经验,力求为读者提供全面、系统、易懂的教程,帮助您快速上手并完成您的项目。
驱动加载
wifi内核模块驱动文件表:
模块名称 |
接口 |
驱动文件名 |
所在路径 |
rtl8723ds |
SDIO |
8723ds.ko |
/lib/modules/4.9.170 |
rtl8723du |
USB |
8723du.ko |
/lib/modules/4.9.170 |
rtl8821cu |
USB |
8821cu.ko |
/lib/modules/4.9.170 |
bluetooth内核模块驱动文件表:
模块名称 |
接口 |
驱动文件名 |
所在路径 |
rtl8723ds |
UART |
已集成到内核 |
无 |
rtl8723du |
USB |
rtk_btusb.ko |
/lib/modules/4.9.170 |
rtl8821cu |
USB |
rtk_btusb.ko |
/lib/modules/4.9.170 |
1.1 wifi功能的使用
在使用板载wifi和wifi蓝牙模块TQ8821都需要手动加载对应的模块。
core A
insmod /lib/modules/4.9.170/8723ds.ko
拿到TQ8821模块后可以查看芯片表面的模组名称来确定加载的驱动
rtl8723du
insmod /lib/modules/4.9.170/8723du.ko
rtl8821cu
insmod /lib/modules/4.9.170/8821cu.ko
1.2 蓝牙功能的使用
在使用板载的蓝牙功能时都需要先执行下面命令
rtk_hciattach -n -s 115200 /dev/ttySAC1 rtk_h5&
使用wifi蓝牙模块TQ8821的蓝牙功能时,无论是rtl8723du模组,还是8821cu模组都要加载rtk_btusb.ko驱动
insmod /lib/modules/4.9.170/rtk_btusb.ko
wifi连接测试
手动测试
1.模块上电后,需要手动加载驱动
insmod /lib/modules/4.9.170/8723ds.ko
模块成功加载:
2.使能wifi网卡:
一般为“wlan0”,除非存在多个wifi模块并都加载了驱动:
ifconfig wlan0 up
无报错表示网卡加载成功。
3.查看网卡是否存在:
ifconfig -a
wlan0网卡存在:
4.扫描可连接的wifi:
此处使用的是
iwlist wlan0 scan | grep ESSID
可以找到要连接的wifi:
5.编辑
vi /etc/wpa_supplicant.conf
6.使能wifi配置:
加
wpa_supplicant -Dwext -iwlan0 -c /etc/wpa_supplicant.conf &
这里的提示表示已经找到要连接的wifi:
7.连接wifi:
udhcpc -i wlan0
等待wifi连接,如果没报错,则连接成功。
8.查看wifi网卡:
ifconfig -a
已经分配了ip:
9.验证
ping www.baidu.com
功能正常:
脚本测试
在
1.进入脚本目录:
cd /test_utils /wifi/sta
目录下有两个文件,link.sh为测试脚本,wpa_supplicant.conf为配置文件
2.打开wpa_supplicant.conf配置文件,设置待连接的 WIFI 热点 SSID 及密码:
vi ./wpa_supplicant.conf
3.执行link.sh测试脚本:
sh link.sh
等待片刻,连接成功,功能正常:
ap热点测试
手动测试
1.模块上电后,需要手动加载驱动:
insmod /lib/modules/4.9.170/8723ds.ko
模块成功加载:
2.编辑
vi /etc/hostapd.conf
热点名称:
3.如果之前使能wifi网卡,需要先关闭:
ifconfig wlan0 down
4.发送热点:
hostapd -B /etc/hostapd.conf -f /var/log/hostap.log
5.配置IP:
ifconfig wlan0 192.168.0.2
6.此时手机可查找到名为
7.以上几步仅仅保证了连接,如何上网还需配置,首先保证板卡
其次将无线网卡打通数据传输的链路。
执行以下指令:
#设置 linux 系统允许 ip 包转发 echo "1" > /proc/sys/net/ipv4/ip_forward #清除原设置 iptables -F iptables -t nat -F iptables -t mangle -F iptables -X iptables -t nat -X iptables -t mangle -X #设置 filter table 默认原则 iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT iptables -P FORWARD ACCEPT #启用 NAT 数据转发功能, iptables -t nat -A POSTROUTING -j MASQUERADE iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE;
如果需要转发的是4G网卡,则将最后一句指令修改为:
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE;
可尝试在手机上关闭移动数据流量,然后浏览器打开网页进行测试网络。
脚本测试
在
1.进入脚本目录:
cd /test_utils/wifi/ap
2.打开hostapd.conf配置文件,设置待连接的 WIFI 热点 SSID 及密码:
vi hostapd.conf
热点名称:
3.执行send_ap.sh脚本,创建热点:
bash ./send_ap.sh
4.设置转发:
bash ./iptables_ap.sh
输入0,对eth0网卡进行转发,输入1,对ppp0网卡进行转发:
输入0:
此时手机可查找到名为
可尝试在手机上关闭移动数据流量,然后浏览器打开网页进行测试网络。
蓝牙设备使能
USB接口模块使能
1.模块上电后,需要手动加载驱动:
insmod /lib/modules/4.9.170/rtk_btusb.ko
模块成功加载:
2 使能蓝牙设备:
hciconfig hci0 up
无报错,蓝牙设备成功使能。3 查看蓝牙设备:
hciconfig -a
Bus为USB:
UART接口模块使能
本例使用板载6223A(rtl8723ds)模块已将蓝牙驱动集成于内核中。1使用hciattach工具启动蓝牙:
rtk_hciattach -n -s 115200 /dev/ttySAC1 rtk_h5&
启动成功:
查看蓝牙设备:
hciconfig -a
Bus为UART:
完成设备使能后,开启蓝牙服务:
hciconfig hci0 up
蓝牙扫描测试
蓝牙模块设备使能后,可使用
hcitool scan
耐心等待扫描完成,此为扫描结果:
也可以使用
1.进入
/usr/libexec/bluetooth/bluetoothd -C -n & bluetoothctl
2.开始扫描
scan on
此工具扫描到的设备更多:
3.扫描到目标设备后,可以停止扫描:
scan off
目标设备MAC地址为:24:DA:33:6D:F5:4A