
【彩色丝印】国潮瑞彩·灵蛇福韵IOT挂饰
简介
灵蛇福韵IOT挂饰以传统文化为根基,以现代科技为羽翼重新定义了家居装饰边界。它是文化传承承载者、生活趣味创造者、科技便捷助力者、绿色生活倡导者,引领我们探索一种既传统又现代、既环保又便捷的生活方式。
简介:灵蛇福韵IOT挂饰以传统文化为根基,以现代科技为羽翼重新定义了家居装饰边界。它是文化传承承载者、生活趣味创造者、科技便捷助力者、绿色生活倡导者,引领我们探索一种既传统又现代、既环保又便捷的生活方式。开源协议
:CC BY-NC 4.0
描述

本项目参加了2024年暖冬创趣迎新年活动
作品获得一等奖
【QQ复刻交流群】
①群:646681797 (已满)
②群:1019644060 (已满)
③群:1035161350
进群口令:8083267A
B站产品展示视频链接:https://www.bilibili.com/video/BV1iCcyeLE3j/
温馨提示:复刻前请务必查阅BOM表文件和《复刻及使用说明》
20250210更新说明:
- 更新了V2.2.1固件:修复2.2版本按键不进入配网(下键)和离线(上键)BUG,修复语音播报、音乐播放和灯光控制概率出现的不协调问题。如无重大BUG,近期降不打算再进行固件更新。有问题请群内@我留言。
- 介于大家对102040较难购买的问题,我在项目优化工程中(群内有加入工程的链接)设计了一款通用的电源充放电模块。
- 更新了复刻说明至V2.2.1版本,同时在本项目中再次描述,复刻前请注意查阅!
注意:本项目使用的DF mini Player模块是《复刻说明》图里的那种,有复刻网友买到了其他厂商基于官方模块进行的魔改版,插入后出现音频播放不正常的问题,请大家复刻时请注意!我会在本工程里面添加我购买模块的细节图,大家不要买错了。另外,其他厂商的模块适配也有计划,因近期工作忙,时间待定。
20250127V2.2固件更新说明:
该版本及后续版本固件仅支持ESP32N8版本使用,仅支持OTA升级。V2.0之前的版本须先升级至V2.1支持OTA版本,然后再通过OTA方法完成该版本的升级。
- 优化默认报时时间为早上9点至晚上六点。
- 新增设置报时时段功能,蓝牙BLE发送Tshsmehem。sh是开始小时,sm是开始分钟,eh是结束小时,em是结束分钟,不足2位时补足0。例如,想要在早上8点至晚上10点报时,则输入T08002200。想要不报时可以不联网,或者发送的开始小时大于结束小时即可。
- 后续视情况将为ESP32N4版本进行功能完善和补全(时间待定)。
20250126V2.1固件更新说明:
该版本固件仅支持ESP32N8版本使用,支持OTA升级。
新增本地OTA升级功能,简化固件烧录难度。本次烧录依然需要连接烧录器,后续版本可直接OTA烧录。
使用说明:开机时同时按下两个按键,直到灯光变为黄色、绿色后熄灭可以松开,此时进入OTA升级模式。连接WIFI名称:SnakeYear_OTA,密码8个0后,打开浏览器输入192.168.1.1,打开上传固件页面。选择固件点击上传等待自动更新即可。
注意:本固件已将分区表设置为8M,内置2个OTA分区,升级失败时可自动回滚,因此使用esp32N4的不要升级本固件,否则出错。
20250125V2.0固件更新说明:
该版本固件同时支持ESP32N4、ESP32N8版本使用。
一、修复BUG
1. 播放MP3时进行其他语音操作时导致播放停止,播放MP3时自动屏蔽报时;
2. 修复无播放音乐时按下播放/暂停键时误播报声音;
3. 现在可以在播放音乐时进行灯光控制了(但是不会再有音乐播报)。
二、优化使用
1. 完善了设备运行状态的串口输出,可用于调试时监测设备运行状态;
2. 因新增了声光同时使用模式,故手动报时兼用做关闭音乐播放器功能;
3. 将原来每十分钟报时一次调整为每半小时报时一次,同时整点完整报时,半点快速报时。
三、新增功能
1. 设备启动时LED即亮,以提示系统成功启动;
2. 新增离线工作模式,开机时按住上面的按键会跳过WIFI和校时功能,即可进行蓝牙配对操作设备;当需要配网时需要重启(开机时按住下面的按键);
3. 新增LED调光调色功能:不播放音乐时,音量+/-兼做亮度+/-,上/下一首兼做小夜灯的灯光切换。目前仅支持10级亮度和5种颜色;
4. 新增夜灯自定义灯光调节,发送命令为LXXXXXXXXX,其中后面9个X为RGB数据,范围0-255,不足位时补0(例如发送红色为L255000000)。
20250121更新内容:
- 开源了
V1.0版本的固件,整理了复刻BOM表,同时上传了复刻说明(V1.1版本);- 暂借用醒狮复刻②群(群号
1019644060,进群口令:8083267A)将资料整理至群文件(包含配网和蓝牙连接软件、音频资料包、BOM表等);- 新增双面彩色丝印挂饰版本,该版本不带电路特性,纯装饰使用,已在群内公告了工程链接(暂未开源但是可以观察者身份下载资料);
- 后续更新计划:一是优化固件部分BUG(预计月底完成),二是新增板载18650电池版本同时优化部分电路以降低复刻难度,增加续航(预计春节之后)。
温馨提示:该挂饰可串到棍子上变成正月十五花灯!
国潮瑞彩 · 灵蛇福韵IOT挂饰:古韵今辉,智启非凡
在日新月异的科技浪潮中,传统文化犹如一股不竭的源泉,为现代生活注入源源不断的灵感与活力。正是在这样的时代背景下,一款集传统民俗与现代科技于一身的创新之作——国潮瑞彩 · 灵蛇福韵IOT挂饰应运而生。它不仅承载着深厚的历史文化底蕴,更以独特的创意和先进的技术,重新定义了家居装饰与生活美学的边界。这款挂饰连接着过去与未来,让古老的传统民俗在现代科技的照耀下焕发出新的生机与光彩,引领我们探索一种既传统又现代、既环保又便捷的生活方式。
一、作品介绍
1. 灵感溯源:瑞彩交织,凝民俗淬科技
在传统文化与现代科技交织的时代节点上,灵蛇福韵IOT挂饰赋予了物联网科技产品独特的文化情愫。它通过深入挖掘民俗文化,将蛇年的祥瑞象征、醒狮文化的灵动以及福字蕴含的美好祝愿进行了巧妙地融合与诠释。同时,这款挂饰致力于将国潮文创作品实用化、便捷化,让古老的传统民俗换新颜,以更加贴近生活的方式走进寻常百姓家,让人们在日常生活中就能感受到传统文化的魅力。

