网络配置
wifi
目前通过wpa_supplicant工具来配置无线网络,这是一个连接、配置wifi的工具,它主要包含wpa_supplicant与wpa_cli两个程序。
命令行配网
wifi使能
echo 1 >/sys/class/rkwifi/driver ifconfig wlan0 up
成功后,执行ifconfig能看到wlan0 节点
启动wpa_supplicant进程
wpa_supplicant -b -i wlan0 -c /data/cfg/wpa_supplicant.conf
如果/data/cfg/wpa_supplicant.conf文件不存在就创建,添加如下配置项:
vi /data/cfg/wpa_supplicant.conf ctrl_interface=/var/run/wpa_supplicant ap_scan=1
通过wpa_cli配置wifi
常用命令:
wpa_cli -i wlan0 scan // 搜索附近wifi网络 wpa_cli -i wlan0 scan_result // 打印搜索wifi网络 wpa_cli -i wlan0 add_network // 添加一个网络连接
如果要连接加密方式是[wpa-psk-ccmp+tkip][wpa2-psk-ccmp+tkip][ess] (wpa加密),wifi名称是name,wifi密码是:psk。操作如下:
wpa_cli -i wlan0 set_network 0 ssid 'name' wpa_cli -i wlan0 set_network 0 psk 'psk' wpa_cli -i wlan0 set_network 0 key_mgmt wpa-psk wpa_cli -i wlan0 enable_network 0 //使能wifi
如果要连接加密方式是[wep][ess] (wep加密),wifi名称是name,wifi密码是psk。操作如下:
wpa_cli -i wlan0 set_network 0 ssid 'name' wpa_cli -i wlan0 set_network 0 key_mgmt none wpa_cli -i wlan0 set_network 0 wep_key0 'psk' wpa_cli -i wlan0 enable_network 0
如果要连接加密方式是[ess] (无加密),wifi名称是name。操作如下:
wpa_cli -i wlan0 set_network 0 ssid 'name' wpa_cli -i wlan0 set_network 0 key_mgmt none wpa_cli -i wlan0 enable_network 0
使能保存wifi连接信息
wpa_cli -i wlan0 set update_config 1
保存wifi连接信息
wpa_cli -i wlan0 save_config
连接已有的连接
wpa_cli -i wlan0 list_network // 列举所有保存的连接 wpa_cli -i wlan0 select_network 0 // 连接第1个保存的连接 wpa_cli -i wlan0 enable_network 0 // 使能第1个保存的连接
关闭wifi
ifconfig wlan0 down
或直接修改配置文件
修改如下文件:
vi /data/cfg/wpa_supplicant.conf ctrl_interface=/var/run/wpa_supplicant ap_scan=1
添加如下配置项
network={ ssid=wifi-ap // wifi 名字 psk=12345678 // wifi 密码 key_mgmt=wpa-psk // 加密方式 # key_mgmt=none // 不加密 }
重新读取上述配置:
wpa_cli reconfigure
重新连接:
wpa_cli reconnect
手机配网
手机配网方式多样,可以通过softap配网,也可以通过蓝牙配网。
这里介绍roc-rk3308-cc自带的配网方式。
softap 配网
配网app下载:rkecho.apk,同时在sdk里面也能找到:sdk/external/app/rkecho.apk
buildroot 配置:
源码开发目录:
/external/softapserver/ -- wifi 与 apk 端相关操作 /external/softapdemo/ -- wifi 相关操作
准备手机安装 apkrkecho.apk,这是必须的。
然后确保 wifi server 进程启动
wpa_supplicant -b -i wlan0 -c /data/cfg/wpa_supplicant.conf
配网流程:
● 开启热点,执行命令如下:
softapserver rockchip-echo-123
注意:wifi热点的命名方式必须为rchip-echo-xxx。
● 热点开启完毕后,打开手机,进入手机自身的设置,点击连接刚刚设置好的热点,如:rckchip-echo-123。
● 连接成功后,打开手机已经安装好的apk,进行如下操作:
打开 apk,点击 wifi setup -> confirm -> 确认 -> wifi 列表 -> 点击你要连接的网络名字 -> 输入密码 -> 点击确认。
● 听到语音提示,网络已连接,就可以开始使用啦!
● 检查网络是否连通:
ping www.baidu.com
● 注意要点:
softspserver rockchip-echo-123 执行后命令行是无法退出的,直到配网完成
名字千万不要写错,否则 apk 无法进入确认界面(rockchip-echo-xxx)
此功能暂时只支持android手机。
以太网
以太网使能
ifconfig eth0 up
ip地址设置
动态获取ip地址
wifi动态获取ip地址,执行下面指令:
udhcpc -i wlan0 -r
以太网动态获取ip地址,执行下面指令:
udhcpc -i eth0 -r
设置静态ip地址
以太网设置静态ip步骤如下:
ip addr add 168.168.100.78/255.255.0.0 dev eth0 #ip地址/子网掩码 ip route flush dev eth0 ip route add 168.168.0.1 dev eth0 #网关 ip route add default via 168.168.0.1 dev eth0 #添加默认路由 echo -e nameserver 114.114.114.114\nnameserver 8.8.8.8 > /userdata/resolv.conf #设置dns
wifi设置静态ip步骤同上。
制作雨水报警器
当前芯片短缺的原因是什么?
澳大利亚如何利用物联网应用于智能建筑和智能城市的发展?
联发科天玑系列5G智能手机处理器预计今年的出货量将超过4500万
180°电机控制及基于uPD78F0712的家电风机解决方案
微雪电子ROC-RK3308主板CC-网络配置介绍
苹果收购3D传感器公司,智能电视和智能手表有戏?
三大运营商2019年财报对比 实力差距有多大
储能系统有哪些?
英飞凌针对NFC无源锁等应用推出集成了半桥驱动IC的单芯片解决方案NAC1080
德国电信正在建立世界上第一个开放的物联网网络
Redmi K40计划于下个月发布
SIMATIC S7-1500 PLC的通信及其应用—OSI参考模型
共话未来智算时代数据中心新机遇|全球数据中心咨询师峰会新加坡站成功举办
路由器的作用和工作原理
十一科技与海辰半导体正式签约 将新建8英寸非存储晶圆厂
AOSMark发布了最佳手机厂商排行榜,排名方式让很多人大吃一惊
商用硬盘跟机械硬盘有何优势
让ADAS技术在车辆中更加普及
2020年全球彩电市场的整体发展情况分析