跳转至

CI23LC系列小程序交互协议与功能说明

CI23LC系列语音蓝牙芯片,可使用 “启英物联”“AI语音智控” 微信小程序进行蓝牙连接设备控制,本文主要描述小程序与CI23LC语音蓝牙设备的控制协议与自定义小程序协议的内容。

1. 微信小程序使用

1.1 小程序区别

启英提供两款微信小程序,“启英物联”“AI语音智控” 小程序,主要功能区别如下表,客户根据自身需求进行小程序选择。

小程序 启英物联 AI语音智控
ble蓝牙控制 支持 支持
设备端通过协议自定义按键 支持 支持
IOT控制 支持 不支持
启英平台功能 支持 不支持
启英泰伦信息特征 包含 不包含

1.2 微信小程序使用

  1. 打开微信,扫描小程序码或搜索 “启英物联” / “AI语音智控” 进入小程序。
  2. 打开蓝牙权限(部分手机需要开启位置权限)。
  3. 开启手机蓝牙。
  4. 添加设备,通过点击“+”号,或者“添加设备”按键,进行添加设备。
  5. 进入扫描设备界面,点击扫描到的设备(小程序已有:风扇、空调、取暖器、茶吧机,灯控等设备…)。
  6. 确定连接设备,并设备命名。
  7. 连接成功,返回首页。
  8. 点击添加的设备即可进入设备操作界面。

启英物联小程序码

图1-1 启英物联小程序码

AI语音智控小程序码

图1-2 AI语音智控小程序码

小程序使用步骤

图1-3 小程序使用步骤

2. 设备与小程序交互协议

启英微信小程序与CI23LC/CI231X系列语音蓝牙设备的交互协议,根据设备不同应用领域,协议内容有一定的区别,已对一些设备应用的领域进行ID定义 ,语音端和小程序将根据领域ID进行对应的协议处理。

CI23LC系列语音SDK代码中,在app_ble\demo\cias_demo_config.h文件中对DEV_DRIVER_EN_ID进行修改。

#define DEV_DRIVER_EN_ID                    DEV_FAN_MAIN_ID     //设为风扇领域设备

//主设备ID定义
#define DEV_IR_CONTROL_MAIN_ID              0x01   //红外遥控器
#define DEV_AIRCONDITION_MAIN_ID            0X02   //空调
#define DEV_LIGHT_CONTROL_MAIN_ID           0x03   //灯控
#define DEV_SOUND_MAIN_ID                   0x04   //音响设备
#define DEV_TEA_BAR_MAIN_ID                 0x05   //茶吧机
#define DEV_FAN_MAIN_ID                     0x06   //风扇
#define DEV_HEATTABLE_MAIN_ID               0x07   //取暖桌
#define DEV_WARMER_MAIN_ID                  0x08   //取暖器
#define DEV_WATERHEATED_MAIN_ID             0x09   //水暖毯

2.1 小程序设备类型

设备类型 BLE蓝牙
0x01 红外遥控器
0x02 空调
0x03 灯控
0x04 音响
0x05 茶吧机
0x06 风扇
0x07 取暖桌
0x08 取暖器
0x09 水暖毯
0x0A 微波炉
0x0B 窗帘
0x0C 加湿器
0x0B 足浴盆

2.2 设备页面主题修改协议

该协议适用于小程序各领域设备,但目前仅风扇领域实现该协议功能

协议格式:帧头(2Byte)+协议版本(1Byte)+标题数据长度(2Byte)+页面标题(nByte)+CRC16校验(2Byte)

帧头(2Byte) 协议版本 (1Byte) 标题数据长度(2Byte) 页面标题 (nByte) CRC16 (2Byte)
0xA55A 0x05(页面标题修改) byte0:高字节;byte1:低字节; xx.....;

CI23LC系列语音SDK代码中,直接在app_ble\demo\cias_demo_config.h文件中对APP_PAGE_TITLE进行修改。

#define APP_PAGE_TITLE                      "语音智能设备"//设备控制页面标题. 中文最大长度9,字母数字最大长度15

该协议相关函数代码在app_ble\demo\cias_ble_msg_deal.c文件中

/*
    启英设备控制页面标题内容显示
    协议格式:帧头(2Byte)+协议版本(1Byte)+标题数据长度(2Byte)+页面标题(nByte)+CRC16校验(2Byte)
*/
void app_title_set()

其页面主题修改效果图如下:

设备页面主题

图2-1 设备页面主题修改

2.3 设备页面背景修改协议

该协议适用于小程序各领域设备,但目前仅风扇领域实现该协议功能

协议格式:帧头(2Byte)+协议版本(1Byte)+页面背景数据长度(2Byte)+页面背景-(nByte)+CRC16校验(2Byte)

帧头(2Byte) 协议版本 (1Byte) 页面背景数据长度(2Byte) 页面背景(nByte) CRC16 (2Byte)
0xA55A 0x06(页面背景修改) byte0:高字节;byte1:低字节; xx.....;

CI23LC系列语音SDK代码中,在app_ble\demo\cias_demo_config.h文件中对APP_PAGE_BACKGROUND进行修改。

#define APP_PAGE_BACKGROUND                 "1"         //设备控制页面背景. "1":默认背景图; "2":灰色; "3":白黑渐变; "4":渐变; "5":开/关机-蓝/白切换;

该协议相关函数代码在app_ble\demo\cias_ble_msg_deal.c文件中

/*
    启英设备控制页面页面背景
    协议格式:帧头(2Byte)+协议版本(1Byte)+背景数据长度(2Byte)+页面背景(nByte)+CRC16校验(2Byte)
*/
void app_background_set()

其背景图效果如下:

设备页面背景修改

图2-2 设备页面背景修改

2.4 小程序调用用户层事件回调函数协议

该协议适用于小程序各领域设备

协议格式:帧头(2Byte)+命令(1Byte)+CRC16校验(2Byte)

帧头 命令**(1Byte)** CRC16 (2Byte)
0xA55B 0x01(设备ble连接断开)
0xA55B 0x02(小程序获取词条信息)

该协议相关函数代码在app_ble\demo\cias_ble_msg_deal.c文件中

/**
 * @brief 处理蓝牙接收到的手机端消息-只使用于启英物联加密交互,客户使用自己的私有协议
 * @param recv_data 接收到的数据;
 * @param len       接收数据长度;
 */
void ci_ble_recv_data_handle(uint8_t *recv_data, uint8_t len)

2.5 小程序和设备通信协议格式

帧头(2Byte) 协议版本(1Byte) 厂商ID(1Byte) 设备类型(1byte) 设备编号(1byte) 功能类型(1Byte-高4位)
数据类型(1Byte)-低4位)
功能ID (1Byte) 数据长度(2Byte) 数据(nbyte) CRC16 (2Byte)
0xA55A 0x01-v1.0 0x01-启英泰伦 小程序支持的设备类型
参考2.1设备类型列表
默认0x01 功能类型:
0x1-属性设置
0x2-事件上报
0x3-设备状态查询
0x4-应答消息
数据类型:
0x1-16进制数据
0x2-JSON格式数据
根据不同产品定义功能
参考2.6通信协议实例
每包数据长度 用户数据 整包校验

2.6 通信协议实例

2.6.1 空调设备