2. 颜值担当:国潮趣品,彰显电路美学
灵蛇福韵IOT挂饰在外观设计和加工制作上尽显独特创意与精湛工艺。一块嘉立创彩色丝印PCB板巧妙地兼具了电路功能与出众的颜值。其整体色彩搭配绚丽多彩,每一处细节都经过精心雕琢,将嘉立创彩色丝印技术的高超工艺水准展现得淋漓尽致。蛇年福字通过先进的阻焊层开窗和沉金工艺展现,醒目且年味十足,传递出了浓浓的节日氛围。头戴醒狮帽的小蛇形象则俏皮可爱至极,它那灵动的姿态仿佛蕴含着无尽的活力与生机,充满了趣味性。只需将这款挂饰简单地悬挂在家中,它便能完美融入国潮风的家居环境,为整个空间注入独特而迷人的电路美学和东方魅力,成为家居装饰中的一大亮点。
3. 声色焕彩:倾听美好,点亮生活意趣
3.1 多模灯光,氛围随心塑
这款挂饰的灯光功能丰富多样,为用户带来了丰富多彩的灯光体验。它支持多色调光功能,预设的多组灯光模式,用户可以根据不同的家居氛围和个人喜好轻松切换。
- 新年氛围灯:能够在过年时营造出浓郁的节日氛围,让家中充满喜庆的气息。
- 呼吸灯:灯光缓缓起伏,如同呼吸一般,营造出梦幻般的氛围,为空间增添了独特的艺术美感。
- 小夜灯:光线柔和而温暖,能够陪伴你安然入眠,给予你舒适的睡眠环境。
3.2 天籁盈耳,旋律漫生活
这款挂饰具有MP3音乐播放功能,支持多种采样率下mp3和wav格式音频播放。它通过拓展存储本地音乐,以满足个性化的音乐需求。
- 新年氛围曲:预设多曲新年音乐,为家中增添浓厚的过年氛围。
- 离线有声书:能实现离线有声书播放,让你在闲暇时光享受听书的乐趣。
- 助眠白噪声:预设暖春小雨、夏夜雷雨、乡间虫鸣、仲夏海浪、露营篝火5种白噪音,能够帮助你释放疲惫,缓解压力,以更快地进入梦乡,享受宁静的休息时光。

