Skip to content

AT固件快速入门

功能介绍

AT固件实现了通过指令方式与小机云对接。降低与云服务对接难度,加快实现产品功能。固件重要功能介绍

  • 发送和接收小机云数据
  • 监听小机云通知,实现OTA与配置实时通知等
  • 固件自动上传,硬件信号,网络,查询基站定位等状态
  • 发送485文本数据或Modbus-RTU协议
  • 本地存储自定义配置

更多的与小机云对接的文本协议请参考《小机云文本协议》

更多的配置硬件的文本协议请参考《硬件功能协议》

优化建议:

  1. 请确保小机云硬件的天线连接。尽量保持天线在空旷位置,无金属,墙壁等遮挡,保证硬件的信号强度
  2. 尽量使用单片机硬件,减少控制小机云内部IO,以减少串口通讯的频率,可提高稳定性。
  3. 使用多线程多并发的嵌入式系统
  4. 如果需要更高的即时性,请使用模块二次开发的方式实现功能,更灵活,更高效

准备工作

  • 确保已经在小机云的项目中已经创建设备,且该小机云控制台上设备的SerialNo与小机云硬件的IMEI号一致。

  • SIM卡可以上网。随硬件赠送的SIM已经开通,插入硬件中即可使用。正常开机联网后,SIM卡会绑定硬件,该SIM卡只能在该设备上使用

  • 让小机云硬件与上位机或单片机等主控设备连接。小机云硬件默认通讯通道顺序为:UART或RS232。如果有UART的情况下为UART,如果没有UART则默认通讯通道为RS232。如果只有RS485,则需要通过快捷指令把通讯通道切换为485。切换通讯通道指令

    UART与RS232的默认波特率为115200,RS485的默认波特率为9600。因为485协议通信协议速度慢,不建议要求高实时性的场景下使用485协议通讯

    可以通道查询IMEI号指令测试主控是否与硬件连接成功,$XGC#GET_IMEI#0#0&#5A#\r\n

须知

  • 开要等待蜂窝网络就绪。如果2分钟后蜂窝网络未就绪,将会切换到飞行模式后20秒后继续等待蜂窝网络就绪。如果循环直到蜂窝网络就绪
  • 设置好项目密钥信息后,固件会在5秒内自动获取设备MQTT密钥,获取失败会每间隔5秒继续重试。获取到设备密钥成功后会自动退出重试循环,并连接MQTT
  • 当MQTT断开后,5秒会后自动重连。如果5分钟后未重连成功设备将会自动重启,重新走开机流程
  • 设备默认会在165秒一个循环向小机云发送设备信号,电量,充电状态,基站定位,SIM卡的iccid信息发送到小机云设备属性中。上传参数可以通过指令 设置设备属性上传参数

重要的指令

AT固件开机通知

开机状态通知,请参考:开机状态通知

设备基本信息通知,请参考:通知设备基本信息

初始化完成后,会向主机发送IO状态通知,请参考:开机IO通知

配置密钥

注意:设备硬件已经在该项目中创建设备,且,项目中的设备唯一编码必需与硬件的IMEI号一致

  1. 在设备所在的项目卡片中,点击设置图标,查看项目ID(ProjectId)与项目密钥(ProjectSecret)

image.png

  1. 使用下面指令把上面获取到的项目ID与项目密钥配置到设备中,每台设备只需要配置一次。

    $XGC#SET_PRJINFO#867435053362828#0#PID:1000904556b23945fe90;PSECRET:76EDCE04DE96555E16CB34175F2B1565493A7412&#50#\r\n

    配置项目信息指令详情

  2. 配置完成后设备将会自动与小机云连接。连接成功后5秒,DTU会使用配置的项目信息去连接小机云。与小机云连接成功后,串口会返回mqtt-connected指令,表示连接成功

    $XGC_ACK#GET_DTU_STATE#867435053362828#0#mqtt-connected&#6c#

IO中断

当小机云硬件输入检测IO检测到电平变化,会向主机发送下面协议通知,下面协议表示,in1位IO检测到高电平

$XGC_ACK#GPIO_INT#867435053362828#0#in1:1&#70#

设置小机云硬件IO

可以通过下面协议设备小机云硬件输出IO状态,如继电器。下面指令设置out1到out8的电平

XGC#SET_GPIO#867435053362828#0#out1:1;out2:1;out3:1;out4:1;out5:1;out6:1;out7:1;out8:1&#4f#

发送485数据

使用指令,命令小机云硬件通过485发送数据,可以发送原始数据,也可以发送RTU数据,下面指令发送RTU数据,读取温度传感器数据

指令:$XGC#SEND_MBR_485#867435053362828#0#addr:01;instructions:03;reg:0000;value:0001&#33#

回复:$XGC_ACK#485_RECEIVE#867435053362828#0#0103020115781B&#50#

AT固件的OTA升级

在默认的使用场景中,小机云的OTA升级功能是给主机进行OTA升级用的。如果需要升级AT固件,需要通过主机查询或接收到小机云的OTA通知后,向小机云硬件发送升级通知。具体请看AT固件的OTA升级

更多功能请查看STM32+AT固件Demo