帧头 协议版本 厂商ID 设备类型 设备编号 功能类型 数据类型 功能ID 数据长度 数据 CRC16
0x01:V1.0 启英泰伦-0x01 0x02-空调 0x01 功能类型:
0x1-属性设置
0x2-事件上报
0x3-设备状态查询
0x4-应答消息
0x1-16进制编码数据
0x2-JSON数据
1Byte 2Byte nBytes
0xA55A 0x01 0x01 0x02 0x01 0x3 0x1 0x00(空调查询全属性) 0x00,0x01 0x00;
0xA55A 0x01 0x01 0x02 0x01 0x1/0x2 0x1 0x01(空调开关) 0x00,0x01 0x01,关;0x02,开
0xA55A 0x01 0x01 0x02 0x01 0x1/0x2 0x1 0x02(空调模式) 0x00,0x01 0x01制冷;0x02制热;0x03送风;0x04除湿;0x05自动
0xA55A 0x01 0x01 0x02 0x01 0x1/0x2 0x1 0x04(空调温度) 0x00,0x01 0x100x1E(16℃30℃); 0xF1,温度增大 0xF2,温度减小 0xF3,温度最大 0xF4,温度最小
0xA55A 0x01 0x01 0x02 0x01 0x1/0x2 0x1 0x05(空调屏显) 0x00,0x01 0x01关;0x02开
0xA55A 0x01 0x01 0x02 0x01 0x1/0x2 0x1 0x06(空调健康) 0x00,0x01 0x01关;0x02开
0xA55A 0x01 0x01 0x02 0x01 0x1/0x2 0x1 0x07(空调睡眠) 0x00,0x01 0x01关;0x02开
A55A 0x01 0x01 0x02 0x01 0x1/0x2 0x1 0x08(播报音量) 0x00,0x01 0x01,关 0x02,开 0xF1,音量增大 0xF2,音量减小 0xF3,音量最大 0xF4,音量最小
A55A 0x01 0x01 0x02 0x01 0x1/0x2 0x1 0x09(空调风速) 0x00,0x01 0x01自动风速;0x02低速风;0x03中速风;0x04高速风;
A55A 0x01 0x01 0x02 0x01 0x1/0x2 0x1 0x0A(强劲风速) 0x00,0x01 0x01,强劲风关 0x02,强劲风开
0xA55A 0x01 0x01 0x02 0x01 0x1/0x2 0x1 0x0B(空调风向) 0x00,0x01 0x01,左右扫风关 0x02,左右扫风开 0x03,上下扫风关 0x04,上下扫风开 0x05,左右上下扫风关 0x06,左右上下扫风开
A55A 0x01 0x01 0x02 0x01 0x1 0x1 0x0C(控制进入匹配) 0x00,0x03 byte0, 0x01:遥控器匹配方式 0x02:直接设置品牌码库配置**byte1, 一个byte(空调品牌ID) ****byte2, 一个byte(这个品牌里面第几个码库) **
A55A 0x01 0x01 0x02 0x01 0x3 0x1 0x0D(查询空调匹配状态) 0x00,0x02 byte0, 0x01:当前已经遥控器匹配了 0x02:当前已经设置了空调品牌来匹配了 0x03:默认红外,暂无匹配**byte1(byte0:0x02时处理), **一个byte(空调品牌ID)
A55A 0x01 0x01 0x02 0x01 0x1 0x1 0X0E(品牌匹配) 0x00,0x01 0x00 :品牌匹配,空调没有反应0x01: 品牌匹配,空调有反应
A55A 0x01 0x01 0x02 0x01 0x2 0x1 0X0F(遥控器匹配) 0x00,0x01 0x00 :遥控器匹配,空调没有反应0x01: 遥控器匹配 , 空调有反应
0xA55A 0x01 0x01 0x02 0x01 0x1 0x1 0xF1(OTA开始) 0x00,0x02 **byte0, OTA固件**数据长度低8位**byte1, OTA固件**数据长度高8位
XX(OTA数据)
0xA55A 0x01 0x01 0x02 0x01 0x01 0x01 0xF2(OTA结束) 0x00,0x02 **byte0, OTA固件CRC**低8位**byte1, OTA固件CRC**高8位
0xA55A 0x01 0x01 0x02 0x01 0x2 0x01 0xF3(OTA校验结果) 0x00,0x01 0x01,OTA校验成功0x02,OTA校验失败

该协议相关函数代码在app_ble\demo\cias_aircondition_msg_deal.c文件中

/**
 * @brief 识别语音词条,设备状态上行
 * @param cmd_id 命令词ID;
 */
uint8_t aircondition_report(uint16_t cmd_id)

/**
 * @brief 接收小程序下行控制设备数据
 * @param msg 命令词ID;
 */
void aircondition_callback(ble_msg_V1_t msg)

/**
 * @brief 接收小程序下行查询设备状态数据
 * @param msg 命令词ID;
 */
void aircondition_query(ble_msg_V1_t msg)

2.6.2 灯控设备

帧头 协议版本 厂商ID 设备类型 设备编号 功能类型 数据类型 功能ID 数据长度 数据 CRC16
0x01:V1.0 启英泰伦-0x01 0x03-灯控 0x07 功能类型:
0x1-属性设置
0x2-事件上报
0x3-设备状态查询
0x4-应答消息
0x1-16进制编码数据
0x2-JSON数据
1Byte 2Byte nBytes
0xA55A 0x01 0x01 0x03 0x07 0x1/0x2 0x1 0x00(灯控查询全属性) 0x00,0x01 0x00;
0xA55A 0x01 0x01 0x03 0x07 0x1/0x2 0x1 0x01(灯控开关) 0x00,0x01 0x01:关灯; 0x02:开灯;
0xA55A 0x01 0x01 0x03 0x07 0x1/0x2 0x1 0x02(灯亮度) 0x00,0x01 灯亮度值(0-100); 0xF1:亮一点; 0xF2:暗一点; 0xF3:最高亮度; 0xF4:最低亮度;
0xA55A 0x01 0x01 0x03 0x07 0x1/0x2 0x1 0x03(灯属性模式) 0x00,0x06 byte0,R byte1,G byte2,B byte****3,E byte4,S byte5,模式( 1:白色 2:橙色 3:红色 4:紫色 5:蓝色 6:绿色 7:黄色 8:音乐)
0xA55A 0x01 0x01 0x03 0x07 0x1/0x2 0x1 0x04(灯控定时) 0x00,0x01 0x01,关 0xA1,一小时 0xA2,两小时 0xA3,三小时 0xA4,四小时 0xA5,五小时 0xA6,六小时 0xA7,七小时 0xA8,八小时 0xA9,九小时 0xAA,十小时 0xAB,十一小时 0xAC,十二小时

该协议相关函数代码在app_ble\demo\cias_rgb_msg_deal.c文件中

/**
 * @brief 识别语音词条,设备状态上行
 * @param cmd_id 命令词ID;
 */
uint8_t rgb_report(uint16_t cmd_id)

/**
 * @brief 接收小程序下行控制设备数据
 * @param msg 命令词ID;
 */
void rgb_callback(ble_msg_V1_t msg)

/**
 * @brief 接收小程序下行查询设备状态数据
 * @param msg 命令词ID;
 */
void rgb_query(ble_msg_V1_t msg)

2.6.3 茶吧机

帧头 协议版本 厂商ID 设备类型 设备编号 功能类型 数据类型 功能ID 数据长度 数据 CRC16
0x01:V1.0 启英泰伦-0x01 0x05-茶吧机 0x01 功能类型:
0x1-属性设置
0x2-事件上报
0x3-设备状态查询
0x4-应答消息
0x1-16进制编码数据
0x2-JSON数据
1Byte 2Byte nBytes
0xA55A 0x01 0x01 0x05 0x01 0x1/0x2 0x1 0x01(茶吧机开关) 0x00,0x01 0x01:关; 0x02:开
0xA55A 0x01 0x01 0x05 0x01 0x1/0x2 0x1 0x02(童锁) 0x00,0x01 0x01:关; 0x02:开
0xA55A 0x01 0x01 0x05 0x01 0x1/0x2 0x1 0x03(左壶) 0x00,0x01 0x01,结束取水 0x02,结束保温 0x03,结束制冷 0x11,开始取水 0x12,开始保温 0x13,开始制冷
0xA55A 0x01 0x01 0x05 0x01 0x1/0x2 0x1 0x04(右壶) 0x00,0x01 0x01,结束自动烧水 0x02,结束取水 0x03,结束加热 0x11,开始自动烧水 0x12,开始取水 0x13,开始加热
0xA55A 0x01 0x01 0x05 0x01 0x1/0x2 0x1 0x05(调温) 0x00,0x01 0x28,40℃ 0x2D,45℃ 0x32, 0x37, 0x3C, 0x41, 0x46, 0x4B, 0x50, 0x55, 0x5A, 0x5F,95℃ 0x64,100℃ 0xF1,温度增大 0xF2,温度减小 0xF3,温度最大 0xF4,温度最小

