

PinaBiosensor Mini
Non-medical biofeedback PCB: GSR, PPG/HRV, skin temperature, lab ECG, and two resistive breath belts on a Seeed XIAO ESP32-S3.
- Size
- 110 × 70 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 55
- Nets
- 31
- Pads
- 153
- Tracks, vias
- 422, 56
- Pours
- 5
- Routed
- Yes
- KiCad
- KiCad 9.0 (file 20241229)
- Created
- 25 Sep 2026
- Updated
- 28 Sep 2026
Overview
PinaBiosensor Mini is an open-source printed circuit board by AlejandroPina, from the AlejandroPina/PinaBioHw repository on GitHub. It is a 2-layer board of 110 × 70 mm with 55 parts on 31 nets, routed with 422 tracks and 56 vias.
It is built around the ADS1115IDGS, MCP6004-E/P and MAX30102, with the MAX30205MTA+, ADP150AUJZ-3.3 and PESD5V0S1UL among its other parts. Its parts include 18 resistors, 13 capacitors, 10 connectors, 4 ICs and 3 diodes. It belongs with the ESP32 boards of this library.
Main components
6ADS1115IDGS
MSOP10Ultra-Small, Low-Power, 4 Channels 16-Bit Analog-to-Digital Converter with Internal ReferenceTexas InstrumentsUncategorisedMCP6004-E/P
PDIP-14-40℃~+125℃ 1.8V~6V 100uA 1MHz 1pA 1pA 23mA 28nV/√Hz@1kHz 2uV/℃ 4 4.5mV 600V/ms 76dB ESD protection Rail-to-Rail Input, Rail-to-Rail Output PDIP-14 Operational Amplifier ROHSMicrochip TechnologyOperational AmplifierMAX30102
-Integrated ambient light cancellation (ALC)、Built-in temperature sensor、With proximity detection function - Heart Rate Sensors ROHSAnalog DevicesHeart Rate SensorsMAX30205MTA+
TDFN-8-EP(3x3)0℃~+50℃ 16bit 2.7V~3.3V 50ms I2C Temperature threshold monitoring、Low-power standby、Configurable temperature output ±0.3℃ TDFN-8-EP(3x3) Temperature Sensors ROHSMaxim Integrated (Analog Devices)Temperature SensorsADP150AUJZ-3.3
SOT233.3V, 150mA, Ultralow Noise, CMOS Linear RegulatorAnalog DevicesUncategorisedPESD5V0S1UL
DFN1006-21 100nA 150W 152pF 15A@8/20us 20V 5V 6.4V ESD IEC 61000-4-2、IEC 61000-4-5 Unidirectional DFN1006-2 ESD and Surge Protection (TVS/ESD) ROHSNexperiaESD And Surge Protection (TVS/ESD)
README
README.mdEnglish [blocked] | Español
Versión en español: README.es.md
PinaBio v1.0 (Paca)
The paid JLCPCB order is v1.0 (exports/PinaBio_v1_*). A v1.1 layout (XIAO USB at the board edge) is ready for a later spin: exports/PinaBio_v1.1_* and docs/10_pinabio_v1.1_rf.md. Same circuit. Do not mix v1.1 files into the current order.
PinaBio is a biofeedback board (skin conductance, pulse, temperature, ECG, breathing). It is not a medical device and does not diagnose anything. The nickname Paca is a tribute to Alejandro’s grandmother.
Phone Bluetooth advertises as PinaBiosensor. Keep this BLE name for firmware clients.
What the board is
One PCB, about 110 × 70 mm, microcontroller Seeed XIAO ESP32-S3 in a socket:
- GSR (skin)
- Pulse / HRV (MAX30102) — raw PPG for external HRV analysis
- Temperature (MAX30205)
- ECG (AD8232 module — lab toy, not a hospital ECG)
- Chest + abdomen breathing (stretch bands that change resistance)
Older notes call this same board “Completa”. KiCad files stay named PinaBiosensor_Mini.* on purpose (renaming breaks the project). Silk says PINA / PINABio v1.0 (no “Paca” on copper — it does not fit).
Charge the XIAO from its USB-C. With electrodes or bands on skin: Bluetooth only. Never USB from a PC and skin at the same time.
The paid v1.0 fabrication trio is in exports/ on main: PinaBio_v1_gerbers.zip, PinaBio_v1_bom_jlc.csv and PinaBio_v1_cpl.csv. Their committed bytes match exports/archive_v1.0/SHA256SUMS. See the order guide before a repeat order.
Safety (read this)
This design is not USB-isolated. Full text: docs/04_seguridad.md.
- Never USB to a computer while GSR, bands, or ECG electrodes are on the body.
- Charge / flash firmware with skin disconnected.
- A session with skin = BLE only.
- LiPo with a protection board only. JST J1: pin 1 +, pin 2 ground.
- Not for diagnosis, not for use on wounds, not a medical product.
Order PCBs (JLCPCB)
5 bare boards, 2 assembled (PCBA). Step-by-step: English order guide · Español.
For a repeat order, use the three PinaBio_v1_* files in exports/ on main and verify their hashes against exports/archive_v1.0/SHA256SUMS. The old kicad-completa branch is no longer needed. Do not substitute the loose exports/gerbers/ files or the v1.1 package.
Firmware
Board sketch (Arduino, XIAO ESP32-S3):
firmware/PinaBiosensor_Firmware_v1_3/PinaBiosensor_Firmware_v1_3.ino
Firmware 1.2 is kept at firmware/PinaBiosensor_Firmware_v1_2/ for rollback.
BLE name: PinaBiosensor. Current protocol: docs/firmware_v1_3_protocol.en.md (binary byte still 0x12, same as 1.2). Instructions: firmware/README.md. Changes: firmware/CHANGELOG_v1_3.md.
Firmware debug JSON is v4. Binary frame details are in the protocol specification.
Open the PCB in KiCad
See docs/03_guia_kicad.md. Short version:
- Install KiCad 8 with libraries. Do not create a new project.
- Open
hardware/PinaBiosensor_Mini.kicad_pro. - The schematic is a text map. The board you order is the PCB.
Suggested fab (summary)
- JLCPCB / PCBWay, 2 layers, FR4 1.6 mm, green mask, HASL or ENIG.
- Factory SMT: 1206, SOT-23-5, SOIC-14, ADS1115 (VSSOP-10, very small).
- You fit: XIAO, MAX/AD8232 modules, battery, box switch on J9, optional meter on J10.
Design BOM: bom/BOM.csv.
More docs
docs/02_arquitectura.md— architecturedocs/04_seguridad.md— safety (EN + ES)docs/firmware_v1_3_protocol.en.md— BLE UUIDs and current frames (byte0x12)docs/firmware_v1_2_protocol.en.md— V1.2 frames (kept for rollback)docs/08_jlcpcb_order.md— order (English)docs/08_pedido_jlcpcb.md— pedido (español)docs/09_caja_interruptor_medidor.md— box DPDT (4 wires) and J10
Parts
55| Qty | Value | Footprint | References |
|---|---|---|---|
| 8 | 100nF | C_1206_3216Metric | C6, C7, C9, C10, C11, C12, C13, C14 |
| 4 | 1k | R_1206_3216Metric | R11, R14, R17, R18 |
| 4 | 47k 1% | R_1206_3216Metric | R1, R2, R12, R15 |
| 4 | M3 | MountingHole_3.2mm_M3 | H1, H2, H3, H4 |
| 3 | 1uF | C_1206_3216Metric | C1, C2, C8 |
| 3 | 470 | R_1206_3216Metric | R10, R13, R16 |
| 3 | PESD5V0S1UL | D_SOD-323 | D1, D2, D3 |
| 2 | 2.2k | R_1206_3216Metric | R7, R8 |
| 1 | 100k | R_1206_3216Metric | R9 |
| 1 | 10k | R_1206_3216Metric | R6 |
| 1 | 10k 0.1% | R_1206_3216Metric | R4 |
| 1 | 10uF | C_1206_3216Metric | C4 |
| 1 | 4.7uF | C_1206_3216Metric | C5 |
| 1 | 47 | R_1206_3216Metric | R5 |
| 1 | 56k 0.1% | R_1206_3216Metric | R3 |
| 1 | 5V_CHARGE | JST_PH_S2B-PH-K_1x02_P2.00mm_Horizontal | J2 |
| 1 | 600R@100MHz | L_0805_2012Metric | FB1 |
| 1 | AD8232 | SensorCable_6P_Anchor | J8 |
| 1 | ADP150AUJZ-3.3 | SOT-23-5 | U2 |
| 1 | ADS1115IDGS | TSSOP-10_3x3mm_P0.5mm | U4 |
| 1 | BATT_METER | Connector_JST:JST_PH_S2B-PH-K_1x02_P2.00mm_Horizontal | J10 |
| 1 | GSR | TerminalBlock_MetzConnect_Type101_RT01602HBWC_1x02_P5.08mm_Horizontal | J3 |
| 1 | INT_CAJA_DPDT | Connector_JST:JST_PH_S4B-PH-K_1x04_P2.00mm_Horizontal | J9 |
| 1 | LiPo_JST-PH | JST_PH_S2B-PH-K_1x02_P2.00mm_Horizontal | J1 |
| 1 | MAX30102 | SensorCable_4P_Anchor | J4 |
| 1 | MAX30205 | SensorCable_4P_Anchor | J5 |
| 1 | MCP6004 | SOIC-14_3.9x8.7mm_P1.27mm | U3 |
| 1 | NetTie_2 | NetTie-2_SMD_Pad2.0mm | NT1 |
| 1 | PINA_Logo | PINA_Logo | LOGO |
| 1 | RESP_ABDOMEN | TerminalBlock_MetzConnect_Type101_RT01602HBWC_1x02_P5.08mm_Horizontal | J7 |
| 1 | RESP_THORAX | TerminalBlock_MetzConnect_Type101_RT01602HBWC_1x02_P5.08mm_Horizontal | J6 |
| 1 | XIAO_ESP32S3 | XIAO_ESP32S3_Socket | U1 |
Similar boards
- 4 layers10 × 32 mm