4. 智趣生活:IOT畅联,坐享便捷时光
4.1 网络畅联 · 精准报时
借助物联网技术,挂饰能够便捷连接互联网,并通过NTP授时获取高精度网络时间。同时,它可以依据预设的间隔时间,响应控制端命令,自动进行语音报时。语音报时功能解放了双眼,使你无需频繁查看就能随时了解准确时间,助力你有条不紊地规划生活节奏,让你的生活更加高效有序。
4.2 BLE 赋能 · 便捷操控
该挂饰采用了低功耗蓝牙(BLE)技术,支持通过手机蓝牙、控制终端或是嘉立创ESP32S3开发板进行无线操控。同时,结合语音播报模块,它能够实现高效的语音控制反馈。当你发出控制指令后,它会通过语音反馈结果,让你感受到智能科技带来的便捷与高效。

(支持手机终端和嵌入式终端控制)
4.3 环境感知 · 关怀入微
这款挂饰还内置了温湿度传感器,能够实时监测环境的温度和湿度。通过物联网技术,这些数据会实时反馈到终端设备上,还可以进行清晰的语音播报。另外,它支持二次开发,可以接入HomeAssistant智能家居系统,以实现根据温湿度数据反馈,自动、及时调整家中的环境设备(如空调、加湿器等)状态,营造一个舒适宜人的生活环境。

5. 年味营造:绿色生活,也溢团圆温情
5.1 创新福字 · 年味不减
在传承节日传统的同时,灵蛇福韵IOT挂饰也积极践行绿色环保理念。它巧妙取代了传统贴纸福字,无需像传统福字那样一年一换,节省了纸张和胶水损耗。它悬挂方便,除夕时除旧换新,同样能让你感受到浓浓的过年仪式感,让传统年味在新时代焕发出新的活力。
5.2 电子爆竹 · 热闹依旧
电子爆竹摒弃了传统鞭炮燃放带来的空气污染与安全隐患,而在传递喜庆热闹的过年氛围方面却毫不逊色。板载按键操作还原了点火刹那的紧张细节,鞭炮声清脆逼真、挂饰灯光影交织,声色俱现鞭炮跳跃闪烁的情景,在家中就能感受到热热闹闹的喜庆氛围,同时也为守护我们的蓝天白云贡献了一份力量。

灵蛇福韵 IOT 挂饰,以传统文化为根基,以现代科技为羽翼,在多个维度为我们带来全新体验。它不仅是一件挂饰,更是文化传承的承载者、生活趣味的创造者、科技便捷的助力者、绿色生活的倡导者。在未来的日子里,相信它将继续陪伴我们,为生活增添更多光彩。
二、硬件实现
1. 硬件架构图
本作品通过三部分实现,其一是由esp32和周边外设组成的MainBoard,其二是用作供电管理的PowerBoard(可兼容醒狮瑞象作品供电使用),其三是一个终端触控设备,它可以是嵌入式设备,可以是手机、网页,可以是esp32开发板。

