Files
luban-lite-t3e-pro/application/rt-thread/t3e-pro/components/mcu_sdk/zigbee_fun.h

257 lines
6.8 KiB
C
Raw Normal View History

2025-09-30 11:56:06 +08:00
/**
* @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