该协议相关函数代码在app_ble\demo\cias_tbm_msg_deal.c文件中

/**
 * @brief 识别语音词条,设备状态上行
 * @param cmd_id 命令词ID;
 */
uint8_t tbm_report(uint16_t cmd_id)

/**
 * @brief 接收小程序下行控制设备数据
 * @param msg 命令词ID;
 */
void tbm_callback(ble_msg_V1_t msg)

/**
 * @brief 接收小程序下行查询设备状态数据
 * @param msg 命令词ID;
 */
void tbm_query(ble_msg_V1_t msg)

2.6.4 风扇设备

帧头 协议版本(1Byte) 厂商ID(1Byte) 设备类型(1Byte) 设备编号(1byte) 功能类型(1Byte-高4位) 数据类型(1Byte)-低4位) 功能ID(1Byte) 数据长度(2Byte) 数据(nbyte)
0x01:V1.0 启英泰伦-0x01 0x06-风扇 0x01 功能类型:
0x1-属性设置
0x2-事件上报
0x3-设备状态查询
0x4-应答消息
0x1-16进制编码数据
0x2-JSON数据
1Byte 2Byte nBytes
0xA55A 0x01 0x01 0x06 0x01 0x3 0x1 0x00(风扇查询全属性) 0x00,0x01 0x00;
0xA55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x01(风扇开关) 0x00,0x01 0x01:关; 0x02:开
0xA55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x02(风扇风速) 0x00,0x01 0x01一档风;0x02二档风;0x03三档风0x04四档风;0x05五档风;0x06六档风0xF0:风速中等; 0xF1:风速增大; 0xF2:风速减小; 0xF3:风速最大; 0xF4:风速最小; 0xF5,禁止风速控制 0xF6,允许风速控制
0xA55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x03(风扇风向) 0x00,0x01 0x01,关;0x02,开 0x11,左右关;0x12,左右开 0x21,上下关;0x22,上下开 0x31,左右上下关;0x32,左右上下开 0xF5,禁止风向控制 0xF6,允许风向控制
0xA55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x04(风模式) 0x00,0x01 0x01智能风;0x02宝宝风;0x03正常风; 0x04睡眠风;0x05自然风;0x06暴风模式;
0xA55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x05(左右摇头角度) 0x00,0x01 0x1E,30度; 0x2D,45度; 0x3C,60度; 0x5A,90度; 0x78,120度;
0xA55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x06(上下摇头角度) 0x00,0x01 0x1E,30度; 0x2D,45度; 0x3C,60度; 0x5A,90度; 0x78,120度;
0xA55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x07(风扇负离子) 0x00,0x01 0x01关;0x02开0xF5,禁止负离子 0xF6,允许负离子
0xA55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x08(风扇定时关机) 0x00,0x01 0x01,关;0xA1,一小时~0xB8,二十四小时;
A55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x09(播报音量) 0x00,0x01 0x01,关 0x02,开 0xF1,音量增大 0xF2,音量减小 0xF3,音量最大 0xF4,音量最小0xF5,禁止播报控制 0xF6,允许播报控制
A55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x0A(语音识别) 0x00,0x01 0x01,关;0x02,开0xF5,禁止语音识别控制 0xF6,允许语音识别控制
A55A 0x01 0x01 0x06 0x01 0x4 0x1 0x0B(定时设置) 0x00,0x01/0x02 (数据长度:0x01)0xF5,禁止定时功能 0xF6,允许定时功能 (数据长度:0x02,定时范围设置) byte0(最小定时): 一小时二十四小时(0xA10xB8);byte0(最高定时): 一小时二十四小时(0xA10xB8);
A55A 0x01 0x01 0x06 0x01 0x4 0x1 0x0C(风速设置) 0x00,0x01/0x02 (数据长度:0x01)0xF5,禁止风速控制功能 0xF6,允许风速控制功能 (数据长度:0x02,风速范围设置) byte0(最小风速): 一档风一百档风(0x010x64);byte1(最大风速): 一档风一百档风(0x010x64);
A55A 0x01 0x01 0x06 0x01 0x4 0x1 0x0D(风模式设置) 0x00,0x01~0x08 (数据长度:0x01) 0xF5,禁止风模式控制 0xF6,允许风模式控制----------------------- (数据长度:0x01~0x08) 填入需要风类对应的数据(如智能风填入0x01) 0x01:智能风; 0x02:宝宝风; 0x03:正常风; 0x04:睡眠风; 0x05:自然风; 0x06:暴风风;
0xA55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x0E(风扇驱蚊) 0x00,0x01 0x01关;0x02开0xF5,禁止负驱蚊 0xF6,允许负驱蚊
0xA55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x0F(风扇灯光/氛围灯) 0x00,0x01 0x01关;0x02开 0xF1:亮一点; 0xF2:暗一点; 0xF5,禁止负灯光 0xF6,允许负灯光
0xA55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x10(风扇暖灯) 0x00,0x01 0x01关;0x02开 0xF5,禁止暖灯 0xF6,允许暖灯
0xA55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x11(风扇加湿/雾化) 0x00,0x01 0x01关;0x02开
0xA55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x12(风扇制冷) 0x00,0x01 0x01关;0x02开
0xA55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x13(风扇温度显示) 0x00,0x01 0x01关;0x02开
0xA55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x14(风扇屏显) 0x00,0x01 0x01关;0x02开
0xA55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x15(3D摇头) 0x00,0x01 0x01关;0x02开
0xA55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x16(节能) 0x00,0x01 0x01关;0x02开
0xA55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x17(除湿) 0x00,0x01 0x01关;0x02开
0xA55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x18(预约开机) 0x00,0x01 0x01,关;0xA1,一小时~0xB8,二十四小时;
A55A 0x01 0x01 0x08 0x01 0x03(查询设备状态) 0x01 0x01-0xFF 0x00,0x01 0x00
A55A 0x01 0x01 0x08 0x01 0x04(回复状态查询) 0x01 0x01-0xFF 0x00,0x0X 0x01-0xFF(当前功能参数)

该协议相关函数代码在app_ble\demo\cias_fan_msg_deal.c文件中

/**
 * @brief 识别语音词条,设备状态上行
 * @param cmd_id 命令词ID;
 */
uint8_t fan_report(uint16_t cmd_id)

/**
 * @brief 接收小程序下行控制设备数据
 * @param msg 命令词ID;
 */
void fan_callback(ble_msg_V1_t msg)

/**
 * @brief 接收小程序下行查询设备状态数据
 * @param msg 命令词ID;
 */
void fan_query(ble_msg_V1_t msg)

2.6.5 取暖桌

