-
TB-02开发板 *1 -
天猫精灵(支持任意版本)*1
-
阿里飞燕账号(可自助申请) * 1
1
天猫精灵RGB冷暖灯
1.1 开源地址
1.2 操作说明
1.3 控制指令
“天猫精灵,开灯”
“天猫精灵,将灯的亮度调为80”
“天猫精灵,将灯的色温调为30”
“天猫精灵,将灯调为红色”
“天猫精灵,将灯调为紫色”
1.4 三元组

1.5 更改记录
PWM_C这个定义,及其延伸定义
(LIGHT_TYPE_SEL == LIGHT_TYPE_CT_HSL)状态下light_res_hw添加PWM_C,修改为5路。
/mesh/light.c文件中将
light_dim_set_hw(idx, 0, get_pwm_cmp(0xff,(100-ct_100)*lum_100/100));
light_dim_set_hw(idx, 1, get_pwm_cmp(0xff, ct_100*lum_100/100));
light_dim_set_hw(idx, 4, get_pwm_cmp(0xff,(100-ct_100)*lum_100/100));
light_dim_set_hw(idx, 3, get_pwm_cmp(0xff, ct_100*lum_100/100));
/mesh/light.c文件中,修改 proc_led 函数,将指示灯闪烁改为呼吸渐变效果;
修改 rf_link_light_event_callback 函数,注释掉了LGT_CMD_SET_SUBSCRIPTION 事件回调。
/mesh/light.h文件中,添加了 LED_EVENT_PROVISION_SUCCESS LED_EVENT_UNBIND_SUCCESS
/mesh/mesh_config.h文件中,将宏定义LIGHT_TYPE_SEL设为LIGHT_TYPE_CT,灯的类型修改为冷暖灯。
1.6 其他可修改项
1.6.1 修改PWM引脚
//--------------- LED / PWM
#define PWM_R GPIO_PB4 //冷光
#define PWM_G GPIO_PB5 //暖光
#define PWM_B GPIO_PWM3B0 //blue
#define PWM_W GPIO_PWM4B1 //white
1.6.2 修改恢复出厂设置的上电次数及上电时长
mesh/factory_reset.c文件中的factory_reset_serials变量可修改上述参数。
const u8 factory_reset_serials[] = { 0, 3,
0, 3,
0, 3,
0, 3,
0, 3,};
const u8 factory_reset_serials[] = { 0, 3,
0, 3,
0, 3,
5, 20,
5, 20,};
1.6.3 修改配网成功指示灯闪烁次数
mesh/light.h中,修改宏定义 LED_EVENT_PROVISION_SUCCESS 可修改配网成功指示灯灯闪次数及频率
1.6.4 修改出厂设置指示灯闪烁次数
mesh/light.h中,修改宏定义 LED_EVENT_FACTORY_SUCCESS 可修改恢复出厂设置后指示灯灯闪次数及频率。
2
天猫精灵AT通用固件
2.1 开源地址
2.2 操作说明
2.3 AT指令

2.4 语音控制指令
“天猫精灵,打开插座”
“天猫精灵,关闭插座”
“天猫精灵,两分钟后关闭插座”
2.5 三元组

2.6 指令使用示例
+STATE:1
+DATA:<OpCode>,<长度>,<参数>
-
关灯 +DATA:8202,4,00714100 -
开灯 +DATA:8202,4,01724100 -
将灯的亮度调为80 +DATA:824C,5,CCCC734100 -
将灯的色温调整为 +DATA:825E,9,CCCCA0190000744100 -
将灯的颜色调整为红色 +DATA:D100,9,C2230100800000FFFF -
将灯调整为阅读模式 +DATA:8242,5,0300750000 -
将风扇调整为三挡 +DATA:D100,4,220A0103 -
将风扇调整静音模式 +DATA:D100,5,4504F01100 -
打开风扇的摇头功能 +DATA:D100,4,A3000501
AT+SEND2ALI=<OpCode>,<参数>
-
关灯 AT+SEND2ALI=0482,010100
3
天猫精灵-插座、单火线开关
3.1 开源地址
3.2 操作说明
3.3 控制指令
“天猫精灵,打开插座”
“天猫精灵,关闭插座”
“天猫精灵,两分钟后关闭插座”
3.4 三元组

3.5 更改记录
/app/app.c中,添加了user_gpio_init函数,修改了process_ui函数,实现按键长短按功能。
/mesh/light.c文件中,修改set_on_power_up_onoff函数中的light_par_save(0)为light_par_save(1),立即保存开关状态。
/mesh/mesh_config.h文件中,将宏定义LIGHT_TYPE_SEL设为LIGHT_TYPE_NONE,灯的类型修改为None
3.6 用户其他可修改项
3.6.1 修改按键,指示灯及继电器控制引脚
#define BTN_GPIO GPIO_PD2 //按键GPIO
#define FACTORY_RESTORE 3 //长按恢复出厂设置时间
#define SWITCH_ENABLE_1 0 //按键优先电平
#define PWM_R GPIO_PB4 //继电器GPIO
3.6.2 修改按键长按时间
3.6.3 修改配网成功指示灯闪烁次数
mesh/light.h中,修改宏定义 LED_EVENT_PROVISION_SUCCESS 可修改配网成功指示灯灯闪次数及频率
3.6.4 修改出厂设置指示灯闪烁次数
mesh/light.h中,修改宏定义 LED_EVENT_FACTORY_SUCCESS 可修改恢复出厂设置后指示灯灯闪次数及频率;

部分图片来源于网络,侵删
文案:Ai-Thinker-徐宏
审核:Ai-Thinker-刘伟
发文:Ai-Thinker-企鹅
点击“阅读原文”,查看焕然一新的安信可科技官方论坛!

