树莓派SIM7600CE 4G扩展板使用教程

产品特点

  • 基于Raspberry Pi 40PIN GPIO接口设计,适用于Raspberry Pi系列主板、Jetson Nano
  • 支持拨号上网、电话、短信、TCP、UDP、DTMF、HTTP、FTP等功能
  • 支持GPS、北斗、Glonass、LBS基站定位
  • 板载USB接口,可用于测试AT指令、获取GPS定位信息等
  • 板载CP2102 USB转UART芯片,方便进行串口调试
  • 引出模组UART等控制接口,方便接入Arduino/STM32等主控板
  • 板载SIM卡槽,支持1.8V和3V SIM卡
  • 板载TF卡槽,可用于存放文件、短信等数据
  • 板载音频接口和音频解码芯片,可用于打电话等语音操作
  • 板载2个LED指示灯,方便查看模块运行状态
  • 板载电平转换电路,可通过跳线帽切换3.3V / 5V工作电平
  • 支持波特率范围:300bps ~ 4Mbps(默认为115200bps)
  • 支持自动识别波特率(9600bps ~ 115200bps)
  • 提供完善的配套资料手册(Raspberry/Jetson Nano/Arduino/STM32等示例程序)

调试

硬件配置

  • 用户在使用模块前除了micro USB线、LTE天线、GPS天线外,还需要准备以下东西:
  1. 一张4G SIM卡(移动、联通或电信卡,未停机且开通GPRS);
  2. 一根带麦克风耳机线(可选);
  3. 一张TF卡(可选);
  • 断电的情况下,装入已经激活的4G SIM卡、TF卡(可选)、插入带麦克风的耳机线(可选),再接上USB线到电脑。

背面


正面

  • 把micro USB线一端接PC机USB接口,另一端接SIM7600X 4G HAT的USB接口,PWR灯亮起,NET灯不亮状态。
  • 按下PWR按键约1秒,等待十秒左右,看到NET灯开始隔一秒闪烁一次,则模块开始工作
  • 打开设备管理器里面可以看到多出下图所示COM口。

  • 如果上图识别出来COM口,但是出现叹号,则表示还没有安装驱动,需要手动加载下驱动

【说明】:SIM7600CE 4G HAT默认硬件需要按键开机,如果需要硬件上电自动开机,可用杜邦线把模块排针上的PWR和GND接到一起即可实现上电自动开机,如下图。


【说明】:
NET灯的工作状态说明如下图:

测试简要说明

常用AT指令

命令说明返回值
ATAT测试指令OK
ATEATE1设置回显
ATE0关闭回显
OK
AT+CGMI查询模组制造商OK
AT+CGMM查询模组型号OK
AT+CGSN查询产品序列号OK
AT+CSUB查询模块版本以及芯片OK
AT+CGMR查询固件版本序列号OK
AT+IPREX设置模块硬件串口波特率+IPREX:
OK
AT+CRESET复位模块OK
AT+CSQ网络信号质量查询,返回信号值+CSQ: 17,99
OK
AT+CPIN?查询SIM卡状态,返回READY,表示SIM卡能正常识别+CPIN: READY
AT+COPS?查询当前运营商,正常联网后会返回运营商信息+COPS:
OK
AT+CREG?查询网络注册状态+CREG:
OK
AT+CPSI?查询UE系统信息
AT+CNMP网络模式选择命令:
2:Automatic
13:GSM only
38:LTE only
48 : Any modes but LTE
... ....
OK

更多AT指令请查阅:SIM7500_SIM7600 Series_AT Command Manual_V1.07

拨号上网

【注意】:须用开通了GPRS联网功能并且未停机的SIM卡,国内支持移动、电信和联通手机卡。

计算机Windows上网

  • 电信和联通卡一般接上模块后会自动连接 (注意:事先需要把所有的驱动都安装好)
  • 移动拨号上网(下面步骤以Windows 10为例)
    • 未拨号之前查看电脑网络,连接方式是以太网。如下图所示:



  • 开始拨号




  • 显示连接方式出现“拨号连接5”,此时禁用以太网,便可以使用4G网络联网使用。

树莓派Raspbian上网

  1. 把模块插到树莓派,并USB接口连到树莓派USB口上,开机,如下图所示:

