Skip to the content
2 layers62 × 42 mmPetvest hub, the printed circuit board in 3D

PETA CUSTOM 采用服装形态而非项圈形态:IMU 传感器沿犬体脊柱与四肢根部分布式布置 (见 穿戴位置示意),才能获得躯干/四肢分段姿态——这是单一项圈 设备在物理上无法实现的。主板(Hub)集成电源、主控、语音与显示,通过软排线连接 6 个缝在服装 上的 IMU 卫星节点,整机重量与柔性针对犬类穿戴优化。

Size
62 × 42 mm
Copper layers
2
Thickness
1.6 mm
Parts
74
Nets
64
Pads
372
Tracks, vias
0, 0
Routed
Not yet
KiCad
KiCad 1.0 (file 20260206)
Created
7 Nov 2026
Updated
7 Nov 2026

Overview

Petvest hub is an open-source printed circuit board by YangD5014, from the YangD5014/PETA-CUSTOM repository on GitHub. It is a 2-layer board of 62 × 42 mm with 74 parts on 64 nets.

It is built around the ESP32-S3-WROOM-1-N8R8, TCA9548APW and AP2112K-1.8, with the TP4056, TPS63061DSC and USBLC6-2SC6 among its other parts. Its parts include 19 capacitors, 15 connectors, 14 resistors, 8 ICs and 4 diodes. It belongs with the ESP32 boards of this library.

Main components

7

README

README.md

PETA CUSTOM 🐕

基于多传感器的宠物智能服装方案 — 6 轴姿态捕捉 · 心率血氧 · GNSS 定位 · I2S 语音交互 · OLED 显示,一体化 KiCad 10 硬件设计。

PETA CUSTOM 3D 渲染

主控ESP32-S3-WROOM-1-N8R8(WiFi + BLE + 原生 USB)
姿态6× LSM6DS3TR-C 六轴 IMU(分布式卫星节点)
健康MAX30102 心率血氧探头 + MAX17048 电量计
定位GNSS 模块接口(NEO-6M / ATGM336H 级)
语音INMP441 I2S 麦克风 + MAX98357A D类功放
显示0.96" SSD1306 OLED
电源1S 4000mAh 锂电 · TP4056 1A 充电 · TPS63061 buck-boost
续航≥18h(全天在线约 25h,休眠策略 40h+)
工具链KiCad 10 · 原理图/PCB/3D 全流程脚本化生成

1. 项目背景

运动量不足、异常行为与走失,是城市宠物犬的三大痛点。市面上的"宠物智能项圈"只能记录活动量, 无法回答更专业的问题:

  • 姿态与步态:跛行、关节炎早期、术后康复评估,需要关节级别的运动学数据;
  • 生理状态:应激、中暑、疼痛会反映在心率与呼吸模式上;
  • 位置安全:遛狗脱离视线后的实时定位。

PETA CUSTOM 采用服装形态而非项圈形态:IMU 传感器沿犬体脊柱与四肢根部分布式布置 (见 穿戴位置示意),才能获得躯干/四肢分段姿态——这是单一项圈 设备在物理上无法实现的。主板(Hub)集成电源、主控、语音与显示,通过软排线连接 6 个缝在服装 上的 IMU 卫星节点,整机重量与柔性针对犬类穿戴优化。

⚠ 本仓库目前为硬件 v1.0 工程阶段:原理图/PCB/3D/外壳已闭环并通过机器校验, 尚未打样。欢迎 issue 交流。

2. 系统架构

text
                      ┌────────── 1S 4000mAh 锂电(带PCM保护板) ──────────┐
                      │                                                  │
 USB-C 5V ──PTC 2A──TVS                                                  │
   │        └─► TP4056 1A ─┘─► 电源开关 ─► TPS63061 buck-boost ──► 3.3V/1.2A
   │                                                          │
 ESP32-S3-WROOM-1-N8R8 ◄── USB D+/D-(USBLC6 ESD) ── USB-C
   │ I2C0 ──┬── TCA9548A 8ch 复用 ──┬─ CH0..CH5 ──► 6× FPC ──► IMU 卫星节点 ×6
   │        │                      └─ CH7 ────► 预留扩展
   │        ├── MAX17048 电量计(0x36)
   │        ├── OLED SSD1306(0x3C, FPC-4)
   │        └── MAX30102 心率探头(FPC-6, 1.8V 板载 LDO)
   │ I2S1 ◄── INMP441 麦克风(卫星)   I2S0 ──► MAX98357A ──► 8Ω2W 喇叭
   │ UART1 ──► GNSS 模块(FPC-4)
   └ ADC ◄── 电池分压

