Skip to the content
PCBKitNew board
2 layers80 × 125.3 mmPhone robot, the printed circuit board in 3D

Bolt, the phone stand robot: A little robot that holds your phone, charges it, and peeks over the top to tell you how it's eating. KiCad 10, heypcb.ai merch.

Size
80 × 125.3 mm
Copper layers
2
Thickness
1.6 mm
Parts
35
Nets
37
Pads
145
Tracks, vias
315, 35
Pours
20
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
5 Oct 2026
Updated
5 Oct 2026

Overview

Phone robot is an open-source printed circuit board by HeyPCB, from the HeyPCB/phone-robot repository on GitHub, published under the CERN-OHL-S-2.0 licence. It is a 2-layer board of 80 × 125.3 mm with 35 parts on 37 nets, routed with 315 tracks and 35 vias.

It is built around the CH32V003F4P6, INA180A2IDBVR(LX) and CC0603KRX7R9BB104, with the CL21A106KAYNNNE, WS2812C-2020-V1 and 0603B103K500NT among its other parts. Its parts include 12 resistors, 7 capacitors, 2 ICs, 2 diodes and 2 transistors. It belongs with the robots and motor control boards and the RISC-V boards of this library.

Main components

10

README

README.md

Bolt, the phone stand robot

A little robot that holds your phone, charges it, and peeks over the top to tell you how it's eating.

Bolt, the phone stand robot, raytraced in KiCad

Bolt is a matte-black robot phone stand with gold eyes. Two kickstands snap out of its belly and slot through its hips; they become the hands your phone sits on, in landscape, leaning back at 70 degrees. Your charger plugs into its left foot and your phone's cable into its right: a 5 V USB-C pass-through that powers the phone port only when a phone is attached, offers the phone what the charger can give (up to 1.5 A), and measures the charge current. Its two RGB eyes peek over the phone and show it: orange and pulsing while the phone eats, green when it is full.

LayersSizePartsNetsConnections routedViasERC errorsDRC errors / unconnected / parityBOM @100
280.1 x 125.4 mm31 (+4 pads)2176 -> 0 open3500 / 0 / 0$1.33

Not fabricated, assembled or powered yet. Every number on this page is measured by KiCad 10.0.6 on the files in this repository (report.json, measured.json) or read from the live JLC/LCSC catalogue (bom_cost.json).

Spec, power budget, BOMSPEC.md
Store copySTORE_COPY.md
KiCad 10 projectkicad/
Gerbers, drill, BOM, CPL, STEP, schematic PDFfab/
Firmwarefirmware/
Rendersfront, back, hero, Circuit World thumbnail
Brief and generatordesign/

front back

What's on it

  • USB-C in: a 5 V sink with 5.1k Rd; the CH32V003 reads the charger's advertised current on its CC lines.
  • USB-C out: a 5 V source with GPIO-driven Rp (22k for 1.5 A, 56k for default USB power), an AO3401A switch with soft start that turns on only after the phone's Rd is seen for 150 ms, and a 10k bleeder.
  • Current: 20 mOhm shunt and INA180A2 (gain 50), 1 V per amp into the ADC; over-current trips the port.
  • Face: two WS2812C-2020 eyes over the phone; the gold antenna ball is a capacitive touch pad for night mode.
  • Stand: two snap-out kickstands (four tabs, drilled mouse bites) through 1.85 mm slots; phones up to 12.5 mm thick; no PD, 5 V only (7.5 W).

Finish

Matte Black solder mask, White silkscreen, ENIG copper finish, 1.6 mm FR4, top-side SMT assembly (J1, J2: an SMD part whose shell legs go through plated holes, soldered on the same SMT line). The gold art is bare copper under a mask opening (ENIG), drawn with its own keep-out so no track runs under it. The QR code on the back opens https://heypcb.ai/world/b/e8b0eb778647.

How it was made

Designed with the HeyPCB method on KiCad 10.0.6, headless, by the heypcb-kicad pipeline: a written brief composed from reusable circuit blocks, every pin from KiCad's own symbol library, every part bound to an LCSC number from a dated catalogue read, then ERC, a netlist round trip, locked placement, Freerouting 2.4.1, pours, silkscreen and board art, DRC with schematic parity, DFM and a fab gate, each stage gated by a measurement. design/make_brief.py regenerates the brief (outline, part locks and art) from code.

Part of the heypcb.ai merch collection.

License

Hardware: CERN-OHL-S v2. Firmware: MIT (see firmware/LICENSE). KiCad's symbol, footprint and 3D libraries used in the design are CC-BY-SA 4.0 with the KiCad library exception.

Parts