硬件连接图


  1. 参考下文的“ 树莓派初始化设置”,对树莓派做初始化设置。
  2. 拨号上网参考下面操作视频(拨号上网建议使用USB接口连接,速度更快):

关于树莓派拨号上网相关的具体操作,请参考以下链接:
树莓派RNDIS拨号上网
PPP拨号上网
NDIS拨号上网

  • 拨号上网后,如果DNS解析不了,上不了网,可以加上指令:
  1. route add -net 0.0.0.0 ppp0

GPS调试

GNSS控制实例

  • 插上GPS天线,并将接收器置于空旷的室外(注意阴雨天气测试不了),上电需要等待约1分钟才能接收到定位信号;


  • 详细测试指令和截图如下:
  1. AT+CGPS=1 //打开GPS
  2. AT+CGPSINFO //将GPS信息打印到串口
  3. AT+CGPS=0 //关闭GPS


TCP/IP连接GPRS发数据

GPRS 调试须用开通了 GPRS 联网功能的 SIM 卡

下例以接入移动 SIM 卡为例:

  1. 正确安装移动手机卡(须开通 GPRS 联网功能)、 GSM 天线、连接好 USB 线到电脑;
  2. 按下 PWR 键,启动模块,等待十几秒;
  3. 观察指示灯是否正常, PWR 指示灯常亮, NET 灯闪烁;

设置本地电脑虚拟服务器

虚拟服务器定义了广域网服务端口和局域网网络服务器之间的映射关系,所有对该广域网服务端口的访问都会被重新定位给通过IP地址指定的局域网网络服务器。(请参阅您的路由器对应厂商的说明书)

  1. 使用浏览器登录到路由器管理界面(具体地址请参阅您的路由器说明书)
  2. 设置端口号:2317(与已有的端口号不冲突即可。本例设为2317)
  3. 设置电脑端内网IP(局域网内电脑获取的IP,可以在本机运行CMD,进入命令行提示符,输入ipconfig查看IPv4地址,本例的电脑内网IP是192.168.1.168),如下图所示:


获取外网IP

外网IP可以通过浏览器搜索IP获得,如下图所示:


配置GPRS

  1. AT+CGDCONT=1,"IP","CMNET" //设置APN
  2. AT+CSQ //查询网络信号质量,其中第一个参数为网络信号质量最大为 31,此数值越大说明网络信号越强
  3. AT+CREG? //查询网络注册情况,其中第二个参数为 1 则说明已经注册成功
  4. AT+CIPMODE=1 //设置TCP/IP模式
  5. AT+CSOCKSETPN=1 //选择TCP/IP应用模式
  6. AT+CIPMODE=0 //选择TCP/IP应用模式
  7. AT+NETOPEN //开启模式
  8. AT+CIPOPEN=0,"TCP","113.81.233.65",2317 //设置设置TCP 、IP 和端口号,建立 TCP/IP 连接
  9. AT+CIPSEND=0,9 //为指定发送9个字符的数据,返回>即可开始发送9个字符内容
  10. AT+CIPCLOSE=0 //关闭TCP连接
  11. AT+NETCLOSE //关闭网络

操作现象如如下图所示:


TF卡调试

1. 断电的情况下插入TF卡(按压弹出式),按正常开机步骤,选择端口号:



2. 选择TF卡目录作为当前目录:

  1. AT+FSCD=D: //选择 TF 卡路径
  2. +FSCD: D:/
  3. OK
  4. AT+FSLS //查看子目录
  5. +FSLS: SUBDIRECTORIES:
  6. overlays
  7. MyDir
  8. System Volume Information
  9. ...
  10. ...
  11. OK


3. 在TF卡上建立文件夹和文件内容 使用语句在根目录设置 MyDir 文件夹并在文件夹内建立 t1.txt 文件,同时写入内容 test content

  1. AT+CFTRANRX="D:/MyDir/t1.txt",12 //文件名
  2. >test content //内容
  3. OK


 4. 打开TF卡文件

  1. AT+CFTRANTX="D:/MyDir/t1.txt"
  2. +CFTRANTX: DATA,012
  3. test content
  4. +CFTRANTX: 0
  5. OK


