使用ESP32-C3和1.69英寸ST7789显示屏定制智能信息仪表盘
作为一名创作者和开发者,每天不断查看 AdMob、Cults3D、Google Console 和 YouTube Analytics 的数据会耗费大量时间。我不喜欢日复一日地记录新数据——这对创作者来说实在不现实。为了解决这个问题,我开发了一个自定义的 ESP32 信息仪表板,将整个流程集中在一个地方轻松管理。
当我开始这个项目时,我的主要目标是为我的受众创建一个数字数据库。例如,追踪我完成4000小时公开观看时长的进度,以实现频道的盈利。
硬件组件
•微控制器:ESP32-C3。(你也可以使用标准模块或ESP32-C3迷你开发板,项目将完美运行。)
•显示屏:1.69英寸ST7789显示扩展板,为仪表盘界面提供出色的色彩和清晰度。
•控制:3个触控按钮。
•制作过程:最终项目完全由手工完成,使用细线将所有部件相互焊接连接。设备通过5V电源供电。
引脚定义与接线
默认情况下,该库配置为使用 ESP32-C3 的标准 SPI 引脚。您可以在设置文件中直接自定义这些引脚,以满足项目的需求。
软件与功能
真正的魔法在于内部:ESP32-C3 直接从 Google Cloud Console 获取数据,进行处理后立即推送到屏幕上。由于我添加了大量功能,编码部分变得有些复杂。
软件方面,我使用自己开发的自定义 DSN_Esp32C3_St7789 C++ 库来优化图形显示并确保页面切换流畅。该显示库完全由我独立创建,并且我持续对其进行更新维护。一款轻量级、功能完整的TFT显示屏库,专为使用ESP32-C3搭配1.69英寸ST7789显示屏而设计。本项目解决了Arduino IDE、ESP32核心更新与现有显示库之间长期存在的不兼容问题。该库从零开始构建,旨在确保稳定、快速的渲染效果,且无需依赖庞大的依赖项——使其成为开发定制化硬件平台的理想基础,例如集成式掌上游戏主机生态系统或智能物联网仪表盘。
Arduino 安装与设置
1. 安装库
•从 GitHub 下载此仓库为 .ZIP 文件。
•打开你的 Arduino IDE。
•前往 Sketch > 包含库 > 添加 .ZIP 库,然后选择已下载的文件。
2. 配置用户设置 这是一个重要步骤!与TFT_eSPI一样,您必须配置库以配合您的具体接线方式。
•导航到你的Arduino库文件夹,打开此库的文件夹。
•打开User_Setup文件。
•在此处定义你特定的引脚、SPI速度和颜色格式。
• SD卡SPI共享:如果你在与显示屏相同的SPI总线上使用SD卡,则必须取消注释此文件中的MISO定义。如果未使用SD卡,请保持其注释状态。
•保存并关闭该文件。
仪表板指标
仪表盘跟踪并显示多个数据点:
•YouTube公开观看时长和订阅者数量。
•我发布的移动游戏通过 AdMob 获得的收入。
•天气情况。
•货币。
•上一个视频分析。
•系统信息。
导航
三个按钮足以控制整个项目:两个按钮用于在页面之间切换,另一个用于手动获取数据或跳转到设置页面。
OTA 更新
我也在本项目中测试一项新功能:OTA 软件更新。该功能会检查是否有新的更新可用,就像手机或电脑更新一样。
关于API和代码的说明
系统通过 OAuth 2.0 处理 API 连接,以安全地获取数据。如果你想自行搭建,需要查阅 YouTube API 文档来帮助创建你的专属信息界面,并且需要了解如何使用 ArduinoJson 库来处理数据。请注意,目前该 API 的数据共享程度已不如过去,且信息细节也有所减少。
由于这部分内容相当复杂,涉及大量特殊权限和个人信息,我不会公开分享源代码。不过,如果大家兴趣足够大,我会制作一个详细且专注的教程,逐步讲解具体操作方法。
我的未来计划是增加更多功能,不过ESP32-C3的内存比其他ESP32模块少一些,这确实会给我带来一定的限制。
希望这能激励到某个人;即使使用单根细线逐一焊接,也并不难制作!
本文编译自hackster.io