帧头 协议版本 厂商ID 设备类型 设备编号 功能类型 数据类型 功能ID 数据长度 数据 CRC16
0x01:V1.0 启英泰伦-0x01 0x07-取暖桌 0x01 功能类型:
0x1-属性设置
0x2-事件上报
0x3-设备状态查询
0x4-应答消息
0x1-16进制编码数据
0x2-JSON数据
1Byte 2Byte nBytes 2Byte
A55A 0x01 0x01 0x07 0x01 0x1/0x2 0x1 0x01(取暖桌开关) 0x00,0x01 0x01,关;0x02,开
A55A 0x01 0x01 0x07 0x01 0x1/0x2 0x1 0x02(前取暖) 0x00,0x01 0x01,关;0x02,开 0x11,一档 0x12,二档 0x13,三档 0x14,四档 0x15,五档
A55A 0x01 0x01 0x07 0x01 0x1/0x2 0x1 0x03(后取暖) 0x00,0x01 0x01,关;0x02,开 0x11,一档 0x12,二档 0x13,三档 0x14,四档 0x15,五档
A55A 0x01 0x01 0x07 0x01 0x1/0x2 0x1 0x04(左取暖) 0x00,0x01 0x01,关;0x02,开 0x11,一档 0x12,二档 0x13,三档 0x14,四档 0x15,五档
A55A 0x01 0x01 0x07 0x01 0x1/0x2 0x1 0x05(右取暖) 0x00,0x01 0x01,关;0x02,开 0x11,一档 0x12,二档 0x13,三档 0x14,四档 0x15,五档
A55A 0x01 0x01 0x07 0x01 0x1/0x2 0x1 0x06(下层取暖) 0x00,0x01 0x01,关;0x02,开 0x11,一档 0x12,二档 0x13,三档 0x14,四档 0x15,五档
A55A 0x01 0x01 0x07 0x01 0x1/0x2 0x1 0x07(保暖) 0x00,0x01 0x01,关;0x02,开 0x11,一档 0x12,二档 0x13,三档
A55A 0x01 0x01 0x07 0x01 0x1/0x2 0x1 0x08(调温) 0x00,0x01 0x28, 40℃ 0x2D, 45℃ 0x32, 50℃ 0x37, 55℃ 0x3C, 60℃ 0x41, 65℃ 0x46, 70℃ 0xF1,温度增大 0xF2,温度减小 0xF3,温度最大 0xF4,温度最小
A55A 0x01 0x01 0x07 0x01 0x1/0x2 0x1 0x09(调高) 0x00,0x01 0x01,桌面停止 0x02,桌面上升 0x03,桌面下降0x11,中层停止 0x12,中层上升 0x13,中层下降0x21,底板停止 0x22,底板上升 0x23,底板下降
A55A 0x01 0x01 0x07 0x01 0x1/0x2 0x1 0x0A(全控取暖) 0x00,0x01 0x11,全控一档 0x12,全控二档 0x13,全控三档 0x14,全控四档 0x15,全控五档

该协议相关函数代码在app_ble\demo\cias_heattable_msg_deal.c文件中

/**
 * @brief 识别语音词条,设备状态上行
 * @param cmd_id 命令词ID;
 */
uint8_t heattable_report(uint16_t cmd_id)

/**
 * @brief 接收小程序下行控制设备数据
 * @param msg 命令词ID;
 */
void heattable_callback(ble_msg_V1_t msg)

/**
 * @brief 接收小程序下行查询设备状态数据
 * @param msg 命令词ID;
 */
void heattable_query(ble_msg_V1_t msg)

2.6.6 取暖器

帧头 协议版本(1Byte) 厂商ID (1Byte) 设备类型 (1byte) 设备编号 (1byte) 功能类型 (1Byte-高4位) 数据类型 (1Byte-低4位) 功能ID (1Byte) 数据长度 (2Byte) 数据 (nbyte) CRC16 (2Byte)
0x01:V1.0 启英泰伦-0x01 0x08-取暖器 0x01 功能类型:
0x1-属性设置
0x2-事件上报
0x3-设备状态查询
0x4-应答消息
0x1-16进制编码数据
0x2-JSON数据
1Byte 2Byte nBytes 2Byte
A55A 0x01 0x01 0x08(取暖器) 0x01 0x3 0x1 0x01(查询取暖器全属性) 0x00,0x01 0x00;
A55A 0x01 0x01 0x08(取暖器) 0x01 0x1/0x2 0x1 0x01(取暖器开关) 0x00,0x01 0x01,关;0x02,开
A55A 0x01 0x01 0x08 0x01 0x1/0x2 0x1 0x02(摇头功能) 0x00,0x01 0x01,关 0x02,开 0x11,左右关 0x12,左右开 0x21,上下关 0x22,上下开0xF5,禁止摇头 0xF6,允许摇头
A55A 0x01 0x01 0x08 0x01 0x1/0x2 0x1 0x03(负离子功能) 0x00,0x01 0x01,关 0x02,开0xF5,禁止负离子 0xF6,允许负离子
A55A 0x01 0x01 0x08 0x01 0x1/0x2 0x1 0x04(节能模式) 0x00,0x01 0x01,关 0x02,开0xF5,禁止节能 0xF6,允许节能
A55A 0x01 0x01 0x08 0x01 0x1/0x2 0x1 0x05(睡眠模式) 0x00,0x01 0x01,关 0x02,开0xF5,禁止睡眠 0xF6,允许睡眠
A55A 0x01 0x01 0x08 0x01 0x1/0x2 0x1 0x06(屏幕显示) 0x00,0x01 0x01,关 0x02,开0xF5,禁止屏幕 0xF6,允许屏幕
A55A 0x01 0x01 0x08 0x01 0x1/0x2 0x1 0x07(氛围灯) 0x00,0x01 0x01,关 0x02,开0xF5,禁止氛围灯 0xF6,允许氛围灯
A55A 0x01 0x01 0x08 0x01 0x1/0x2 0x1 0x08(档位调节) 0x00,0x01 0x01,低档 0x02,中档 0x03,高档0xF5,禁止档位控制 0xF6,允许档位控制
A55A 0x01 0x01 0x08 0x01 0x1/0x2 0x1 0x09(干衣模式) 0x00,0x01 0x01,关 0x02,开0xF5,禁止干衣 0xF6,允许干衣
A55A 0x01 0x01 0x08 0x01 0x1/0x2 0x1 0x0A(消毒功能) 0x00,0x01 0x01,关 0x02,开0xF5,禁止消毒 0xF6,允许消毒
A55A 0x01 0x01 0x08 0x01 0x1/0x2 0x1 0x0B(定时功能) 0x00,0x01 0x01,关0xA1,一小时 0xA2,两小时 0xA3,三小时 0xA4,四小时 0xA5,五小时 0xA6,六小时 0xA7,七小时 0xA8,八小时 0xA9,九小时 0xAA,十小时 0xAB,十一小时 0xAC,十二小时0xAD,定时半小时0xF5,禁止定时功能 0xF6,允许定时功能
A55A 0x01 0x01 0x08 0x01 0x1/0x2 0x1 0x0B(定时功能)-萨普取暖器 0x00,0x01 0x01,关0xA1,一小时~0xB8,二十四小时0xF5,禁止定时功能 0xF6,允许定时功能
A55A 0x01 0x01 0x08 0x01 0x1/0x2 0x1 0x0C(目标温度) 0x00,0x01 15℃45℃(0x0F0x2D) 0xF1,温度增大 0xF2,温度减小 0xF3,温度最大 0xF4,温度最小 0xF5,禁止温度调节 0xF6,允许温度调节
A55A 0x01 0x01 0x08 0x01 0x1/0x2 0x1 0x0D(湿度调节) 0x00,0x01 0x01,关闭 0x02,打开0x28, 湿度40 0x2D, 湿度45 0x32, 湿度50 0x37, 湿度55 0x3C, 湿度60 0x41, 湿度65 0x46, 湿度70 0x4B,湿度75 0x50,湿度80 0xF1,湿度增大 0xF2,湿度减小 0xF3,湿度最大 0xF4,湿度最小 0xF5,禁止湿度调节 0xF6,允许湿度调节
A55A 0x01 0x01 0x08 0x01 0x1/0x2 0x1 0x0E(屏显火焰) 0x00,0x01 0x01,关 0x02,开0x11,七彩色 0x12,红色 0x13,橙色 0x14,黄色 0x15,绿色 0x16,青色 0x17,蓝色 0x18,紫色0xF5,禁止屏显火焰 0xF6,允许屏显火焰
A55A 0x01 0x01 0x08 0x01 0x1/0x2 0x1 0x0F(播报音量) 0x00,0x01 0x01,关 0x02,开 0xF1,音量增大 0xF2,音量减小 0xF3,音量最大 0xF4,音量最小
A55A 0x01 0x01 0x08 0x01 0x1/0x2 0x1 0x10(冷风控制) 0x00,0x01 0x01,关 0x02,开0xF5,禁止冷风 0xF6,允许冷风
A55A 0x01 0x01 0x08 0x01 0x4 0x1 0x11(档位设置) 0x00,0x01~0x03 (依次填入所有要档位) 0x01,低档 0x02,中档 0x03,高档
A55A 0x01 0x01 0x08 0x01 0x4 0x1 0x12(定时设置) 0x00,0x02 **byte0(最小定时): **零小时二十四小时(0xA00xB8);**byte1(最高定时): **零小时二十四小时(0xA00xB8);
A55A 0x01 0x01 0x08 0x01 0x4 0x1 0x13(温度设置) 0x00,0x02 默认步长1 byte0(最低温度):**15℃45℃(0x0F0x2D);**byte1(最高温度):15℃45℃(0x0F0x2D);
A55A 0x01 0x01 0x08 0x01 0x4 0x1 0x14(湿度设置) 0x00,0x02 默认步长5 byte0(最低湿度): **湿度0湿度100(0x000x64);**byte1(最高湿度): 湿度0湿度100(0x000x64);
A55A 0x01 0x01 0x08 0x01 0x2 0x1 0x15(当前温度) 0x00,0x01 15℃45℃(0x0F0x2D)
A55A 0x01 0x01 0x08 0x01 0x2 0x1 0x16(夜灯) 0x00,0x01 0x01,关 0x02,开
A55A 0x01 0x01 0x08 0x01 0x2 0x1 0x17(变频) 0x00,0x01 0x01,关 0x02,开
A55A 0x01 0x01 0x08 0x01 0x2 0x1 0x18(散热) 0x00,0x01 0x01,关 0x02,开
A55A 0x01 0x01 0x06 0x01 0x1/0x2 0x1 0x19(语音识别) 0x00,0x01 0x01,关;0x02,开
A55A 0x01 0x01 0x09 0x01 0x4 0x1 0xFF(主动渲染) 0x00,0x01 0x01,关主动渲染 0x02,开主动渲染
A55A 0x01 0x01 0x08 0x01 0x03(查询设备状态) 0x01 0x01-0x14 0x00,0x01 0x00
A55A 0x01 0x01 0x08 0x01 0x04(回复状态查询) 0x01 0x01-0xff 0x00,0x0X 0x01-0xFF(当前功能参数)