更多指令可以参照:SIM7500_SIM7600 Series_AT Command Manual_V1.07 P256~P268

更多指令可以参照:SIM7500_SIM7600 Series_AT Command Manual_V1.07 P256~P268

拔打电话

  • 参考《硬件配置》章节接好LTE天线、SIM卡(须开通电话功能)和带麦克风耳机线,模块开机。
  • 拨打电话常用指令:
AT+CNUM查询本机号码(并非所有的SIM卡都支持此指令)+CNUM
OK
AT+CSDVCAT+CSDVC=1:切换到耳机输出
AT+CSDVC=3:切换到喇叭输出
OK
AT+CLVL=?查询音量范围OK
AT+CLVL=2设置音量为2OK
ATD<phone_number>;ATD10086; :拔打移动10086客服电话OK
AT+CHUP挂断电话OK
AT+CLIP=1设置来电显示OK
ATA接听电话OK
  • 详细操作截图如下所示:


【注意】:在使用SSCOM串口助手收发AT指令时,须勾选“加回车换行”

语音输出模式和音量调节

  1. AT+CSDVC=1 //切换到耳机
  2. AT+CSDVC =3 //切换到喇叭
  3. AT+CLVL =? //查询音量范围,返回 +CLVL: (0-5) //说明音量有0~5可调
  4. AT+CLVL=2 //设置音量为2,返回 OK

接听电话

  1. 来电串口显示:RING
  2. 发送“ATA //接听电话
  3. 发送“AT+CHUP //挂断电话

音频参数调试

  1. AT+CACDBFN=?
  2. +CACDBFN: (Handset_cal.acdb,Handset_tianmai.acdb) // 建议考虑设置这组参数
  3. OK

A.模块开机初始化阶段,在拨打电话之前,增加如下

  1. AT^PWRCTL=0,1,3 // 主要改善TDD noise效果
  2. OK

B.模块建立语音通话过程中

  1. VOICE CALL:BEGIN // 模块通话建立执行,改善通话效果
  2. AT+CECM=1 //回音抑制处理
  3. OK
  4. AT+CECH=0x500 //改善手机端音量效果
  5. OK

详见“SIM7X00_Audio_Application_Note”文档

发送英文短信

  1. 正确安装 SIM 手机卡和LTE天线、模块USB接口用USB线接电脑,模块开机;
  2. 观察指示灯是否正常, PWR 指示灯常亮,NET 灯闪烁;
  3. 设置当地短信中心:AT+CSCA="+8613800755500"+回车,返回OK。
    注:中国移动的短信服务中心号是+861380xxxx500,其中 xxxx 是你所在的长途电话区号,短信中心每个地方可能不一样,具体可百度查询或拨打移动联通客服,此短信中心为深圳(0755);
  4. AT+CMGF=1 :设置短信模式为TEXT ;
  5. AT+CMGS="phone number"<回车> ,设置接收方手机号 ,然后会返回:“>”,发送需要的内容,如“Send massage test!”,结尾不需要回车,编辑完短信后以十六进制的格式发送1A发信息发送(1A是“CTRL+Z”的键值,用于告诉模块执行发送操作,也可以发送1B即“ESC”取消操作),发送成功后模块返回+CMGS:15确认发送成功。如下图所示。


接收英文短信

  1. 手机上发送一条:“This is a receive test for SIM7600X!”到试验模块上
  2. 接受到信息时,串口会制动上报信息,“SM”, 20,代表存在 SM 里面有20条信息了,刚刚发的信息就是第 20 条
  3. 读取信息:AT+CMGR=20 读取第20条信息(AT+CMGL="ALL" 为读取所有信息)
  4. 删除信息:AT+CMGD=20,如下图所示
  5. 将显示的信息通过编码转换器转换成文本。



发送中文短信

1、设置发送短信参数

  1. AT+CMGF=1 //设置为文本模式
  2. AT+CSCS="UCS2" //设置信息文本为UCS2编码集
  3. AT+CSMP=17,167,2,25 //设置文本模式参数。
  4. AT+CMGS="00310033003400330032003100310039003100300031" //设置接收方手机号的UCS2集;

