树莓派pi3B连接4G模块拨号上网配置(树莓派接受cc2530数据保存并发送到OneNet实例)
树莓派pi3B串口配置见:
https://blog.****.net/qq_40025335/article/details/81152028
#[email protected](XATU)
#Time:20180801
#Env:raspi、4G模块、4GSIM(本人用的移动、如用联通、电信按下文APN,修改接入点名称)
#ZigBee从设备采集传感器数据
#ZigBee协调器串口接受从设备数据
#树莓派3B串口连接协调器接受数据
#树莓派3B保存数据到本地CC2530.txt
#树莓派3B连接4G模块,wxdial拨号上网
#树莓派3B通过python脚本将数据发给OneNet
#OneNet配置创建产品设备,保存并显示数据
$$$注意配置4G模块先把树莓派WIFI功能关闭(或拔掉插入的网线)
$$$注意4G模块,蓝色USB线供电,需要用USB转TTL连接4G模块和树莓派(调试了半天竟然忘记)
1、ZIgBee连接传感器并采集数据发给ZigBee协调器(fan)
2、树莓派串口ttyS0(GpIO14\15)接受ZigBee协调器发来数据(通过串口发送)
python脚本实现读取串口数据保存、wxdial拨号然后发送到OneNet
3、配置4G模块,实现树莓派连网功能
(1)minicon 安装 详情见 : http://www.cnblogs.com/emouse/
sudo apt-get install minicom
(2)配置minicon-
sudo minicon -s
+-----[configuration]------+
| Filenames and paths |
| File transfer protocols -|
| Serial port setup |
| Modem and dialing |
| Screen and keyboard |
| Save setup as dfl |
| Save setup as.. |
| Exit |
Serial port setup [Enter]
+-------------------------------------------------------------+
| A - Serial Device : /dev/ttyUSB0 |
| B - Lockfile Location : /var/lock |
| C - Callin Program : |
| D - Callout Program -: |
| E - Bps/Par/Bits : 115200 8N1 |
| F - Hardware Flow Control : No |
| G - Software Flow Control : No |
| |
| Change which setting? | (Enter 退出并保存配置)
sudo minicom -s
可查看4G模块连接成功的回显信息
1)组合键 Ctrl+a 进入设置状态;(先按Ctrl+a后再按Q)
2)按 z 打开帮助菜单,或者你用的熟练的话,直接输入菜单对应的字母即可;
(1)S键:发送文件到目标系统中;
(2)W键:自动卷屏。当显示的内容超过一行之後,自动将後面的内容换行。这个功能在查看内核的啓动信息时很有用。
(3)C键:清除屏幕的显示内容;
(4)B键:浏览minicom的历史显示;
(5)X键:退出mInicom,会提示确认退出。
(3)安装拨号: wxdial
sudo apt install wxdial
(4)lsusb 指令查看usb接口情况:树莓派USB无法直接识别4G模块,需要用USB转TTL--能识别PL232(对应ttyUSB0)
ifconfig -a
网络信息 :eth0/lo/wlan0/wwan0
dmesg 查看usb串口。倒数几行显示:pl2303 converter now attached to ttyUSB0。
(5)打开串口助手:sudo minicom
测试AT指令: 输入AT发 返回OK -即4G连接成功
及测试其他指令,检查SIM是否接入成功等
AT+CPSI?
(6) https://blog.****.net/jiaojian8063868/article/details/79295570
linux 加载 wxdial \ sudo apt-get install wvdial
sudo vi /etc/wvdial.conf %需要熟悉vi操作、自己在记事本中写完命令后再copy过来
linux vi 操作:百度 vi三种模式常用操作的学习
如下配置:(配置完成注意保存,vi操作--先键盘ESC--Shift+:wq 然后Enter 退出)
[Dialer Defaults]
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0
Init3 = AT+CGDCONT=1,"IP","cmnet" %移动设置、联通、电信见下文
Modem Type = Analog Modem
Baud = 115200 # 波特率常见的是9600 115200 460800
New PPPD = yes
Modem = /dev/ttyUSB0
ISDN = 0
Phone = *98*1# 移动
Password = new #自行设置
Username = new
Auto DNS = on
拨号上网:
sudo wvdial Defaults
需要等待一会儿
此时可以通过ifconfig看到多出了个ppp0的网卡设备,并且已经获得IP地址
————————————————————————————————
sudo route %查看路由状态
如图1形式不需要修改。
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 0.0.0.0 0.0.0.0 U 0 0 0 ppp0
10.64.64.64 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0
——————————————————————————————————
如图2形式需要修改:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 0.0.0.0 0.0.0.0 U 0 0 0 eth0
10.64.64.64 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0
——————————————————————————————————
修改后如图1即可
可以尝试ping内网和外网:(内外ping 通可能出现卡顿,没关系,直接关掉终端,ping 外网)
[email protected]:~ $ ping 192.168.1.1
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=0.522 ms
64 bytes from 192.168.1.1: icmp_seq=2 ttl=64 time=0.470 ms
64 bytes from 192.168.1.1: icmp_seq=3 ttl=64 time=0.402 ms
64 bytes from 192.168.1.1: icmp_seq=4 ttl=64 time=0.449 ms
[email protected]:~ $ ping www.baidu.com
PING www.a.shifen.com (61.135.169.125) 56(84) bytes of data.
64 bytes from 61.135.169.125: icmp_seq=1 ttl=54 time=23.3 ms
64 bytes from 61.135.169.125: icmp_seq=2 ttl=54 time=27.0 ms
64 bytes from 61.135.169.125: icmp_seq=3 ttl=54 time=13.5 ms
64 bytes from 61.135.169.125: icmp_seq=4 ttl=54 time=23.1 ms
————————————————————————————————
ping 通说明已经具有联网功能
————————————————————————————
上述配置结束,关闭终端,4G拨号上网
重新打开 输入:sudo wvdial Defaults
出现如下图:(不要关闭终端,此时已经能够上网了)
_____________________________________________________
APN设置
移动: at+cgdcont=1,"ip","cmnet"
联通: at+cgdcont=1,"ip","3gnet"
电信: at+cgdcont=1,"ip","ctnet"
拨号
移动: *99***1#或*98*1#
联通: *99#
电信: #777
4、打开另一终端,运行python脚本,将数据传至OneNet
(有疑问的可以留言交流、需要python脚本的留言,不定期查看谢谢)
5、Ending 资料整理 分享不易,一分一毛都是激励
技术合作交流群:799361727