

Chatterbox
A tiny motion-controlled desktop pet, who talks to you every once in a while, and moralises at every chance it gets.
- Size
- 77.5 × 57.5 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 9
- Nets
- 24
- Pads
- 69
- Tracks, vias
- 44, 0
- Pours
- 1
- Routed
- Yes
- KiCad
- KiCad 10.0 (file 20260206)
- Created
- 10 Oct 2026
- Updated
- 22 Oct 2026
Overview
Chatterbox is an open-source printed circuit board by a-hungrybookworm, from the a-hungrybookworm/chatterbox repository on GitHub. It is a 2-layer board of 77.5 × 57.5 mm with 9 parts on 24 nets, routed with 44 tracks and 0 vias.
It is built around the DHT11. Its parts include 2 ICs, 2 switches, 1 capacitor, 1 resistor and 1 connector. It belongs with the ESP32 and RISC-V boards of this library.
Main components
1README
README.mdThe Chatterbox
The Chatterbox is a tiny motion-controlled, talkative digital pet, basically a desktop Tamagotchi, or a Starbie that talks.
Features
- Tilt-controlled radial menu
- Tiny virtual pet on-screen
- Motion, tilt and environment sensing
- Unique pet actions, stats, dialogues
- Compact PCB design
Why it was built
The Chatterbox was built for the Hack Club YSWS Programme Halflife, drawing inspiration from the project Starbie.
Components
This project was built using the following components:
- XIAO-ESP32-C3
- 1W Speaker
- MAX98357A amplifier
- DHT11 temperature and humidity sensor
- MPU6050 accelerometer and gyroscope
- 0.96 OLED screen
- Kailh switches
- DSA keycaps
Building it!
Following the Starbie tutorial, the PCB schematic for this project was initially created on KiCAD. After verifying all connections, the components were assigned footprints, and placed on the PCB. They were compactly arranged inside a custom outer boundary and routed along with ground fills.
The firmware is nearly identical to that of the Starbie. The tiny virtual pet on the OLED has different energy, joy, and fullness levels, and reacts to stimuli (tilting, shaking) by performing different reactions such as napping, running, jumping etc.
However, to enable the Chatterbox to speak (unlike the Starbie), I had to write code to convert voice recordings (.wav's) to playable audio on the Chatterbox speaker. The .wav recordings are first processed into mono 16kHz audio, and then converted to C++ header files. They're compiled into the firmware, stored in the ESP32's flash on uploading, and a background FreeRTOS task streams the audio to an amplifier at runtime, which plays it on a speaker without interrupting the pet's animations.
What I learnt
This was one of the first hardware projects I've done, and I learnt a lot, including how to -
- add power symbols and nets in KiCAD
- fill ground areas in KiCAD
- process wav audio
- create tasks and queues on FreeRTOS (on the ESP32)
BOM
| Part | What it's for | Qty | Unit | Total | Vendor |
|---|---|---|---|---|---|
| XIAO-ESP32-C3 | Microcontroller | 1 | $7.74 | $7.74 | Robu.in |
| MAX98357A Amplifier | Amp for the speaker | 1 | $2.00 | $2.00 | Robu.in |
| DHT11 | Environment sensor | 1 | $0.53 | $0.53 | Robocraze.com |
| MPU6050 | Accelerometer & gyroscope | 1 | $1.56 | $1.56 | Robocraze.com |
| 0.96 OLED | Display | 1 | $1.75 | $1.75 | Robocraze.com |
| Kailh Switches (pack of 10) | Controls (buttons) | 1 | $1.45 | $1.45 | Meckeys.com |
| Blank DSA Keycaps (Set of 5) | Keycaps for the buttons | 1 | $1.03 | $1.03 | Meckeys.com |
| Speaker (1 Watt 8 Ohm oval mini) | Talking! | 1 | $0.51 | $0.51 | Probots |
| PCB | Circuitry & connections | 1 | $9.30 | $9.30 | Robu.in |
| Parts subtotal | — | — | — | $25.87 | — |
| Tax & shipping | — | — | — | $3.06 | — |
| Total | — | — | — | $28.93 | — |
Images and Renders
The final schematic looks like this:
And this is the final PCB:
A 3D render of the PCB:
Credits
This project would not have been possible without the constant support of the Halflife community, and the detailed guidance given in the Starbie guide. I loved designing this project and I can't wait to build the PCB!
Parts
9| Qty | Value | Footprint | References |
|---|---|---|---|
| 2 | SW_Push | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW1, SW2 |
| 1 | 10k | Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal | R1 |
| 1 | AMP | Connector_PinHeader_2.54mm:PinHeader_1x07_P2.54mm_Vertical | AMP_MAX98357A |
| 1 | C_100uF | Capacitor_THT:CP_Radial_D5.0mm_P2.50mm | C1 |
| 1 | Conn_01x04_Pin | Imported Parts:Display_128x64_096_I2C | J1_OLED1 |
| 1 | Conn_01x08_Pin | Connector_PinHeader_2.54mm:PinHeader_1x08_P2.54mm_Vertical | MPU_6050 |
| 1 | DHT11 | Sensor:Aosong_DHT11_5.5x12.0_P2.54mm | U1 |
| 1 | XIAO-ESP32-C3-SMD | Imported Parts:XIAO-ESP32-C6-DIP | U2 |
Questions
How big is the Chatterbox PCB?
It measures 77.5 × 57.5 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Chatterbox use?
9 parts, built around the DHT11. 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 Chatterbox KiCad files?
From the a-hungrybookworm/chatterbox repository on GitHub, at the commit this page was made from: the board is PCB_Files/Chatterbox.kicad_pcb and its schematic PCB_Files/Chatterbox.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Chatterbox design in my own project?
Its repository states no licence, so its author keeps all rights: ask a-hungrybookworm before reusing the design.
Similar boards
- 2 layers96.6 × 82.8 mm

- 2 layers100 × 50 mm

Conveyor belt pcb
lansidev/conveyor-belt
Miniature 3D printed conveyor belt for simulation and fun working with sensors, all controllable with Raspberry Pi
22 parts9MIT - 2 layers93 × 20 mm

- 2 layers

OpenMQTTGatewayPCB
ebrithiljonas/OMG_PCB
All in One PCB for the OpenMQTTGateway Project
36 parts7GPL-3.0 - 2 layers62 × 19.3 mm

SniffingTrinket
GeorgK/SniffingTrinket
A room climate monitor using the Adafruit Trinket Pro
23 parts6GPL-3.0 - 2 layers

Arduino relay
bhaskar9980/Guardian
Guardian is an advanced, fully automated hydroponics system designed to optimize plant growth and maximize yield.
58 parts5MIT - 2 layers100 × 43.5 mm

Firefly
Twistx77/Firefly
Open WIFI-enabled RGB lamp with temperature, humidity, suspended air particles and eCO2 sensors.
33 parts5GPL-3.0 - 2 layers30.5 × 77.5 mm

Proyecto sensor temperatura
unla-investigacion-desarrollo/ecosistema-iot
Antes de desarrollar el sistema final, realizamos una etapa de exploración donde investigamos y experimentamos con las siguientes tecnologías:
8 parts5