2、等待返回>,此时发送进过转换的信息内容(00530049004D003700360030003000584E2D658777ED4FE16D4B8BD5),结尾不需要回车,编辑完短信后以十六进制的格式发送1A发信息发送,如下图所示:

接收中文短信

1、设置短信接收参数

  1. AT+CMGF=1 //设置文本显示
  2. AT+CSCS="GSM" //设置GSM编码集
  3. AT+CNMI=2,1 //设置新信息提醒

2、接受到信息时,串口会自动上报信息,如下图所示读取返回的第21条信息:

  1. AT+CMGR=21 //读取序号21的短信内容

3、在软件中把信息转成中文,如下图所示:

树莓派例程

硬件连接

SIM7600X 4G HAT板载树莓派GPIO接口,可直接插入各版本树莓派使用;下表为树莓派管脚与模块引脚连接情况(树莓派三代B+):

SIM7600X 4G HATRaspberry Pi
5V5V
GNDGND
RXDTXD (对应BCM的14)
TXDRXD (对应BCM的15)
PWRP22 (对应BCM的P6)
FLIGHTMODEP7 (对应BCM的P4),当拉高时进入飞行模式

树莓派初始化设置

为确保SIM7600X 4G HAT接入树莓派后能正常工作,需先初始化树莓派部分引脚的电平输出。具体操作如下:

  • 下载示例程序,解压后,把Raspberry文件夹下的c文件夹改名为SIM7600X,然后把SIM7600X整个文件夹复制到树莓派/home/pi目录下,
  • 命令行进入到/home/pi/SIM7600X目录下,执行指令
  1. chmod 777 sim7600_4G_hat_init
  • 设置开机初始化脚本,运行命令:
  1. sudo nano /etc/rc.local
  • 在exit 0前面加入 (如下图所示):
  1. sh /home/pi/SIM7600X/sim7600_4G_hat_init


树莓派串口配置

由于树莓派串口默认用于终端调试,如需使用串口,则需要修改树莓派设置。执行如下命令进入树莓派配置:

  1. sudo raspi-config

选择Interfacing Options ->Serial ->no -> yes,关闭串口调试功能。

打开/boot/config.txt文件,找到如下配置语句使能串口,如果没有,可添加在文件最后面:

  1. enable_uart=1

重启生效

树莓派minicom串口调试

1、将模块插入树莓派中
2、安装minicom,minicom是linux平台串口调试工具:

  1. sudo apt-get install minicom

3、执行minicom -D /dev/ttyS0(ttyS0为树莓派3B/3B+/4B的串口)。
默认波特率为115200
树莓派2B/zero,用户串口设备号为ttyAMA0,树莓派3B/3B+/4B串口设备号为ttyS0。
4、以AT同步测试为例,发送相关指令,如下图所示:

* minicom可通过按Ctrl+A,再按下Z进入设置模式,选择X退出。

示例程序

1、将模块插入树莓派中; 2、下载示例程序到/home/pi/ 路径下;

  1. wget https://www.waveshare.com/w/upload/2/29/SIM7600X-4G-HAT-Demo.7z
  2. sudo apt-get install p7zip-full
  3. 7z x SIM7600X-4G-HAT-Demo.7z -r -o/home/pi
  4. sudo chmod 777 -R /home/pi/SIM7600X-4G-HAT-Demo

3、进入到bcm2835目录,编译安装BCM2835库:

  1. chmod +x configure && ./configure && sudo make && sudo make install

说明:如果编译出现问题,请参考FAQ的说明操作。
4、分别进到对应实例目录下,编译和运行程序,相关指令说明如下(以PhoneCall程序为例):

  1. sudo make clean //清除原来的执行文件
  2. sudo make //重新编译
  3. sudo ./PhoneCall //运行程序

上述命令组合使用:

  1. sudo make clean && sudo make && sudo ./PhoneCall

PHONECALL打电话例程

SMS短信收发例程

GPS定位例程

TCP网路通信例程

FTP下载和上传例程

Arduino例程

硬件连接

硬件连接到开发板UNO PLUS / Arduino UNO:

SIM7600X 4G HATUNO PLUS / Arduino UNO
5V5V
GNDGND
TXD0 (RX)
RXD1 (TX)
PWR2

安装Arduino库