该协议相关函数代码在app_ble\demo\cias_warmer_msg_deal.c文件中

/**
 * @brief 识别语音词条,设备状态上行
 * @param cmd_id 命令词ID;
 */
uint8_t warmer_report(uint16_t cmd_id)

/**
 * @brief 接收小程序下行控制设备数据
 * @param msg 命令词ID;
 */
void warmer_callback(ble_msg_V1_t msg)

/**
 * @brief 接收小程序下行查询设备状态数据
 * @param msg 命令词ID;
 */
void warmer_query(ble_msg_V1_t msg)

2.6.7 水暖毯

帧头 协议版本(1Byte) 厂商ID (1Byte) 设备类型 (1byte) 设备编号 (1byte) 功能类型 (1Byte-高4位) 数据类型 (1Byte-低4位) 功能ID (1Byte) 数据长度 (2Byte) 数据 (nbyte) CRC16 (2Byte)
0x01:V1.0 启英泰伦-0x01 0x09-水暖毯 0x01 功能类型:
0x1-属性设置
0x2-事件上报
0x3-设备状态查询
0x4-应答消息
0x1-16进制编码数据
0x2-JSON数据
1Byte 2Byte nBytes 2Byte
A55A 0x01 0x01 0x09(水暖毯) 0x01/0x02 0x1/0x2/0x3/0x4 0x1 0x01(水暖毯开关) 0x00,0x01 0x01,关;0x02,开
A55A 0x01 0x01 0x09 0x01/0x02 0x1/0x2/0x3/0x4 0x1 0x02(童锁) 0x00,0x01 0x01,关;0x02,开 0xF5,禁止童锁 0xF6,允许童锁
A55A 0x01 0x01 0x09 0x01 0x1/0x2 0x1 0x03(温度调节) 0x00,0x01 10℃75℃(0x0A0x4B) 0xF1,温度增大 0xF2,温度减小 0xF3,温度最大 0xF4,温度最小
A55A 0x01 0x01 0x09 0x02 0x1/0x2 0x1 0x03(温度调节) 0x00,0x02 byte0(温区选择): **0x11,两边 0x12,左边 0x13,右边 byte1(温度设置):** 10℃75℃(0x0A0x4B) 0xF1,温度增大 0xF2,温度减小 0xF3,温度最大 0xF4,温度最小
A55A 0x01 0x01 0x09 0x01/0x02 0x4 0x1 0x04(温度设置) 0x00,0x02 byte0(最低温度):**10℃75℃(0x0A0x4B);**byte1(最高温度):10℃75℃(0x0A0x4B);
A55A 0x01 0x01 0x09 0x01 0x1/0x2 0x1 0x05(定时功能) 0x00,0x01 0x01,关 0x02,开0xA1,一小时 0xA2,两小时 ......... 0xB7,二十三小时 0xB8,二十四小时
A55A 0x01 0x01 0x09 0x02 0x1/0x2 0x1 0x05(定时功能) 0x00,0x01 **byte0(温区选择):**0x11,两边 0x12,左边 0x13,右边**byte0(定时设置):**0x01,关 0x02,开0xA1,一小时 0xA2,两小时 ......... 0xB7,二十三小时 0xB8,二十四小时
A55A 0x01 0x01 0x09 0x01/0x02 0x1/0x2/0x3/0x4 0x1 0x06(睡眠模式) 0x00,0x01 0x01,关 0x02,开 0xF5,禁止睡眠模式 0xF6,允许睡眠模式
A55A 0x01 0x01 0x09 0x01/0x02 0x1/0x2/0x3/0x4 0x1 0x07(速热模式) 0x00,0x01 0x01,关 0x02,开 0xF5,禁止速热模式 0xF6,允许速热模式
A55A 0x01 0x01 0x09 0x01/0x02 0x1/0x2/0x3/0x4 0x1 0x08(除螨模式) 0x00,0x01 0x01,关 0x02,开 0xF5,禁止除螨模式 0xF6,允许除螨模式
A55A 0x01 0x01 0x09 0x01 0x1/0x2/0x3/0x4 0x1 0x09(温区选择) 0x00,0x01 0x11,两边 0x12,左边 0x13,右边 0xF5,禁止温区选择 0xF6,允许温区选择
A55A 0x01 0x01 0x09 0x01 0x1/0x2/0x3/0x4 0x1 0x0A(负离子) 0x00,0x01 0x01,关 0x02,开 0xF5,禁止负离子 0xF6,允许负离子
A55A 0x01 0x01 0x09 0x01/0x02 0x1/0x2/0x3/0x4 0x1 0x0B(小夜灯) 0x00,0x01 0x01,关 0x02,开 0x11,白色 0x12,红色 0x13,橙色 0x14,黄色 0x15,绿色 0x16,蓝色 0x17,紫色 0x18,青色 0x19,粉色 0x1A,夜灯变色
A55A 0x01 0x01 0x09 0x01/0x02 0x4 0x1 0x0C(小夜灯设置) 0x00,0x01~0x08 (功能设置,数据长度:0x01) 0x01,禁止小夜灯 0x02,允许小夜灯 0x03,禁止小夜灯颜色切换 0x04,允许小夜灯颜色切换 ----------------------- (颜色设置,默认使能夜灯与夜灯颜色切换,数据段依次填入所有要切换颜色对应的数据,数据长度:0x02~0x08) 0x11,白色 0x12,红色 0x13,橙色 0x14,黄色 0x15,绿色 0x16,蓝色 0x17,紫色 0x18,青色 0x19,粉色 0x1A,夜灯变色
A55A 0x01 0x01 0x09 0x01 0x1/0x2/0x3/0x4 0x1 0x0D(助眠声音) 0x00,0x01 0x01,关 0x11,鸟鸣声 0x12,流水声 0x13,落雨声 0x14,雷雨声 0xF5,禁止助眠声音 0xF6,允许助眠声音
A55A 0x01 0x01 0x09 0x01/0x02 0x1/0x2/0x3/0x4 0x1 0x0E(播报音量) 0x00,0x01 0x01,关 0x02,开 0xF1,音量增大 0xF2,音量减小 0xF3,音量最大 0xF4,音量最小 0xF5,禁止播报音量量 0xF6,允许播报音量量
A55A 0x01 0x01 0x09 0x01/0x02 0x4 0x1 0x0F(定时设置) 0x00,0x01/0x02 (数据长度:0x01)0xF5,禁止定时功能 0xF6,允许定时功能 (数据长度:0x02,定时范围设置) 最小定时: 零小时二十四小时(0xA00xB8);最高定时: 零小时二十四小时(0xA00xB8);
A55A 0x01 0x01 0x09 0x02 0x1/0x2/0x3/0x4 0x1 0x10(烘被) 0x00,0x01 0x01,关 0x02,开 0xF5,禁止烘被功能 0xF6,允许烘被功能
A55A 0x01 0x01 0x09 0x02 0x1/0x2/0x3/0x4 0x1 0x11(屏显) 0x00,0x01 0x01,关 0x02,开 0xF5,禁止屏显功能 0xF6,允许屏显功能
A55A 0x01 0x01 0x09 0x03 0x1/0x2/0x3/0x4 0x1 0x12(15小时自动关机) 0x00,0x01 0x01,关 0x02,开 0xF5,禁止该功能 0xF6,允许该功能
A55A 0x01 0x01 0x09 0x01 0x4 0x1 0xFF(主动渲染) 0x00,0x01 0x01,关主动渲染 0x02,开主动渲染
A55A 0x01 0x01 0x09 0x01 0x03(查询设备状态) 0x01 0x01-0x12 0x00,0x01 0x00
A55A 0x01 0x01 0x09 0x01 0x04(回复状态查询) 0x01 0x01-0xFF 0x00,0x0X 0x01-0xFF(当前功能参数)