为什么是 Hub + 卫星节点? 犬体是曲面,IMU 必须贴着颈/肩/髋/尾的皮肤。主板上只放 TCA9548A 复用器和 FPC 座,每颗 IMU 是独立的 14×10mm 小软板(含 2 颗缝纫孔),通过 ≤30cm 软排线以 400kHz I2C 接入——同型号 IMU 的地址冲突也被复用器一并解决。

犬背穿戴位置

3. 功能特性

模块方案说明
姿态捕捉6× LSM6DS3TR-C @ 104Hz颈/双肩/双髋/尾根分段姿态,支持步态与行为识别
心率血氧MAX30102 探头1.8V 由主板供给,开漏 INT,建议贴耳廓内侧
定位GNSS 卫星模块天线朝天布置于背带上方,远离主控天线
语音交互INMP441 + MAX98357A双 I2S 全双工;功放由电池直供保证音量,默认关断
显示SSD1306 0.96"胸前 OELD,与传感器共 I2C 总线
电源管理MAX17048 + ADC 双保险精确 SOC + 分压兜底;充电/充满双 LED
扩展TCA9548A CH7 预留第 7 通道 FPC 座已布置,可加温度/气压等传感器

4. 仓库结构

text
peta-custom/
├── README.md
├── docs/
│   ├── img/                      # 全部展示图(3D截图/渲染图/示意图)
│   ├── schematic-svg/            # 主控板原理图(SVG 矢量)
│   ├── schematic-svg-node/       # IMU 节点原理图
│   ├── petvest-hub-schematic.pdf # 原理图 PDF(6 张分层图纸)
│   └── petvest-imu-node-schematic.pdf
├── kicad/
│   ├── petvest-hub/              # 主控 Hub 板 KiCad 10 工程
│   │   ├── petvest-hub.kicad_sch #   根原理图 + 6 张分图
│   │   ├── petvest-hub.kicad_pcb #   62×42mm 布局(70 封装已放置)
│   │   ├── petvest.kicad_sym     #   自定义符号库(MAX17048)
│   │   └── preview/              #   原理图 PDF + 3D 渲染图
│   └── petvest-imu-node/         # IMU 卫星节点工程(14×10mm, 打 6 片)
├── 3d/
│   ├── petvest-hub.glb / .step   # 整机 3D 模型(GLB 预览 / STEP 进 CAD)
│   ├── petvest-imu-node.glb / .step
│   ├── petvest-hub-外壳底壳.stl   # 3D 打印外壳(直接切片)
│   ├── petvest-hub-外壳盖板.stl
│   ├── viewer.html               # ★ 离线 3D 展示页(双击打开, 见 §5)
│   └── libs/                     # viewer 的本地 three.js 运行库
├── bom/
│   ├── bom-petvest-hub.csv       # 主板 BOM(含推荐型号)

5. 3D 展示页 ⭐

仓库自带零依赖离线展示页——双击 3d/viewer.html 即可在浏览器打开 (需保留 3d/libs/ 目录;加载的是 KiCad 导出的真实 GLB 模型,非示意图):

视图内容
组装外壳 + PCB + 全部元件的真实装配状态
爆炸图盖板抬升 / PCB 悬浮,检查内部结构
仅 PCB裸板多角度检查
卫星节点14×10mm IMU 节点(含缝纫孔)

悬停任意元件显示位号与中文说明(数据来自 KiCad 工程)。

装配视图(外壳开口与板边接口一一对应):

装配视图

爆炸图(盖板 / PCB / 底壳三层):

爆炸图

仅 PCB(俯视 + 等轴测):

PCB 俯视 PCB 等轴测

IMU 卫星节点(14×10mm,Ø2.7 缝纫孔 ×2):

卫星节点

6. KiCad 光线追踪渲染

KiCad 等轴测渲染
主控 Hub 板 · KiCad 10 光线追踪(元件 3D 模型来自官方库)
KiCad 俯视渲染

7. 原理图

8. 3D 打印外壳

底壳 66.2×46.2×10.7mm,所有开口与板边接口一一对应: 左壁 = USB-C / 电源开关拨嘴 / 电池出线 / 心率探头 FPC;顶壁 = 6×FPC 排线槽; 底壁 = 4×FPC 排线槽 + 织带缝合槽;右壁 = 2×织带缝合槽;盖板 = 4×M2.5 自攻柱 + 2×LED 透光孔。