35
QtyValueFootprintReferences
4BreakawayPanelization:BreakLine_5h_D0.5mm_P0.85mmH1, H2, H3, H4
322kResistor_SMD:R_0603_1608MetricR4, R7, R8
2100kResistor_SMD:R_0603_1608MetricR3, R5
2100nFCapacitor_SMD:C_0603_1608MetricC3, C5
2100nFCapacitor_SMD:C_0402_1005MetricC6, C7
210uFCapacitor_SMD:C_0805_2012MetricC1, C4
25.1kResistor_SMD:R_0402_1005MetricR1, R2
256kResistor_SMD:R_0603_1608MetricR9, R10
2WS2812C-2020-V1LED_SMD:LED_WS2812B-2020_PLCC4_2.0x2.0mmD1, D2
110kResistor_SMD:R_0402_1005MetricR11
110nFCapacitor_SMD:C_0603_1608MetricC2
11kResistor_SMD:R_0603_1608MetricR12
120mResistor_SMD:R_1206_3216MetricR6
1AO3400APackage_TO_SOT_SMD:SOT-23Q2
1AO3401APackage_TO_SOT_SMD:SOT-23Q1
1CH32V003F4P6Package_SO:TSSOP-20_4.4x6.5mm_P0.65mmU2
1GNDTestPoint:TestPoint_Pad_1.0x1.0mmTP3
1INA180A2Package_TO_SOT_SMD:SOT-23-5U1
1SWIOTestPoint:TestPoint_Pad_1.0x1.0mmTP2
1TOUCHTestPoint:TestPoint_Pad_D4.0mmTP4
1USB-CConnector_USB:USB_C_Receptacle_HRO_TYPE-C-31-M-12J1
1USB-C outConnector_USB:USB_C_Receptacle_HRO_TYPE-C-31-M-12J2
1VDDTestPoint:TestPoint_Pad_1.0x1.0mmTP1

Questions

How big is the Phone robot PCB?

It measures 80 × 125.3 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Phone robot use?

35 parts, built around the CH32V003F4P6, INA180A2IDBVR(LX), CC0603KRX7R9BB104 and CL21A106KAYNNNE. 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 Phone robot KiCad files?

From the HeyPCB/phone-robot repository on GitHub, at the commit this page was made from: the board is kicad/phone_robot.kicad_pcb and its schematic kicad/phone_robot.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Phone robot design in my own project?

Its repository publishes it under the CERN-OHL-S-2.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

Similar boards

  • 2 layers50.6 × 62.2 mmAir ghost, the printed circuit board in 3D

    Air ghost

    HeyPCB/air-ghost

    Air Ghost: A little ghost that blushes red when your room needs fresh air. KiCad 10, heypcb.ai merch.

    19 partsCERN-OHL-S-2.0
  • 6 layers72.4 × 115 mmFujiNet-7800-Rev0, the printed circuit board in 3D

    FujiNet-7800-Rev0

    FujiNetWIFI/fujinet-hardware

    Schematics and design files for FujiNet hardware

    135 parts142
  • 2 layers53.9 × 62.6 mmMoon light, the printed circuit board in 3D

    Moon light

    HeyPCB/moon-light

    Luna, the night-light moon: A sleepy moon that turns on at dusk and tucks itself in after you fall asleep. KiCad 10, heypcb.ai merch.

    36 parts1CERN-OHL-S-2.0
  • 4 layers100 × 100 mmPhmod, the printed circuit board in 3D

    Phmod

    gallicchio/AMOD-and-RFMOD

    The tutorial's 2x12 adapter (/mudd/133electronics/icepi-zero-dac-adc/adapterboard/) with a 2 x 6 right-angle Pmod socket on a 15 mm extension of its right-hand end, so an Icepi Zero can drive AMOD-A's and RF-MOD's Pmod…

    234 parts
  • 4 layers100 × 75 mmFreedo radio, the printed circuit board in 3D

    Freedo radio

    CappyT/freedo

    Local coordinator for tado V3+ heating devices, with a Home Assistant integration and add-on

    135 parts33Apache-2.0
  • 4 layers65 × 45 mmLora gps tracker rev a, the printed circuit board in 3D

    Lora gps tracker rev a

    bogdan-kovalchuk/esp32-lora-gps-tracker

    Encrypted point-to-point GPS telemetry over 433 MHz LoRa between two ESP32 boards.

    69 partsMIT
  • 4 layers90 × 66 mmIron node, the printed circuit board in 3D

    Iron node

    enkhbold470/iron-node

    ESP32-S3 industrial gateway: W5500 Ethernet, isolated RS-485 (ADM2587E), CAN, 9-36 V input. 4-layer KiCad 10 board.

    83 partsCERN-OHL-S-2.0
  • 4 layers30 × 48 mmEsp32 mpu6000, the printed circuit board in 3D

    Esp32 mpu6000

    HeyPCB/esp32-sensors-2

    ESP32-S3 boards, one sensor each: KiCad 10, JLCPCB-ready, CERN-OHL-S-2.0

    26 partsCERN-OHL-S-2.0