该协议相关函数代码在app_ble\demo\cias_waterheated_msg_deal.c文件中

/**
 * @brief 识别语音词条,设备状态上行
 * @param cmd_id 命令词ID;
 */
uint8_t waterheated_report(uint16_t cmd_id)

/**
 * @brief 接收小程序下行控制设备数据
 * @param msg 命令词ID;
 */
void waterheated_callback(ble_msg_V1_t msg)

/**
 * @brief 接收小程序下行查询设备状态数据
 * @param msg 命令词ID;
 */
void waterheated_query(ble_msg_V1_t msg)

2.6.8 窗帘

帧头 协议版本 厂商ID 设备类型 设备编号 功能类型 数据类型 功能ID 数据长度 数据 CRC16
0x01:V1.0 启英泰伦-0x01 0x0B-窗帘 0x01 功能类型:
0x1-属性设置
0x2-事件上报
0x3-设备状态查询
0x4-应答消息
0x1-16进制编码数据
0x2-JSON数据
1Byte 2Byte nBytes 2Byte
A55A 0x01 0x01 0x0B 0x01 0x1/0x2 0x1 0x01(客厅-窗帘开关) 0x00,0x01 0x01,关;0x02,开;0x03,停止
A55A 0x01 0x01 0x0B 0x01 0x1/0x2 0x1 0x02(客厅-布帘开关) 0x00,0x01 0x01,关;0x02,开;0x03,停止
A55A 0x01 0x01 0x0B 0x01 0x1/0x2 0x1 0x03(客厅-纱帘开关) 0x00,0x01 0x01,关;0x02,开;0x03,停止
A55A 0x01 0x01 0x0B 0x01 0x1/0x2 0x1 0x04(客厅-百分之XX) 0x00,0x01 0x01,10%; 0x02,20%; 0x03,30%; 0x04,40%; 0x05,50%; 0x06,60%; 0x07,70%; 0x08,80%; 0x09,90%; 0x0A,100%;
A55A 0x01 0x01 0x0B 0x01 0x03(查询设备状态) 0x01 0x01-0xFF 0x00,0x01 0x00 A55A
A55A 0x01 0x01 0x0B 0x01 0x04(回复状态查询) 0x01 0x01-0xFF 0x00,0x0X 0x01-0xFF(当前功能参数)

2.6.9 加湿器

帧头 协议版本 厂商ID 设备类型 设备编号 功能类型 数据类型 功能ID 数据长度 数据 CRC16
0x01:V1.0 启英泰伦-0x01 0x0C-加湿器 0x01 功能类型:
0x1-属性设置
0x2-事件上报
0x3-设备状态查询
0x4-应答消息
0x1-16进制编码数据
0x2-JSON数据
1Byte 2Byte nBytes 2Byte
A55A 0x01 0x01 0x0C 0x01 0x1/0x2 0x1 0x01(加湿器开关) 0x00,0x01 0x01,关;0x02,开
A55A 0x01 0x01 0x0C 0x01 0x1/0x2 0x1 0x02(模式) 0x00,0x01 0x01,普通;0x02,恒湿;0x03,睡眠;
A55A 0x01 0x01 0x0C 0x01 0x1/0x2 0x1 0x03(喷雾量) 0x00,0x01 0x01,低档;0x02,中档;0x03,高档;
A55A 0x01 0x01 0x0C 0x01 0x1/0x2 0x1 0x04(负离子) 0x00,0x01 0x01,关 0x02,开
A55A 0x01 0x01 0x0C 0x01 0x1/0x2 0x1 0x05(热雾) 0x00,0x01 0x01,关 0x02,开
A55A 0x01 0x01 0x0C 0x01 0x1/0x2 0x1 0x06(UV杀菌) 0x00,0x01 0x01,关 0x02,开
A55A 0x01 0x01 0x0C 0x01 0x1/0x2 0x1 0x07(夜灯) 0x00,0x01 0x01,关 0x02,开
A55A 0x01 0x01 0x0C 0x01 0x1/0x2 0x1 0x08(定时) 0x00,0x01 0x01,关 0x02,开0xA1,一小时 0xA2,两小时 ......... 0xAB,十一小时 0xAC,十二小时
A55A 0x01 0x01 0x0C 0x01 0x1/0x2 0x1 0x09(缺水提示) 0x00,0x01 0x01,关 0x02,开
A55A 0x01 0x01 0x0C 0x01 0x1/0x2 0x1 0x0A(设定湿度) 0x00,0x01 40%90%(0x280x5A)
A55A 0x01 0x01 0x0C 0x01 0x1/0x2 0x1 0x0B(环境湿度) 0x00,0x01 0%100%(0x000x64)
A55A 0x01 0x01 0x0C 0x01 0x1/0x2 0x1 0x0C(环境温度) 0x00,0x01 0℃100℃(0x000x64)
A55A 0x01 0x01 0x0C 0x01 0x4 0x1 0x0D(设定湿度范围) 0x00,0x02 byte0(最低湿度):**0%100%(0x000x64);**byte1(最高湿度):0%100%(0x000x64);
A55A 0x01 0x01 0x0C 0x01 0x03(查询设备状态) 0x01 0x01-0xFF 0x00,0x01 0x00
A55A 0x01 0x01 0x0C 0x01 0x04(回复状态查询) 0x01 0x01-0xFF 0x00,0x0X 0x01-0xFF(当前功能参数)

