1、小白也痴迷,如何在 Linux环境搭建编译烧录 安信可TB02,点亮一盏LED灯;
2、如何实现 微信小程序蓝牙控制 Ble Mesh模组 安信可TB02,全部开源!
3、简单入门安信可TB-02开发开发板轻松接入天猫精灵,语音控制冷暖灯so easy!
做过云云对接/WiFi直连,同时玩熟了阿里云物联网平台,天猫精灵iot平台,接触过最早期的aliosThings接入,今天,终于到ble mesh接入了的学习了!
前几天,阿里巴巴也向广大开发者开源了 天猫精灵蓝牙mesh协议,从此可以一键接入天猫精灵生态了!
Genie BT mesh Stack是一套适用于天猫精灵生态的蓝牙meshSDK;
Genie BT mesh Stack支持多家芯片厂商方案,包括:telink,MTK,Nordic;
接入方式协议请移布到天猫精灵iot平台;
开源地址:https://github.com/alibaba/genie-bt-mesh-stack
这里必须提及的是:务必要有扎实的C语言基础;目前能开源的Ble Mesh模组寥寥无可,更别说一份详细的代码了,最重要的并非适合小白详细的文档代码注释,因为文档正在形成!
我们在官网购买的话,TB-02开发板有2种出厂规格,一个是天猫精灵版,还有一个是AT透传版,对其的定义不同是:
AT透传版和天猫精灵版都是采用泰凌芯片的方案,出厂前有所不一样,AT透传版烧录的是 AT透传固件,支持微信小程序 Android/iOS APP控制;
而天猫精灵版是事先烧录好了天猫精灵的固件,但未烧录天猫精灵三元组,用户可自行在自己后台创建三元组并烧录进去使用天猫精灵语音控制,具体的烧录操作请移步到官网查看!
以下SDK代码为安信可GitHub仓库,并通过git拉取;
sudo git clone https://github.com/Ai-Thinker-Open/Telink_SIG_Mesh.git
注意,务必让文件夹有全部权限,否则编译不通过!!
sudo chmod 777 * -R Telink_SIG_Mesh
下面编译天猫精灵的程序:
cd Telink/Telink_SIG_Mesh/examples/CW_Ali_Mesh
make all //编译固件
make flash //烧录固件
这时候启动还是不能天猫精灵语音控制的,还需要烧录天猫精灵三元组哦!具体的三元组后台建立和获取请参考官方文档:点我;
主要是注意设备属性:开关、 色温 、亮度,模组选择为通用蓝牙模组,非低功耗协议!
入参序号 | 含义 |
---|---|
1 | ProductId |
2 | mac |
3 | Device Secret |
python3 ../../make/Telink_Tools.py -p /dev/ttyUSB0 burn_triad 1345 78da07fa44a7 221746e805ac0e6269bd4d3e55f1145c
然后,点击复位按键,三端两长复位操作:前三次复位按键的间隔不能超过2秒,后两次的按键的间隔应该是 3~5 秒内,然后第六次复位,LED会闪烁,这时候设备就是进去了配网状态了!
这时候,尽情语音控制TB-02开发板吧!支持开关、色温冷暖、亮度调节等功能,暂不支持定时和情景模式功能!
目前还没做好 Windows环境搭建教程,后续会放出来!
注意,此方式购买的是 TB-02开发板 天猫精灵 版的规格,也就是已经烧录好了天猫精灵的固件,
1、获取烧录工具:链接
2、如果您的板子没有烧录编译好的天猫精灵固件,请下载:下载链接
3、再烧录三元组如下图 (
然后,点击复位按键,三端两长复位操作:快速开关五次,每次上电时间在3S以内,然后第六次复位,LED会闪烁,这时候设备就是进去了配网状态了!
这时候,尽情语音控制TB-02开发板吧!支持开关、色温冷暖、亮度调节等功能,暂不支持定时和情景模式功能!
Q1:以上的连线是怎么样的?
Q2: 如何将指示灯闪烁改为呼吸渐变效果!
/mesh/light.c
文件中,修改 proc_led
函数,将指示灯闪烁改为呼吸渐变效果Q3:设备绑定成功,设备解绑成功以及设备恢复出厂设置的回调函数在哪?
在/mesh/light.h
文件中,
LED_EVENT_PROVISION_SUCCESS
和 LED_EVENT_UNBIND_SUCCESS
LED_EVENT_FACTORY_SUCCESS
宏定义Q4:如何修改设备类型,比如插座?七彩灯?
/mesh/mesh_config.h
文件中,将宏定义LIGHT_TYPE_SEL设为LIGHT_TYPE_CT,灯的类型修改为冷暖灯。Q5:修改PWM引脚?
app/app_config_8258.h
文件中通过宏定义指定,客户可自行查看此文件修改之。默认定义如下://--------------- LED / PWM
#define PWM_R GPIO_PB4 //冷光
#define PWM_G GPIO_PB5 //暖光
#define PWM_B GPIO_PWM3B0 //blue
#define PWM_W GPIO_PWM4B1 //white
Q6:修改恢复出厂设置的上电次数及上电时长
mesh/factory_reset.c
文件中的factory_reset_serials变量可修改上述参数。默认数据如下,表示上电五次恢复出厂设置,每次上电时间在0-3S
const u8 factory_reset_serials[] = { 0, 3, 0, 3, 0, 3, 0, 3, 0, 3,};
比如若将数据改为如下,则表示上电六次恢复出厂设置,前四次上电时间在0-3S,后两次上电时间在5-20秒
const u8 factory_reset_serials[] = { 0, 3, 0, 3, 0, 3, 5, 20, 5, 20,};
Q7:修改配网成功指示灯闪烁次数?
在mesh/light.h
中,修改宏定义 LED_EVENT_PROVISION_SUCCESS
可修改配网成功指示灯灯闪次数及频率。
Q8:修改出厂设置指示灯闪烁次数?
在mesh/light.h
中,修改宏定义 LED_EVENT_FACTORY_SUCCESS
可修改恢复出厂设置后指示灯灯闪次数及频率
esp8266
带你飞、加群QQ
群,不喜的朋友勿喷勿加:434878850