2. 原理图说明
- 供电部分

- 要点解读
- 供电分两部分,一部分为MCU的3.3V供电电路,一部分为除MCU以外的5V供电电路。
- 由于3.3V仅用于esp32工作供电,这里选用了额定电流为500mA的ME6210A33MG,以简化电路和元器件。
- 项目单独将烧录模块独立出来,故此处TYPE-C仅用作供电即可,故选用了4Pin引脚;另外该选型不支持双头C口供电线供电。
- 串口烧录部分

- 要点解读
- 由于PCB板兼用作彩色丝印外观,故保留一面用作彩色丝印外饰,剩余一面放置元器件区域较紧张,为简化电路连接,采用外接烧录方案,使用烧录器连接进行烧录。
- 外接烧录器电路原理图参考如下,原理不再解释:
- ESP32最小电路

选用esp32 Wroom 模组,这部分没有复杂的,很多功能已经集成在模组内了,按照技术手册对于3V3和EN引脚进行最小电路处理即可。
- LED及温湿度传感器

- 要点解读
- LED选用WS2812的5050封装。因Arduino开发环境的
fastLED.h库对这款LED编程具有很好的驱动支持,因此选用这款三色LED。电路依旧简单,5V供电且不需要其他元器件。- 温湿度模块选用DHT11,这里由于板载不能有插件过孔影响PCB美观,故这里选用插件改卧贴方式,封装需要重新绘制。
- MP3及扬声器控制电路


- 要点解读
- MP3模块选用与醒狮瑞象作品相同的DF mini Player。本作品与醒狮瑞象的不同之处在于,在软件层面进一步发扬了MP3模块的功能,通过esp32作为上位机控制该模块实现更多的功能支持。
- 为简化电路连接,板载设计了HC-1.25-2PWT连接器,用于2W小喇叭直插连接,提升连接牢固性,降低连接难度。
- 由于本项目以锂电池供电为主,故功耗与续航能力为项目设计考虑之一。这里对喇叭设计了开关电路,通过两个MOS管实现电路的通断。
- 外接锂电池供电模块

- 要点解读
- 外接供电模块主要包含电池充放电和电源切换电路。
- 电池充放电模块采用TP5400,该芯片支持最大输出电流1A,可满足负载;芯片自带5V升压电路,同样可满足供电需求。
- TP5400芯片也可为锂电池进行充电,PROG引脚选用2K电阻,额定充电电流为560mA;锂电池选用1200mAh电池,2小时左右可完成充电。
- 模块自带电源切换电路,支持锂电池充电的同时进行电源供电。当外接电源插入时阻断锂电池供电;当外接电源撤出时锂电池恢复供电。
3. Layout说明

- 供电部分
由于供电部分设计为电源模块供电,故这里TYPE-C口不再外置支持电源线供电,而是内置后插接电源模块实现隐藏。如需外接供电可以接在电源模块上面。

- esp32蓝牙天线处理
由于PCB兼顾外观装饰,因此PCB的esp32布局方式不能像传统设计那样在模组天线部位进行切槽。这里参考esp32硬件设计手册,按照规定将天线部位进行禁止区域处理。
如果天线无法伸出板边,请保证给 PCB 天线一个足够大的净空区域(严禁铺铜、走线、摆放元件),该净空区域建议至少 15 mm,PCB 天线下方区域的底板请切割掉,以尽可能地减少底板板材对 PCB 天线的影响。馈点 还是尽量靠近板边放置,如图 16 以馈点在右侧的模组为例,画出了建议的净空区。


- DHT11 布局处理
蓝牙温湿度传感器应布置在远离热源的区域。同时,由于dht11是插件形式的封装,板载不允许设置过孔插脚,因此将封装改为贴片类型,通过加大焊盘区域使其“卧贴”在PCB中,在避免开过孔的同时,也降低了焊接后的净空区域。另外,焊接后传感器与PCB接触区域少,也减少了热传导。