2.6.10 足浴盆

帧头 协议版本(1Byte) 厂商ID (1Byte) 设备类型 (1byte) 设备编号 (1byte) 功能类型 (1Byte-高4位) 数据类型 (1Byte-低4位) 功能ID (1Byte) 数据长度 (2Byte) 数据 (nbyte) CRC16 (2Byte)
0x01:V1.0 启英泰伦-0x01 0x0D-足浴盆 0x01 功能类型:
0x1-属性设置
0x2-事件上报
0x3-设备状态查询
0x4-应答消息
0x1-16进制编码数据
0x2-JSON数据
1Byte 2Byte nBytes 2Byte
A55A 0x01 0x01 0x0D 0x01 0x3 0x1 0x00(小程序全属性查询) 0x00,0x01 0x00;
A55A 0x01 0x01 0x0D(足浴盆) 0x01 0x1/0x2 0x1 0x01(足浴盆开关) 0x00,0x01 0x01,关;0x02,开
A55A 0x01 0x01 0x0D 0x01 0x1/0x2 0x1 0x02(温度) 0x00,0x01 35℃46℃(0x230x2E)
A55A 0x01 0x01 0x0D 0x01 0x1/0x2 0x1 0x03(定时) 0x00,0x01 0x01,关 0x02,开0xA1,定时十分钟 0xA2,定时二十分钟 ......... 0xA5,定时五十分钟 0xA6,定时六十分钟
A55A 0x01 0x01 0x0D 0x01 0x1/0x2 0x1 0x04(按摩) 0x00,0x01 0x01,关 0x02,开
A55A 0x01 0x01 0x0D 0x01 0x1/0x2 0x1 0x05(冲浪) 0x00,0x01 0x01,关 0x02,开
A55A 0x01 0x01 0x0D 0x01 0x1/0x2 0x1 0x06(杀菌消毒) 0x00,0x01 0x01,关 0x02,开
A55A 0x01 0x01 0x0D 0x01 0x1/0x2 0x1 0x07(播报音量) 0x00,0x01 0x01,关 0x02,开 0xF1,音量增大 0xF2,音量减小 0xF3,音量最大 0xF4,音量最小
A55A 0x01 0x01 0x0D 0x01 0x1/0x2 0x1 0x08(语音识别) 0x00,0x01 0x01,关;0x02,开
A55A 0x01 0x01 0x0D 0x01 0x1/0x2 0x1 0x09(气泡) 0x00,0x01 0x01,关 0x02,开
A55A 0x01 0x01 0x0D 0x01 0x03(查询设备状态) 0x01 0x01-0xFF 0x00,0x01 0x00
A55A 0x01 0x01 0x0D 0x01 0x04(回复状态查询) 0x01 0x01-0xFF 0x00,0x0X 0x01-0xFF(当前功能参数)

2.7 设备状态全属性上报

支持设备端一条指令把状态全同步给小程序

协议格式:帧头(2Byte)+协议版本(1Byte)+功能状态(nByte)+CRC16校验(2Byte)

功能状态(nByte),可填入任意个功能,但功能位置顺序保持固定

帧头(2Byte) 协议版本 (1Byte) 功能状态(nByte) CRC16 (2Byte)
0xA55A 0x03(全属性上报) xx.....;

2.7.1 空调全属性上报

帧头(2Byte) 协议版本 (1Byte) 电源开关(1Byte) 模式 (1Byte) 预留 (1Byte) 温度 (1byte) 屏显 (1byte) 健康 (1byte) 睡眠 (1byte) 播报音 (1byte) 风速 (1byte) 强劲风 (1byte) 风向 (1byte) ...... CRC16 (2Byte)
0xA55A 0x03(全属性上报) 0x01,关; 0x02,开; 0x01制冷;0x02制热;0x03送风;0x04除湿;0x05自动 0x00; 0x100x1E,(16℃30℃); 0x01,关; 0x02,开; 0x01,关; 0x02,开; 0x01,关; 0x02,开; 0x01,关; 0x02,开; 0x01自动风速; 0x02低速风; 0x03中速风; 0x04高速风; 0x01,关; 0x02,开; 0x01,左右扫风关; 0x02,左右扫风开; 0x03,上下扫风关; 0x04,上下扫风开; 0x05,左右上下扫风关; 0x06,左右上下扫风开

该协议相关函数代码在app_ble\demo\cias_aircondition_msg_deal.c文件中

/**
 * @brief 小程序查询设备状态,设备全属性上报
 */
void aircondition_query_all()

2.7.2 灯控全属性上报

帧头(2Byte) 协议版本 (1Byte) 灯控开关(1Byte) 灯亮度 (1Byte) 灯颜色模式 (1byte) 定时 (1byte) ...... CRC16 (2Byte)
0xA55A 0x03(全属性上报) 0x01,关; 0x02,开; 0x00~0x64,灯亮度值(0-100); 0x01:白色; 0x02:橙色;0x03:红色;0x04:紫色;0x05:蓝色;0x06:绿色;0x07:黄色;0x08:音乐; 0x01,关; 0xA1~0xAC, 一小时~十二小时;

该协议相关函数代码在app_ble\demo\cias_rgb_msg_deal.c文件中

/**
 * @brief 小程序查询设备状态,设备全属性上报
 */
void rgb_query_all()

2.7.3 风扇全属性上报

帧头(2Byte) 协议版本 (1Byte) 风扇电源(1Byte) 风扇风速 (1Byte) 风扇风向 (1byte) 风扇模式 (1byte) 左右摇头角度(1byte) 上下摇头角度(1byte) 风扇负离子(1Byte) 风扇定时关机(1Byte) 播报音量(1Byte) 语音识别(1Byte) 定时关机范围设置(2byte) 风速设置(2byte) 风模式设置(1Byte) 风扇驱蚊(1Byte) 风扇灯光/氛围灯(1Byte) 风扇暖灯(1Byte) 风扇加湿/雾化(1Byte) 风扇制冷(1Byte) 风扇温度显示(1Byte) 风扇屏显(1Byte) 3D摇头(1Byte) 节能(1Byte) 除湿(1Byte) 预约开机(1Byte) 预约开机范围设置(2byte) 主动渲染(1Byte) ...... CRC16 (2Byte)
0xA55A 0x03(全属性上报) 0x01关; 0x02开; 0x01~0xFF: 1档风~255档风 0x01,关;0x02,开; 0x11,左右关;0x12,左右开; 0x21,上下关;0x22,上下开; 0x31,左右上下关;0x32,左右上下开; 0x01智能风;0x02宝宝风; 0x03正常风;0x04睡眠风; 0x05自然风;0x06暴风模式; 0x1E,30度; 0x2D,45度; 0x3C,60度; 0x5A,90度; 0x78,120度; 0x1E,30度; 0x2D,45度; 0x3C,60度; 0x5A,90度; 0x78,120度; 0x01关; 0x02开; 0x01,关; 0xA00xB8,零小时二十四小时; 0x00 0x01关; 0x02开; byte0(最小定时):零小时二十四小时(0xA00xB8);byte1(最高定时):零小时二十四小时(0xA00xB8); byte0(最小风速):0x010xFF,1档风255档风;byte1(最高风速):0x010xFF,1档风255档风; 0x00 0x01关; 0x02开; 0x01关; 0x02开; 0x01关; 0x02开; 0x01关; 0x02开; 0x01关; 0x02开; 0x01关; 0x02开; 0x01关; 0x02开; 0x01关; 0x02开; 0x01关; 0x02开; 0x01关; 0x02开; 0x01关; 0xA00xB8,零小时二十四小时; byte0(最小定时):零小时二十四小时(0xA00xB8);byte1(最高定时):零小时二十四小时(0xA00xB8); 0x01关; 0x02开;(开:界面点击界面主动改变. 关:界面接收协议再改变.)