下载解压示例程序,
把Waveshare_SIM7600X_Arduino_Library文件夹复制到Arduino IDE安装路径下的Library目录下
打开Arduino IDE --> File -->Examples -->Waveshare SIM7600X,然后选择运行对应的示例程序:

示例程序

PHONECALL打电话例程

SMS短信收发例程


GPS定位例程

TCP网路通信例程

FTP下载和上传例程

Jetson Nano例程

硬件连接

Jetson Nano板载RaspberryPi 40Pin GPIO接口,SIM7600X 4G HAT可直接接入使用,Jetson Nano的终端访问串口不影响与SIM7600X 4G HAT(即Pin10和Pin8)串口通信。

SIM7600X 4G HATJetson Nano
5V5V
GNDGND
TXD10 (Board编码)
RXD8 (Board编码)
PWR31(Board编码)

Jetson Nano minicom串口调试

1、将SIM7600X 4G HAT接入Jetson Nano中,按下PWRKER键三秒后开机
2、使用SERIAL登录Jetson Nano终端,安装minicom,在终端下输入:

  1. sudo apt-get install minicom

3、运行minicom进行串口调试,在终端下输入

  1. sudo minicom -D /dev/ttyTHS1 -b 115200

4、 发送AT指令测试,退出时按下PWRKEY按键三秒后开始关机,退出minicom先按Ctrl+A,再按X,最后按ENTER

Python例程

安装函数库后

  1. sudo apt-get python3-pip
  2. sudo pip3 install pyserial
  3. sudo apt-get install p7zip

使用wget工具下载源码到Jetson Nano指定文件夹,复制下面命令

  1. mkdir -p ~/Documents/SIM7600X_4G_HAT
  2. wget -P ~/Documents/SIM7600X_4G_HAT/ http://www.waveshare.net/w/upload/2/29/SIM7600X-4G-HAT-Demo.7z



进入刚创建并下载了源码的目录,使用p7zip工具解压到当前目录

  1. cd ~/Documents/SIM7600X_4G_HAT/
  2. sudo p7zip --uncompress SIM7600X-4G-HAT-Demo.7z

AT

SIM7600X_4G_HAT接入Jetson Nano,接入天线,例程使用了软件开机关机,无需按下按键进行开关机,退出时按下Ctrl+C后会进行软件关机。 进入Jetson Nano/AT目录,执行命令:

  1. cd ~/Documents/SIM7600X_4G_HAT/Jetson\ nano/AT/
  2. sudo python3 AT.py


GPS

SIM7600X_4G_HAT接入Jetson Nano,接入GNSS天线,例程使用了软件开机关机,无需按下按键进行开关机,退出时按下Ctrl+C后会进行软件关机。 进入Jetson Nano/GPS目录,执行命令:

  1. cd ~/Documents/SIM7600X_4G_HAT/Jetson\ nano/GPS/
  2. sudo python3 GPS.py


PhoneCall

SIM7600X_4G_HAT接入Jetson Nano,接入main天线,耳机,例程使用了软件开机关机,无需按下按键进行开关机,本例程使用移动卡自动拨打10086,退出时按下Ctrl+C后会进行软件关机。 进入Jetson Nano/PhoneCall目录,执行命令:

  1. cd ~/Documents/SIM7600X_4G_HAT/Jetson\ nano/PhoneCall/
  2. sudo python3 PhoneCall.py


SMS

SIM7600X_4G_HAT接入Jetson Nano,接入main天线,例程使用了软件开机关机,无需按下按键进行开关机。本例程发送信息www.waveshare.com给指定号码后,会自动软件关机。用户使用SMS例程时,须先使用vim等工具更改SMS.py文件中第10行的号码,将*替换成数字,保留 ' 符号,vim使用请点击此句参考
进入Jetson Nano/SMS目录,执行命令:

  1. cd ~/Documents/SIM7600X_4G_HAT/Jetson\ nano/SMS/
  2. sudo python3 SMS.py


TCP

SIM7600X_4G_HAT接入Jetson Nano,接入main天线,例程使用了软件开机关机,无需按下按键进行开关机。
进入Jetson Nano/TCP目录,执行命令:

  1. cd ~/Documents/SIM7600X_4G_HAT/Jetson\ nano/TCP/
  2. sudo python3 TCP.py