三、软件实现
1. 软件架构图
软件主要通过BLE协议进行通讯,包含服务端(也就是作品的MainBoard)和客户端(可以是手机终端或开发板)。终端设备的软件架构图简化如下:

2. 各模块功能实现
- 语音播报功能
语音播报功能是在DFRobotDFPlayerMini.h库为驱动基础上进行了功能重写,通过内置离线语音素材结合播放控制命令实现不同指令的播报。
- 要点解读
DFRobotDFPlayerMini库基于Mini Mp3模块的串口通信协议,将数据手册的控制指令集封装为底层控制驱动函数。- 基于Arduino库重写了适配本项目的驱动库
Report_APP.h,主要实现欢迎语、提示语、功能播报、音乐播报、数字语音播报和数字播报功能。- 相关语音素材取自人工智能豆包,这里不再进行开源。
- LED灯光秀功能
灯光功能以FastLED.h库为驱动基础,重写了适配多种灯光效果的封装函数。
- 要点解读
- WS2812驱动原理:LED内置单线传输驱动控制,采用单极性归零码协议,芯片在上电复位后接受DIN数据,每个LED接受24Bit数据后,其余数据从DOUT端转发至下一LED。
- 基于Arduino库重写了适配本项目的驱动库
WS2812LED.h,主要实现常亮灯光、闪烁灯光、呼吸灯、电子鞭炮等灯光特效。
- 设备联网功能
设备联网功能采用了乐鑫公司官方提供的ESP-TOUCH协议。该协议可以通过手机APP端实现零代码配网功能。

- 要点解读
- ESP-TOUCH在Arduino环境下使用了
SmartConfig功能进行配网。启动SmartConfig功能后,设备进入AP模式等待数据接收;手机终端连接至WIFI后,通过将WIFI信息广播至设备中实现配网。- 在使用
SmartConfig有关语句时,注意要重写官方例程函数,新增开机检查配网信息->无法联网时打开配网功能->网络配置正确后进行联网等逻辑函数。同时设置一个GPIO按键一键还原网络配置。
- BLE功能
由于esp32系列均支持低功耗蓝牙BLE功能,并且BLE功能是基于服务端和客户端实现的通讯,因此这里需要进行服务端和客户端分别配置。而通讯的配置其实就是发送特征值,通过在回调函数里匹配特征值从而执行不同的任务。
- 服务端配置要点解读
- 服务端的设置步骤为:
BLEDevice -> CreateServer -> CreateService -> CreateCharacteristic -> AddDescriptor -> startAdvertising(开启广播等待连接后关闭)。- 由于需要进行设备连接/断开连接处理、特征值数据处理,因此这里需要为
Service和Characteristic分别注册任务处理回调函数。MyServerCallbacks重写服务回调函数,使其支持连接完成后关闭广播并记录设备信息,以及断开连接时重启广播功能。MyCharacteristicCallbacks重写特征值回调函数。特征值主要有三种属性,及可读、可写、可通知。通过重写特征值回调实现以下三个功能:一是当可写数据被客户端写入时(也就是客户端发送了指令)触发任务处理,也是主要功能函数的实现位置;二是当可读数据被主动读取时,提示读取设备的信息和读取数据(用于测试远程端接收到数据的通讯状态是否正确);三是自动触发Notify以实现数据播报,例如定期将环境温湿度数据Notify给客户端,以实现环境感知。
- 客户端嵌入式开发配置要点解读
- 客户端的设置步骤为:
BLEDevice -> getScan(扫描服务端信息) -> createClient(扫描到指定设备时初始化连接) -> getService -> getCharacteristic。- 这里同样需要进行设备连接/断开连接处理、特征值数据处理,因此需要为
Scan、Client和Characteristic分别注册任务处理回调函数。MyAdvertisedDeviceCallbacks重写扫描的回调函数,使其扫描到指定设备后记录设备信息,停止扫描并启动连接。MyClientCallback重写设备连接和断开连接的操作(断开连接时重启Scan)。NotifyCallback这里新增了一个Notify回调函数,目的是读取服务端通知的函数,也就是环境温湿度数据。- 使用Figma进行UI设计,使用EEZStudio软件进行嵌入式前端开发。