该协议相关函数代码在app_ble\demo\cias_fan_msg_deal.c文件中

/**
 * @brief 小程序查询设备状态,设备全属性上报
 */
void fan_query_all()

2.7.4 取暖去全属性上报

帧头(2Byte) 协议版本 (1Byte) 电源开关(1Byte) 摇头功能(1Byte) 负离子 (1byte) 节能模式 (1byte) 睡眠模式(1byte) 屏显功能(1byte) 氛围灯(1Byte) 档位调节(1Byte) 干衣模式(1Byte) 消毒功能(1Byte) 定时功能(1Byte) 目标温度(1Byte) 湿度调节(1Byte) 屏显火焰(1Byte) 播报音量(1Byte) 冷风控制(1Byte) 档位设置(1Byte) 定时设置(2Byte) 温度设置 (2Byte) 湿度设置(2Byte) 当前温度 (1Byte) 夜灯功能(1Byte) 变频功能(1Byte) 散热功能(1Byte) 语音识别(1Byte) 主动渲染(1Byte) ...... CRC16 (2Byte)
0xA55A 0x03(全属性上报) 0x01关; 0x02开; 0x01,关摇头; 0x02,开摇头; 0x11,左右摇头关; 0x12,左右摇头开; 0x21,上下摇头关; 0x22,上下摇头开; 0x31,左右上下摇头关; 0x32,左右上下摇头开; 0x01关; 0x02开; 0x01关; 0x02开; 0x01关; 0x02开; 0x01关; 0x02开; 0x01关; 0x02开; 0x01,低档; 0x02,中档; 0x03,高档; 0x01关; 0x02开; 0x01关; 0x02开; 0x01,关; 0xA10xAC,定时一小时定时十二小时; 15℃~45℃ (0x0F~0x2D); 0x01,关闭; 0x02,打开; 0x280x50,湿度40湿度80(5的倍数); 0x01,关闭; 0x02,打开; 0x11,七彩色; 0x12,红色; 0x13,橙色; 0x14,黄色; 0x15,绿色; 0x16,青色; 0x18,紫色; 0x00;(小程序未处理) 0x01关; 0x02开; 0x00;(小程序未处理) byte0(最小定时): 零小时二十四小时(0xA00xB8);byte1(最高定时): 零小时二十四小时(0xA00xB8); byte0(最低温度): 0℃255℃(0x000xFF);byte1(最高温度): 0℃255℃(0x000xFF); byte0(最低湿度):湿度0湿度100(0x000x64);byte1(最高湿度):湿度0湿度100(0x000x64); 15℃~45℃ (0x0F~0x2D); 0x01关; 0x02开; 0x01关; 0x02开; 0x01关; 0x02开; 0x01关; 0x02开; 0x01关; 0x02开;(开:界面点击界面主动改变. 关:界面接收协议再改变.)

该协议相关函数代码在app_ble\demo\cias_warmer_msg_deal.c文件中

/**
 * @brief 小程序查询设备状态,设备全属性上报
 */
void warmer_query_all()

2.7.5 足浴盆全属性上报

帧头(2Byte) 协议版本 (1Byte) 足浴盆开关(1Byte) 温度 (1Byte) 定时 (1byte) 按摩 (1byte) 冲浪(1byte) 杀菌消毒(1byte) 播报音量(1Byte) 语音识别(1Byte) 设备型号(1Byte) 设置最高温度(1Byte) 气泡(1byte) ...... CRC16 (2Byte)
0xA55A 0x03(全属性上报) 0x01关; 0x02开; 35℃~46℃ (0x23~0x2E) 0x01,关 0x02,开0xA1,定时十分钟 0xA2,定时二十分钟 ......... 0xA5,定时五十分钟 0xA6,定时六十分钟 0x01,关 0x02,开; 0x01,关 0x02,开 0x01,关 0x02,开 0x01,关 0x02,开 0xF1,音量增大 0xF2,音量减小 0xF3,音量最大 0xF4,音量最小 0x01,关;0x02,开 0x000xFF(0x000xFF) 0%100%(0x000x64) 0x01,关 0x02,开

2.8 设备小程序功能设置

支持设备端通过协议,选择小程序设备控制界面要展示的功能按键

协议格式:帧头(2Byte)+协议版本(1Byte)+功能设置(nByte)+CRC16校验(2Byte)

帧头(2Byte) 协议版本 (1Byte) 功能设置(nByte) CRC16 (2Byte)
0xA55A 0x04(功能设置) xx.....;

2.8.1 风扇功能性设置

帧头(2Byte) 协议版本 (1Byte) 风扇电源(1Byte) 风扇风速 (1Byte) 风扇风向 (1byte) 风扇模式 (1byte) 左右摇头角度(1byte) 上下摇头角度(1byte) 风扇负离子(1Byte) 风扇定时关机(1Byte) 播报音量(1Byte) 语音识别(1Byte) 风扇驱蚊(1Byte) 风扇灯光/氛围灯(1Byte) 风扇暖灯(1Byte) 风扇加湿/雾化(1Byte) 风扇制冷(1Byte) 风扇温度显示(1Byte) 风扇屏显(1Byte) 3D摇头(1Byte) 节能(1Byte) 除湿(1Byte) 预约开机(1Byte) 语音指令(1Byte) ...... CRC16 (2Byte)
0xA55A 0x04(功能设置) 0x01,隐藏; 0x02,显示; 0x01,隐藏; 0x02,显示; bit0(左右摇头):0,隐藏;1,显示;bit1(上下摇头):0,隐藏;1,显示;bit2~bit7:xxxx bit0(智能风):0,隐藏;1,显示;bit1(宝宝风):0,隐藏;1,显示;bit2(正常风):0,隐藏;1,显示;bit3(睡眠风):0,隐藏;1,显示;bit4(自然风):0,隐藏;1,显示;bit5(暴风风):0,隐藏;1,显示;bit6(xx风):0,隐藏;1,显示;bit7(xx风):0,隐藏;1,显示; 0x01,隐藏; 0x02,显示; 0x01,隐藏; 0x02,显示; 0x01,隐藏; 0x02,显示; 0x01,隐藏; 0x02,显示; 0x01,隐藏; 0x02,显示; 0x01,隐藏; 0x02,显示; 0x01,隐藏; 0x02,显示; 0x01,隐藏; 0x02,显示; 0x01,隐藏; 0x02,显示; 0x01,隐藏; 0x02,显示; 0x01,隐藏; 0x02,显示; 0x01,隐藏; 0x02,显示; 0x01,隐藏; 0x02,显示; 0x01,隐藏; 0x02,显示; 0x01,隐藏; 0x02,显示; 0x01,隐藏; 0x02,显示; 0x01,隐藏; 0x02,显示; 0x01,隐藏; 0x02,显示;

该协议相关函数代码在app_ble\demo\cias_fan_msg_deal.c文件中

/**
 * @brief 小程序查询设备功能设置状态
 */
void fan_app_set()