新闻  |   论坛  |   博客  |   在线研讨会
TQT507开发板wifi蓝牙使用指南
TQwangbin | 2023-06-29 11:57:35    阅读:52   发布文章

图片

例程开发板: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:

此处使用的是 wireless tools 工具集里的iwlist工具:


iwlist wlan0 scan | grep ESSID

可以找到要连接的wifi:

图片

5.编辑 WIFI 配置文件/etc/wpa_supplicant.conf,设置待连接的 WIFI 热点 SSID 及密码:


vi /etc/wpa_supplicant.conf

图片

6.使能wifi配置:

加 -B 选项会使wpa_supplicant成为守护进程在后台运行,如果想多次进行调试的话就无法杀死进程,只能重启,因此此处并未加入该选项。


wpa_supplicant -Dwext -iwlan0 -c /etc/wpa_supplicant.conf &

这里的提示表示已经找到要连接的wifi:

图片

7.连接wifi:


udhcpc -i wlan0

等待wifi连接,如果没报错,则连接成功。

图片

8.查看wifi网卡:


ifconfig -a

已经分配了ip:

图片

9.验证 WIFI 功能是否正常:


ping www.baidu.com

功能正常:

图片

脚本测试  

在 /test_utils /wifi/ 目录下也集成了便于一键测试的脚本。

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.编辑 WIFI 配置文件 /etc/hostapd.conf ,设置待连接的 WIFI 热点 SSID 及密码:


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.此时手机可查找到名为 embedsky 的 WIFI 热点,成功连接上热点。

图片

7.以上几步仅仅保证了连接,如何上网还需配置,首先保证板卡 eth0 可以正常联网,

其次将无线网卡 wlan0 的设备传输数据转发到有线网卡 eth0 上面。所以需要配置一下路由转发规则,打通数据传输的链路。

执行以下指令:

















#设置 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;

可尝试在手机上关闭移动数据流量,然后浏览器打开网页进行测试网络。

脚本测试  

在 /test_utils /wifi/ 目录下也集成了便于一键测试的脚本。

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:

图片

此时手机可查找到名为 embedsky 的 WIFI 热点,成功连接上热点。

图片

可尝试在手机上关闭移动数据流量,然后浏览器打开网页进行测试网络。

蓝牙设备使能  USB接口模块使能  

1.模块上电后,需要手动加载驱动:


insmod /lib/modules/4.9.170/rtk_btusb.ko

模块成功加载:

图片

使能蓝牙设备:


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 工具进行扫描:


hcitool scan

耐心等待扫描完成,此为扫描结果:

图片

也可以使用 bluetoothctl 工具进行扫描:

1.进入 bluetoothctl 终端:



/usr/libexec/bluetooth/bluetoothd -C -n &            bluetoothctl

图片

2.开始扫描


scan on

此工具扫描到的设备更多:

图片

3.扫描到目标设备后,可以停止扫描:


scan off

目标设备MAC地址为:24:DA:33:6D:F5:4A

图片







 7


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客