蓝牙Mesh笔记 ①ESP32-C3 模组上实现天猫精灵蓝牙 BLE Mesh AliGenie 接入,无需WiFi 连接也可以实现天猫精灵语音控制。

Posted 半颗心脏

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了蓝牙Mesh笔记 ①ESP32-C3 模组上实现天猫精灵蓝牙 BLE Mesh AliGenie 接入,无需WiFi 连接也可以实现天猫精灵语音控制。相关的知识,希望对你有一定的参考价值。


  • 本系列博客学习由非官方人员 半颗心脏 潜心所力所写,仅仅做个人技术交流分享,不做任何商业用途。如有不对之处,请留言,本人及时更改。

系列一:ESP32系列模组基础学习系列笔记

1、 爬坑学习新旅程,虚拟机搭建esp32开发环境,打印 “Hellow World”。
2、 巧用eclipes编辑器,官方教程在在Windows下搭建esp32开发环境,打印 “Hellow World”。
3、 认识基本esp32的GPIO接口,开始点亮您的第一盏 LED和中断回调实现按键功能 。
4、体会esp32的强大的定时器功能, 实现定时2s闪烁一盏LED灯。
5、接触实践esp32的pwm宽度脉冲功能, 实现呼吸效果闪烁一盏LED灯。
6、smartConfig和微信airKiss在esp32的实现,一键配网轻松快捷连接路由器。
7、利用GPIO中断做一个按键的短按和长按的回调事件,再也无须担心触发源。
8、esp32上实现本地 UDP 客户端和服务端角色,在局域网内实现通讯。
9、esp32上实现本地 TCP 客户端和服务端角色,可断线重连原路返回数据。
10、乐鑫esp32 SDK编程利用rmt驱动ws2812七彩灯,实现彩虹渐变效果。
11、入门 乐鑫esp-adf 音频框架开发,esp32造一个蓝牙耳机,实现切换歌曲,获取歌曲信息等功能。
12、开源一个微信公众号airkiss配网esp32以及局域网发现功能的工程,分享一个airkiss配网小工具。
13、esp32 内置 dns 服务器,无需外网访问域名返回指定网页。
14、esp32 sdk编程实现门户强制认证,连接esp32热点之后,自动强制弹出指定的登录界面。
15、认识本地离线语音唤醒识别框架 esp-skainet ,实现较低成本的硬件语音本地识别控制。
16、学习本地语音唤醒离线识别框架 esp-skainet ,如何修改唤醒词? 如何自定义命令词?如何做意图动作?
17、全网首发,乐鑫esp32 sdk直连京东微联·小京鱼 · IoT开放平台,实现叮咚音响语音智能控制。
18、入门京东微联·小京鱼的控制面板H5开发,读懂vue语法,做自己的控制页面。
19、重磅开源,如何在微信小程序上ble蓝牙配网esp32,blufi的那些事!
20、一篇好文,开发过程中编译esp32固件太大,无法正常启动?教你如何自定义分区表partitions.csv。
21、 esp32蓝牙配网blufi的高度封装,集成简单、使用简单、容易上手,提高开发效率!
22、讨论下程序员 “青春饭” 那些事,分享在esp32实现多种加密算法md5 |AES CBC-ECB| Sha1 | Sha256 等!
23、安信可 esp32-a1s 音频开发板移植最新 esp-adf 音频框架,小试牛刀如何实现在线文字转语音播放。
25、分享在 esp32 SDK实现冷暖光色温平滑调节的封装,轻松集成到您的项目去。
26、分享下如何在window下使用CMake编译,编译速度提高传统 make 编译一个档次,支持 ESP32 和 ESP32-C3。
27、windows10平台下自带的Linux安装 ESP8266/ESP32 环境,再无需额外安装虚拟机了。

系列二:ESP32-Camera 摄像头开发板系列笔记

1、安信可 ESP32-Cam 摄像头开发板二次开发 C SDK编程,实现MQTT远程拍照传输到私有服务器。
1、安信可 ESP32-Cam 摄像头开发板二次开发 C SDK编程,实现本地视频流监控。

系列三:ESP32-C3 模组系列笔记

1、【蓝牙Mesh笔记 ①】ESP32-C3 模组上实现天猫精灵蓝牙 BLE Mesh AliGenie 接入,无需WiFi 连接也可以实现天猫精灵语音控制。


一、前言

     玩了好久的Ble Mesh,忽然在乐鑫GitHub上发现了原厂也支持天猫精灵 BLE Mesh AliGenie 控制了,恰好借着这个机会,给自己做一个蓝牙Mesh笔记专题,学习下Ble Mesh基本协议和使用。本篇文章只介绍简单使用,后续的讲解原理和如何实现其他应用开发噢!

    本篇文章适合于ESP32和ESP32-C3模组系列,要求使用4M Flash。

    如何搭建ESP32环境,请留步到:

    链接:分享下如何在window下使用CMake编译,编译速度提高传统 make 编译一个档次,支持 ESP32 和 ESP32-C3。


二、天猫精灵Mesh AliGenie 例程简介

    支持芯片:ESP32和ESP32-C3模组系列,要求使用4M Flash。

    步骤:

  1. 前往阿里飞燕平台注册设备获取三元组信息,因为阿里飞燕和天猫精灵平台合并了。
  2. 配置代码宏定义为三元组信息。
  3. 下载固件到ESP32-C3 模组里面。
  4. 使用天猫精灵音响或天猫精灵APP配置设备入网和控制。
  5. 配置设备成功后, 就可以天猫精灵语音控制天猫精灵APP控制了。

三、平台配置

