电源部分
串口部分
SIM卡部分
射频部分
音频部分
SMS部分
Call部分
TCP/UDP部分
WIFI
Cellular
GNSS
L206
L303
L306
L506
L620
L630
L651
L660
L710
T106
NB-IOT
L5xx-ASR-160x
L50x-ASR-1803
L50x-移芯-EC61xEC71x
Open Linux
Open CPU
Open CAT4 RTOS
ASR CAT1 大OPEN
移芯 CAT1 OPEN
智能核心板M1503
M1901
Smart module
如有其他问题请联系我们
1) 为了避免模块外围电路引起的额外耗流,测试模块耗流最准确的方法是单独给模块供电,即只接VBAT、GND、SIM卡、RF和PWRKEY,此时VBAT的耗流即为模块耗流。
2) 在EVB上测试模块耗流时,建议直接测试SUB板;
不建议采用此方式,因为二极管压降随电流变化而变化,可能会因模组供电电压不稳定而导致模组工作异常。
标准 USB接口最大供电电流是500mA,不能满足模块峰值电流的要求。如果客户一定要选择USB供电方式,可以按照以下步骤操作:
1) 通过AT+CGMSCLASS配置模块GPRS等级为8(该命令需要重启模块生效)。GPRS等级配置为8时,uplink slot只有1个。
2) 靠近模块VBAT端增加2个低ESR值的2200uF大电容。
3) 建议将VBAT电压调节在4.0V~4.3V之间,以增加电压跌落余量。
4) 在弱信号环境(比如CSQ值小于14)下测试,如果模块能够正常使用,则表示供电正常。
由于压差比较大,建议使用DCDC电路,特别是经常发送数据的应用,参考电路如下图:
+++退出透传模式后,可以通过ATO指令返回透传模式
[12:22:37.404]发→◇+++□
[12:22:38.428]收←◆
OK
[12:22:45.093]发→◇ato
□
[12:22:45.097]收←◆ato
>
测试问题没有答案呀1
456
Qca9377
原来三大运营商老的MNC只有00,01,02,03。
现在新的物联网卡,移动增加了07,08。联通增加了06,电信增加了05。
我们要在模块底层PLMN(MCC+MNC)配置表里增加这些新的MNC,才能识别物联网卡。
IMSI共有15位,其结构如下:MCC+MNC+MSIN ,(MNC+MSIN=NMSI)
MCC:Mobile Country Code,移动国家码,MCC的资源由国际电联(ITU)统一分配和管理,唯一识别移动用户所属的国家,共3位,中国为460;
MNC:Mobile Network Code,移动网络码,共2位,中国移动TD系统使用00,中国联通GSM系统使用01,中国移动GSM系统使用02,中国电信CDMA系统使用03,一个典型的IMSI号码为460030912121001
目前我们的产品中已经支持如下MCC+MNC:
CMCC: 460-00, 460-02,460-07,460-08,454-12,454-13
CU: 460-01,460-09,460-06
CT: 455-7,460-11,460-3
在升级工具Aboot中去掉第4个NVM的勾选,这样重新升级后不需要重新授权,进过一次授权后即可
可用AT+MFSLS=2查询是否需要重新授权,这两个文件在就不需要
AT+ESAM=2,指令选择声音通道
AT+CTTS=2,"播放内容"
AT+CTTSPARAM 用来设置音量,语速等
AT+CENG=3,AT+CENG?
[16:12:07.231]发→◇AT+CENG=3
[16:12:07.238]收←◆AT+CENG=3
OK
[16:12:11.456]发→◇AT+CENG?
[16:12:11.459]收←◆AT+CENG?
+CENG: 3,0
+CENG:0,460,0,1806,454c,28,60
+CENG:1,460,00,1806,452b,15,35
+CENG:2,460,00,1806,452a,14,31
+CENG:3,460,00,1877,dae,40,30
+CENG:4,460,00,1806,454d,27,29
+CENG:5,460,00,1877,8548,52,29
+CENG:6,460,00,1806,453c,32,23
OK
L218, L218E and L206MH modules support both the protocols SSL (UP TO TLS 1.2) and HTTPS functionality.
AT+CENG=3,AT+CENG?
[16:12:07.231]发→◇AT+CENG=3
[16:12:07.238]收←◆AT+CENG=3
OK
[16:12:11.456]发→◇AT+CENG?
[16:12:11.459]收←◆AT+CENG?
+CENG: 3,0
+CENG:0,460,0,1806,454c,28,60
+CENG:1,460,00,1806,452b,15,35
+CENG:2,460,00,1806,452a,14,31
+CENG:3,460,00,1877,dae,40,30
+CENG:4,460,00,1806,454d,27,29
+CENG:5,460,00,1877,8548,52,29
+CENG:6,460,00,1806,453c,32,23
OK
SIM卡座的TVS,Reset上TVS管这两组信号上可用的TVS型号:PESD5V0F1BL (厂家NXP),ESD7951ST5G (厂家ON);
VBAT上稳压管可推荐型号:PZ3D4V2H (厂家PRISEMI ),HDZMV4Z01 5.1B (厂家ROHM )
天线部分:
天线的ESD器件之前用的是0201封装,LRC的ESD如下:
LESD11LL5.0CT5G | ESD 0201 Cp=0.3pF 0.61*0.31*0.28mm R0 |
建议选用负载电容小于0.3PF物料;
以上物料,客户还可以根据硬件设计手册上对TVS的选型说明,自己选择。
AT+UARTCFG=0,4
0,1是串口2,0,4是USB(默认),0,0是at口,1,0是串口1,抓debug
过滤器需在default中选中2G的选项
1. 开机正常注网;
2. 发送数据;
3. AT+CFUN=0;
4. 等待返回OK后断电;
5. 再次上电,返回第1步;
AT$QCPDPP=1,2,"test4g","test4g@zhmb.vpdn.g
电信卡EVDO的时候设置账户密码的方法:
AT$QCPDPP=1,2,"test4g","test4g@zhmb.vpdn.g
ICCID:Integrate circuit card identity 集成电路卡识别码即SIM卡卡号,相当于手机号码的身份证。 ICCID为IC卡的唯一识别号码,共有20位数字组成,其编码格式为:XXXXXX 0MFSS YYGXX XXXX。分别介绍如下: 前六位运营商代码:中国移动的为:898600;898602 ,中国联通的为:898601、898609,中国电信898603,898606。
GPRS Timer 3 value (octet 3)
Bits 5 to 1 represent the binary coded timer value.
Bits 6 to 8 defines the timer value unit for the GPRS timer as follows:
Bits
8 7 6
0 0 0 value is incremented in multiples of 10 minutes
0 0 1 value is incremented in multiples of 1 hour
0 1 0 value is incremented in multiples of 10 hours
0 1 1 value is incremented in multiples of 2 seconds
1 0 0 value is incremented in multiples of 30 seconds
1 0 1 value is incremented in multiples of 1 minute
1 1 0 value is incremented in multiples of 320 hours
1 1 1 value indicates that the timer is deactivated .
例:
01000111,为什么代表70小时
value是7,单位是10小时,所以实际是70小时
模块型号 | L506/L206L | L506&N10B | L218 | N10/N10B | M1507 |
车厂信息 | 御捷330 | 奇瑞凯翼T-BOX | 一拖东方红LF504 | 宝骏汽车E100 | 零跑S01 |
宝骏是给各个分时租赁公司出产品,比如滴滴,神州等。
首汽也是做分时租赁,用北汽新能源的车。
通卡目前针对公交车。
飞驰镁物做江铃汽车前装。
at+mzone?
AT+FSINFO="Z:"
337408
OK
AT+CDNSGIP="baidu.com"
AT, ATE0, AT+CGATT?, AT+CPIN?, AT+EGPSC, AT+CSTT 1秒内
AT+GETGPS 30秒
AT+CIICR 85 秒
AT+CIPSTART, 90 秒
AT+CIPSEND, 85 秒
AT+CIPCLOSE 75 秒
AT+CIPSHUT 75 秒
time-nw.nist.gov 正常是连上之后会收到4个字节数据,然后自动断开
没有校准、IMEI会重叠、后续软件更新和还技术支持没有保证、供货没有保障、质量和追溯没有办法保障、没有办法长期供货(公司随时可能不做)
加入NITZ功能可实现
查看《CCED详解》
At+ddet=1,检测到数据格式为:
+DTMF:1
+DTMF:2
+DTMF:3
AT+ISLKVRSCAN;+CSQ;+CGATT?;+ESLP=0
发AT+CLIP=1开启
AT+CPWD="SC","旧PIN码","新PIN码"
OK
AT+CPIN?
+CPIN: SIM PIN
OK
AT+CPIN="4321"
+CPIN: READY
OK
AT+CLCK="SC",1,"PIN码"
OK
AT+ECPIN2?
+ECPIN2: SIM PUK2
AT+ECPIN2=12345678,2345 // 修改PIN2为“2345”
OK
AT+ECPIN2?
+ECPIN2: SIM PIN2
AT+ECPIN2=2345
OK
AT+ECPIN2?
+ECPIN2: READY
需要先把电话号码存在本地才可以查询,模块没有办法从SIM中读到电话号码
AT+CPBS="ON"
OK
AT+CPBW=1,"本机号码",129,"cell"
OK
AT+CNUM
+CNUM: "cell","本机号码",129,0,4
OK
默认不打开
由于我们的模块默认带睡眠功能,如果客户要控制模块睡眠唤醒,控制要控制该信号;如果不睡眠DTR建议接地;
两种情况可以判断
1、 一个是用NMEA0813 里面的GSV 如果有不同的卫星参与会有GPGSV,BDGSV这种
2、 另外可以用ST的GNS语句
一般判断gsv更通用
EPO的id是分三个字段,vendor id/ project id /device id.
这三个组成一个id,这样一个整体,一天不要超过10次。因为每一个device一天理论上只需要4次数据。
支持
$PMTK256,1*2E<CR><LF> 使能timing模式
$PMTK285,PPSType,PPSPulseWidth*CS<CR><LF> //输出条件及脉宽,可以设置3D定位再输出,因为定位前不准,只有上升沿
PPSType. Availability
"0", Disable
"1", After the first fix
"2", 3D fix only
"3", 2D/3D fix only
"4", Always
PPSPulseWidth. PPS Pulse Width (unit in ms).
$PMTK326,PPS_BY_USER,Local_ms,phase*CS<CR><LF> //延迟和相位设置
PPS_BY_USER
"1", PPS output by user.
"0", PPS automatic output.
Local_ms. Local receiver time tick. Range is from 0 to 4294967295 (232-1).
Phase. Time tick phase range is from 0 to 262143
$PMTK605*31
串口查询一定要加checksum
power gps工具则不需要,$PMTK605即可
默认下线门限值CN为15.
$PSTMSETPAR,1132,0*2A
$PSTMSETPAR,1105,0*2E
$PSTMSAVEPAR*58
追踪灵敏度ST标准为30s后,还能搜索到4颗卫星即可,非fix定位(软件设定,CN值小于15的卫星不参与定位(软件可调整));
重捕获灵敏度测试方法
-130--->-140--->-150--->-154 信号关闭5s重新打开后,能定位即可
="PMTK311,8" 设置最小仰角8度
="PMTK506,14" 设置最小SNR门限为14dB
="PMTK328,50" 设置精度门限为50米
$PSTMGETPAR,1500*27
$PSTMSETPAR,1201,80057*23
$PSTMGETPAR,1228,0*36
$PSTMSAVEPAR*58
$PMTK886,CmdType
CmdType:
'0' Normal mode: For general purpose
'1' Fitness mode: For running and walking purpose that the low-speed (< 5m/s) movement will have more effect on the position calculation.
'2' Aviation mode: For high-dynamic purpose that the large-acceleration movement will have more effect on the position calculation.
'3' Balloon mode: For high-altitude balloon purpose that the vertical movement will have more effect on the position calculation.
'4' Stationary mode: For stationary applications that zero dynamics is assumed.
New stationary mode (PMTK 886): Add $PMTK886,4*2C<CR><LF> :Enter stationary mode.
[Example]
$PMTK886,0*28<CR><LF> :Enter normal mode.
$PMTK886,1*29<CR><LF> :Enter fitness mode.
$PMTK886,2*2A<CR><LF> :Enter aviation mode.
$PMTK886,3*2B<CR><LF> :Enter balloon mode.
$PMTK886,4*2C<CR><LF> :Enter stationary mode.
[Note]
Each mode has its altitude limitation. Please base on below table to choose the appropriate mode. If your test scenario exceeds the limitation, the position calculation will be incorrect.
Mode Altitude Limitation
Normal mode 10000 m
Fitness mode 10000 m
Aviation mode 10000 m
Stationary mode 10000 m
Balloon mode 80000 m
$IRGSV,2,1,06,805,83,143,,807,59,144,,804,54,176,,803,46,239,*7E
$IRGSV,2,2,06,809,30,291,,802,06,231,,,,,,,,,*77
此语句表示收到六颗印度卫星
卫星编号:802、803、804、805、807、809
印度有用卫星编号为801-807
TDMonitor2.2.7
GPS模块自带LNA(anton低噪声放大器),在客户使用的时候不需要再外加LNA器件。
命令: $PMTK314,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1*34 全开
$PMTK314,0,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0*35 只开启RMC,GGA,GSA三个
坐标转换(WGS、GCJ02、BD09):https://tool.lu/coordinate/
高德坐标抓取:https://lbs.amap.com/console/show/picker
百度坐标抓取:http://api.map.baidu.com/lbsapi/getpoint/index.html
MT3333和AG3331平台可以做RTK, 模组提供raw data,数据解析需要客户根据根据Ntrip协议对接第三方平台.
RTK: 精度厘米级
Real - time kinematic
载波相位差分技术
RTD目前只有N23D支持
RTD: 精度亚米级
Real Time Differential
实时动态码相位差分技术
正在开发的N25BD支持惯导
N10X,中科微 AT6558R ,ROM,不能做到上电glonass only,需要配置
L509REN内置GNSS,和芯星通 UC6228,ROM(后续计划改为ASR5311,这个可以定制),不能做到上电glonass only,需要配置
N10B,MTK MT3333,Flash,可以定制固件
N10F,Airoha AG3352,Flash,可以定制固件
N26,Airoha AG3335,Flash,可以定制固件
保存
最大测量高度(海拔): Normal mode 18000m, Balloon mode 80000m
最大速度: 515 m/s
最大加速度: 4G
GPS+BD: PMTK353,1,0,0,0,1*2B
GPS only: PMTK353,1,0,0,0,0*2A
BD only: PMTK353,0,0,0,0,1*2A
GPS+GLO:PMTK353,1,1,0,0,0*2B
GPS+GLONASS+GALILEO: PMTK353,1,1,0,1,0*2C
需要开机初始化
建议下载GPS Test plus
使用NMEA2KMZ305转成kml文件,就可以用google直接打开
PMTK223( PMTK_SET_AL_DEE_CFG )是PMTK225(PMTK_SET_PERIODIC_MODE)命令的补充。因为periodic的run time是一段比较短的时间(3S),当收到一颗新的卫星信号时会延长这时的run time(即extension的概念),直到这颗卫星的星历解调出来或者到达设定的时间界限值(即Extension threshold)。
SV 增加的卫星数,即增加几颗卫星开始做扩展
SNR 信号筛选值,即新接受的卫星的信号大于这个值才算是增加了一颗卫星
Extension threshold 见上面描述,时间扩展的界限
Extension gap 每次时间扩展之间的时间间隔
Auto interference cancel,默认不打开,打开后会增加2mA电流
《MT3339_Feature_List_Customer_v0.4_SIM各模式验证简介.pdf》
$PMTK301,2*2E 设置SBAS源
$PMTK001,301,2*33 设置应答
$PMTK401*37 查询SBAS源
$PMTK501,0*2A 返回SBAS状态
$PMTK313,1*2E 使能SBAS
$PMTK001,313,1*33 设置应答
$PMTK413*34 查询SBAS状态
$PMTK001,413,1*34 返回SBAS使能状态
$PMTK103*30 cold start 冷启动
Always Locat下运行/睡眠时间不可控;建议使用Periodic power saving mode,N10B在Periodic模式下测试运行5s 睡眠10s耗流:9mA/10min;
另外 N10只支持客户去拉PMTK161,1/0 进sleep/stop模式,再通过任意字符唤醒方式实现低功耗;
PMTK161,1功耗:4.6mA; PMTK161,0功耗:0.384mA;
Open sky下定位精度:
Without Aid: 3.0m 2D-RMS DGPS:2.5m
velocity accuracy:
without aid: 0.1m/s
DGPS: 0.05m/s
Acceleration Accuracy:
Without aid: 0.1m/s2
DGPS: 0.05m/s2
Active Interference Cancel,用于使能抗干扰功能
PMTK314,1,1,1,1,1,1,1,1,1,0,0,1,0,0,0,0,0,0,0,0,1
打开后会有GBS输出
CEP / RMS:
CEP(圆概率误差):50%的定位点落在以真实位置为圆心的圆内(半径单位为米)。
RMS(均方根误差):所有定位点与真实位置距离的均方根值(单位:米)。
示例:若RMS为1.5m,表示68%的定位点误差在1.5米内。
标准版本不支持,只有下载特殊版本才可以测试,方法如下:
pmtk306,设置最小cnr、pmtk311,设置仰角
$PMTK001,661,3,ffffffff*49<CR><LF>
其中 "ffffffff" 表示历书传完,若为其他值,表示没传完;
$PMTK660,1800*17<CR><LF>
返回
$PMTK001,660,3,ffffffff*17<CR><LF>
其中: 1800s :为查询时间间隔
ffffffff: 对应有效星历卫星号;
通过二维码扫描:
N10和N10B:V5是3.3V, V4是2.8V
N20和N20B, V2是3.3V,V1是2.8V
软件版本PMTK605
20150108_AXN2.3_C39
如:+CENG: 4,1<CR><LF>
<CR><LF>
+CENG: 0,"0687,30,00,404,86,18,a746,05,00,7d0d,255,-80,97,97,x,x,x,x,x,x,x"<CR><LF>
+CENG: 1,"0724,32,09,0bb9,404,86,7d0d,105,105"<CR><LF>
+CENG: 2,"0691,28,57,201f,404,86,7d0d,92,92"<CR><LF>
+CENG: 3,"0684,21,46,a73b,404,86,7d0d,64,64"<CR><LF>
+CENG: 4,"0689,19,12,a73c,404,86,7d0d,53,53"<CR><LF>
+CENG: 5,"0688,18,37,201e,404,86,7d0d,49,49"<CR><LF>
+CENG: 6,"0725,17,31,0bbb,404,86,7d0d,46,46"<CR><LF>
目前版本只能显示当前小区的信号强度,邻小区的可通过RXLEV进行转换
RXLEV 0 < - 110dBm
RXLEV 1 = - 110~ - 109dBm
RXLEV 2 = - 109~ - 108dBm
… …
RXLEV 62 = - 49 ~ - 48dBm
RXLEV 63 > - 48dBm
电阻屏
摄像头一般有PCLK和MCLK两个CLK,一个是pixel 一个是主时钟
系统一共有16 CHANNEL DMA,基本相关的功能模块都有相应的DMA(uart, i2c, sd, lcd...)
SPI摄像头支持 VGA@15FPS。
800mA,是否支持1600mA?
带屏幕显示的目前rom大概剩余1MB,RAM为1.5-2MB。(ram根据rom使用情况会有变动)
不带屏幕的rom大概剩余1.5,ram大概2MB(不带屏幕的版本也不带camera功能。因此如果要使用camera,则必须使用带屏幕的代码版本。)
平台SSL目前只支持到1.0,建议是关掉平台ssl,自行移植(平台ssl占用空间大,版本老,不建议使用)
xml解析支持,json解析不支持。需要自行移植
目前版本不支持,需要自行移植
如果关掉平台ssl,那么不支持。如果打开平台ssl,支持https。但是如1所说,只支持到TLS1.0
比亚迪BF20A2 ,思比科SP0A38
自适应波特率版本建议开机后均发一条AT+IPR固定波特率
AT+MQTTSETHEX=1
可以做到ms以下的延时。 我们指导文档说明可提供10ms级别的定时,但是实际上,可以做到ms以下的延时,但是最好不要滥用,因为这是内核底层级别的kal(kerneladpatlayer),该定时器API为:ol_Timer_Start_ext,这个定时器可以做到1个tick 0.4ms,建议tick设置最小2个, reschedule time设置为0(不重复),需要的时候用一次就好。
Yes, all the GSM Modules can be setup to wakeup on SMS/CALL, via using RING pin, this pin will generate a signal (Interrupt on attached MCU) and this can be captured to signal DTR pin for wakeup.
硬件设计手册文档里的电路图有问题,需将MCU 接收端的上拉电阻从4.7k的更换为47k;(如果按照手册的4.7K来设计,模块TXD1低电平时,由于分压问题, TXD1的低电平值会达到1.2V左右,极限情况会导致低电平电压过高,导致数据出错);
顺带提一下:
TXD1内部分压电阻是1K左右;
AT+UARTCFG=0,1开启
串口三极管电平转换使用S8050可能存在响应不够的问题;建议使用3904三极管(与模块无关,是三极管特性问题;所以,用其他模块时,客户使用三极管电平转换也需要注意下)
L206v01.02b35.00版本不支持IPV6功能;
客户过认证请使用附件中的L206v01.04b01_IPV6demo3版本。
以下为我司在北京泰尔实验室过认证的IPV6流程:
可使用如下命令进行送测
新建APN
•AT+EGDCONT=0,"IPV4V6","anritsu1.com"
激活PDP
•AT+ETCPIP=1,0
使用AT命令Ping IPV4\ IPV6的网址\域名
•IPV4网址:AT+PING=www.aipv4.com -n 4
•IPV4域名:AT+PING=192.168.1.11 -n 4
•IPV6网址:AT+PING=www.aipv6.com -d 1 -6 -n 4
•IPV6域名:AT+PING=2001:0:0:1::3 -d 1 -6 -n 4
上位机清卡动作,指导说明
清除SIM RPLMN EF_LOCI:
AT+CRSM=214,28542,0,0,11,"FFFFFFFFFFFFFFFFFFFFFF"
清除SIM RPLMN EF_PSLOCI:
AT+CRSM=214,28531,0,0,14,"FFFFFFFFFFFFFFFFFFFFFFFFFFFF"
清除SIM EF_EPSLOCI:
AT+CRSM=214,28643,0,0,18,"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
清除SIM卡的RPLMN信息:
AT+CRSM=214,20225,0,0,20,"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF","7FFF5FC0"
清除SIM卡FPLMN信息:
使用AT+CRSM=214,28539,0,0,12,"FFFFFFFFFFFFFFFFFFFFFFFF"
客户使用MCU:M0564 5V供电,MCU无法收到数据(波形成锯齿波),将MCU上拉电阻4.7K改为47K通讯正常(波形正常)
1.2W
VRTC单独使用是不准的。 要使用RTC必须要保证模块的供电不断才行。 这个在我们的2G系列文档里都有说明。
可用AT+CLVL设置音量等级。设置前级音量可用AT+VGR来控制。范围为(0-255),0最小,255最大。
L206 支持两路语音。 AT+ESAM=0 handset | AT+ESAM=1 earphone(仅支持耳机右声道) |
AT+CGMR
Revision: L206Cv01.01b04
OK
+CFUN: 1
AT+CNETSCAN
Operator:"CHINA MOBILE",MCC:460,MNC:00,Rxlev:50,Cellid:873,Arfcn:6
Operator:"CHINA MOBILE",MCC:460,MNC:00,Rxlev:41,Cellid:872,Arfcn:9
Operator:"CHINA MOBILE",MCC:460,MNC:00,Rxlev:38,Cellid:2142,Arfcn:573
Operator:"CHINA MOBILE",MCC:460,MNC:00,Rxlev:42,Cellid:2132,Arfcn:28
Operator:"CHINA MOBILE",MCC:460,MNC:00,Rxlev:32,Cellid:2153,Arfcn:578
Operator:"CHINA MOBILE",MCC:460,MNC:00,Rxlev:18,Cellid:13,Arfcn:22
Operator:"CHINA MOBILE",MCC:460,MNC:00,Rxlev:24,Cellid:2031,Arfcn:26
Operator:"CHINA MOBILE",MCC:460,MNC:00,Rxlev:19,Cellid:2143,Arfcn:582
Operator:"CHINA MOBILE",MCC:460,MNC:00,Rxlev:27,Cellid:2133,Arfcn:14
Operator:"CHINA MOBILE",MCC:460,MNC:00,Rxlev:22,Cellid:2111,Arfcn:574
Operator:"CHN-UNICOM",MCC:460,MNC:01,Rxlev:17,Cellid:68C6,Arfcn:665
OK
At+casp
底层TCP协议有要求,1s,3s,6s...逐步增加,1分钟后间隔保持不变,不断重发。
BLUETOOTH VERSION = BT VER 30
BT HF PROFILE
BT DIALER SUPPORT
BT HFG PROFILE
BT OPP PROFILE
BT SPP PROFILE
AT+FSINFO="Z:"
337408
OK
AT+EGMR=1,7,“IMEI”
可以提供ROM 1.2M, RAM 1.2M的空间
961200
生产工具可以提供源码。 新国都的方式比较复杂,原始版本我们烧录,他们的软件在他们主板上通过SEM芯片进行烧录。
260MHz,不能超频
这部分我们提供SPI接口,由客户来确认数据是否OK
研发来进行培训,会提供客户开发需要用的相关接口文档说明。(类似OPEN CPU文档)
发送 at+cpos=1,2,“00101”手工强制注册到仪器网络,然后发送AT+CSQ 测试信号强度,通过设置门限筛选优良。
测试完成之后,必须发送 at+cpos=0 并且接收到OK[ 自动搜索网络]。
可以使用action=99的方式实现。
以下是示例AT流程
AT+HTTPPARA=URL,"xxxxxxxxxxxxxxxxx"
OK
at+httppara=port,xxxx
OK
at+httpsetup
OK
at+httpaction=99,POST?/terminalreport/scan_device?HTTP/1.1\r\nHost:?t:?report.pay.weixin.qq.com\r\n\r\nDevice-KeyID:?XDL\r\nDevice-TimeStamp:?1539764561\r\nDevice-Sign:?963E2957AAF3DB2E4A36F05C9AF3AEDFBDB9B05E3B1B9840D81CF8A216C069D1\r\nContent-Length:?172\r\n\r\nQCL8+IRX8DpJ2H0fOUseGb7zQ3kFMcxJaiRwX+ZL99yXOfh+9DzhFx20WsrwYopiVpmMSUbmdEIRLIkgMIbLmcivbDn1kiTYfVMRddH/iMj2844LGioVAQofoh1BDovKM4tpWL0tvB60z5m2fHdumCkiO9OMn0nOwWnBP0POZhM=
OK
以上所有组包都需要由客户自己实现,包括签名算法以及http的整个组包处理
303替换709需要注意一下PIN14脚, 对于我们的模块这个脚需要拉低才能进行AT通信。
at+assm,at+clvl
Windows:
Diagnostics为debug口,control为AT口,Modem为拨号上网口
Linux:
USB0是debug口,USB1是Modem拨号上网口,USB2是AT口
不提供源代码,只提供RIL库文件.目前版本支持安卓4.0 ,4.4, 5.1。
安卓向下兼容,此处推荐选用4.4. RIL文件保存在01 FAE_SYS\04 Product\Cellular\3G\L303\05 Drivers and Tools\android RIL。
表示1,已经断开
at+egmr=1,7,"866873020641836"
at+egmr=0,7是查询
参考《L306串口和GPIO口的电平状态对开关机的影响验证_170906-1.xlsx》
1、L306的所有串口和GPIO口都必须在模块上电前保持Floating状态,并保存到上电1S后。6280存在这个硬件缺陷,需要客户特别确认;
----这点非常重要,已经更新在硬件设计手册中(最新电路参考设计中也已经加入注明),但是担心客户没有看到,请在客户设计时提醒;
2、不支持的主要功能:
串口PPP拨号;
自适应波特率;
DTMF解码;
MQTT;
FOTA(开发中)
3、主要的BUG:
进入睡眠后心跳包不起作用;(开发中)
USB发送模式下超过512字节会丢失部分字节;(解决中)
SSL证书不能安装;
睡眠只能外部唤醒,不能指令唤醒;
PCM语音效果有些失真;
共享文档中《L306升级说明文档》中
应改为:发送AT+ESWM=0
L306不支持修改波特率,默认是115200,需要修改波特率要定制版本才可以
客户可设置+CNMI=2, 1, 2, 1, 0,然后根据+CMTI: "SM", 12此URC,使用CMGR=12获得短信内容,这样操作不会出现内容缺失。
1、设置ERAT=0,1(2G only)下,
①CIPTKA=1,120,30,5(2mins),此设置下,平均电流为7.8ma左右,
②CIPTKA=1,300,30,5(5mins),此设置下,平均电流为4.7ma左右,
2、设置ERAT=1,2(3G only)下,
1) CIPTKA=1,120,30,5(2mins),此设置下,平均电流为13.4ma左右,
2) CIPTKA=1,300,30,5(5mins),此设置下,平均电流为7.2ma左右
在EVB上将PWK11拨向测试点方向,PWK7拨向VBAT开关方向。模块开机后发送AT+PCMCTRL=1打开PCM功能,如果在发送该指令前设置音量需要重新关闭PCM后再打开。不然会出现没声音的情况。
ECELCK锁小区功能不支持(能响应指令,但是不生效,at指令集里面有相关文档 测试版本L306E_SPINv01.02b01_115200)
the L306E can support SSL 3.0/TLS 1.0 version
红字部分是功耗(单位毫安),软件版本L506XLv03.04b06.00,裸板情况:
按研发回复,L506X的dump抓取指令是AT+MEFSBACKUP=1
(即:AT+DUMPSWITCH=1指令对L506X不适用,需要用 AT+MEFSBACKUP=1)。
L506不支持NV区擦除,如果需要使用这一项会使校准数据丢失,已经备份过的参数还原后,也会影响模块性能,所以L506升级文档的这一项操作是错误的。
例:SUB和PUB的主题要完全一样,在PUB时才能够得到消息的回复,如果不知道完整的主题,可以用#代替剩余部分。这样会将所有属于这个主题的消息都下发。
AT+IMQTTPUB="/b03b99VXEV1/5adefe7da3ab15e49cac1087/#",1,"{"connect":"true"}"
升级时文件路径中不能出现中文,同时文件路径也不能太长,否则会造成QPST闪退的问题,一般推荐将软件放置在主目录的下一个子目录中。
支持,发送 at+cpof 指令即可关机
at+cpof
OK
设备接入自动添加虚拟网卡USB0 这时候如果打开AT口使能RNDIS上网功能
但是USB0 被占用了, 此时只能用UART 打开。目前CFLD 还不支持,后续研发会增加此功能 ,XCF 可以支持
1.PIN15 VREG_L11_1P8_M2是否模组上电就有?用于强制下载点上拉的1.8V,可以吗?
--可以做进强制下载的上拉电平。
2.PIN85、PIN87 为BOOT_CFG0/1,规格书显示不用可以悬空,这是配置什么的?
--是系统启动配置,悬空就好。
3.不带WIFI版本,控制外置GPS LNA上电,是否可用PIN45 GPIO_0?
--模块PIN45是GPIO,可以使用。
4.PIN11 USB_VBUS是否可用模组供电4.1V代替5V?板级目前没有5V的电,规格书显示USB_VBUS 引脚工作电压2-5.25V。
--4.1V可以使用。注:一般按照典型值设计就好。
1:确保开发板上喇叭焊接 ,喇叭焊接位置SPK1(喇叭规格8欧,1-2W都可以)
也要确认506型号能否支持TTS 功能。
2:首先要确保电话能打出去,(确保网络正常)
#打电话
ATD18980000001;(ATD后面跟电话号码,主要末尾分号)
#接电话
ATA
挂电话:
ATH
3: 如果电话都是正常 可以按照文档调试
AT+MLABTEST=1;开启实验室测试功能, AT+MLABTEST=0;关闭实验室测试功能。
PID 04 不含B5 05才含B5
L506E 可修改USB ID显示Android为L506
通过root@rtk_test:/sys/devices/platform/101c0000.ehci/usb1/1-1# cat manufacturer
Android
查询
506C/CF的MBN是针对国内的运营商做的配置,海外使用L506E的配置。 如果L506C/CF需要出到海外,需要对MBN进行更新;用PDC tool手动导入印度airtel、reliance 和row mbn,同时保留国内三大运营商的MBN,原来的版本有row mbn,需要deactive,remove删除row,再导入新的row mbn。
该种情况是模块进入了工厂模式,需要重新导入原始的mbn文件,efs.mbn
使用adb操作:
adb reboot bootloader
fastboot erase efs2
fastboot flash efs2 efs.mbn
fastboot reboot
导入后模块注网正常,但是如果要测试RF性能需要重新校准。
at+cpsi?
+CPSI: LTE,Online,460-00,0x8109,136335367,305,EUTRAN-BAND40,38950,5,5,-46,-870,-633,24,223
OK
L506可以支持SD3.0。 也有SDIO WIFI接口。同时 USB2.0也支持。
ril版本:LYNQ_Android_5.1_RIL_V02.04 版本打开了模块日志功能,会不停的在客户内存里写 日期_时间_logcat.txt和日期_时间_radio.txt 日志,导致客户内存被写满,需要更新ril才能解决
先试用AT+CNMP设置模块制式,然后通过AT+CCLK?获取时间
安卓RIL平台 | 调试环境 |
4.4 | 三星4418,32bit |
5.1 | 三星4418,32bit |
7.1 | RK3399,64bit |
8.1 | RK3399,64bit |
L506v03.03b06.00版本以后有天线调试的MBN,LD的是:L506v03.02b15LD.00及之后的版本,X的目前还没有
L506LD的带fota功能的版本为:L506v03.03b01LD.00 及以后的版本。
在此之前的L506LD的版本, 不带FOTA功能
由于系统裁剪,L506X不支持usb轮询,vbus必须接
L506则可以不接vbus
X跟CF系统软件不一样,CF上VBUS不需要加电源,X上必须加电源,如果设计中没有5V的电源下,怎么处理?
VBUS的理论计算值为3.51V,理论上VBUS加3.51V,USB就会起作用。当然,实际值肯定要超理论值才行
实际在L506Xminipcie设计中,VBUS是连接到3.8V上的。而用L506CF时将0R电阻去掉,因为VBUS上加电源时系统是无法睡眠的
解决办法
1、存在兼容性问题的4G单模和4G多模高通芯片,可通过修改NV配置参数解决:
第一步:查询NV值:at+qnvfr="/nv/item_files/modem/mmode/operator_name",查询结果是01。
第二步:将NV值改为00:at+qnvfw=“/nv/item_files/modem/mmode/operator_name”,00 ,数据业务正常
第三步:将NV值为00的模块重新插入2G/3G/4G卡,数据业务正常
将NV值改为00,模块既支持单4G卡,也支持2G/3G/4G卡。
2、NV参数的说明:operator_name
(1)OPERATOR_NULL=0 //无运营商特殊设计,即选网时采用默认设计
目前电信单纯4G网络的卡有两种。一种单4G老卡,与234G卡一样通配,差别没有开23G功能,库存卡体。一种单4G新卡,大概时间2019年11月前出产的高通芯片的设备无法兼容单4G新卡,高通以外及新生产的高通可以兼容。
ECM:05C6 900B
AT+MNETSTART=1 //0 Disable ECM dial 1 Enable ECM dial
AT+MNETCALL=1 //1 Enable ECM function 2 Enable RNDIS function(L506X not support)
固件版本:L506Xv06.01b04GPS_V7.00
固件默认关闭GNSS供电,如果使用有源天线需发指令开启供电
开启GNSS供电:AT+MPMGPIO=4,1
关闭GNSS供电:AT+MPMGPIO=4,0
L501C 01B31版本及之前的版本均不支持,平台bug,之后的版本待解决
L506系列2020.6.24之前的版本均不支持;平台bug,6,28修复并且URC字段兼容3GPP标准,更新了版本
at$qcpbmpref=1 配置电话本存储位置
OK
at+cnum 查询本机号码
+CNUM: ,"+8615612345678",145
此功能仅针对SIM卡已经预置了本机号码的情况,如果SIM卡没有预置本机号码,则需要先写入本机号码再查询
通过更新固件解决;
问题固件版本:L506SCv02.01b01M.00
更新固件后解决,固件版本:L506SCv02.01b02M.00
相关驱动可联系PM;
通过更新固件解决;
修正后的起始固件版本:L506Xv04.01b03GPS.00
问题原因:AT+CNMP=2时,使用电信4G卡入网时,根据研发描述存在双网并存的问题(CDMA和LTE),会导致AGPS数据输出问题;
AT+ESIMS=1才可以开启SIM卡热插拔检测的功能;
拔出卡提示:+IND:SIM REMOVED
插入卡提示:+IND:SIM INSERTED
注:
开启热插拔检测后,重新插入卡,在不重启的情况下,可自动恢复联网;
1:AT+MLOGK=5;
2:AT$DUMPSWITCH=1;
3:ATI;
4:qxdm工具打开默认log;
这是windows cmd 不支持linux shell的颜色解析,需要用putty工具进adb
ADB有出来,但是用不了
adb kill-server
adb start-server
AT^MEID查询指令
AT+WMEID=“…”,1读取指令
AT+ESIMS=1
[13:29:00.275]发→◇AT$QCMGF=1
[13:29:00.280]收←◆
OK
[13:29:15.683]发→◇AT$QCMGS="15121011853"
[13:29:15.690]收←◆
>
[13:29:24.774]收←◆
$QCMGS: 7
OK
移动和联通的短信的方式和2G是一样的,电信的短信是2G形式下,需要用CF的板子,指令也是单独的.
AT+MLABTEST=1,Commercial-CT
OK
AT+GETMBNLIST
OK
+MBNLIST: 9X07_LA_SS ,HW_MBN,sub0 state 1 ,sub1 state 0 ,version 0x05023011
+MBNLIST: Volte_OpenMkt-Commercial-CMCC ,SW_MBN,sub0 state 0 ,sub1 state 0 ,version 0x05022068
+MBNLIST: OpenMkt-Commercial-CT ,SW_MBN,sub0 state 0 ,sub1 state 0 ,version 0x05021301
+MBNLIST: OpenMkt-Commercial-CU ,SW_MBN,sub0 state 1 ,sub1 state 1 ,version 0x05031501
打开QXDM,连接EVB,选择菜单【View】à【Common】à【Status(Dynamic)】
会出现下图对话框,选择【 Call Manager state Information】 就可以查看模组的驻网,搜网,服务等状态。
PID : 9001 , VID : 05C6
发送AT+CNMP这个指令查询一下返回值,如果返回38(LTE only)了,要设为2(auto)或其他支持GSM的mode才行,没有VoLTE功能的话不能4G拨号。
L506/L506LD/L506XL/L506SC/T100 | ||
Interface Number | Function | Description |
/dev/ttyUSB0 | Diag | Diagnostic interface |
/dev/ttyUSB1 | adb | Android debug bridge port |
/dev/ttyUSB2 | AT | Modem Port interface |
/dev/ttyUSB3 | AT | NEMA Port interface |
4 | WWAN/Gobinet | Wwan interface/Gobinet interface* |
L506XCF/XGCF | ||
Interface Number | Function | Description |
/dev/ttyUSB0 | Diag | Diagnostic interface |
/dev/ttyUSB1 | AT | NEMA Port interface |
/dev/ttyUSB2 | AT | Modem Port interface |
3 | WWAN/Gobinet | Wwan interface/Gobinet interface* |
AT+CNMP= 2 //自动
AT+CNMP=59 //59 – TDS-CDMA Only
AT+CNMP=13 //13 – GSM Only
AT+CNMP=38 //38 – LTE Only
AT+CNMP=60 //60 – GSM+TDSCDMA Only
输入用户名: root, 密码是:oelinux123
进去后。 输入:cat /proc/kmsg
此时L506已进入烧录模式,请联系MT相关人员;
CPU : Cortex-A7 1.2GHz,ARMv7
ROM: Total: 512M
Code Space: 11.6M bytes for App image bin(File)
Data Space: 200.3M Bytes
RAM: Total: 256M
Kernel code:7311K
Rwdata:902K
Rodata:3048K
Init: 332K
Bss: 767K
Free: 60M bytes
Operating System: Linux kernel 3.18.20s
关键器件:
L506LD:
PMIC: PMD-9607-0-94WLNSP-TR-04-1
主芯片: MDM9207-0
射频芯片:WTR2965
RF PA:SKY77643-21
MMPA: SKY77916-21
L506CFLD
PMIC: PMD-9607-0-94WLNSP-TR-04-1
主芯片: MDM9607
射频芯片:WTR2965
RF PA:SKY77643-21
MMPA: SKY77916-21
PIN38、PIN39
AT+WIMEI1="123451234512345",1 //写IMEI的
AT+WMEID="12345123451234",1 //写MEID
CMD_AT_RIMEI="AT+RIMEI1"
CMD_AT_RMEID="AT+RMEID"
CMD_AT_RSN="AT+RSN"
CMD_AT_RWIFI="AT+RWIFI"
CMD_AT_RBT="AT+RBT"
CMD_AT_WIMEI="AT+WIMEI1"
CMD_AT_WMEID="AT+WMEID"
CMD_AT_WSN="AT+WSN"
CMD_AT_WWIFI="AT+WWIFI"
CMD_AT_WBT="AT+WBT"
CMD_AT_AT_WKPRD="AT+WKPRD"
IMEI:
AT+WIMEI1="866908030000068"
AT+WIMEI1="866908030000068",1(如果已有MIEI号,后面加参数1)
MEID:
AT+WMEID="12345ABCD12345"
AT+WMEID="12345ABCD12345",1
SN:
AT+WSN="P4H60704020082"
AT+WSN="P4H60704020082",1
只在移动卡的时候,需要使用AT$MPROFILE=3设置一下,添加在AT+CGACT=1,4 后面就可以了,麻烦修改下
8814,晶振Crystal Oscilator VCC TYP 1.8V Cp 15pF 12 MHz(-40~85℃) ±30ppm,
推荐使用KDS OSC DSO321SR 12.000MHZ 1.8V 3225
详见506的参考电路
1、模块上电到接收到Call Ready的最大时间
30s
2、一下各命令最大返回时间
at+cipmode=0 //50ms
at+cipclose=1 //5s
at+netclose //50ms
At+cmgf=0 //50ms
At+cmgs=Length //1s
短信内容发送后返回信息时间
at+netopen //默认120s
AT+CIPopen=1,"tcp","180.168.95.26",8020,0 //默认120s
AT+CIPSEND=1,300 //默认120s
以上3个指令可以通过AT+CIPTIMEOUT指令修改timeout时间
memdump,开机后使用AT$DUMPSWITCH=1打开 如下路径中生成: C:\ProgramData\Qualcomm\QPST\Sahara
QXDM log: qxdm 工具抓。
内核log:adb shell 下去抓
cat /proc/kmsg > /data/log.txt
adb pull /data/log.txt d:\
Code of <err> Description
201 Unknown error for FTP
202 FTP task is busy
203 Failed to resolve server address
204 FTP timeout
205 Failed to read file
206 Failed to write file
207 Not allowed in current state
208 Failed to login
209 Failed to logout
210 Failed to transfer data
211 FTP command rejected by server
212 Memory error
213 Invalid parameter
214 Network error
215 Failed to connect socket
216 Failed to send data using socket
217 Failed to receive data using socket
218 Failed to verify user name and password
219 Socket connect timeout
220 File does not exist
Diagnostic-USB00,Modem-USB02,AT/NMEA-USB03
USB_VBUS脚需添加47K下拉电阻到地
高电平为正常模式,低电平进入飞行模式;
PIN84 COEX2是USB下载时的使能管脚,开机的时候要上拉进入升级模式,建议留作测试点
这个是针对以前V2的硬件的主板的。 由于硬件设计问题, V2主板必须要使用带P的版本, 否则会出现4网络异常并且死机问题。 对于带P的版本V2/V3硬件都可以使用,不好的地方就是4G网络连接时会造成有20mA左右的格外电流消耗。
62/63给RF,38/39给基带
从按开机键到能注上4G网络在20秒左右。
GPRS/EDGE: 450 mA
TD: 350 mA
W: 660 mA
TDD: 480 mA
FDD: 680 mA
需要配置一下APN, AT+CGDCONT=2,"IP","CMNET"
固件默认配置双APN通道,因此需要发指令配置一下。
上述为完整流程
lb@redheaven:~$ ls -l /sys/class/tty/ttyUSB*
lrwxrwxrwx 1 root root 0 一月 18 08:51 /sys/class/tty/ttyUSB0 -> ../../devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.3/2-1.3:1.0/ttyUSB0/tty/ttyUSB0
2-1.3 -> ttyUSB0
要固定顺序需要客户在他们的Linux系统中处理。可以通过端口号来选择相应节点,可以参考下面文章:https://blog.csdn.net/kangear/article/details/46302741
0,1是diag口
2,3对应的modem 和nmea口
4是wwan 口
modem口和nmea口可以用来发送AT命令
diag口用来抓qxdm log
wwan口用来上网的
输入用户名: root, 密码是:oelinux123
进去后。 输入:cat /proc/kmsg
1,开机后使用AT$DUMPSWITCH=1打开。
memdump在如下路径中生成:C:\ProgramData\Qualcomm\QPST\Sahara
2,提供重启前和重启后的内核log
1):可以通过串口工具连接UART2口抓取;
2):或者用以下方法(Windows下的adb):
cat /proc/kmsg > /data/log.txt
adb pull /data/log.txt d:\
1:在CSCLK=0模式下,在此模式下模块进入休眠模。前模块不支持硬件唤醒、
2:在CSCLK=0模式下 在此模式下模块进入休眠,AT+MWAKEUPCFG=7,200
模块接受,数据 ,短信 ,电话铃声 三种方式唤醒.
数据和电话铃声唤醒后,WAKEUP_OUT 脚马上就有波形输出,此时如果外部MCU马上发送AT指令AT令
马上就会有作用。但是在短信唤醒的方式下,WAKEUP_OUT 脚也会有波形输出,但是如果此时外面MCU
发送AT 指令,有时候AT指令会没有作用,在模块唤醒后如果模块判断出网络是空闲的状态子1S之内模块
还好在此进入休眠。如果网络不是在空闲状态一般会在5S左右进入休眠
但是如果把短息AT+CNMI=2,1方式,模块唤醒后立即发送AT 指令模块就会响应。
最后总结:也就是用短信如果唤醒模块,那么在程序初始化的时候必须要对短信功能进行相应的初始化。
GPS的at+cgpsnmeatype=0,0这个指令需要在开启GPS前设置才有效
版本L506v03.02b14.00 增加了NMEA port only at+cgpsnmeatype=3,0,
AT+CGPSINFO, 在当前的查询口输出,如在AT口查询,直接将当前位置信息单次在AT口输出
AT(+)($)GETMBNLIST
需要抓取memdump,方法如下:
1. 每次开机之后AT+DUMPSWITCH=1 打开memdump功能
2. 复现问题
3. 如果是重启在 C:\ProgramData\Qualcomm\QPST\Sahara\ 目录下对应的COM口会生产memdump文件,把该文件夹打包发给研发分析
模块应用在电磁环境比较复杂的情况下需要外接LAN和SAW,例如主板同时包括GSM、WLAN、UMTS、Bluetooth这些设备或其它特殊环境。
建议使用PIN52
L506 CF、C是4Gbits+2Gbits,CFLD、CLD是2Gbits+1Gbits,XCF是1Gbits+1Gbits
语音芯片上差分电阻接反及外围电路器件焊接导致
客户主板 PCI-e中46脚通过NPN三极管接了主板单片机的复位引脚,而龙尚模块此引脚默认输出低电平0V,L506默认输出高电平1.8V,导致(手册中规定此引脚为NC)。
可以。当L506以CSCLK=0方式休眠时,在满足唤醒的触发条件并唤醒L506后,将会在RI脚输出下降沿。上位机控制器可使用L506的RI脚,配合GPIO的下降沿中断实现休眠唤醒功能。
可以。用户可通过“at+mwakeupcfg”命令配置Data唤醒方式。
其命令格式为:at+mwakeupcfg=<mode>[,time_delay],其中mode参数范围0x0~0x7,default值为0x3,完整定义如下:
B[7:3] | B2 | B1 | B0 |
Undefined | Data | SMS | Call |
因此当Bit2为“1”时即使能Data唤醒功能。
另外,time_delay参数用于设置L506唤醒后到执行对应操作的延迟时间,单位为毫秒。Default值为0。
示例:
at+mwakeupcfg=7,90
L506可分别通过AT指令或特定IO的电压变化触发休眠,其唤醒方式包括:外部数据接收、SMS、Call及特定IO电压变化。其中SMS、Call为默认触发方式,外部数据接收需通过AT指令先行设置。
L506设置休眠的指令为“at+csclk”,格式为:at+csclk=<type>。其参数和对应的唤醒方式如下表:
at+csclk=? | 休眠触发条件 | 唤醒触发条件 |
0 | at+mpwrsm=1 发送该命令后L506进入休眠 | 收到SMS、Call或外部数据后唤醒; |
1 | DTR脚出现上升沿触发休眠 | DTR脚出现下降沿触发唤醒; |
2 | WAKEUP_IN脚出现上升沿触发休眠 | WAKEUP_IN脚出现下降沿触发唤醒; |
备注:
1. 当L506进入休眠后,USB及UART接口均无法通信或唤醒L506;
2. 当CSCLK=0时,L506无法通过外部硬件唤醒,且唤醒后执行完相关操作将再次休眠。请谨慎使用;
3. CSCLK=2的功能目前尚未开放;
4. 在设置CSCLK=1之前,需通过上位机拉低DTR脚的电压以满足触发条件。
使用L506 EVK测试时需注意不要让DTR脚悬空,以免出现无法唤醒的情况;
sudo adb reboot bootloader
sudo fastboot flash system <LocalPath>\boot.img
fastboot reboot
PIN脚序号 | 默认功能 | 是否可作为GPIO | 是否可外加上拉 | 是否支持中断 |
27 | SDC1_DATA2 | YES/GPIO_13 | YES | YES |
29 | SDC1_DATA1 | YES/GPIO_14 | YES | |
31 | SDC1_DATA3 | YES/GPIO_12 | YES | YES |
32 | SDC1_CMD | YES/GPIO_17 | YES | YES |
33 | SDC1_DATA0 | YES/GPIO_15 | YES | |
36 | SDC1_CLK | YES/GPIO_16 | YES | YES |
28 | GPIO3 | YES/GPIO_11 | YES | |
30 | WLAN_EN | YES/GPIO_38 | NO (只作为输出口) | |
48 | SD1_DET | YES/GPIO_26 | YES | YES |
86 | COEX3 | YES/GPIO_25 | NO(只作为输出口) | YES |
45 | GPIO0 | YES/GPIO_75 | YES | YES |
50 | WAKEUP_IN | YES/GPIO_74 | YES | YES |
52 | WAKEUP_OUT | YES/GPIO_78 | NO(只作为输出口) | |
87 | BOOT_CFG1 | YES/GPIO_24 | NO(只作为输出口) | |
66 | RTS | YES/GPIO_3 | YES | YES |
67 | CTS | YES/GPIO_2 | YES | |
70 | DCD | YES/GPIO_10 | YES | |
6 | GPIO7 | YES | YES | |
7 | GPIO5 | YES | YES | YES |
8 | GPIO4 | YES | YES | |
9 | GPIO6 | YES | YES |
优先挑选的io
PIN脚序号 | GPIO序号 | PIN脚序号 | GPIO序号 |
6 | GPIO_7 | 45 | GPIO_75 |
7 | GPIO_5 | 50 | GPIO_74 |
8 | GPIO_4 | 52 | GPIO_78 |
9 | GPIO_6 | 70 | GPIO_10 |
28 | GPIO_11 | 86 | GPIO_25 |
30 | GPIO_38 | 87 | GPIO_24 |
请检查PC端设备管理器->网络适配器中,“Qualcomm HS-USB WWAN Adapter 9025 #3”是否被禁用:
若被禁用则启用该设备,重新查看即可:
L620除去PSM的电流状态:
DRX 1.28s时 底电流96uA,平均电流0.86mA
eDRX(eDRX value=81.92s、Paging Time window=5.12s,小循环1.28s)底电流93uA,平均电流0.15mA
设备标识码按urn:imei:866873029330340这格式,其中红色部分改为模块的IMEI。
AT+PING=180.101.147.115 -l 64 -n 5
OK
+ping: finish, Packets: Sent = 5, Received =5, Lost = 0 (0% loss)
AT+M2MCLINEW=180.101.147.115,5683,"urn:imei:866873029189269",90
OK
红色部分需改为客户的IP地址和端口号,客户电信云平台模块注册设备标识码无法输入:“urn:imei:866873029189269”只能输入15位IMEI情况下直接改为“866873029189269”即可绑定设备在线。
L610 L620都是支持NB全频段的,覆盖了国内全部运营商网络。目前使用起来唯一的区别是要分别设置好
各自的APN,指令:
L620 : AT*MCGDEFCONT="IP","CTNB"
实际上目前版本暂时MTK提供的软件版本上APN是空的也能通过,PDP激活也是自动的。
L610 : AT+CGDCONT?+CGDCONT: 1,"IPV4V6","CTNB","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0,0
目前,软件版本没有关机操作。可以使用AT+SM=DP进入深度休眠模式(only 32.768Khz runing)。
AT+SM=DP 系统直接进入DeepSleep 模式不反回ok
后续软件版本会增加powerkey关机序列。
检测硬件的SIM卡是否有松动的情况,查看下硬件SIM卡上的阻容是否合适,是否导致了数字信号的波形失真.
排查硬件错误。
L620在搜网状态下执行“at+cpsms?”是无法获取相关信息的。
请用户在执行该命令前先执行“at+cgreg?”命令并确认返回结果为“+CGREG: 0,1”即注网成功,然后再执行“at+cpsms?”命令。
示例:
at+creg?
+CREG: 0,1
at+cgreg?
+CGREG: 0,1
OK
at+cpsms?
+CPSMS: 1,,,"00100011","00001011"
L620底部有整片GND加绿油覆盖,可做为屏蔽与绝缘层。
底板可以走线,若底板需通孔设计,建议塞孔盖油处理。
L620采用盲埋孔设计,故底部有5-6孔。此类孔是镭射孔,目前采用填铜处理(博敏制板)。
当L620进入PSM模式后,正常情况下AP端会进入Deep Sleep。参考L620的硬件设计手册,当上位机持续向RTC_EINT脚输入48ms的低电压将唤醒L620。但退出PSM需要有网络请求动作。
当L620唤醒后其UART接口即恢复通信功能,但此时被唤醒的只是L620的AP端。PSM是一个网络状态,在该状态下设备和网络均认为设备是在网的。
因此用户在PSM状态下需要发送数据时,只需要通过RTC_EINT或PWR Key唤醒L620的AP端,然后正常使用相关的AT命令(如TCP)发送即可。PSM状态下发送数据,PING,模块首先会与网络同步,发起一个TAU过程,转换到RRC CONNECTED状态,但这些过程对用户是透明的,用户只需正常发送数据,正常处理成功或失败。
示例:
at+cpsms=1
OK
at+cesq
+CESQ: 0,99,255,255,0,0
OK
at+cereg?
+CEREG: 0,1
OK
at+cgreg?
+CGREG: 0,1
OK
at+cstt="ctnb","web","password"
OK
at+ciicr
OK
+IP: 10.178.198.196
+EGACT:2,1,1,1
at+cifsr
10.178.198.196
OK
可以,其唤醒操作和RTC_EINT脚一样。但建议用户使用RTC_EINT脚实现唤醒功能,以简化电源部分的线路设计;
[A] 用户可通过“at+sm=<op>”命令设置L620的系统状态。该命令格式如下:
at+sm=<op>
<op>参数:
lock | 临时锁定L620的系统状态,防止其进入sleep mode; |
unlock | 在执行了at+sm=lock后解锁系统状态,允许L620进入sleep mode; |
lock_forever | 锁定L620的系统状态并将该设置写入NVDM(重启有效),防止其进入sleep mode; |
unlock_forever | 在执行了at+sm=lock_forever后解锁系统状态并将该设置写入NVDM(重启有效), 允许L620进入sleep mode; |
示例:
at+sm=lock
OK
[A] 用户可通过“at+cesq”查询当前小区的NB-IoT信号强度。该命令格式如下:
at+cesq
+CESQ: <rxlev>,<ber>,<rscp>,<ecno>,<rsrq>,<rsrp>
OK
其中<rxlev>参数为载波信号强度,<rsrq>参数为NB-IoT信号的信噪比。用户可根据上述2个参数判断当前小区的NB-IoT信号情况。
特别的,若rxlex值较大,rsrq值较小,则可能是存在同频干扰(针对电信基站)。
CESQ返回的参数主要关心 rsrq(参考信号接收的质量),rsrp(参考信号接收的功率)。RSRQ = RSRP - RSSI,所以它的值主要取决于当前网络是否有干扰,如果有很强的干扰信号,则RSSI会很大。
从CT LAB测试要求来看,极限覆盖的RSRQ要求是高于-20dB,RSRP高于-132dBm,在这种环境下模组能接入就可以了。实际网络信号好坏还是需要通过RSRQ,RSRP等信息来判断。
因此我们建议 {rsrq=1, rsrp=8}为极限值,任意一个参数不得低于此极限值。另外以上海办公室现网测试的结果作为信号良好的参照,CT{rsrq=24, rsrp=43},CM{rsrq=20, rsrp=42},CU{rsrq=28, rsrp=77}
:
RSRQ被定义为N*RSRP/(LTE载波RSSI)之比,其中N是LTE载波RSSI测量带宽的资源块(RB)个数。RSRQ实现了一种有效的方式报告信号强度和干扰相结合的效果。
因为L620在进入PSM后射频端已休眠,当从PSM状态唤醒后只有AP端工作。
当L620从PSM状态唤醒(如按下PSM Key)后,可以先发送“at+cpsms=0”关闭PSM,再查询CESQ。
示例:
at+cesq
+CESQ: 22,99,255,255,22,44
\0 // L620进入PSM,可拉低RTC_EINT脚唤醒L620
at+cesq
+CESQ: 99,99,255,255,255,255
at+cpsms=0
OK
at+cesq
+CESQ: 0,99,255,255,0,0
OK
at+cesq
+CESQ: 25,99,255,255,18,45
L620的标称工作电压范围是2.1V~3.6V,最高工作电压为3.63V。
针对使用3.6V锂铔电池作为电源的应用场景,由于新出厂的锂铔电池电压可能达到3.7V并持续较长时间。
对此建议用户在电池输出端串联一个0.25V压降的肖特基二极管,以便分压。
支持,当空口环境不好时,TAU可能会失败。此时EMM层将启动T3411定时器并尝试5次。如果5次尝试均失败,则启动T3402定时器。当T3402再次超时,TAU过程又会再次启动。在定时器期间,如果检测到小区不符合要求(如干扰很大,rsrq不满足要求)则会换小区。
目前的策略是先搜索最近使用过的历史小区(最大10个),如果历史小区都搜不到,电信按以下次序搜网:B5 B1 B3 B8 B20,移动、联通按以下次序搜网:B8 B1 B3 B5 B20。注意当前使用的小区信息不会立即保存,需要AT+CFUN=0 或者进入PSM后才会保存至NV中变成历史小区,因此注网后直接掉电这个小区信息是不会保存的。
注网时间在不同网络环境下变化较多,以下提供上海办公室的实测多次的平均数据供客户参考:
开机到第一次注网时间:联通平均17秒左右,电信平均32秒左右,移动网络在公司这里不太好,各次测试差距较大,有几次超过了1分钟,如剔除时间较长的数据,平均在12秒左右
开机到第二次注网时间:联通平均11秒左右,电信平均11秒左右,移动平均7秒左右
以下模块工作的状态转移图供客户参考,默认是使能睡眠的,每个阶段的功耗可参考L620的硬件文档
ROM(with FOTA) 提供给客户使用:>= 256KB
ROM(no FOTA) 提供给客户使用:>= 1024KB
RAM 提供给客户使用:>= 1024KB
现在在opencpu手册里写的是ROM 256KB,RAM 1MB
NB网络下PSM相关参数主要是通过网络下发的T3324 Value, T3412 Value, T3412 Extended Value三个参数设置,当网络有下发Extended Value时以Extended Value来设置(T3324 Value +T3412 Extended Value),否则以T3324 Value+T3412 Value来设置.
T3324 Value参数意义是指网络状态从DRX到PSM的时间,也就是说从进入DRX开始计时,时间到后就进入PSM状态.
T3412 Value和T3412 Extended Value参数意义是指网络下一次唤醒的时间,从进入PSM开始计时,时间到后执行TAU唤醒网络.
T3324 Value, T3412 Value, T3412 Extended Value三个参数值都是通过一个字节的二进制表示的,其中bit6-bit8表示单位,bit1-bit5表示数值.
T3324 / T3412 Value bit6-bit8的单位如下:
000 2S
001 1min
010 6mins
111 保留
理论最大值是:01011111 31*6=186mins
T3412 Extended Value bit6-bit8的单位如下:
000 10mins.
001 1hour.
010 10 hours.
011 2S.
100 30S.
101 1min.
110 320 hours (For T3324 extended value, If it is received in an integrity protected message, value shall be interpreted as multiples of 320 hours. Otherwise value shall be interpreted as multiples of 1 hour.)
111 保留
理论最大值是:01011111 31*10=310hours / 11011111 320*31=9920hours(感觉这个基本上用不到)
Flash 32Mb,PSRAM 32Mb, Sysram 32KB
at+cstt="ctnb","web","password"
AT*MCGDEFCONT="IP","CTNB"
L620:at+cstt="ctnb","web","password",password 和 user 是不能省略的 ,没有的话,就不填入数据,at+cstt="cmiot","",""
L206:at+cstt="cmiot"
CTS,RTS那两个脚默认内部有上拉,47K,使用上拉和不使用上拉都需要调用API设置一下.
180516 180517
条件 电源端加220uF 条件 不加电容
温度 -40 25 85 温度 -40 25 85
电压 Max值 Max值 Max值 电压 Max值 Max值 Max值
2.1 582 548 533 2.1 860 789 671
2.5 515 480 492 2.5 840 662 658
2.8 419 429 440 2.8 595 575 544
3 405 403 389 3 602 525 533
3.3 382 356 370 3.3 583 509 455
3.6 320 294 307 3.6 485 367 393
BC95(海思)
PSM:4ua(平均)
edrx:3.9Ma
drx:min 1.5ma (测试软件抓取值)
(band8)平均电流(ma) 峰值(ma) 功率(dbm)
3.1v 59.58 292 22.6
3.6v 54.37 233.43 22.61
4.2v 48.97 238.99 22.61
opencpu的软件默认使用UART_debug作为AT口,UART1开放给客户用
at*mcgsn=1,“123456789012345”
https://open.iot.10086.cn/
账号:Mobiletek,密码:Mt123456
接口请参考:
\include\middleware\MTK\nvdm\inc\nvdm.h中的接口,后续软件可提供Demo。
Nvdm_modem_port.h该文件中的接口不可用.
AT*MENGINFO=0
*MENGINFOSC: 3736,2,176,"1888B1A",-92,-5,-88,10,8,"5B65",0,
*MENGINFONC: 3736,2,7,-103
*MENGINFONC: 3734,2,119,-106
*MENGINFONC: 3738,2,175,-108
OK
MENGINFOSC回复的当前注册的小区,后面跟的是一些小区信息,比如3736小区号,2偏移量,176小区物理ID,"1888B1A"小区ID,接着就是相关的信号强度参数
MENGINFONC返回的是附近的其他小区信息(后续会增加单独的查询附近小区信息的指令)
AT*MENGINFO=1
*MENGINFODT: 0,0,0,0,330,372,10,11,0,0,0,0,0,0
OK
设置为1只能是在idle模式下,网络注册后,无操作,10-20S内进入psm。设置为1的查询只能是在这段时间内发送。
指令返回的大致的是描述载波信号的一些相关射频信息,研发表示这个需要专业的射频人员才能看懂。一般用不到
前提:这个指令是用来设置上报信息+M2MCLIRECV:后面的消息格式
AT+MCTIOTRECFG=show_size,format
Ok
show_size: 0,不显示接收数据大小;1,显示数据内容大小
Format: 0,text格式如0123 1,HEX显示 30313233
通常问题现象:模块期初能够正常上网,一段时间后,模块始终无法正常注网,换个卡就
可以注册网络,这种现象可能是sim卡号段被改写了。号段被改写不是模块操作的,是运营商通过3GPP协议下发的。
(1)查询当前禁止号段指令:AT+CRSM=176,28539,0,0,250,"6F7B"
+CRSM:144,0, "64F04064F00264F00064F010FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
OK
64F040:代表号段46004
64F002:代表号段46020
如上log显示,被禁止的号段46004,46020,46000,46001
2G主要看46000(移动),46001(联通)
(2)修改指令:
AT+CRSM=214,28539,0,0,3,"00F130"
+CRSM: 144, 0
OK
L620在搜网状态下执行“at+cpsms?”是无法获取相关信息的。请用户在执行该命令前先执行“at+cgreg?”命令并确认返回结果为“+CGREG: 0,1”即注网成功,然后再执行“at+cpsms?”命令。
示例:
at+creg?
+CREG: 0,1
at+cgreg?
+CGREG: 0,1
OK
at+cpsms?
+CPSMS: 1,,,"00100011","00001011"
用户可通过at+cgsn=1命令查询当前模块对应的IMEI号。
示例:
at+cgsn=1 +CGSN: 866873029330746
当at+ciicr没有返回IP,说明此时NB网络可能出现异常。建议用户可以使用at+cereg命令判断网络是否连接,用at+cgact命令查询PDP是否已激活(Activated):
注意:固件版本v01.02b09及以后版本已取消CGACT命令。但用户可通过at+cgatt命令查询PS附着状态。
示例:
at+cgatt?+CGATT: 1
OK
用户可通过at*menginfo=<mode>命令获取L620注网的小区信息,以及该小区的PCI和Cell ID。
或者用户可先设置at+cereg=2,再执行at+cereg?查询小区ID:
示例:
at+cereg?+CEREG: 0,1
OK
at+cereg=2OK
at+cereg?+CEREG: 2,1,"9BC7","09C6C151",9,"00"
OK
at*menginfo=0*MENGINFOSC: 2504,2,182,"9C6C151",-109,-8,-101,5,5,"9BC7",2,
*MENGINFONC: 2508,2,210,-100
OK
用户可通过at+cesq或at*menginfo=0命令获取RSRQ、RSRP信息,另外可通过at*menginfo=0获取RSSI、SNR信息。
需要注意的是,at+cesq返回的RSRQ和RSRP值系参考3GPP 36.133的数值区间,非实际数值:
而at*menginfo=0命令返回的是实际数值(unit in dB)。
示例:
at+cesq+CESQ: 34,0,255,255,24,57 // RSRQ=24 -> -8dB~-7.5dB;RSRP=57 -> -84dBm~-83dBm
at*menginfo=0 *MENGINFOSC: 2506,2,130,"9C2CC53",-83,-6,-78,14,5,"9BA8",0,70
// RSRP=-83dBm;RSRQ=-6dB
可以。该功能是R13标准中RRC_IDLE的Reselection,包括同频和异频的。L620会参考网络SIB消息的配置做测量并完成小区重选,因为协议规定的是Idle状态,所以L620在DRX、eDRX状态下均可以进行小区重选。不同的是,当L620从PSM模式下唤醒并退出PSM模式,此时执行的是TAU动作,并不会重新驻网。
针对重新上电搜网的情况,该流程是驻网流程。L620会根据其保存的历史小区的频点信息,选择RSSI值较好的小区注册。需要注意的是,相较通过RSRP值来选择小区的方式,参考RSSI值方式的驻网时间更快,且无需解调载波上的信号,但缺点是当频点/小区的干扰信号(噪声)比较强时可能无法快速识别。
L620是默认激活PDP的,在模块上电开机并收到IP地址后,可直接进行数据业务。如果用户需要使用其他的APN激活PDP,其APN参数请联系当地运营商或卡商获取。
[AT+EGACT=1,1,"ctnb","web","password"]命令后返回+EGACT:2,是因为当前系统中已存在一路激活PDP的CID,返回“2”表示激活的是第二路CID。用户可使用“at+cgdcont? ”命令查询第一路CID的APN参数。
用户和通过at+cipshut命令断开GPRS的PDP context,然后再通过at+ciicr命令重新建立连接。
示例:
at+cipshut
SHUT OK
at+ciicr
OK
+IP: 10.51.66.153
L620要求at+cipshut和at+ciicr两条命令的发送间隔需大于100ms,否则ciicr将返回error。但此时注网也会成功,用户可通过at+cifsr查询新的IP地址。
SIM卡座的DET脚相当于一个开关,SIM_DET脚一般为上拉,卡座第8脚接地。当插卡后,SIM_DET脚被拉低,产生下降沿中断。此时模块认为有卡插入并重新初始化。
但L620的SIM卡热插拔功能默认是Disable的,SIM卡上没有DET脚,一般8脚的卡座上第7、8脚是DET功能。如果用户不需要SIM卡热插拔功能,可以把Pin10悬空。
当L620在PSM状态下移动到另一个小区(Cell)或No Service的地方再唤醒,则会因为无法注网而断线。此时L620将根据回传的URC判断并自行重新建立连接。
另外,因为L620支持小区重选功能,所以理论上不需要上位机重启L620。用户在发现URC处于deactivation状态时,可通过at+cereg命令查询并重新注网。
示例:
CT-Self Register: Have already registered!
+IP: 10.167.212.239
+EGACT:1,1,1,1
关于L620退出PSM TAU失败后的流程如下:
(1). 若连接建立失败时,会尝试T3411(10sec) 5次。若还不成功,则启动T3412(默认12mins)来尝试TAU;
(2). 若网络响应TAU要求前RRC连接断开,会尝试T3411(10sec) 5次。若还不成功,则启动T3412(默认12mins)来尝试TAU;
(3). 若网络直接Reject,根据Reject的原因再决定后续行为:
A:ABMM触发PLMN搜索并更换PLMN;
B:等待底层小区重选,更换TAI;
C:继续尝试TAU,此时会尝试T3411(10sec) 5次,若还不成功则启动T3412(默认12mins)来尝试TAU;
需要特别注意的是,L620只会在进行TAU时上报“EXIT PSM”的URC信息,关于TAU是否成功并无消息上报,网络状态需要客户手动查询。
用户可通过at+cgatt指令查询网络数据链接状态,但由于这个是ESM维护的状态,只有在取消网络附着后“+CGATT”才会显示0,而在无网的状态下掉网不会影响到ESM的状态,因此at+cgatt在此环境下不适用。针对这种场景建议用户使用at+cereg查询网络状态,如网络正常注册,则默认为网络数据链接正常。
当用户使用电信的NB卡进行TCP定长发送时。
在发送到一定次数(3~8次)后L620会返回“+ESOERR=0,3”或“+ESOERR=0,2”信息,此后虽然CIPSTATUS返回“TCP CONNECT OK”,但继续发送数据(CIPSEND)或CIPCLOSE均会返回error。
这是因为电信的网络现在只支持电信物联网平台,导致TCP发送的次数太多会被断开。“+ESOERR=0,3”和“+ESOERR=0,2”的含义分别是网络Reset和网络Abort。
出现该情况时,用户可通过at+cipshut关闭网络,然后重新建立连接。或换用移动的SIM卡调试。
AT+CEREG=4 or 5
AT+CEREG?
如果是电信的话可以通过不同的APN来配置的
发送最后一条数据的时候,如果不需要应答就在发送数据前发一个AT*MNBIOTRAI=1,就可以实现快速释放RRC
需要将UART0,UART1连接到电脑,模块本身是内部拉高的,因为EVB上接上底板后就会被底板强制拉低,接上串口线后就不会强制拉低.
因为L620在执行CIICR指令时,实际执行的也是EGACT。如果用户先用EGACT激活,再执行CIICR时L620会发现此时PDP已激活,则直接返回OK。
L620在正常启动后会自动注网,当注网成功后会返回IP。而只有插电信和联通卡时才会有“CT-Self Register……”等提示信息,这是运营商认证需求。移动认证没有此需求故没有提示信息。
由于网络因素,L620目前无法提供固定的超时返回时间。L620的操作流程是TCP握手5次(每次10 sec),若5次都失败即返回“CONNECT FAIL”信息。
当L620返回“CONNECT FAIL”或用户需要断开TCP连接时,请先执行AT+CIPSHUT。重新建立TCP的命令流程依次是:AT+CSTT、AT+CIICR、AT+CIFSR、AT+CIPSTART。
1460字节
用户可通过命令:
AT*MNVMIVD=0,"ERRC_DATA_GROUP","ERRC_DATA_ITEM_PLMN_CAND_STORE"
清除L620保存的历史小区信息,使其在下次开机时重新搜网、注网。
需要注意的是,该命令执行成功时返回“0”。若返回“1”或“2”均表示该命令没有执行成功,需再次执行。执行成功后,请将L620掉电并重新开机。
示例:
AT*MNVMIVD=0,"ERRC_DATA_GROUP","ERRC_DATA_ITEM_PLMN_CAND_STORE"
*MNVMIVD: 0
用户可通过at*mfrcllck命令锁定小区的EARFCN。需要注意的是,若用户需要保存锁定的频点,则需要执行at+cfun=0和at+cfun=1以便让L620将频点信息保存下来。如果在执行at*mfrcllck命令后立即硬件复位L620,则设置的频点信息将不会保存。用户也可以通过该方法解锁频点。
示例:
at*menginfo=0*MENGINFOSC: 2506,2,37,"E978052",-71,-5,-66,18,5,"9B95",0,-150
OK
AT*MFRCLLCK=1,2508,2OK
+CEREG: 1,"9B7E","0E934051",9,"00"
at+cfun=0+CEREG: 0
OK
at+cfun=1OK
+CPIN: READY
+CEREG: 2
+CEREG: 1,"9B7E","0E934051",9,"00"
+IP: 10.195.144.22
+EGACT:1,1,1,1
at*menginfo=0*MENGINFOSC: 2508,2,210,"E934051",-91,-7,-84,5,5,"9B7E",0,80
触发小区重新的条件如下:
1. 基站向L620发送SIB5命令,要求其移频;
2. 当前服务小区的RSRP<29(-111dBm),且邻区的RSRP高于当前服务小区;
不可以。当L620注册到小区A时,小区A会通过SIB3命令告知L620当信号低于某个门限值时可以检测临近小区的信号。只有在当前信号的信号强度低于该门限值时,L620才会重选小区。
可以。用户可通过at+sm=poweroff命令让L620关机。
示例:
at+sm=poweroff \0
用户在抓取L620系统Log时,已通过at+eport命令设置了UART0(Pin22、Pin23)和UART2(Pin1、Pin2)的波特率,并通过at+mopenuart=1命令打开了上述2个UART接口。
当at+mopenuart=1情况下,若UART0、UART2接口没有1.8V的串口通信电压,则UART1将会提示“Core Dumping”信息且不响应AT命令输入。
因此在用户结束抓取Log后,需要通过上述命令恢复L620的UART环境并关闭UART0、UART2的后台打印功能。
示例:
at+eport=3,0,12OK
at+eport=3,2,12OK
at+mopenuart=0OK
at+cfun=0OK
at+cfun=1OK
+CPIN: READY
+IP: 100.120.127.158
+EGACT:1,1,1,1
不需要。L620从PSM退出来后,可直接用M2MCLISEND命令向云平台发送数据。
是的
不需要。用户只需直接执行cipstart即可。在L620中,系统会自动完成cstt和ciicr等命令,用户只需在收到IP地址后,直接发起数据业务即可。如无特殊的情况不建议用户更改egact、cstt、cipshut等命令。
L620注网成功之后不会保存小区信息。
只有在其Moedm关闭时(如执行at+cfun=0或进入PSM)才会保存小区信息
推荐使用at*mcgdefcont命令设置APN(掉电有效)。也可以用该命令或at+cgdcont命令查询当前APN。
需要注意的是,运营商基站有APN纠错机制,若用户设置的APN错误则基站会下发正确的APN。此时可通过at+cgdcont命令查询基站下发的APN。另外,电信的APN为“ctnb”,移动的APN为“cmiot”。
示例:
AT+SM=LOCK
AT+CFUN=0
AT*MCGDEFCONT="IPV4V6","ctnb"
AT+CFUN=1
AT+SM=UNLOCK
at+cgdcont?
+CGDCONT: 1,"IP","ctnb","",0,0,0,,,,,,0,,0
OK
at+cgdcont?
+CGDCONT: 1,"IP","ctnb","",0,0,0,,,,,,0,,0
用户可通过at+eport=4命令查看L620各组串口的波特率。
示例:
at+eport=4
+EPORT: 0
baudrate = 13
+EPORT: 1
baudrate = 9
+EPORT: 2
baudrate = 13
+EPORT: 3
baudrate = 9
+EPORT: 4
none
+EPORT: 5
none
若L620在注网成功后直接掉电,电信反馈其基站会保存注网信息24小时。实测基站RRC资源释放超时时间约15分钟。若L620在掉电前执行at+cfun=0(该命令不保存,下次开机不用执行at+cfun=1)或进入PSM,则基站会立即释放注网信息。
当L620注册电信云成功时,会先后返回“register success”和“observe success”信息。2条信息的间隔时间约150ms。而CLISEND命令发送数据需要在监听成功(observe success)后才能发送。
在observe success的前提下,L620会返回notify failed和notify success信息。在执行CLISEND超过10sec仍无回复,L620会上报notify fail。
当注册或发送失败时,L620会返回registet failed、notify failed等信息。但observe是协议主动流程,不会下发failed,只有成功时会返回success。
L620在PWRKEY管脚(Pin30)触发下降沿后开机,若开机成功则UART1会输出“*MATREADY: 1”和“+CFUN: 1”等信息。
另外,用户此时也可以测量L620的VIO18(Pin29)管脚是否有1.8V电压。在L620开机后将会在该管脚输出1.8V电压。
在网络环境存在有效信号时,L620上电后将自动发起attach动作,若连续5次attach失败,则L620将进入DeepSleep模式并在休眠12mins后再次发起attach。
若L620上电后接收到有效信号,但无法发起Attach或PLMN错误,L620将会寻找下一个频点。如果一直找不到有效小区(大概耗时6mins左右)则进入OOSA状态。
若当前环境没有网络信号,则L620不会发起attach并直接进入OOSA状态。
另,附OOSA策略如下:
Time Length | Type* |
5 scends | shallow |
10 scends | shallow |
10 scends | deep |
1 scends | shallow |
120 scends | deep |
7200 scends | deep |
*Search type description:
Deep: search type means that all supported bands are scanned.
Shallow: search type means that only neighboring cells are scanned.
40sec。L620在建立TCP连接时,会向服务器发送握手请求(SYN消息)并等待10秒。如果没有收到服务器返回ACK消息则会再发一次SYN消息继续请求握手并等待。总共会发4次即40秒。4次握手之后仍没有收到服务器的ACK消息,则认为连接失败并显示“CONNECT FAIL”。
cipclose命令是关闭已建立成功的TCP连接。所以在L620返回“CONNECT OK”或“CONNECT FAIL”前,cipclose会返回error。用户可以在等待L620返回上述信息后再断开连接。
若用户需要在建立TCP连接的过程中断开连接,可以直接复位L620,或使用at+cfun=0/1命令复位L620的射频端以便强制断开TCP连接。
示例:
at+cipstart="TCP","1.2.3.4",5
at+cipclose
ERROR
at+cfun=0
CONNECT FAIL
OK
at+cfun=1
OK
+CPIN: READY
+IP: 10.4.198.127
at+cipstart="TCP","195.34.89.241",7
CONNECT OK
+RECEIVE 0,32
u-blox AG TCP/UDP test service
at+cipclose
CLOSE OK
用户可通过at*mbsc?命令查询或设置其支持的Band。该命令掉电有效、重启或执行at+ cfun=0/1后生效,具体格式如下:
at*mbsc?
at*mbsc=[N],[n<,n><,n><,n><,n>...]
其中N表示当前需支持的Band数量,n表示具体的Band编号。需要注意的是该命令没有解锁的专用参数,用户需解锁时只需开启全部Band即可。
示例:
at*mbsc?
*MBSC: 1,2,3,5,8,11,12,13,17,18,19,20,25,26,28,31,66,70,
at*mbsc=1,8 // lock Band8 for CMCC
*MBSC: 0
OK
at*mbsc? // after L620G reset
*MBSC: 8,
at*mbsc=18,1,2,3,5,8,11,12,13,17,18,19,20,25,26,28,31,66,70 // enable All band to unlock
*MBSC: 0
OK
at*mbsc?
*MBSC: 1,2,3,5,8,11,12,13,17,18,19,20,25,26,28,31,66,70,
“+cme error:841”的意思是“In cell search state”。at*menginfo=0命令需在L620注网成功后执行,否则将返回“In cell search state”、“error:841”或“No Service state”等信息。
用户可通过at+ipr命令查看或设置当前支持的串口波特率。该命令掉电有效,重启后生效。具体格式为:
at+ipr?
at+ipr=?
at+ipr=<rate>
当rate=0时,L620支持自适应波特率。但由于L620默认波特率为115200,因此当主控端波特率不是115200时,L620上电输出的“*MATREADY: 1”和“+CFUN: 1”信息将变为乱码。此时需要主控端用新的波特率发送信息以便L620调整波特率。
需要注意的是,L620仅在开机时根据其收到的第1条串口信息调整波特率。在此之后无法更改其波特率,因此主控端不能在已和L620发生通信的状态下再改变波特率。
示例:
at+ipr?
+IPR: 0 // default baud rate is 115200
OK
at+ipr=?
+IPR: (0,110,300,1200,2400,4800,9600,19200,38400,57600,115200,230400,460800,921600)
OK
\0 // power off L620, then power on with new baud rate = 38400 in console
#A3S猔?3? // should be "*MATREADY: 1" and "+CFUN: 1" after L620 power on
at // send message with baud rate = 38400
OK // L620 adjust baud rate to 38400 and respond
一次正常驻网大约会有35W条信息输出.
正常HSL信息:
异常,HSL未抓取到.
如果抓取log功能是打开的 ,当at+mopenuart=1情况下,若UART0、UART2接口没有1.8V的串口通信电压,则UART1将会提示“Core Dumping”信息,这个时候620是不响应AT命令输入。
要想 UART1 能发送AT指令 1: 把抓log的功能关闭
2: 或者UART0 和UART2 连接电脑
目前620能同时支持IPV4和IPV6的。
也能分别设置单独IPV4 和IVP6
AT*MCGDEFCONT? // 查看目前支持IPV4 或者IPV6 或者都兼容
*MCGDEFCONT: “IPV6”,”ctnb” //说明 目前模式 IPV6 only
Ok
要想把板卡同时支持 IPV4和IPV6 需要如下设置:
AT*MCGDEFCONT="IPV4V6","ctnb","","" // 设置成能同时支持IPV4 和IPV6
网络环境支持的就能注册
band2应该是3mins左右
锁定band2 锁定的指令为:
AT*MBSC=1,2 重启生效 这样就很快。
电信的APN为“ctnb”,移动的APN为“cmiot”,联通的APN为“nbiot”
不开放源码给客户, 建议客户用我们调试好的第三方CarOTA (gmobi),也是他们台湾的公司, 服务器是Carota的,我们可以把Carota介绍给客户,客户自己谈商务,客户自己掌控差分包工具和后台管理账号,但不用重新集成了(这个比较麻烦),直接使用我们集成好的。
问研发要一个lib_fota.a库文件,替换客户本地,然后让客户重新编译后提供前后两次需要升级的.bin文件及前后升级的版本号给研发做差分包,研发将差分包放置服务器五分钟后即可进行FOTA升级。
需要检查发送的数据是否超出msg.len最大的长度。
SDK V1.6之前的版本:500
\prebuilt\middleware\MTK\nbiot\inc\modem\psmdl\inc\public\mux_cfg.h\CIMUX_MAX_AT_DATA_LENGTH 参数,最大不能超过500,如果超过这个数,需要将http分多包下发 确保每包数据不超过SDK V1.6为1024
MT2625SC,支持B3/5/8,flash比较小(MT2625DP),对比L620G删减了比较多功能,如LWM2M协议等,支持NB1&NB2
韩国:B3/B5
澳大利亚:B1/3/5/8/12/17/28
俄罗斯:B1/3/5/7/8/20/31
英国:B1/3/5/8/20/28
台湾:B7/B28
如澳大利亚的,需要如下设置,掉电保存:
AT+SM=LOCK
AT+CFUN=0
AT*MCGDEFCONT="IP","spe.inetd.vodafone.nbiot"
AT+COPS=1,2,"50503",9
AT+CFUN=1
AT+SM=UNLOCK
如果换成普通的NB卡需要设置回正确的运营商信息,普通的NB卡不需要设置PLMN
L620C_v01_01b08版本与L620C_v01_02b02版本注网情况对比:
1.01b08版本注网时间比较久;
2.01b08版本注网有小概率性提示失败,02b02暂时未见异常;
3.01b08移动NB卡注网时间比电信、联通NB卡久,注网时间总体较慢。
俄罗斯目前的NB运营商主要有四家:MTS, Megafon,Beeline ,Tele2,其中MTS和 Megafon是主要的运营商,其次是Tele2,Beeline 测试效果很差。 频段有B1(在2020-2021年才支持)/3/7(在2020-2021年才支持)/8/20/31(目前还没实网),B3/8/20是目前主要的NB频段。
MTS:
PLMN: 25001
APN: IOT
Band: B3/8/20
Megafon:
PLMN: 25002
APN:
Band: B3/8/20
Tele2:
PLMN: 25020
APN:
Band: B20
Beeline:
PLMN: 25099
APN:
Band: B20
AT+CFUN=0
AT*MNVMQ="1.0.0"
AT*MCGSN=1,"869858030118931"
RAM 1MB+ROM 256KB
700KB
L620G可以用送无委做入网测试,L620C和SC暂时不可以,主要原因在与共存杂散项可能不通过,L620之前MTK有更新patch专门解决此问题,C和SC则没有
可配置平台实现。电信的CT-IoT平台的底层基于UDP,所以其底层通信是Non-ACK的。L620在发送成功后即主动上报notify success,平台并不会主动下发ACK。用户可根据不同需求添加响应字段,配置下行消息(伪ACK),即平台收到数据后,主动回发一个信息,以此作为ACK:
L620G固件默认支持的频段为B1、B3、B5、B8、B20,其硬件支持的频段有:B1、B2、B3、B5、B8、B12、B13、B17、B18、B19、B20、B25、B26、B28、B66、B70。需要注意的是,目前L620G固件开放的频段仅为B1、B3、B5、B8、B20。
+M2MCLI:register update success”这个URC在每一个Lifetime周期都会上报一次,Lifetime参数由客户执行M2MCLINEW命令时设置。
这是因为L620进入了Idle(DRX)状态。DRX有2种状态:paging和light sleep。在paging状态下可以直接发AT命令,但在light sleep下需要先唤醒L620再发送AT。该状态和PSM无关。
在L620平台版本03b09之前,L620搜/注网参考的是基站的RSSI,即解调前的载波信号强度。具体数值可以通过at+cesq命令查询(RxLev)。
但发现目前部分电信基站存在RSSI值很高但大部分是干扰信号,实际SNR(RSRQ)值很低,导致L620注网到这些小区后,出现注网时间变长或失败。
因此平台版本03b09之后的固件已改为参考RSRP和RSRQ以选择注网小区。其物理层参考的具体数值为RSRP > -140且RSRQ > -20。用户可通过at+cesq命令查询。
这个每次都是第一次失败,第二次才行
当返回+MIPLEVENT:0,6 后在发送就可以了
在MCU 处理的时候,在此处加一个FLAG 作为判断条件,
如果返回0.6之后再返回observe ,也不会有什么影响。
5个字节以内,可使用SRAM资源,使用方法如下:
Step 1: 添加头文件,
#include "memory_attribute.h"
Step 2: 变量添加static ATTR_ZIDATA_IN_RETSRAM修饰.
static ATTR_ZIDATA_IN_RETSRAM uint32_t auto_inner_timer_hdlr = 0;
ex:
不能
没有
设备从连接状态转移到空闲后,T3324定时器结束
目前传输只支持ASCII,不支持Hex
AT+CIPRXGET=3 0 ,是自动接受 ,3是可以收HEX,不能发HEX 例如: 长度37,实际收到74,啥原因呢?按ascii码计数的,两位hex是一个字符
AT*MCGDEFCONT="IPV4V6"
或
AT*MNVMIVD=0,"nas","apn_store"
AT+EPORT=1,connl,1 OK
AT+EPORT=1,emmi,0 OK
AT+EPORT=1,uls,2 OK
因为之前进过PSM的话,连CoAP就会退出PSM
如果连接的时候设置 AT+CPSMS=0 ,以上打印信息就不会出现。
以上设置表达的意思为如下: 先看一下CoAP 协议。
常规情况下只要打开如下3个就可以测试R14 基本功能。
R14 main switch :
AT*MNVMW=1,"NVDM_MODEM_CFG","ACCESS_STRATUM_RELEASE",0,1,"00"
NB2 capability:
AT*MNVMW=3,"NVDM_MODEM_CFG","UE_CATEGORY",0,1,"01"
2 HARQ:
AT*MNVMW=1,"NVDM_MODEM_CFG","TWO_HARQ_PROCESSES",0,1,"01"
其他指令:
RAI
AT*MNVMW=1,"NVDM_MODEM_CFG","ACCESS_STRATUM_RAI_SUPPORT",0,1,"01" AT*MNVMW=1,"NVDM_MODEM_CFG","ACCESS_STRATUM_RAI_SUPPORT",0,1,"00"
Data Inactivity timer AT*MNVMW=1,"NVDM_MODEM_CFG","DATA_INACTIVITY_MONITORING",0,1,"01" AT*MNVMW=1,"NVDM_MODEM_CFG","DATA_INACTIVITY_MONITORING",0,1,"00"
Interference randomisation AT*MNVMW=1,"NVDM_MODEM_CFG","INTERFERENCE_RANDOMISATION",0,1,"01" AT*MNVMW=1,"NVDM_MODEM_CFG","INTERFERENCE_RANDOMISATION",0,1,"00"
Multi carrier
AT*MNVMW=1,"NVDM_MODEM_CFG","MULTICARRIER_SUPPORT",0,1,"07" AT*MNVMW=1,"NVDM_MODEM_CFG","MULTICARRIER_SUPPORT",0,1,"00"
CP reestablishment AT*MNVMW=1,"NVDM_MODEM_CFG","RRC_CONNECTION_REEST_FOR_CP_OPT",0,1,"01" AT*MNVMW=1,"NVDM_MODEM_CFG","RRC_CONNECTION_REEST_FOR_CP_OPT",0,1,"00"
freq offset redirection AT*MNVMW=1,"NVDM_MODEM_CFG","DEDIC_FREQ_OFFSET_REDIRECTION",0,1,"01" AT*MNVMW=1,"NVDM_MODEM_CFG","DEDIC_FREQ_OFFSET_REDIRECTION",0,1,"00"
NAS LPP AT*MNVMW=1,"NVDM_MODEM_CFG","NAS_LPP_SUPPORT",0,1,"01" AT*MNVMW=1,"NVDM_MODEM_CFG","NAS_LPP_SUPPORT",0,1,"00"
L620C(L620C_v01_02b04)
Lifetime 最低值20s,低于20S报ERROR,之前版本没有做限制。
L620 硬的 SPI只能主模式
AT+ MOPENUART=1
AT+EWDT=1
AT+MIPLNOTIFY=0,128023,3200,0,5750,1,8,opendoor,0,0,1最后一位的ACKID需要写为1.
平台根据长度解析数据,按照正常的字符发送即可。
onenet设备主动发送数据AT+MIPLNOTIFY指令中的:MSG iD使用observe ID,不是discover ID。
我们L620的DTU版本和平台版本是不一样的两个东西 ,如果烧录了DTU的版本,然后查询 软件信息(ATI)的时候回两个版本都显示,如果用cgmr查询软件版本查询到的会是平台版本信息,所以只需要关注DTU版本就可以了,不用管平台版本
首先设置AT+CEREG=4,再AT+CEREG?
[15:43:57.965]发→◇AT+CEREG=4
[15:43:57.977]收←◆AT+CEREG=4
OK
[15:44:02.280]发→◇AT+CEREG?
[15:44:02.289]收←◆AT+CEREG?
+CEREG: 4,1,"5ADB","05DFDA5A",9,,,"11100000","00111000"
OK
其中11100000代表的是定时器T3324休眠时间,6-8bit(111),代表的是时间单位,1-5bit(00000)具体的休眠时间。
00111000代表的唤醒定时器T3412时间,同样的原理。具体对应关系,可以看下AT手册
AT+EMQCERT=<TYPE>,<FLAG>,<TOTALSIZE>,<CURRENTSIZE>,<CERT>
Type:对应的是证书类型,,flag:根据大小确定证书导入是否继续,total size:证书的大小,current size:当前导入的证书大小,cert:证书内容
只要开启了log功能 底板上就得两个USB都接上才可以正常工作
AT+CIPECHO=mode
mode=0 关闭传输内容回显
mode=1 打开传输内容回显
ex:
AT+cipecho=0
OK
◇at+cipsend=29
□
[09:48:08.007]收←◆
>
[09:48:08.667]发→◇at+cipsend=29
□
[09:48:09.587]发→◇at+cipsend=29
□
[09:48:09.622]收←◆
SEND OK
at+cipecho=1
◇at+cipsend=29
□
[09:48:28.750]收←◆
>
[09:48:29.635]发→◇at+cipsend=29
□
[09:48:29.661]收←◆at+cipsend=29
[09:48:30.547]发→◇at+cipsend=29
□
[09:48:30.589]收←◆at+cipsend=29
SEND OK
标准固件刷到DTU固件时,串口会被改掉,所以DTU固件刷回标准固件时,原标准固件的串口UART1指令会有不通的现象(标准版本uls对应串口2;connl对应1;emmi对应0)
改回方法:
刷回标准版本后,通过UART0(9600波特率)改回默认波特率设置(AT+EPORT=1,uls,2 AT+EPORT=1,connl,1 AT+EPORT=1,emmi,0);
Open软件UART1不可作为AT口使用,AT口只能是UART_DEBUG口。
A:支持
1、查询模块当前band和支持的band
at*mband=?
<CR><LF>*MBAND: (list of valid <Current band>s)<CR><LF>
at*mband=?
*MBAND: 1,3,5,8,20,28
at*mband?
<CR><LF>*MBAND:<Current Band><CR><LF>
<CR><LF>OK<CR><LF>
at*mband?
*MBAND: 8
OK
2、锁band
at*MBSC=<number>,<support_bands_list>
<number>:整数值,需要锁 BAND 的个数
<support_band_lists>:整数值,需要锁 BAND 值,每个 BAND 用“,”隔开
AT*MBSC=3,3,5,8
//锁定 3 个 band,即 3,5,8
*MBSC: 0
OK
这个是软卡功能的URC信息: 软SIM Task Ready
研发给的建议最长不要超过200KB, 204800
原因是这个content类型有个boundary参数,目前指令无法传递。
Open程序运行
第一步:运行函数customer_app_init(包含初始化gpio,并配置为输出low电平)
第二步:运行系统函数task_init(源码未开放,不能修改,里面有配置gpio1和gpio29为高,如图)
第三步:运行函数customer_app_task(需要再配置gpio为高或低电平,若不重新配置,则为还是按照第二步的配置结果为High电平,输出1.8V)
备注:
配置gpio输出方式:
oc_hal_pinmux_set_function(OC_HAL_PIN_GPIO29, OC_HAL_PIN_GPIO29_M_GPIO);
oc_hal_gpio_set_direction(OC_HAL_PIN_GPIO29, OC_HAL_GPIO_DIRECTION_OUTPUT);
oc_hal_gpio_set_output(OC_HAL_PIN_GPIO29, OC_HAL_GPIO_DATA_HIGH);//输出高
//oc_hal_gpio_set_output(OC_HAL_PIN_GPIO29, OC_HAL_GPIO_DATA_LOW);//输出低
首先设置AT+CEREG=4,再AT+CEREG?
[15:43:57.965]发→◇AT+CEREG=4
[15:43:57.977]收←◆AT+CEREG=4
OK
[15:44:02.280]发→◇AT+CEREG?
[15:44:02.289]收←◆AT+CEREG?
+CEREG: 4,1,"5ADB","05DFDA5A",9,,,"11100000","00111000"
OK
其中11100000代表的是定时器T3324休眠时间,6-8bit(111),代表的是时间单位,1-5bit(00000)具体的休眠时间。
00111000代表的唤醒定时器T3412时间,同样的原理。具体对应关系,可以看下AT手册
AT+EMQCERT=<TYPE>,<FLAG>,<TOTALSIZE>,<CURRENTSIZE>,<CERT>
Type:对应的是证书类型,,flag:根据大小确定证书导入是否继续,total size:证书的大小,current size:当前导入的证书大小,cert:证书内容
1, 平常tcp发送数据的指令是tcpsend,这是慢发模式,当指令返回send ok表明服务器已经接收到了数据。
2, 快发模式,用指令AT+CIPQSEND=1设置,快发模式下,发送数据先进缓存。再发送出去,2G缓存大小1500字节,查询指令可以用AT+CIPACK。
3,620不存在慢发模式,发送的数据都是先进缓存,缓存大小4k,所以模块也就无法得知服务器是否收到,只能通过服务器的ACK返回
AT+CFUN=0
AT*MNVMQ="1.0.0"
AT*MCGSN=1,"869858030002597"
AT+CGSN=1
AT*MCGSN=0,"P4140903010029"
AT+CGSN=0
AT+CFUN=0
AT*MCALDEV=1
AT*MCAL="NRF",255,21,8,"L2D50000000560017"---------------查看此时电流
测试完后执行如下命令恢复:
AT*MCAL="NRF",256,1,1,"L0A"
AT*MCALDEV=0
AT+CFUN=1
at*mnvmivd=0,"ERRC_DATA_GROUP","ERRC_DATA_ITEM_PLMN_CAND_STORE"
*MNVMIVD: 0 -------------返回 0 :表示有历史小区并清理成功;返回 2 :表示没有历史小区
OK
移动在19年底,转了5MHz 900M频段的带宽给联通,上述3734 3736 3738三个频点将属于联通,不再属于移动,
移动后续基站不能再配置这些频点,如果有,需要联系移动运营商关闭或调整基站参数
L620 04B09版本模块识别到移动卡后,会优先查找上述3个频点,找到后会反复不停的尝试,
05b02版本之后,将去掉此频点优先机制,开机后先查找历史小区,查找失败后全频扫描
1. CTWing平台会返回 F2 01 00 02 01 00 F6 是在模组上报+CTM2M:send,0,29225后返回的,”0”是数据发送成功的标志,所以DTU result “00” 可以确保数据发送成功
2. 电信OC平台返回 F2 01 00 02 01 00 F6无法确保数据发送成功想,也无法添加字段,需要创建【规则】,平台可以自动下发确认消息给模组。如果没有该菜单,联系电信客服升级即可。
根据AT文档里的demo透传对接电信AEP平台时,注意平台上的Endpoint格式要选择urn:imei-ims,不然会导致设备注册不上平台;
经多次测试,看门狗没有起到复位效果;
据研发回复:看门狗是系统层的 系统会执行喂狗操作
如果碰到NETLIGHT网络指示灯不闪的话,可通过
AT+MOPENLIGHT=1开启;
适用对象:opencpu和AT版本都适用;
问题原因:生产测试低功耗会把网络指示灯关闭,测完再打开时有概率没执行成功,在新的测试工具上已经修改。
L620C默认并不支持开机引脚直接接地进行上电开机,因为开机后,又会马上进行关机(这与2G、4G模块有所不同);
另:
L620C OPENCPU方案,如果没有低功耗要求,而且又想上电直接开机,那可以通过打补丁的方式,实现开机引脚接地上电开机;
如补丁版本:Patch03-20200228-for-L620C_OPENCPU_SDK_V1.5
L620C ESIM卡连接仪器方案如下:
发送AT+CFUN=0 关闭MODEM
发送AT*MEMUSIM 进入模拟白卡模式
发送AT+CFUN=1 打开MODEM
此时可以进行连仪器测试
根据需要可以发送AT+CPSMS=0 关闭PSM模式
每次重新上电后默认为实卡模式,因此如断电后再连仪器需要重复上述流程
现在研发更新了patch,可以实现客户自己的服务器进行差分升级(http方式)
差分升级时,模块能下载差分包,但是有两个问题:一个是模块不会自动重启更新固件,手动重启才可以更新固件;另外,就算模块端固件更新完成,并重新连接平台,平台也一直显示“开始升级”;
该问题更新patch解决了,据研发说,是和上一个FOTA升级的patch冲突导致;
读取空NVDM数据组后(未被写过的空数据组),这时不管读取还是写入所有的NVDM都会失败;
该问题更新patch解决了,原因是读取空NV item时,参数错误导致;
AT*MNVMW=1,"NVDM_MODEM_CFG","LOCAL_DATA_INACT_TIMER_PERIOD",0,2,"0014"
0x0014 换算成十进制为20, 这个值的范围是20-360s;默认值300s
重启后生效,AT&F不会恢复默认值
此项设置主要针对模块没有接收到核心网下发的rrc release,超时进入psm的情况设置
ALI OPENCPU SDK默认已带上电开机功能(开机键对地)
已支持阿里云一型一密功能
已支持阿里云hex数据发送
1280字节
L620DTU 连接平台进入数据可发送状态时Pin33 IIS_WS脚会被置为高电平,
如果销售考虑后续给客户更新L660DTU的话,建议不使用该引脚,L660 Pin33 定义为ADC为输入脚
关于L620关闭回显,ATE0关闭回显,但是TCP发送数据回显ATE0无法关闭,关闭TCP数据回显的指令为AT+CIPECHO
AT+EGMR=1,7,"866693050000129"
wakeup脚拉高,唤醒模块;(与其他型号如L501/L506/L206等等控制信号相反
乱码问题是由开发板上的串口芯片引起的,CSCON=1乱码是因为如果等于1,那么会隔一段时间自动上报CSCON状态,而模块进入普通睡眠之后,第一包数据上来就会乱码,用单模块飞线或客户板子上则不会有此问题
用at+cgact=1,1指令激活PDP,激活前可以不用at+cgdcont设置APN,与L620类似,模块读取卡的信息后与基站交互,运营商下发APN
蓝牙待机功耗参考值:BT开启待机-pm1 4.5mA
蓝牙收发数据功耗参考值:34mA
支持TLSv1.2,指令参考+MQTTMODE。说明下TLS选择加密连接时,如果服务器端口是普通连接,模组会自动建立普通连接。
MQTT协议采用V3.1.1版本
1. at+cgdcont=...(设APN,也可以不设,不设会使用默认APN)
at+cgact=1,1
2. at+cstt=...(必须设APN,否则下面两条指令会报错)
at+ciicr
at+cifsr
上面两种设置方法软件中做了互斥,只能选一种,指令不能交叉使用,且如果激活过再去激活就会报错。第一种为通用指令。
at+cgpaddr在上面两种方法激活PDP后都可以用来查IP.
AT+MGADC = 4
返回的三个值
+MGADC:channel:%d,val:%d,raw:%d
第一个是channel就是那个通道4,第二个是换算后的电压值,第三个是原始值
WiFi定位的AT流程要按照检查是否已注网,激活PDP,设置LBS服务器的IP/域名、端口号,搜索AP,连接LBS服务器,上传WiFiinfo获取位置的流程进行,否则使用相关指令会报错:
AT+CGREG?
+CGREG: 0,1
OK
AT+CSTT="CTLTE"
OK
AT+CIICR
OK
AT+CIFSR
+CIFSR: 10.75.52.183
OK
AT+MSETLBS="","121.40.44.5",10003 //域名和IP地址可以只填写一个
OK
AT+WIFIAPSCAN
Wifi all scan channels found 11 aps
……
AT+MGTPOS=3,"6c5940487eba,-63,d468ba08fe30,-67,d468ba08fe44,-72"
+MGPTOS:-2 //这里报错是因为每次上传WIFIINFO获取地址之前,都要先用AT+MGTPOS=1连接LBS服务器;
AT+MGTPOS=1
OK
+CSCON: 1
CONNECT OK
AT+MGTPOS=3,"6c5940487eba,-63,d468ba08fe30,-67"
+MGPTOS:-7 //这里报错是因为上传WIFIINFO必须要填3个以上的WiFi信息,这里只有2个;
AT+MGTPOS=1
OK
客户的开机进行TCP连接 然后断开TCP连接。比如:
模组进入PSM ,当模组PSM唤醒 进行TCP/IP 连接
就会出现以下错误: AT+CIICR 返回错误:
17:01:00.848]收←◆AT+CSCLK=0
OK
[17:01:11.185]收←◆AT+CCLK?
+CCLK: "19/10/14,17:01:10"
OK
[17:01:26.602]收←◆郳AT+CSTT="CMNBIOT"
OK
[17:01:35.236]收←◆AT+CIICR
+CME ERROR: 10
[17:01:43.858]收←◆AT+CIPSTART="TCP","182.61.11.110",10010
+CME ERROR: 50
[17:02:09.732]收←◆AT+CIPSEND=37
+CME ERROR: 53
[17:02:14.899]收←◆@@\0\0866584040017408
\0\0y##
[17:02:40.739]收←◆AT+CIPCLOSE
+CME ERROR: 50
[17:02:47.649]收←◆AT+CIPSHUT
SHUT OK
[17:02:54.540]收←◆AT+CSCLK=2
解决方法如下:
第一种:
第一次开机:
如果开机后有了激活的操作。
AT+CSTT="CMNBIOT"
OK
AT+CIICR
OK
并且没有取消激活。然后进入PSM后退出PSM。
这个时候不需要再输入激活命令,直接使用
AT+CIPSTART="TCP","182.61.11.110",10010
即可
目前当前版本测试使用的是内部测试的服务器,且固件的封包方式(封包方式是指上传WiFiinfo到LBS服务器时对IMEI/WIFIINFO/CELL等进行的封包)是按照内部服务器的要求进行的封包,不开放给客户做正式使用;如果客户要用百度、谷歌、高德等其他服务器,因服务器封包的要求可能不一样,需要跟杨总讨论实现方法;客户需要提供自己使用的域名/IP、端口号,封包方式(跟服务器端确认)。
单纯搜索AP的话不需要插卡,搜索AP是UE端的功能;但是如果要上传WiFi info到LBS服务器以此获取位置,就必须要插卡连网;
一定要是L630C,(支持蓝牙的版本,因为要用蓝牙那根天线来搜索AP),固件版本是L630Cv04.01b02.00及以上。
在代码ol_system.h中加了一个接口
AT+MNVSETPM=10,此时的睡眠功耗约有100uA+
AT+MNVSETPM=2,深度睡眠,此时模块睡眠功耗约有4uA+,但唤醒后,app会重新跑。所有ram数据都没了,如果需要保存,需要在pms之前存在fs里面。socket之类的连接是肯定没了,需要重新建立,不需要重新激活PDP
AT+IMQTTAUTH="","","","",可以清空已经保存的鉴权参数
20个
可以支持,硬件不需要改变,软件调整即可L630Cv03.01b04B5L.00 此版本即可支持低电压开机(具体版本升级前建议和项目经理确认)
升级软件后,模块工作电压变更为 3.0---4.2V,实际测试在深圳办公室电源3.0V开发板开机有不稳定的情况,3.1V可以正常稳定开机
1: 确保板子没有进入PSM
2: 如果一次不成功,可以考虑重新上电
3:确保:NVSETPM设置为0, 如果模组进入DRX 模式就不能下载了
主要: 保证端口是对的 ,开机后工具会有数据吐出,如果不吐数据请排查线材及端口
开机后,立马点击下载 ,立马点击,立马点击。重要的事情说三遍,如果慢了也会下载不成功
4:如果下载25% 断电了 ,从新下载还是可以的
如果以上都能满足 ,下载程序没有问题 已经测试验证过。
默认NB优先,注册NB网络时,不去搜索GSM网络,只有NB注册不上,脱网时,才尝试去找GSM
不能设置GSM优先
AT+CFGRATPRIO=2 //切换到GSM
AT+CFGRATPRIO=4 //切换回NB,
默认57600,仅支持9600--57600波特率配置
57600以上波特率配置无效
A:AT^SIMIF?
如:
AT^SIMIF?
^SIMIF: 1,0 --SIM卡
AT^SIMIF?
^SIMIF: 1,1 --USIM卡
或者
AT^SIMIF=1,1
^SIMIF: UICC ---USIM卡
1. NB优先 AT+CFGDUALMODE=1,1 AT+CFGRATPRIO=4
2. GSM优先AT+CFGDUALMODE=1,0 AT+CFGRATPRIO=2
3. NB only AT+CFGDUALMODE=0,1 AT+CFGRATPRIO=4
4. GSM only AT+CFGDUALMODE=0 AT+CFGRATPRIO=2
配置后都是实时生效的,不需要重启模块,只需要AT+CFUN=0 AT+CFUN=1开关协议栈就可以
2020-09-01 11:35:10.706
AT+ECPMUCFG=1,4 -------打开PMU sleep功能(4:Hibernate)
OK
2020-09-01 11:35:12.719
AT+ECLEDMODE=0 -------关闭LED灯(如果LED灯不关闭,模块无法进入深度休眠)
OK
2020-09-01 11:35:15.021
AT+CPSMS=1,,,"00110100","00000001" ---------打开PSM
OK
2020-09-01 11:35:38.862
+ECPSMR: 1 ------模块进入psm,串口停止工作,需要一直拉低eint键唤醒模块
目前L660DTU 和L620DTU 软件上稍微有点差异,主要是Ctwing平台,创建产品时候endpoint的选择,L660DTU的endpoint为IMEI, L620DTU为 IMEI-IMSI 两个不能通用,需要重新创建设备.
AT+ECCGSN="IMEI","788596633100008"
首先,通过AT+MOPENLIGHT=0来关闭指示灯
L660插卡且发AT+CFUN=0时:
AT+ECPMUCFG=1,1 3.8mA
AT+ECPMUCFG=1,2 18uA
AT+ECPMUCFG=1,3 7uA
AT+ECPMUCFG=1,4 1.5uA
AT+ECPURC="HIBNATE",1
AT+AUTOREGCFG="allenable" //开启自注册总开关
AT+AUTOREGCFG="CTCC","enable" //使能电信自注册
AT+AUTOREGCFG="CTCC","cleanflag" //清楚之前的自注册信息
AT+ECFREQ=3或AT+QCSEARFCN=0(较早的版本不支持该指令,两条指令效果相同)
AT+ECPCFG="logCtrl",2
SDR105(SDR105:无线电收发及前端IC) 有内置LNA, external LNA为可选。详情可参考下面的图:
支持干扰检测
使用 AT$QCJDCFG=1使能,测试过gsm、nb是可以的,cat-m没测试过,应该也支持;
该命令目前还没写入AT文档。(2019/12/31)
L710支持iot-sdk,但是这个功能目前还在调试中,目前只有高通的指导文档。(2019/12/31)
NB和CATM不会同时支持,看卡的支持情况;如果卡支持NB & GSM,而且当时NB和GSM信号强度一样,NB优先,如果NB的信号不好,则自动注册到GSM;如果卡支持多于一种制式,也可以手动切换,
AT+CNMP=13
OK // 13 means GSM only
2 – Automatic
13 – GSM Only
38 – LTE Only
51 – GSM and LTE only
切换结果可以通过 AT+COPS? 或 AT+CPSI? 查询
如果出现该问题,请检查固件版本,并更新到最新版本(如L710v03.01b01.00版本比较旧,不支持模式切换)
ROM:1M Byte RAM:2M Byte FS:1M Byte
标准4+2的模组可以给客户提供:RAM: 160M,Flash: 300M
休眠电流 | 关闭MODEM | 0.6mA | |
MODEM开启 | 1.2mA |
PSM电流 | 11uA | 开启PSM功能前提下 |
工作电流 | 开机附着 | 52.9mA | |
IDLE | 14.93mA | 保持网络连接,不进行数据收发,系统不休眠 | |
最大电流 | 120mA | 最大功率时电流 |
AT+CNAOP=7,13
进了DRX后,模块本地保持网络,在基站那边的注册信息也在,但是RRC实际已经释放,只有广播信道BCH在等系统通知,服务器下发数据的时候,先通过BCH通知到模块,如果这时候有空闲RRC资源,就可以马上注册上,如果这时候小区没有空闲的RRC,只能排队,等待资源,所以有些情况下慢的问题,可能是这种情况;数据发送发送完,如果有RAI命令就立即释放RRC,如果没有发就20S后释放RRC。
是的,eDRX和PSM值是由网络根据开的卡下发的,也就是说和卡有关!
1、要看卡能不能设置,最终能不能生效还是要看网络根据卡类型下发相关值;
2、AT+CPSMS只是你想设置成什么样,不一定会生效;
3、要看真实的值,可以通过AT+CEREG? 查询(前提AT+CEREG=4)
AT+WIMEI1="123451234512345",1 //写IMEI的
AT+WMEID="12345123451234",1 //写MEID
CMD_AT_RIMEI="AT+RIMEI1"
CMD_AT_RMEID="AT+RMEID"
CMD_AT_RSN="AT+RSN"
CMD_AT_RWIFI="AT+RWIFI"
CMD_AT_RBT="AT+RBT"
CMD_AT_WIMEI="AT+WIMEI1"
CMD_AT_WMEID="AT+WMEID"
CMD_AT_WSN="AT+WSN"
CMD_AT_WWIFI="AT+WWIFI"
CMD_AT_WBT="AT+WBT"
CMD_AT_AT_WKPRD="AT+WKPRD"
PIN38、PIN39
安立8821C
UDP/TCP---->DTLS----->CoAP/MQTT----->LWM2M----->云平台
1: 确保板子没有进入PSM
2: 如果一次不成功,可以考虑重新上电
3:确保:NVSETPM设置为0,
4,:或者点击工具栏中最左边的一个按键
如果以上都能满足 ,下载程序没有问题 已经测试验证过。
B1, B3, B8, B28 ( telestra )
B1, B3, B5 ( Vodafone )
先打开PSM功能(CPSMS=1),然后将CEREG设置为4,5,然后再用AT+CEREG?去查询
AT+CEREG?
+CEREG: 5, 1,"73f0","0726ac53", 9,1,0,"00000001","00111000"
OK
其中AT+CPSMS?查询的是我们模块设置的值,并非是实际的TAU(T3412)的值
AT+CPSMS?
+CPSMS: 1,,,"01000011","00000000"
OK
L501 TTS UTF-16格式语音播报采用大端模式
如客户要求播放:好码齐收款,转码结果为 7D59 0178 509F 3665 3E6B
转换为大端模式后,执行指令
AT+MTTS=2,"597D78019F5065366B3E"
OK
+MTTS: SUCCESS
即可成功播报指定内容
AT*COMFEATURE=2,10 这个查询是存入到NVM的RPLMN,HPLMN等信息。
AT*LWIPCTRL=mode,dongle,1
AT*PROD?
AT*PROD=1
AT*MRD_IMEI=D
AT*MRD_IMEI=R
AT*MRD_IMEI=W,0101,12NOV2010,864788050004261(IMEI number),0
AT+MRD_SN=D
AT+MRD_SN=R
AT+MRD_SN=W,0101,12NOV2010,G4L82702010037(SN number)
AT*PROD=0
1:AT+SWITCHSIM? 返回0或者1,当前使用的主卡。
2:AT+SWITCHSIM=?返回+SWITCHSIM: (0: SIM1, 1: SIM2),
3:AT+SWITCHSIM=0或者1,设置主卡。
AT+DUMPCFG=1 指令控制
1是dump自动重启,0是不重启
Q: Wifi scan ,工作的时候, LTE处于什么状态?
A: LTE处于idle 状态。Paging 接收和测量测量都已经完成后,有空闲才会做wifi 搜索.
Q: WIFI 扫描一次,需要多久?
A: 目前开放给客户的是:3*120*14ms=5040ms, 但因为需要向LTE 申请,实际做wifi 的时间是5s左右,但考虑到LTE 允许调度,可能还需要额外开销。
Q:Scan的优先级是怎么设定的? 有哪些业务能打断?是否可以强制启动?
A: Scan的优先级是很低的。电话和数据业务都可以打断. WiFi定位只是定位业务的一个补充,在modem侧处于数据业务连接态或者搜网状态等其他非待机状态,都是不能执行WiFi扫描的。 强制启动也要视LTE状态来定。
看这个描述,也就是必须网络空闲时候才能wifiscan,其他的都会失败或者报错,特别是刚开机搜网网络还未进入空闲态,或者有数据业务等,都会导致wifiscan延后或者无法正常运行
AT$MYDOWNLOAD=1
关volte的三条指令,重启生效:
AT+CFUN=0
AT*IMSCFG="switch","off" 这条指令是关闭VOLTE的.
AT*NVMFLUSH=1 更新NVRAM
查询指令:
AT*IMSRCFG="switch" 查询是否关闭VOLTE.
1603少了SDIO,MMC,GPIO和IIC数量减少
ST7789V,gc9106,gc9305,gc9306,gc9307,gc9300,gc9a01,st7789s,st7735s,
ili9340,ili9342,st7735s,ST7789V
mipi_gc2145,mipi_gc030a,mipi_gc2385,spi_bf20a2(不能用于480*640 full size输出),spi_bf20a6,spi_bf30a2,spi_gc032a,spi_gc0310
ASR:移柯、移远、芯讯通、高新兴、域格、信可、信位、锐琪
RDA:移远(EC200U)、有方(N58)、广和通(L610)、中移(ML302)、合宙、龙尚(M5700)、联通物联(雁飞)、美格(SLM320)、博实结(BC76)、骐俊(ML110)、飞图同辉(FLY380S)、夏新(AL36)、有人(WH-GM5)、宽翼(BM215)
NVM区的一些参数,比如电话本,短信,音频相关的,一些客户设置的存NV的参数会被擦除。
L501 休眠时间跟L506不太一样,休眠需要一段时间,容易跟唤醒产生冲突.所以增加了休眠后上报enter sleep,唤醒后上报module ready.
AT+Mconnect=0,60 指令中配置的60s,模组会每隔60秒给服务器一个ping request消息,服务器会回复ping response给模组
串口3,不过目前软件还未适配过
新增TCP状态查询指令:AT+TCPOPENQUERY
起始版本:L501Cv02.03b05
AT+NETOPEN
OK
+NETOPEN:SUCCESS
AT+MCIPCFG=30 //设置心跳包时间为30S
OK
AT+CIPOPEN=0,"TCP","182.148.114.87",6600
OK
+CIPOPEN: SUCCESS,0
根据客户需要,L501 TCP hex最大发送长度由原来的750字节增加到1250字节(字符由原来的1500字节增加到2500字节)
这个是是失活的是VOTLE的IMS的PDP,ID=8的,AT+CIREG=0,手动关闭,VOTLE的上报,改卡不支持VOLTE功能。
2.7V-3.3V射频性能会变差,低于2.7V模块直接关机
L501C 01B31版本及之前的版本均不支持,平台bug,之后的版本待解决
L506系列2020.6.24之前的版本均不支持;平台bug,6,28修复并且URC字段兼容3GPP标准,更新了版本
关机方式由两种:
采用硬件关机,直接关断VBAT
使用软关机,发送AT+POWEROFF指令进行关机
长按PWRKEY 7-8S大部分可以关机,但是每个模块的个体时间有差异,有些长按10S才能关机,有些长按10S模块会直接重启,由于时间不稳定,所以不建议采用PWRKEY关机。
L501与L506等不同,不支持开机键直接对地来上电开机;
经实测,会先开机,但马上又会关机;
AT*MP3=文件名,直接播放,需要通过CAT工具将MP3 放入文件系统,默认会在根目录下,直接=文件名就可以播放了
平台不支持录音存储(存模块或者存外挂flash,本质都是写操作,目前平台不支持)
上行 | 下行 | |
移动 | 9.04Mbps | 4.01Mbps |
联通 | 8.99 Mbps | 3.83Mbps |
电信 | 8.83 Mbps | 3.79Mbps |
AT*WIFICTRL=1
OK
*WIFICELLINFO: "BC4699915298",-32, 1
*WIFICELLINFO: "CC08FBAF0FA8",-88, 1
*WIFICELLINFO: "70F96DB4BB11",-90, 6
*WIFICELLINFO: ,0, 0
是的,有4G的网络就能用,这个跟基站没关系,只是和模块终端有关系,模块终端cat几是速率的问题,可以理解为像3G模块一样,有HSPA+,HSPA,UMTS不同的速率
预留2.5MB
AT*PROD?
AT*PROD=1
AT*MRD_IMEI=D
AT*MRD_IMEI=R
AT*MRD_IMEI=W,0101,12NOV2010,864788050004261(IMEI number),0
AT+MRD_SN=D
AT+MRD_SN=R
AT+MRD_SN=W,0101,12NOV2010,G4L82702010037(SN number)
AT*PROD=0
配置固定发送功率命令:
0dB发送: AT+ECPHYCFG="power",1,0
10dB发送: AT+ECPHYCFG="power",1,10
23dB发送: AT+ECPHYCFG="power",1,23
上述命令配置后立即生效,会写入flash,以后开机都会按照写入的功率发送。
要清除固定功率,需要配置:
AT+ECPHYCFG="power",0
AT+ECRST=delay,599,设置之后后会自动重启进入下载模式
AT+ECCGSN="IMEI","865357061948400"
代码区10Mbytes,用户区200Mbytes,RAM 50Mbytes
RAM总数256Mbyes,Flash是512Mbytes
ps -ef
mbtk_info_test.c
原始RAM:128MB;原始ROM:256MB
剩余RAM:60-70MB;剩余ROM:AB分区130MB,非AB分区150MB
RAM500K rom200K
PIN序号 | 模块PIN脚功能 | 可作为OPENCPU功能 | 是否支持中断 | 备注 |
3 | GPIO_MB_1 | GPIO | NO | |
8 | RTS | GPIO | YES | OPENCPU中当作GPIO后串口不支持流控 |
9 | DSR | GPIO | YES | OPENCPU中当作GPIO后串口不支持流控 |
10 | CTS | GPIO | YES | OPENCPU中当作GPIO后串口不支持流控 |
11 | DCD | GPIO | YES | OPENCPU中当作GPIO后串口不支持流控 |
14 | PWM0 | GPIO | YES | OPENCPU中当作GPIO口不支持PWM功能 |
23 | SIM_DET(GPIO_MB_0) | GPIO | YES | OPENCPU中当作GPIO不支持SIM卡热插拔 |
28 | STATUS | GPIO | NO |
硬件上不支持硬件的SPI和I2C,OPENCPU平台提供了软件模拟的SPI和I2C的功能,客户可以根据自己的需要选择使用那些口作为SPI和I2C使用。用于控制外部设备,由于是模拟功能,速度不得高于500K,不可用于大数据量操作;
L218 ROM 500KB,RAM 400KB,FS 110KB
200K Bytes ROM,code+data
200k Bytes RAM
100k Bytes FS area
12 GPIO 8 EINT
13 timers
2 uart
1 usb(just for debug)
1 adc
1 pwm
1 spi(GPIO Virtual)
1 i2c(GPIO Virtual)
this is some information about L206C&L206CD opencpu!
L206C OPENCPU:
主频 260MHz
200K Bytes ROM, code+data
200k Bytes RAM
100k Bytes FS area
12 GPIO 8 EINT
13 timers
2 uart
1 usb(just for debug)
1 adc
1 pwm
1 spi(GPIO Virtual)
1 i2c(GPIO Virtual)
L206CD OPENCPU:
主频 260MHz
200K Bytes ROM,code+data
200k Bytes RAM
700k Bytes FS area
12 GPIO 8 EINT
13 timers
2 uart
1 usb(just for debug)
1 adc
1 pwm
1 spi(GPIO Virtual)
1 i2c(GPIO Virtual)
原始RAM:32MB;原始ROM:16MB
剩余RAM:1.7MB;剩余ROM:约6MB(URFS 900KB+APP 700KB+FOTA 4MB)
app测映射接口是ol_set_dump_flag,设置1是相当于 SilentResetEnable
设置0是SilentResetDisable
ol_set_syssleep_status(1);
LYNQ_ASR_CAT1_OPEN应用指南_KERNEL映射APP指导.pdf
timer_arg *info;
info = ol_malloc(sizeof(timer_arg));
info->a=1;
info->b=200; //ticks, 1 tick is 5ms
ol_os_timer_start(timerref, 5*200, 0, os_timer_demo_timeout_hdl, (uint32)info);
AT+LOG=16,511是配置打到debug串口
AT+LOG=16,529是将log恢复到catstudio上
ol_enable_sys_debug_uart_log('0'):0为关闭
AT+MDUMPEN=0或者调用ol_set_dump_flag(0):0为打开
ol_powerup_get_reason
sdk的Vxx说明下
v04 42基线
v05 62基线
v06 69基线(不支持4M版本)
v07 78基线(只支持4M版本)
v08 91基线(支持所有8M,4M)
device_demo里面的mbtk_factory_demo
extern uint32_t ol_get_mem_freesize(void);
extern uint32_t ol_get_mem_totalsize(void);
OL_UART_PORT_STUART: 串口1
OL_UART_PORT_FFUART: 串口2
OL_UART_PORT_BTUART: 串口3
OL_UART_PORT_UART4:串口4
Codec:
es7111codec---不支持Mic
es8814codec
Flash:
W25Q32JWSSIQ----Nor flash
XM25QU128C----Nor flash
F35UQA002G-WWT----Nand Flash
P25Q64SL----Nor flash
BY25Q16AW ----Nor flash
ZB25LQ16A.----Nor flash
管脚 | 功能 | GPIO 复用 | 中断 复用 | 备注 |
38 | LCD_ID | YES | NO | |
37 | KEY_VOL_UP_N | YES | YES | 如设为GPIO,则不支持音量上键功能 |
60 | MIPI_CSI1_LANE0_M | NO | NO | |
61 | MIPI_CSI1_LANE0_P | NO | NO | |
62 | MIPI_CSI1_CLK_P | NO | NO | |
63 | MIPI_CSI1_CLK_M | NO | NO | |
66 | CAM1_MCLK | YES | NO | 如设为GPIO,则不支持前摄 |
69 | SCAM_RST_N | YES | YES | |
70 | SCAM_PWDN | YES | NO | |
73 | CAM_FLASH_TOUCH_EN | YES | YES | 如设为GPIO,则不支持闪光灯功能 |
74 | CAM_FLASH_TORUCH_MODE | YES | NO | |
99 | VIB_DRV_N | NO | NO | |
107 | ACCL_INT1_N | YES | YES | * |
119 | PMIC_GPIO1 | YES | NO | PMIC GPIO只能由system控制,用户无法通过APP控制 |
120 | BAT_CON_TEMP | NO | NO | |
126 | KYPD_SNS1_VOL_DOWN_N | YES | YES | 使用后将不再支持音量下键的功能 |
127 | HOME_ROW_LED/GPIO/ KYPD_SNS2 | YES | YES | |
129 | RFFE2_CLK | YES | NO | |
130 | RFFE2_DATA | YES | NO | |
131 | ALPS_INT_N | YES | YES | * |
132 | GPIO1_MB_4/I2S_SCK | YES | NO | |
133 | GPIO2_MB_5/I2S_D0 | YES | NO | |
134 | GPIO3_MB_6/I2S_D1 | YES | NO | |
135 | GPIO98_MB_7/I2S_MCLK | YES | YES | |
136 | GPIO0_MB_8/I2S_WS | YES | NO | |
140 | SPI_1_CS/I2C_SDA/ GPIO111_MB_2/UART_CTS | YES | YES | |
141 | SPI_1_CLK/I2C_SCL/ GPIO112_MB_3/UART_RFR | YES | YES | |
143 | ACCL_INT2_N | YES | YES | * |
供应商 | 型号 | 像素 | 类型 |
ON Semiconductor | AR0542 | 5M | RAW |
豪威科技(上海)有限公司 | OV5648 | 5M | RAW |
豪威科技(上海)有限公司 | OV5675 | 5M | RAW |
豪威科技(上海)有限公司 | OV5670 | 5M | RAW |
豪威科技(上海)有限公司 | OV5695 | 5M | RAW |
三星电子株式会社 | S5K5E2 | 5M | RAW |
三星电子株式会社 | S5K5E8 | 5M | RAW |
北京思比科微电子技术股份有限公司 | SP5409 | 5M | RAW |
格科微电子(上海)有限公司 | 5M | RAW | |
SK海力士股份有限公司 | 5M | RAW | |
SK海力士股份有限公司 | 5M | RAW |
这几个电源脚是内部PMIC不同的路的供电,由于是由Register控制,不能接在一起。 最大电流都是200mA。
这个是专门用于射频电路的,不能应用于其他设备。
最大电流420mA,可根据实际摄像头的功耗决定是否使用,8M以下没有问题。
M1503支持双卡双待,USIM卡槽1支持全网通,USIM卡槽2支持除C网以外的其他网段,两个卡槽均支持热插拔;如果需要支持NFC,默认卡槽1作为NFC支付卡,暂不支持NFC卡模式的自由切换;
UART0标准MODEM, UART1调试口, UART2可接外部AP
模块自带充电功能,线性充电;充电电流可到1.2A
硬件设计手册中提到的UART1就是UART0两线调试口
MIPI部分建议如下:
1、等长差分对称
等长是为了保证两个差分信号能同时到达接收端。在等长的基础上尽量差分走线。以临层为参考的话,差分阻抗要控制在100ohm+/-5ohm
2、参考层:
MIPI信号线下方一定要有参考层(推荐地层),且一定保证参考层的连续性(即在MIPI信号线下方的参考层不能被分割或有间隙,不能被其他走线截断),
最好是有一整片的地层,如果做不到,至少要保证MIPI信号线下方的参考层比MIPI信号线每边要宽4w以上(w即MIPI信号走线宽度)。
3、远离干扰
MIPI线对之间要保持至少2w以上的间距,MIPI信号线要远离其他高速信号(如并行数据线,时钟线等)
4、尽量不要打孔,如有过孔尽量用埋孔,且埋孔周围多打地孔,保证信号的回流。
默认2mA,客户有特别需求可选2/4/6/8mA,需要软件进行配置
具体文件:
u-boot15/board/spreadtrum/sl8521ett_3h10/pinmap-sl8521ett_3h10.c
函数:
BITS_PIN_DS(0/1/2/3)对应2/4/6/8mA
方法一:UART1_TX拉低,脉冲方式;
方法二:KEYIN0和KEYOUT0短接,脉冲方式;
先拉低再启动,这样一启动就检测到拉低,否则时间差有点大会直接开机了
输入范围:1.2V-3V; 精度:12bit;
电源 | 范围 | 单位 |
VIO1V8 | 1.62-1.98 | V |
VCAM | 1.62-1.98 | V |
VSD2 | 1.62-3.3 | V |
VSIM2 | 1.62-3.3 | V |
制作参数:
按照参数H*W=320*240,位深度=8,格式bmp。制作LOGO图片即可
备注:M1901v01.01b03后面的版本才带有默认开机logo,客户提到没有开机logo时候注意确认版本
方法一:下载pac文件前,替换图片路径
方法二:执行编译脚本【pack.sh】生成【**.pac】文件内就存在,需要文件【logo.patch】
将logo文件替换成idh/vendor/mbtk/res/logo/boot_logo,
执行:
patch -p1< logo.patch
./pack.sh
生成的pac文件中包含logo了
调试过程中,如果VBAT_SENSE悬空,会导致检测不到电压,每隔3S多机器重启一次,现象如下:
isense和vbat_sense是通过电阻来检测电池电流的,如果使用电源供电,不检测电池电流,vbat_sense需要通过电阻接到VBAT,否则会出现异常重启。
第一步: 上电, 第二步,同时按PWK和forceDL几秒;第三步:网络灯亮;第四步 :插入USB线 ,按照文档M1901_下载_ReleaseNotes_V0.1.pdf 就下载了
步骤如下:
把adb在Windows下解压之后放Ubuntu,
把Camera.sh中的adb路径改一下 保持一致 例如:
支持,windows 上安装驱动以后,和L506驱动一样,插上usb后会虚拟出modem口,可以发一些通用at命令。
AW9523
LCM/TP: Shenzhen YeXinDa, Marketing Director-Yanping Yang +86 13823601389, 1043787023@qq.com
TP: Shenzhen Hongzhan, Business Manager- Zengguan Li +86 13823556840, 13823556840@163.com
坚美欧:总经理 刘建中 18676730890 straight@jmolcd.com
深圳迈吉科:项目经理 陈世益 13662671924 chen.shiyi@mjkopto.com
江西合力泰: 项目经理 陈婵维 13715141860 chenchanwei@holitech.net
深圳华信元:宋增华 13510859362 hxysongzh@163.com
Shenszhen BPI, http://en.betterpower.com.cn/, Sales manager fengping, +86 13421313741, bpi_sa39@163.com
Zhuhai Jiade, http://www.blbattery.com/en/index.asp, Sales manger Zhikai chen, +86 13902988723, chenzk@blbattery.com
1、MT8735的优势是屏分辨率1920*1080,MT6739只有1440*720;
2、MT8735双13M摄像头,MT6739最高8M和0.3M双摄;
3、MT6739主频1.5G,MT8735是1.3G,MT8735A也能到1.5G;
4、MT6739图像处理更强一点点;
5、MT6739蓝牙支持4.2,MT8735是4.1
参考《M1710_Secure_Boot签名流程.docx》 。
另外LYNQ 会提供EFUSE 镜像包,里面包括sign.sh 自动执行签名脚本。
1. 确认gpio顺序
2. 在android shell环境下执行示例:
#切换root权限
sudo su
# 进入GPIO目录
cd /sys/class/gpio
# GPIO操作接口从内核空间暴露到用户空间
# 执行该操作之后,该目录下会增加一个gpio4文件
echo 4 > export
# 进入GPIO4目录,该目录由上一步操作产生
cd gpio4
# 查看gpio4目录中的内容,可查看到
# active_low direction edge power subsystem uevent value
ls
# 设置GPIO4为输出方向
echo out > direction
# BCM_GPIO4输出逻辑高电平,LED点亮
echo 1 > value
# BCM_GPIO4输出逻辑低电平,LED熄灭
echo 0 > value
# 注销GPIO4接口
echo 4 > unexport
参考《M1710 fsg分区备份和还原.docx》
pin 200 (BAT_CON_ID)电池检测需要通过0R电阻接地,如果悬空会导致模块无法开机。
新的02版本才引出了I2S
I2S信号
108PIN:MI2S_1_D1
109PIN:MI2S_1_D0
110PIN:MI2S_1_WS
111PIN:MI2S_1_SCK
182PIN:MI2S_1_MCLK
飞行模式:2.8 mA
待机功耗:4.5 mA
4G 状态最大功耗:单位(mA)
BT、WIFI 的最大功耗数据:
有关产品选型、技术支持、媒体合作等事宜,请随时与我们联系。