- 2 layers88.4 × 65 mm

Board1
kparham0216/BabyMonitorPCB
KiCad PCB design for the Baby Monitor's custom nRF52840-based sensor board (Board1).
67 parts - 2 layers90 × 75 mm

Jeevancare
mohammedzai678-rgb/havktivate
A predictive voice companion for the VitaWatch ESP32 hardware (MAX30102 pulse/SpO₂, MAX30205 body temperature, OLED; the scan flow uses MAX30102 and MAX30205 only).
13 parts - 2 layers240.7 × 179.5 mm

Smart Ventilator PCB
yesitha/Smart-Ventilator
This project aims to develop a low cost smart ventilator system that requires minimum professional interaction to operate using Atmega32 Microcontroller
69 parts - 2 layers113 × 43 mm

- 4 layers184.1 × 132.9 mm

Board 2
Triksha-health/Hardware
Contains KiCAD files of all the PCB Boards for the Health Tracker System
170 parts - 2 layers64.9 × 40 mm

RR Lightdistance
qrellw/RR-Laser-Circuit
Tài liệu này cung cấp các thông số kỹ thuật, nguyên lý hoạt động và hướng dẫn cấu hình phần mềm cho hệ thống thiết bị đo nhịp thở ứng dụng cảm biến quang học.
50 parts - 2 layers405 × 135 mm

Keyboard
jasperhax0r/CompaqPortableKeyboard
Mechanical Keyboard for the original Compaq Portable XT-Class
188 parts2MIT
Questions
How big is the PinaBiosensor Mini PCB?
It measures 110 × 70 mm and has 2 copper layers, 1.6 mm thick.
What parts does the PinaBiosensor Mini use?
55 parts, built around the ADS1115IDGS, MCP6004-E/P, MAX30102 and MAX30205MTA+. 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 PinaBiosensor Mini KiCad files?
From the AlejandroPina/PinaBioHw repository on GitHub, at the commit this page was made from: the board is hardware/PinaBiosensor_Mini.kicad_pcb and its schematic hardware/PinaBiosensor_Mini.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the PinaBiosensor Mini design in my own project?
Its repository states no licence, so its author keeps all rights: ask AlejandroPina before reusing the design.