T-Wristband 编程指南
快速入门
本文档旨在指导用户搭建 T-Wristband 硬件开发的软件环境。
概述
T-Wristband 支持以下功能:
ESP32-PICO-D4
9轴数字运动处理器(PMU9250 或者 LSM9DS1)
PCF8563 实时时钟芯片
0.96英寸IPS(80 * 160)
120mAh 可充电锂电池
TP4054 电池充电芯片
TTP223 触摸按键
MAX30102(可选)
DRV2605(可选)
准备工作
硬件:
T-Wristband
烧录器
电脑(Windows、Linux 或 Mac OS)
软件:
arduino
platformio
安装准备
请先完成工具的安装,具体步骤见下:
安装串口驱动
因为芯片紧缺和涨价的原因,T-Wristband 的烧录器使用过 cp21xx 或者 ch340。需要根据不同的烧录器,安装对应的驱动程序。
安装依赖库
T-Wristband 需要以下依赖库支持,用户可以用过库管理安装。
配置 TFT_eSPI
备注
如果使用 libdeps 目录中库文件,可以跳过这一步
修改 C:\<UserName>\Documents\Arduino\libraries\TFT_eSPI\User_Setup_Select.h
文件:
将
#include <User_Setup.h>
这一行注释掉找到
#include <User_Setups/Setup26_TTGO_T_Wristband.h>
这一行,取消前面的注释
警告
如果屏幕出现反色的现象,请参考 故障排查
编译例程
打开对应的例程,开发板型号选择 ESP32 Dev Module
,其他设置可以保持默认。
警告
T-Wristband 没有使用PSRAM,请勿开启 PSRAM 和调用 PSRAM 相关的功能函数。
烧录器烧录
使用烧录器,通过排线连接到 T-Wristband 。
OTA升级
T-Wristband 因为空间的问题,没有板载 usb to ttl 芯片,使用烧录器烧录需要打开外壳,有一定的不便。 选择 OTA 的方式升级,更加的方便。
将示例代码中的
ARDUINO_OTA_UPDATE
打开,开启 OTA 升级功能,使用烧录器下载固件。触摸按住按钮三秒钟进行
WiFi
重置在Arduino IDE端口中选择
T-Wristband
进行空中升级
管脚布局
Name |
Pin |
---|---|
TFT Driver |
ST7735 |
TFT_MISO |
N/A |
TFT_MOSI |
19 |
TFT_SCLK |
18 |
TFT_CS |
5 |
TFT_DC |
23 |
TFT_RST |
26 |
TFT_BL |
27 |
Touchpad |
33 |
Touchpad Power |
25 |
RTC Interrupt |
34 |
Battery ADC |
35 |
I2C_SDA |
21 |
I2C_SCL |
22 |
CHARGE Indication |
32 |
IMU INT1 |
38 |
IMU INT2 |
39 |
IMU INTM |
37 |
IMU RDY |
36 |
DRV_SDA |
15 |
DRV_SCL |
13 |
MAX3010X_SDA |
15 |
MAX3010X_SCL |
13 |
MAX3010X_IRQ |
4 |
数据手册
硬件参考
示例
LSM9DS1
备注
使用之前,请先安装 快速开始 。
概况
本文档是 T-Wristband-LSM9DS1 示例说明。用于指导用户如何使用 T-Wristband
的 LSM9DS1 传感器。
Arduino
板子可以选择 ESP32 Dev Module
,其他设置可以保持默认。
警告
T-Wristband
没有使用 PSRAM,请勿开启 PSRAM,和调用 PSRAM 的功能函数。
相关功能开关
通过修改 T-Wristband-LSM9DS1.ino 中的相关宏,使能或者失能某些功能。
测试手环的硬件状态是否正常
FACTORY_HW_TEST
宏用于测试手环的硬件状态是否正常,默认关闭。
14// #define FACTORY_HW_TEST
测试 BLE 传输 IMU 数据
ENABLE_BLE_DATA_TRANSMISSION
宏用于测试BLE传输IMU数据示例,默认关闭。
可以使用 nRF Connect
, LightBlue
等 APP 进行连接查看数据。
20// #define ENABLE_BLE_DATA_TRANSMISSION
开启 LSM9DS1 传感器功能
ENABLE_SENSOR
宏用于开启 LSM9DS1 传感器功能。默认关闭。
23// #define ENABLE_SENSOR
开启 LSM9DS1 传感器关断模式功能
USE_PROTECTED_MEMBERS
宏用于开启 LSM9DS1 传感器关断模式功能。默认关闭。
37// #define USE_PROTECTED_MEMBERS
备注
使用前请确保你已经将 SparkFun_LSM9DS1_Arduino_Library 三个成员方法更改为共有成员方法,或者直接使用 libdeps 内的库文件。
OTA 更新
ARDUINO_OTA_UPDATE
宏用于开启 OTA 更新功能,默认关闭。
17// #define ARDUINO_OTA_UPDATE
使用说明
触摸按钮当检测到按下则切换功能:
按下第一次 将查看九轴传感器信息
按下第二次 将进入深度睡眠
在深度睡眠中,再次触摸唤醒手环
OTA 更新:
触摸按住按钮三秒钟,进行
WiFi
重置。在
Arduino IDE
端口中选择T-Wristband
进行空中升级,如下图:![]()
备注
使能 ARDUINO_OTA_UPDATE
宏 OTA 更新才有效。
数据手册
ESP32-PICO-D4 (Datasheet)
ST7735 (Datasheet)
LSM9DS1 (Datasheet)
引脚定义
Name |
Pin |
TFT Driver |
ST7735 |
TFT_MISO |
N/A |
TFT_MOSI |
19 |
TFT_SCLK |
18 |
TFT_CS |
5 |
TFT_DC |
23 |
TFT_RST |
26 |
TFT_BL |
27 |
Touchpad |
33 |
Touchpad Power |
25 |
RTC Interrupt |
34 |
Battery ADC |
35 |
I2C_SDA |
21 |
I2C_SCL |
22 |
CHARGE Indication |
32 |
IMU INT1 |
38 |
IMU INT2 |
39 |
IMU INTM |
37 |
IMU RDY |
36 |
MPU9250
备注
使用之前,请先安装 快速开始 。
概况
本文档是 T-Wristband-MPU9250 示例说明。用于指导用户如何使用 T-Wristband
的 MPU9250 传感器。
Arduino
板子可以选择 ESP32 Dev Module
,其他设置可以保持默认。
警告
T-Wristband
没有使用 PSRAM,请勿开启 PSRAM,和调用 PSRAM 的功能函数。
相关功能开关
通过修改 T-Wristband-MPU9250.ino 中的相关宏,使能或者失能某些功能。
测试手环的硬件状态是否正常
FACTORY_HW_TEST
宏用于测试手环的硬件状态是否正常,默认关闭。
14// #define FACTORY_HW_TEST //! Test RTC and WiFi scan when enabled
启用 OTA 更新
ARDUINO_OTA_UPDATE
宏用于开启 OTA 更新功能,默认关闭。
17
使用说明
触摸按钮当检测到按下则切换功能:
按下第一次 将查看九轴传感器信息
按下第二次 将进入深度睡眠
在深度睡眠中,再次触摸唤醒手环
OTA 更新:
触摸按住按钮三秒钟,进行
WiFi
重置。在
Arduino IDE
端口中选择T-Wristband
进行空中升级,如下图:![]()
备注
使能 ARDUINO_OTA_UPDATE
宏 OTA 更新才有效。
数据手册
ESP32-PICO-D4 (Datasheet)
ST7735 (Datasheet)
MPU9250 (Datasheet)
引脚定义
Name |
Pin |
TFT Driver |
ST7735 |
TFT_MISO |
N/A |
TFT_MOSI |
19 |
TFT_SCLK |
18 |
TFT_CS |
5 |
TFT_DC |
23 |
TFT_RST |
26 |
TFT_BL |
27 |
Touchpad |
33 |
Touchpad Power |
25 |
IMU Interrupt |
38 |
RTC Interrupt |
34 |
Battery ADC |
35 |
VBUS ADC |
36 |
I2C SDA |
21 |
I2C SCL |
22 |
LED and Vibration |
4 |
CHARGE Indication |
38 |
备注
振动模块使用IO4进行驱动,与 LED 合并在一起。
DRV2605
备注
使用之前,请先安装 快速开始 。
概况
本文档是 T-Wristband-DRV2605 示例说明。用于指导用户如何使用 T-Wristband
的 DRV2605 触觉模块。
Arduino
板子可以选择 ESP32 Dev Module
,其他设置可以保持默认。
警告
T-Wristband
没有使用 PSRAM,请勿开启 PSRAM,和调用 PSRAM 的功能函数。
更多心率示例请参考 Adafruit_DRV2605_Library 。
相关功能开关
通过修改 T-Wristband-DRV2605.ino 中的相关宏,使能或者失能某些功能。
DRV2605 触觉模块
ENABLE_DRV2605
宏用于使能 DRV2605 触觉模块,默认打开。
13#define ENABLE_DRV2605 //Turn on the external haptic module
测试手环的硬件状态是否正常
FACTORY_HW_TEST
宏用于测试手环的硬件状态是否正常,默认关闭。
14#define FACTORY_HW_TEST //! Test RTC and WiFi scan when enabled
OTA 更新
ARDUINO_OTA_UPDATE
宏用于开启 OTA 更新功能,默认关闭。
15// #define ARDUINO_OTA_UPDATE //! Enable this line OTA update
使用说明
OTA 更新:
触摸按住按钮三秒钟,进行
WiFi
重置。在
Arduino IDE
端口中选择T-Wristband
进行空中升级,如下图:![]()
备注
使能 ARDUINO_OTA_UPDATE
宏 OTA 更新才有效。
数据手册
ESP32-PICO-D4 (Datasheet)
ST7735 (Datasheet)
DRV2605 (Datasheet)
引脚定义
Name |
Pin |
DRV_SDA |
15 |
DRV_SCL |
13 |
MAX3010X
备注
使用之前,请先安装 快速开始 。
概况
本文档是 T-Wristband-MAX3010X 示例说明。用于指导用户如何使用 T-Wristband
的 MAX3010X 传感器。
Arduino
板子可以选择 ESP32 Dev Module
,其他设置可以保持默认。
警告
T-Wristband
没有使用 PSRAM,请勿开启 PSRAM,和调用 PSRAM 的功能函数。
更多心率示例请参考 SparkFun_MAX3010x_Sensor_Library 。
数据手册
ESP32-PICO-D4 (Datasheet)
ST7735 (Datasheet)
MAX30102 (Datasheet)
引脚定义
Name |
Pin |
MAX3010X_SDA |
15 |
MAX3010X_SCL |
13 |
MAX3010X_IRQ |
4 |
MAX30208
备注
使用之前,请先安装 快速开始 。
概况
本文档是 T-Wristband-MAX30208 示例说明。用于指导用户如何使用 T-Wristband
的 MAX30208 传感器。
Arduino
板子可以选择 ESP32 Dev Module
,其他设置可以保持默认。
警告
T-Wristband
没有使用 PSRAM,请勿开启 PSRAM,和调用 PSRAM 的功能函数。
相关功能开关
通过修改 T-Wristband-MAX30208.ino 中的相关宏,使能或者失能某些功能。
测试手环的硬件状态是否正常
FACTORY_HW_TEST
宏用于测试手环的硬件状态是否正常,默认关闭。
16// #define FACTORY_HW_TEST //! Test RTC and WiFi scan when enabled
启用 OTA 更新
ARDUINO_OTA_UPDATE
宏用于开启 OTA 更新功能,默认关闭。
17// #define ARDUINO_OTA_UPDATE //! Enable this line OTA update
使用说明
OTA 更新:
触摸按住按钮三秒钟,进行
WiFi
重置。在
Arduino IDE
端口中选择T-Wristband
进行空中升级,如下图:![]()
备注
使能 ARDUINO_OTA_UPDATE
宏 OTA 更新才有效。
数据手册
ESP32-PICO-D4 (Datasheet)
ST7735 (Datasheet)
MAX30208 (Datasheet)
引脚定义
Name |
Pin |
DRV_SDA |
15 |
DRV_SCL |
13 |
故障排查
硬件
新版本屏幕(有绿色标签)需要改变配置
因为供货的问题,新版本的屏幕与旧版本的屏幕的配置有所不同。目前(2022-09-05)出货均为新版本屏幕。