1.1 创建天猫精灵应用

    使用阿里物联网平台的第一步是创建一个项目。项目之间的数据是相互隔离的,互不影响,步骤:

  1. 登录阿里飞燕平台 链接。
  2. 创建工程。
  3. 配置并拿到一个设备三元组信息。

1.2 创建产品

    每一个工程里面,可以创建多个产品。一旦产品创建了,产品创建完成后,您可以通过定义产品功能,将实际产品抽象为一个由属性、服务、事件组成的数据模型,方便云端管理和数据交互。

  1. 在主项目页面上,单击创建新产品。
  2. 配置产品参数。
  3. 单击完成,产品创建成功后,会自动进入产品功能定义页面。


    节点选择如下:节点类型为需要接入网关(天猫精灵),BLE Mesh接入,非低功耗模式。

1.3 定义产品功能

    平台为每个类别提供默认的标准功能。产品创建完成后,功能定义页面会自动显示产品默认的标准功能。

    您可以按照以下步骤添加或修改功能。在产品功能定义页面,点击标准功能对应的添加功能。

1.4 人机交互设置

    生活物联网平台提供App服务,简化App开发任务。您可以通过简单的配置实现App与平台之间的数据通信,达到人机交互的效果。

  1. 点击下一步:人机交互,进入产品人机交互页面。
  2. 使用公版App打开开关即可控制产品。
  3. 单击选择面板。在“选择产品面板”对话框的“主题面板”选项卡中选择设备面板或在自定义面板中自行设计面板。
  4. 安装公版App“云智能”。点击立即安装,选择开发版,然后扫码下载公版App开发版。
  5. 为设备网络配置配置启动页面。

1.2 添加调试设备

设备必须使用平台颁发的唯一设备证书(ProductIDDeviceNameDeviceSecret)才能访问阿里物联网平台。

  1. 点击下一步:设备调试,进入产品-设备调试页面。
  2. 在认证模块/芯片的选择中选择对应的模块,推荐使用经过阿里认证的模块。
  3. 在测试设备中单击添加测试设备。
  4. 配置设备名称。DeviceName也可以不配置,系统自动生成设备名称,但必须是遵循MAC地址格式。
  5. 单击确定,界面显示测试设备的设备证书。需要烧入设备的激活凭证(ProductIDDeviceNameDeviceSecret)如下图红框所示。

四、 工程配置三元组

  1. 进入examples/bluetooth/esp_ble_mesh/aligenie_demo目录,运行 idf.py menuconfig
  2. 配置设备三元组信息,修改后保存退出。

1. 配置 LED GPIO

  1. 要使用颜色可调的 RGB 灯,需要配置三个 GPIO,RED、GREEN 和 BLUE。

2. 下载和烧录

  1. 所有配置完成后,idf.py set-target esp32c3,设置为 esp32c3,如果您手上是esp32的模组,无需配置;
  2. 运行 idf.py flash monitor下载监控了。
  3. 下载完成后,可以看到这个日志。

3. 使用说明

  1. 设备第一次上电时,绿灯闪烁,表示设备处于配对模式。
  2. 我们可以对 天猫精灵音响 扬声器说“天猫精灵,发现智能设备”。
  3. 当扬声器找到设备并提示是否连接时,我们对天猫精灵音响 说“连接”,您就可以开始配置设备了。
  4. 接下来我们可以用天猫精灵音响语音来控制灯光,例如:“天猫精灵,开灯”、“天猫精灵,关灯”、“天猫精灵,把灯调整成蓝色”、“天猫精灵,把关灯”灯调整成绿色”…………

4. 如何重置进去配网模式

  1. 反复复位设备3次即可复位设备。
  2. 每次复位操作都需要等到灯亮后才能继续。

五. 其他

  • 关注本人微信公众号 “徐宏blog” 或扫描下方二维码,发送 210506 获取源码!

另外,不要把我的博客作为学习标准,我的只是笔记,难有疏忽之处,如果有,请指出来,也欢迎留言哈!

  • 玩转esp8266带你飞、加群QQ群,不喜的朋友勿喷勿加:434878850
  • 个人邮箱:xuhongv@yeah.net 24小时在线,有发必回复!
  • esp8266源代码学习汇总(持续更新,欢迎star):https://github.com/xuhongv/StudyInEsp8266
  • esp32源代码学习汇总(持续更新,欢迎star):https://github.com/xuhongv/StudyInEsp32
  • 关注下面微信公众号二维码,干货多多,第一时间推送!

以上是关于蓝牙Mesh笔记 ①ESP32-C3 模组上实现天猫精灵蓝牙 BLE Mesh AliGenie 接入,无需WiFi 连接也可以实现天猫精灵语音控制。的主要内容,如果未能解决你的问题,请参考以下文章

LittlevGL ESP32 学习笔记 ①移植最新的 LVGL 版本到安信可ESP32C3模组,显示一个二维码。(附带源码)

LittlevGL ESP32 学习笔记 ①移植最新的 LVGL 版本到安信可ESP32C3模组,显示一个二维码。(附带源码)

LittlevGL ESP32 学习笔记 ①移植最新的 LVGL 版本到安信可ESP32C3模组,显示一个二维码。(附带源码)

LittlevGL ESP32 学习笔记 ①移植最新的 LVGL 版本到安信可ESP32C3模组,显示一个二维码。(附带源码)

ESP32-C3上手笔记 | 01 - ESP32 C3开发环境搭建(ESP-IDF)

微信小程序控制硬件17 分享腾讯物联平台腾讯连连小程序 蓝牙设备 H5 自定义面板开发的那些坑,支持控制安信可 TB/PB蓝牙模组ESP32/C3/S3模组,让你少走弯路。(附带源码)