最近刷到一块黑科技玩意儿——ZSWatch,一眼就戳中我心。它可不是普通的“抄抄官方 SDK”的智能表,而是从硬件到软件,完全 DIY 出来的全家桶级产品。以下,跟着我一起去看看它到底牛在哪儿!
是什么工具
ZSWatch,字面意思 Zephyr Smartwatch,也就是基于 Zephyr™ RTOS 的智能手表。整套硬件、固件、App 都开源,想折腾什么就能什么,没得说。
解决了哪些痛点
-
• “市售手表功能锁死”:ZSWatch 能随你改表盘、改固件、加功能。
-
• “闭源生态卡脖子”:全 GPL-3.0,想改源码就改,想加新协议都行。
-
• “功能单一、不够黑客友好”:传感器一大抄,手势导航、环境监测、AoA 方向找表……随便玩!
功能亮点
-
• BLE 通讯 + GadgetBridge / iOS 原生消息推送
-
• 手势唤醒 & 导航:内置 BMI270,挥手就能切换页面
-
• 超多传感器:气压、高精度温湿、光感、磁力计、麦克风……
-
• 动态 Watchface:支持 Zephyr 原生和 ESP32 表盘
-
• DIY Dock:带/不带 J-Link OB,秒变调试神器
硬件一览(部分)
|
模块 |
型号 |
作用 |
|
主芯片 |
nRF5340 (u-blox NORA-B10) |
双核 128MHz,BLE |
|
内存/存储 |
512KB RAM / 1MB Flash |
系统运行+存储 |
|
显示屏 |
240×240 圆形触摸屏 |
交互 UI |
|
传感器 |
BMI270/BME688/BMP581/LIS2MDLTR |
手势、环境、气压、指南针 |
|
外置存储 |
MX25U51245GZ4I00 64MB |
数据日志 |
|
电源管理 & 接口 |
nPM1300 / TS3USB221A |
供电 & USB/SWD |
软件生态
-
• Zephyr RTOS 打底,模块化。
-
• GadgetBridge Android App 即插即用;iOS 则走 ANCS+AMS 原生通道。
-
• 看腻了时间?表盘随手换。
-
• Music 控制、通知弹窗、指南针、设置菜单……N 款 App 任你装。
示例代码
举个快速点亮屏幕的小 demo(Zephyr C 版):
#include <zephyr.h>
#include <device.h>
#include <drivers/gpio.h>
#define SCREEN_PWR_NODE DT_ALIAS(screen_pwr)
static const struct gpio_dt_spec screen_pwr = GPIO_DT_SPEC_GET(SCREEN_PWR_NODE, gpios);
void main(void) {
if (!device_is_ready(screen_pwr.port)) return;
gpio_pin_configure_dt(&screen_pwr, GPIO_OUTPUT_ACTIVE);
printk("ZSWatch 屏幕已点亮!\n");
/* 这里可以再加更多初始化代码 */
while (1) {
k_sleep(K_SECONDS(1));
}
}
优缺点速览
优点
-
• 真开源:硬件、固件全 GPL-3.0,方便深度定制
-
• 传感丰富:从环境到手势,从导航到光感,几乎没短板
-
• DIY 友好:KiCad 4 层板、3D 打印壳、可选金属 CNC
缺点
-
• 入门门槛高:要会 Zephyr 开发、PCB 焊接
-
• 功能未完全“商业化”:还在持续迭代,BUG 会有
-
• 电池续航相比大厂略逊一筹,需要常充电
总结
ZSWatch 更像是一块“黑客实验板”,适合对硬件、固件、App 都想大改特改的朋友。它解决了“闭源卡脖子”和“官方 SDK 功能受限”这两大痛点,随便装表盘、烧固件、加传感器,想怎么玩就怎么玩。如果你正好想 DIY 一块真手表、研究低功耗 RTOS,ZSWatch 别错过。
项目地址:https://github.com/ZSWatch/ZSWatch