mirror of
https://gitee.com/Vancouver2017/luban-lite-t3e-pro.git
synced 2025-12-15 10:58:54 +00:00
257 lines
6.8 KiB
C
257 lines
6.8 KiB
C
/**
|
|
* @file zigbee_fun.h
|
|
* @brief declaration of fuction in zigbee_fun.c
|
|
* @author
|
|
* @date 2020.03.13
|
|
* @par email:
|
|
* @copyright HANGZHOU TUYA INFORMATION TECHNOLOGY CO.,LTD
|
|
* @par company
|
|
* http://www.tuya.com
|
|
*/
|
|
|
|
#ifndef __ZIGBEE_FUN_H__
|
|
#define __ZIGBEE_FUN_H__
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"
|
|
{
|
|
#endif
|
|
#include <stdbool.h>
|
|
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
#include <string.h>
|
|
|
|
#include "rtthread.h"
|
|
#include <aic_core.h>
|
|
#include <aic_hal.h>
|
|
#include "rtconfig.h"
|
|
#ifndef ULOG_USING_SYSLOG
|
|
#include <ulog.h>
|
|
#else
|
|
#include <syslog.h>
|
|
#endif /* ULOG_USING_SYSLOG */
|
|
|
|
////1个字节版本号(由于字节长度限制,最大版本号为 3.3.15)
|
|
////x.y.z
|
|
////x=bit6~bit7; y=bit4~bi5; z=bit0~bit3
|
|
//#define T3_VERSION_MAJOR 0//x=0~3
|
|
//#define T3_VERSION_MINOR 0//y=0~3
|
|
//#define T3_VERSION_PATCH 1//z=0~15
|
|
//
|
|
|
|
//Radio 事件处理任务
|
|
typedef enum
|
|
{
|
|
ZIG_STATE_IDLE=0, //空闲任务
|
|
ZIG_STATE_SUSS,
|
|
ZIG_STATE_FAIL,
|
|
|
|
ZIG_STATE_RTC_CURRENT,
|
|
ZIG_STATE_RTC_UPDATE,
|
|
ZIG_STATE_RTC_RUNING,
|
|
ZIG_STATE_Switch_langue, //语言切换
|
|
ZIG_STATE_Switch_clock, //开关的时钟界面切换
|
|
//------------
|
|
ZIG_STATE_Update_Ready, //准备升级
|
|
ZIG_STATE_Update_Version_Check, //升级版本查询
|
|
ZIG_STATE_Update_Start, //开始升级
|
|
|
|
ZIG_STATE_Update_RUNING, //升级中
|
|
|
|
ZIG_STATE_Update_Suss, //升级成功
|
|
ZIG_STATE_Update_Faill, //升级失败
|
|
|
|
ZIG_STATE_Updateversionsame, //版本相同没必要升级
|
|
ZIG_STATE_Updateversioninvalid, //版本无效
|
|
ZIG_STATE_Updateota_beginfailed,//开始升级失败
|
|
ZIG_STATE_Update_Quit, //退出升级
|
|
//------------配网
|
|
ZIG_STATE_CONFIG_CHECK, //检测入网状态
|
|
ZIG_STATE_CONFIG_START, //配网模式监测接收数据
|
|
ZIG_STATE_CONFIG_TIMEOUT, //配网超时
|
|
ZIG_STATE_CONFIG_GATEWAY, //已入网
|
|
ZIG_STATE_CONFIG_GATEWAY1,
|
|
ZIG_STATE_CONFIG_ERROR, //入网错误
|
|
ZIG_STATE_CONFIG_JOINING, //入网中
|
|
ZIG_STATE_CONFIG_NOT_JION, //未入网
|
|
//=======================名字和icon修改
|
|
ZIG_STATE_Update_icon_name, //升级显示的名字和icon
|
|
ZIG_STATE_Scene_switch_set,//复合开关的选择 当场景还是开关
|
|
//=======================开关
|
|
ZIG_STATE_1on,
|
|
ZIG_STATE_1off,
|
|
ZIG_STATE_2on,
|
|
ZIG_STATE_2off,
|
|
ZIG_STATE_3on,
|
|
ZIG_STATE_3off,
|
|
ZIG_STATE_4on,
|
|
ZIG_STATE_4off,
|
|
//=======================首屏场景
|
|
ZIG_STATE_SCENE_1,
|
|
ZIG_STATE_SCENE_2,
|
|
ZIG_STATE_SCENE_3,
|
|
ZIG_STATE_SCENE_4,
|
|
ZIG_STATE_SCENE_5,
|
|
ZIG_STATE_SCENE_6,
|
|
ZIG_STATE_SCENE_7,
|
|
ZIG_STATE_SCENE_8,
|
|
//=======================场景开关
|
|
//场景开关1
|
|
ZIG_STATE_GANG11on,
|
|
ZIG_STATE_GANG11off,
|
|
ZIG_STATE_GANG12on,
|
|
ZIG_STATE_GANG12off,
|
|
ZIG_STATE_GANG13on,
|
|
ZIG_STATE_GANG13off,
|
|
ZIG_STATE_GANG14on,
|
|
ZIG_STATE_GANG14off,
|
|
ZIG_STATE_GANG1_ALLon,
|
|
ZIG_STATE_GANG1_ALLoff,
|
|
//场景开关2
|
|
ZIG_STATE_GANG21on,
|
|
ZIG_STATE_GANG21off,
|
|
ZIG_STATE_GANG22on,
|
|
ZIG_STATE_GANG22off,
|
|
ZIG_STATE_GANG23on,
|
|
ZIG_STATE_GANG23off,
|
|
ZIG_STATE_GANG24on,
|
|
ZIG_STATE_GANG24off,
|
|
ZIG_STATE_GANG2_ALLon,
|
|
ZIG_STATE_GANG2_ALLoff,
|
|
//场景开关3
|
|
ZIG_STATE_GANG31on,
|
|
ZIG_STATE_GANG31off,
|
|
ZIG_STATE_GANG32on,
|
|
ZIG_STATE_GANG32off,
|
|
ZIG_STATE_GANG33on,
|
|
ZIG_STATE_GANG33off,
|
|
ZIG_STATE_GANG34on,
|
|
ZIG_STATE_GANG34off,
|
|
ZIG_STATE_GANG3_ALLon,
|
|
ZIG_STATE_GANG3_ALLoff,
|
|
//场景开关4
|
|
ZIG_STATE_GANG41on,
|
|
ZIG_STATE_GANG41off,
|
|
ZIG_STATE_GANG42on,
|
|
ZIG_STATE_GANG42off,
|
|
ZIG_STATE_GANG43on,
|
|
ZIG_STATE_GANG43off,
|
|
ZIG_STATE_GANG44on,
|
|
ZIG_STATE_GANG44off,
|
|
ZIG_STATE_GANG4_ALLon,
|
|
ZIG_STATE_GANG4_ALLoff,
|
|
//场景开关6
|
|
ZIG_STATE_GANG61on,
|
|
ZIG_STATE_GANG61off,
|
|
ZIG_STATE_GANG62on,
|
|
ZIG_STATE_GANG62off,
|
|
ZIG_STATE_GANG63on,
|
|
ZIG_STATE_GANG63off,
|
|
ZIG_STATE_GANG64on,
|
|
ZIG_STATE_GANG64off,
|
|
ZIG_STATE_GANG65on,
|
|
ZIG_STATE_GANG65off,
|
|
ZIG_STATE_GANG66on,
|
|
ZIG_STATE_GANG66off,
|
|
ZIG_STATE_GANG6_ALLon,
|
|
ZIG_STATE_GANG6_ALLoff,
|
|
//=======================空调
|
|
ZIG_STATE_SCENE_AirconditionerON,
|
|
ZIG_STATE_SCENE_AirconditionerOFF,
|
|
ZIG_STATE_SCENE_Airconditionercool,
|
|
ZIG_STATE_SCENE_Airconditionerheat,
|
|
ZIG_STATE_SCENE_Airconditionertempadd,
|
|
ZIG_STATE_SCENE_Airconditionertempsub,
|
|
ZIG_STATE_SCENE_Airconditionermode,
|
|
ZIG_STATE_SCENE_Airconditionerdirect,
|
|
ZIG_STATE_SCENE_Airconditionerspeed,
|
|
//=======================投影仪
|
|
ZIG_STATE_SCENE_ProjectorON,
|
|
ZIG_STATE_SCENE_ProjectorOFF,
|
|
ZIG_STATE_SCENE_Projector_volume,
|
|
ZIG_STATE_SCENE_Projector_quit,
|
|
ZIG_STATE_SCENE_Projector_return,
|
|
ZIG_STATE_SCENE_Projector_home,
|
|
ZIG_STATE_SCENE_Projector_menu,
|
|
ZIG_STATE_SCENE_Projector_up,
|
|
ZIG_STATE_SCENE_Projector_down,
|
|
ZIG_STATE_SCENE_Projector_left,
|
|
ZIG_STATE_SCENE_Projector_right,
|
|
ZIG_STATE_SCENE_Projector_sure,
|
|
// //幕布
|
|
// ZIG_STATE_SCENE_ScreenON,
|
|
// ZIG_STATE_SCENE_ScreenPause,
|
|
// ZIG_STATE_SCENE_ScreenOFF,
|
|
// //纱帘
|
|
// ZIG_STATE_SCENE_GauzecurtainON,
|
|
// ZIG_STATE_SCENE_GauzecurtainPause,
|
|
// ZIG_STATE_SCENE_GauzecurtainOFF,
|
|
// //窗户
|
|
// ZIG_STATE_SCENE_WindowON,
|
|
// ZIG_STATE_SCENE_WindowPause,
|
|
// ZIG_STATE_SCENE_WindowOFF,
|
|
//=======================灯群控
|
|
//灯群1
|
|
ZIG_STATE_light1_switch_led,//开关
|
|
ZIG_STATE_light1_temp, //色温
|
|
ZIG_STATE_light1_bright, //亮度
|
|
//灯群2
|
|
ZIG_STATE_light2_switch_led,//开关
|
|
ZIG_STATE_light2_temp, //色温
|
|
ZIG_STATE_light2_bright, //亮度
|
|
//灯群3
|
|
ZIG_STATE_light3_switch_led,//开关
|
|
ZIG_STATE_light3_temp, //色温
|
|
ZIG_STATE_light3_bright, //亮度
|
|
//灯群4
|
|
ZIG_STATE_light4_switch_led,//开关
|
|
ZIG_STATE_light4_temp, //色温
|
|
ZIG_STATE_light4_bright, //亮度
|
|
//=======================窗帘群控
|
|
//窗帘1
|
|
ZIG_STATE_Curtain1_status,//状态 开/关/停
|
|
ZIG_STATE_Curtain1_value, //百分比
|
|
//窗帘2
|
|
ZIG_STATE_Curtain2_status,//状态 开/关/停
|
|
ZIG_STATE_Curtain2_value, //百分比
|
|
//窗帘3
|
|
ZIG_STATE_Curtain3_status,//状态 开/关/停
|
|
ZIG_STATE_Curtain3_value, //百分比
|
|
//窗帘4//用于控制卷帘
|
|
ZIG_STATE_Curtain4_status,//状态 开/关/停
|
|
ZIG_STATE_Curtain4_value, //百分比
|
|
|
|
//插座1
|
|
ZIG_STATE_SOCKET11on,
|
|
ZIG_STATE_SOCKET11off,
|
|
ZIG_STATE_SOCKET1_ALLon,
|
|
ZIG_STATE_SOCKET1_ALLoff,
|
|
//插座2
|
|
ZIG_STATE_SOCKET21on,
|
|
ZIG_STATE_SOCKET21off,
|
|
ZIG_STATE_SOCKET2_ALLon,
|
|
ZIG_STATE_SOCKET2_ALLoff,
|
|
|
|
ZIG_STATE_SCAN_START,//扫描开始
|
|
ZIG_STATE_SCAN_DONE,//扫描完成
|
|
ZIG_STATE_WIFI_START,//开启wifi
|
|
ZIG_STATE_WIFI_STOP,//停止wifi
|
|
ZIG_STATE_DISCONNECTED,
|
|
ZIG_STATE_SUBDEVICE_UPDATE, //更新子对象
|
|
}ZIGStates;
|
|
typedef struct
|
|
{
|
|
ZIGStates event;//事件
|
|
uint8_t length; //短消息:DO中断 超时时间 消息在哪里存放 根据event事件判断
|
|
uint8_t *buffStr; //长消息buffer
|
|
}ZIGEvent;
|
|
|
|
extern rt_mq_t zig_rx_evt_queue;
|
|
extern int zigbee_uart_int(void);
|
|
extern void esp_log_buffer_hex(const char *tag, const void *buffer, uint16_t buff_len);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
#endif
|