外壳

打印建议:0.2mm 层厚 · 壁厚 ≥1.8mm(4 圈)· PETG 或 TPU;切片时多实体请勾选"合并/Union"。

9. 快速开始

bash
# 打开硬件工程(KiCad 10)
open kicad/petvest-hub/petvest-hub.kicad_pro

# 查看 3D(双击或)
open 3d/viewer.html

# 修改需求后一键重建(原理图 → PCB → 外壳 → BOM → 展示页)
python3 tools/gen_schematic.py && python3 tools/gen_pcb.py
python3 tools/gen_enclosure.py && python3 tools/gen_bom.py && python3 tools/gen_viewer.py

生成器已内置校验:原理图导出网表与模型逐节点比对 PASS;PCB 生成含"原理图元件必须全部有封装"断言。

10. 路线图

  • v1.0 原理图(7 张分层图纸, 网表机器校验通过)
  • v1.0 PCB 布局(70 封装, 鼠线待布)
  • 3D 模型 + 打印外壳
  • 离线 3D 展示页
  • 铜线布线 + DRC(下一版)
  • MAX30102 心率探头小板(犬类 PPG 预研)
  • 固件框架(ESP-IDF: 采样/融合/上报)
  • 打样与犬类实测

11. 工程注意事项

  1. 犬类心率:毛发遮挡强,反射式 PPG 务必先做耳廓内侧信号质量预研;
  2. 电池安全:必须使用带 PCM 保护板的电芯(主板未画保护电路);
  3. 天线:ESP32 天线区净空 ≥8mm,GNSS 天线远离功放与 USB;
  4. MAX17048/TP4056 封装 EP 尺寸请对照实际采购批次 datasheet 复核。

Parts

74
QtyValueFootprintReferences
7Conn_01x05Connector_FFC-FPC:TE_84953-5_1x05-1MP_P1.0mm_HorizontalJ21, J22, J23, J24, J25, J26, J27
5100nFCapacitor_SMD:C_0603_1608MetricC7, C8, C9, C11, C13
510µFCapacitor_SMD:C_0805_2012MetricC1, C2, C10, C17, C19
422µFCapacitor_SMD:C_0805_2012MetricC3, C4, C5, C6
4MountingHole_2.7mmMountingHole:MountingHole_2.7mmH, H, H, H
3100kResistor_SMD:R_0603_1608MetricR6, R7, R14
310kResistor_SMD:R_0603_1608MetricR8, R12, R13
31kResistor_SMD:R_0603_1608MetricR4, R5, R9
31µFCapacitor_SMD:C_0603_1608MetricC12, C15, C18
22.2kResistor_SMD:R_0603_1608MetricR10, R11
25.1kResistor_SMD:R_0603_1608MetricR1, R2
2Conn_01x04Connector_FFC-FPC:TE_84953-4_1x04-1MP_P1.0mm_HorizontalJ50, J51
2Conn_01x06Connector_FFC-FPC:TE_84953-6_1x06-1MP_P1.0mm_HorizontalJ30, J41
11.2kResistor_SMD:R_0603_1608MetricR3
11.5µH 3.5AInductor_SMD:L_Bourns-SRN4018L1
11S 4000mAhConnector_JST:JST_PH_S2B-PH-K_1x02_P2.00mm_HorizontalJ2
12.2µFCapacitor_SMD:C_0603_1608MetricC16
12A/9VFuse:Fuse_1812_4532MetricF1
13V3TestPoint:TestPoint_Pad_D1.5mmTP1
14.7µFCapacitor_SMD:C_0603_1608MetricC14
1AP2112K-1.8Package_TO_SOT_SMD:SOT-23-5U30
1BATTTestPoint:TestPoint_Pad_D1.5mmTP3
1BOOTButton_Switch_SMD:SW_SPST_SKQG_WithStemSW3
1Conn_01x02Connector_JST:JST_PH_S2B-PH-K_1x02_P2.00mm_HorizontalJ40
1Conn_01x04Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ10
1ESP32-S3-WROOM-1-N8R8RF_Module:ESP32-S3-WROOM-1U10
1GNDTestPoint:TestPoint_Pad_D1.5mmTP2
1MAX17048Package_DFN_QFN:DFN-8-1EP_2x2mm_P0.5mm_EP0.9x1.3mmU4
1MAX98357APackage_DFN_QFN:QFN-16-1EP_3x3mm_P0.5mm_EP1.45x1.45mmU40
1PESD5V0S1BADiode_SMD:D_SOD-323D1
1POWERButton_Switch_SMD:SW_SPDT_PCM12SW1
1RESETButton_Switch_SMD:SW_SPST_SKQG_WithStemSW2
1RGB_DINTestPoint:TestPoint_Pad_D1.5mmTP5
1TCA9548APackage_SO:TSSOP-24_4.4x7.8mm_P0.65mmU20
1TP4056Package_SO:HSOP-8-1EP_3.9x4.9mm_P1.27mm_EP2.41x3.1mmU2
1TPS63061Package_SON:Texas_DRC0010JU3
1USB-C 16PConnector_USB:USB_C_Receptacle_HRO_TYPE-C-31-M-12J1
1USBLC6-2SC6Package_TO_SOT_SMD:SOT-23-6U1
1VBUSTestPoint:TestPoint_Pad_D1.5mmTP4
1红·充电中LED_SMD:LED_0603_1608MetricD2
1绿·已充满LED_SMD:LED_0603_1608MetricD3
1蓝·状态LED_SMD:LED_0603_1608MetricD4