对于不同版本的屏幕,需要更改 C:\<UserName>\Documents\Arduino\libraries\TFT_eSPI\User_Setups\Setup26_TTGO_T_Wristband.h
中的宏定义:
新版本屏幕(有绿色标签)

旧版本屏幕

如何区分 LSM9DS1 与MPU9250 传感器?
请看下图板子的右上半部分,进行区分:

Copyrights and Licenses
Software Copyrights
All original source code in this repository is Copyright (C) 2022 LILYGO.
Third Party
Adafruit_DRV2605_Library Copyright (c) 2018 Adafruit Industries and licensed under the MIT license.
PCF8563_Library Copyright (c) 2019 lewis he and licensed under the MIT license.
SparkFun_LSM9DS1_Arduino_Library Copyright (c) SparkFun Electronics and licensed under Beerware license.
SparkFun_MAX3010x_Sensor_Library Copyright (c) 2016 SparkFun Electronics and licensed under the MIT license.
TFT_eSPI Copyright (c) 2022 Bodmer and licensed under FreeBSD License.
WiFiManager Copyright (c) 2015 tzapu and licensed under Beerware license.
Documentation
HTML version of the T-Wristband Programming Guide uses the Sphinx theme sphinx_idf_theme, which is Copyright (c) 2013-2020 Dave Snider, Read the Docs. It is licensed under the MIT license.