- 客户端手机配置要点解读
- 使用
蓝牙调试器或者BLE调试助手APP进行操作即可,通讯原理和BLE串口通讯相同,这里不再赘述。
四、展望
1. 项目收获
- 完成本项目进一步丰富了我的esp32和Mini MP3开发经验。通过完成此项目,我熟练掌握了以下技能:
- 掌握了ESP32在Arduino环境下使用BLE通讯的知识,能够熟练建立BLE客户端和服务端并进行设备通讯。
- 学会使用上位机(电脑、开发板等)通过串口通讯,为特定的串口设备进行通讯控制技术。不仅是MINI MP3的串口通讯控制,其他串口设备的通讯驱动也能够写出。
- 熟练掌握了MINI MP3的使用技巧。该模块不仅可用于音乐播放,还可通过内置串口功能实现特定的离线语音播报,可以作为一个嵌入式产品的交互外设,替代LED屏幕实现控制反馈。
- 学会使用了其他诸如WS2812的控制。
再一次验证了嘉立创彩色丝印工艺制作工艺品的可行性!
2. 下一步计划
- 下一步,我计划对本项目进行如下优化:
- 结合PulseTabLite项目,在嵌入式终端开发基于本项目的BLE客户端开发
[已完成],结合ESP32的红外通讯功能,实现嵌入式终端物联网环境感知和设备无线操控; - 将本项目接入
HomeAssistant,以实现将IOT终端接入智能家居,从而自动控制空调、加湿器等环境设备; - 受益于醒狮瑞象项目的受欢迎度,下一步我会将该项目的语音功能开发出拓展模块适配到醒狮瑞象作品上
[已完成]; - 进一步学习乐鑫在IOT方面的开发支持,比如将本项目通过ESP RainMaker实现手机终端的控制。
- 因项目采用锂电池供电,后期计划进行锂电池供电的电路优化。
灵蛇福韵挂饰复刻及使用说明(基于V2.2.1固件)
一、硬件准备
PCB制板及BOM表详见工程及BOM文件,这里不再叙述。除BOM表之外,还需硬件清单有:
(一)DF Mini MP3模块及8Ω2W喇叭
其中喇叭使用1.25x2P的接线器,左红右黑。同时要自己购买TF卡,容量不大于32G。


请买外观上述一致的模块,有复刻网友买到了其他厂商基于官方模块进行的魔改版,插入后出现音频播放不正常的问题,请大家复刻时请注意!
(二)本项目PowerBoard 电源模块
用于锂电池供电和电源转接。注意MainBoard因TYPE-C内置,无法直接接线,必须使用此模块进行供电,或者通过此模块的转接进行接线供电。

(三)外置ESP32烧录器
烧录器分为esp32烧录模块(下图左,我用的是我自己设计的,其他原理的一样使用)和烧录夹(下图右,2.54mm-至少2x3P)。

如烧录器是自带上下电的(也就是带自动烧录电路,能够将BOOT和EN引脚按时序拉低进入烧录模式)可以直接接线,然后顶针按照如下左图进行夹持烧录;如不带自动烧录的需要自己搭建电路把EN和BOOT按照时序(下图右,保持BOOT按下,然后按一下EN,等待esp32进入下载模式后松开BOOT)。

(四)流苏和穗子
为了增加挂饰的中国风和过年氛围,提升整体的美观度,使用中国结、流苏、穗子进行四角装饰,各个部件如下:

上图中国结和醒狮穗子是安装顶部和底部的;左下的边穗子是两侧的,通过右下1x10mm的金属开口环连接。上述都需要淘宝自购。
二、软件准备
(一)语音文件
本项目使用离线语音素材,语音回复指令的本质是指定播放TF卡文件夹内的音频文件。通过不同音频文件的顺序播放实现语音播放、报时、数据播报功能。语言文件如下:

各文件夹内容请自行查看。注意,文件夹和文件的命名方式不要改变,如需要更换MP3音乐,可以把MP3文件夹下的音乐进行更换。
该文件资源在复刻群的群文件中。
(二)固件烧录
目前暂不开放源码,使用官方烧录工具烧录V2.1固件。相关资源已上传至复刻群文件中。选择正确的芯片、烧录文件和地址、串口即可。

三、配置说明
(一)网络配置和网络复原
- 网络配置
烧录完成后,接电开机,系统开机语音“欢迎使用国潮瑞彩·灵蛇福韵IOT挂饰”,同时LED亮彩灯。如是首次开机,系统会继续提示“等待配网”,此时进入网络配置模式。
需要手机处于无线网环境下。手机打开ESP TOUCH软件,选择EspTouch,在界面输入所连接网络的密码,然后点击确认进行广播,此时等待广播至挂饰中即可。

广播成功时软件弹出提示框提示完成,同时设备接收到wifi信息并成功联网后,将语音提示“联网成功”。此时网络连接成功,系统自动执行NTP授时并播报“时间校对中,请稍后”。获取时间成功后语音播报“校时成功”,然后播报当前时间。 - 网络复原
系统首次配网成功会自动记录下当前网络信息,关闭重启后也不会忘记,开机即可自动联网授时。
若用户想要初始化网络配置,从而连接另一个无线网络,则需要系统开机时长按BTN1按键,直到系统再次提示“等待配网”,此时进入网络配置模式,按照上述再次操作即可。
【ESP TOUCH安卓下载链接】
https://www.espressif.com.cn/zh-hans/support/download/apps?keys
【ESP TOUCH IOS下载链接】
https://apps.apple.com/cn/app/espressif-esptouch/id1071176700
(二)手机终端配置
设备授时并更新时间成功后,将关闭WIFI,同时打开蓝牙并进入广播模式等待控制端(客户端)连接,此时设备依次播报“关闭WIFI”、“蓝牙已打开”、“等待遥控连接”。
手机安装并打开“蓝牙调试器”,选择蓝牙设备名称为“ESP32M BLE”。初次蓝牙配置需要点击齿轮按钮进入蓝牙配置,并进行如下设置(下拉选择即可):
- 设置服务UUID为:
4fafc201-1fb5-459e-8fcc-c5c9c331914b - 设置TX特征UUID为(模块->手机方向,该特征用于notify温湿度数据以及控制结果反馈):
21136456-0ef8-4044-9b6a-47f2fde41b5b - 设置RX特征UUID为(手机->模块方向,该特征用于手机端发送控制指令):
beb5483e-36e1-4688-b7f5-ea07361b26a8
设置完成后,点击确定,然后再点击设备名称为“ESP32M BLE”最右面的“+”号,完成蓝牙连接。连接成功时语音提示“蓝牙遥控配对成功”。点击下方的对话模式,随便发送一个数据,观察是否有温湿度数据传回。如有则说明蓝牙信息传输正确配置。
点击按钮模式,进入按钮指令配置。该软件支持11个按键,目前各按键的指令和功能对应如下,用户自己进入编辑模式后进行编辑(注意在提示框顶部输入命令名称,按钮松开时发送的数据一栏填写指令)。
指令和名称对应如下,用户按照需求进行配置:

手机建议使用灯光切换以下共11个按键。配置完成后即可进行控制。当然也可以在对话模式中输入相应指令进行控制。手机最终控制界面如下:

(三)嵌入式设备配置
嵌入式终端使用了我PulseTabLite多NAS物联网设备的硬件进行二次开发。由于是嵌入式终端设备,因此UUID已经封装在BLE Client的配置中,遥控指令已经封装在GUI以及后端函数内,所以开机即可配对使用,省去了手机配置的复杂度(这里不再单独进行手机APP开发了,因为我不会,目前也没有学习的打算)。但是,我这里不开源嵌入式源码和固件,复刻这个控制终端成本太高了,还是建议手机使用即可。
(四)OTA本地升级
鉴于本项目设计的外置串口烧录特性,每次更新固件的接线操作比较复杂,因此在固件更新至V2.1版本时内置了OTA升级功能,在该版本以及之后版本仅可通过OTA进行固件升级。由于考虑到固件升级的概率失败,为保证设备不会变砖,所以分区表采用了双OTA分区,升级失败时自动回滚至原来版本,因此在V.21版本之后,仅支持运行在ESP32N8版本的Wroom上。OTA升级操作步骤如下:
开机时同时按住上/下按键,当设备灯光变为黄色后马上变为绿色进而熄灭时,设备进入OTA升级模式。