More from YangD5014/PETA-CUSTOM

1
  • 2 layers14 × 10 mmPetvest imu node, the printed circuit board in 3D

    Petvest imu node

    YangD5014/PETA-CUSTOM

    PETA CUSTOM 采用服装形态而非项圈形态:IMU 传感器沿犬体脊柱与四肢根部分布式布置 (见 穿戴位置示意),才能获得躯干/四肢分段姿态——这是单一项圈 设备在物理上无法实现的。主板(Hub)集成电源、主控、语音与显示,通过软排线连接 6 个缝在服装 上的 IMU 卫星节点,整机重量与柔性针对犬类穿戴优化。

    6 parts

Similar boards

  • 2 layers80 × 52 mmQuiet trace, the printed circuit board in 3D

    Quiet trace

    rwrife/quiet-trace

    USB-powered ESP32-S3 ambient sound-level logger for home offices and shared rooms that keeps only privacy-preserving loudness summaries and serves a local history dashboard—never raw audio.

    38 partsMIT
  • 2 layers66 × 143.3 mmWeatherV3-kernelcon2026, the printed circuit board in 3D

    WeatherV3-kernelcon2026

    ZonkSec/kernelcon-2026-badge

    source code for kernelcon 2026 off grid badge

    87 parts4
  • 6 layers178 × 118 mmMoriShield Carrier 6L, the printed circuit board in 3D

    MoriShield Carrier 6L

    aswinserigreen/morishield_hardware

    all components bom , pcb layouts and schematics of morishield is maintained here

    157 parts
  • 2 layers61 × 61 mmVael, the printed circuit board in 3D

    Vael

    dialgorithm/vael

    esp32s3 flight controller

    66 parts
  • 4 layers94 × 122 mmYuEEG 8CH RevE, the printed circuit board in 3D

    YuEEG 8CH RevE

    YuTaoV5/YuEEG

    自制ADS1299上位机程序,使用fluent绘制界面

    378 parts181
  • 2 layers37 × 45 mmLED V01, the printed circuit board in 3D

    LED V01

    347800570/stm32-led-gift

    基于STM32的灯带礼物制作项目:红外遥控、9种灯效、温度变色和音乐律动,含KiCad硬件及67/74颗固件。

    58 partsMIT
  • 4 layers37 × 41 mmLovelace as-005, the printed circuit board in 3D

    Lovelace as-005

    chanulee/audiostream-esp32

    Airplay 2 + Spotify Connect + Bluetooth

    65 parts

Questions

How big is the Petvest hub PCB?

It measures 62 × 42 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Petvest hub use?

74 parts, built around the ESP32-S3-WROOM-1-N8R8, TCA9548APW, AP2112K-1.8 and TP4056. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Petvest hub KiCad files?

From the YangD5014/PETA-CUSTOM repository on GitHub, at the commit this page was made from: the board is kicad/petvest-hub/petvest-hub.kicad_pcb and its schematic kicad/petvest-hub/01_power.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Petvest hub design in my own project?

Its repository states no licence, so its author keeps all rights: ask YangD5014 before reusing the design.