使用手机或者电脑连接WIFI名称“SnakeYear_OTA”,密码“00000000”后,打开浏览器输入192.168.1.1,此时进入了上传固件页面。
选择相应固件之后,点击上传等待自动更新完成即可。若更新成功,系统会亮绿灯然后重启运行。若更新失败,系统会亮黄灯然后重启回滚至原来固件。
四、使用说明
下面就是正式的控制操作了:
(一)灯光控制
灯光预设了4种模式,分别为红色常亮、黄色常亮、红黄闪烁、小夜灯(黄色较暗常亮)、关灯,通过上面的A系列指令实现。
V2.0版本以后支持灯光亮度调节、小夜灯灯光调节。当处于灯光模式时(非呼吸灯、播放音乐时),点击亮度+/-进行亮度调整;当处于小夜灯模式时,点击切光进行预设的5种灯光调节,点击亮度+/-进行亮度调整。另外,小夜灯模式下支持手机端发送“Lxxxxxxxxx”(详见命令功能描述)进行自定义灯光调节。
(二)报时
设备预设校时成功后自动报时,以及每隔半小时的自动报时。报时后会跟随环境温度和湿度数据的播报,同时每次控制操作后,系统也会回复当前的温湿度文本数据。如需主动报时,则控制端进行F指令即可。
设备在离线模式工作以及在音乐播放模式时不会自动报时;设备温湿度传感器离线时不会进行环境温湿度播报。
V2.2.1版本预设早上9点至晚上六点报时,同时还支持了自定义报时时段功能。手机端发送“Tshsmehem”(详见命令功能描述)进行自定义报时时段设置。想要不报时可以不联网,或者发送的开始小时大于结束小时即可。
(三)电子鞭炮
电子鞭炮在控制端进行D指令即可,此时会播放一段鞭炮音效,同时灯光配合进行随机闪烁,模拟鞭炮爆炸的声音光效,现实度较强。
(四)音乐播放器
默认播放MP3文件夹内的音乐,并且音乐播放完毕后自动播放下一首。报时事件默认为停止音乐播放,退出音乐模式。当音乐播放时,通过“上/下一首”、“音量+/-”、“播放/暂停”操作可以控制MP3播放器进行相应操作。
(五)入睡音乐
入睡音乐在控制端进行C指令即可,这里灯光会随音乐的情景进入呼吸灯模式,根据不同情景进行微弱的光色变化,以营造相应的环境氛围。
通过“上/下一首”、“音量+/-”、“播放/暂停”操作依然可以控制相应操作,但是灯光调节在这个模式下无效,用户无法自定义呼吸灯控制。
(六)离线模式
应网友要求,新增离线工作模式。开机时长按下键,此时系统会跳过WIFI联网和校时功能,直接打开BLE,进入蓝牙配网模式。
离线模式下系统不会自动进行报时,并且报时的命令仅用作停止播放音乐命令。如需再次启动配网请重启即可。
五、结语
由于我是嵌入式开发爱好者,自2024年7月参加立创开源第一个活动到现在也就半年的时间。这个项目花费约1个月时间开发,软件方面可能会有一些BUG,希望大家多多包涵,多多留言提示。平日工作和生活之余我会尽力修复。
另外感谢立创这个很好的开源平台,让我入门嵌入式这一领域的学习成本几乎为零,同时还能做出一些挺有趣的项目,也交到了一些朋友,共同努力共同进步。
此致
设计图
未生成预览图,请在编辑器重新保存一次BOM
暂无BOM
克隆工程知识产权声明&复刻说明
本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。
请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。











