Skip to the content
PCBKitNew board
2 layers74 × 38 mmBoop, the printed circuit board in 3D

Power and reset your PC with ESPHome

Size
74 × 38 mm
Copper layers
2
Thickness
1.6 mm
Parts
27
Nets
34
Pads
78
Tracks, vias
70, 14
Pours
2
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
24 Sep 2026
Updated
27 Oct 2026

Overview

Boop is an open-source printed circuit board by dekomote, from the dekomote/boop repository on GitHub, published under the CC-BY-SA-4.0 licence. It is a 2-layer board of 74 × 38 mm with 27 parts on 34 nets, routed with 70 tracks and 14 vias.

It is built around the LTV-817S-TA1-D, LTV-817S-TA1-C and 1N4148W, with the 1N4148WS and 1N5819HW-7-F-01 among its other parts. Its parts include 9 connectors, 4 resistors, 4 diodes, 3 ICs and 2 switches. It belongs with the home automation and IoT boards of this library.

Main components

5

README

README.md

Boop

A small board that lets ESPHome press the power and reset buttons on a PC, and tell whether the PC is actually on.

Boop 3D

It carries a Seeed XIAO ESP32-C3 on sockets. Two relays sit in parallel with the front-panel power and reset buttons, so the real buttons keep working. A third input watches the power LED header so Home Assistant knows the state instead of guessing.

Boop v1, first soldered board

Status: designed and checked (ERC clean, DRC has no errors, JLCPCB's pre-flight passes). The first board has been built and soldered, and it works.

How it works

text
D2 (GPIO4) -> 150R -> opto -> relay K1 -> in parallel with the PWR button
D3 (GPIO5) -> 150R -> opto -> relay K2 -> in parallel with the RESET button
D1 (GPIO3) <- opto <- motherboard PWR LED header (low = PC is on)
  • Each relay coil is switched by an LTV-817S opto (rank D, so there is enough gain to drive a 23 mA coil) with a 1N4148W flyback diode.
  • The LED sense side is an opto with a 470R series resistor and a 10k pull-up to 3V3. A small diode across its LED protects it if the wires are swapped.
  • The board is fed 5 V either from the motherboard USB header (through a Schottky, so nothing flows back into the PC) or from the XIAO's own USB-C. If both are connected the higher one wins. One thing to avoid: the XIAO's 5 V pin is wired straight to USB VBUS, so if the header feeds the board while the USB-C is plugged into a computer that is switched off, the board pushes 5 V into that computer's port. Unplug the USB-C when you are done flashing.

Heads up: for the PC to be startable from off, the motherboard USB 5 V has to stay alive in shutdown. Many boards turn it off unless you enable something like "USB standby power" or disable ErP in the BIOS. If yours cuts it, power the board from the USB-C instead.

Connectors

All the 2-pin headers are 2.54 mm. The left column is always the motherboard side and the right column is always the case side, so it is the same on every pair.

RefLabelGoes to
J15V INJST XH 2-pin, + and - are marked. Optional 5 V from the motherboard USB header (pin 1 VCC, pin 7 GND)
J2PWR SW / MBmotherboard power switch header
J3PWR SW / CASEthe case power button lead
J4RST SW / MBmotherboard reset header
J5RST SW / CASEthe case reset button lead
J8PWR LED / MBmotherboard power LED header, + marked
J9PWR LED / CASEthe case power LED lead, + marked
J6, J7XIAO1x7 female sockets, pin names are printed on the board

The relay contacts are volt-free, so polarity on the button headers does not matter. The LED pair does have a polarity, follow the +.

Four M3 holes in the corners for standoffs.

ESPHome

The full config is in boop-esphome.yaml. Pins are the XIAO ESP32-C3 D-numbers: D1 = GPIO3, D2 = GPIO4, D3 = GPIO5.

It exposes three buttons to Home Assistant (power tap, power hold for force off, reset) and a "PC is on" sensor. The relays are internal and always start off, so a reboot can't hold a button down.

Create a secrets.yaml next to it with wifi_ssid, wifi_password, boop_api_key (openssl rand -base64 32), boop_ota_password and boop_ap_password, then flash the first time over USB:

text
esphome run boop-esphome.yaml

If the board isn't detected, hold BOOT, tap RESET, release BOOT. Unplug J1 (the motherboard 5 V) while flashing over USB-C. Later updates go over Wi-Fi.

Building it

Everything you need for JLCPCB is in fab/.

Things worth knowing

  • The XIAO ESP32-C3 uses an external antenna. A metal PC case eats Wi-Fi, so route the antenna out of the case.
  • The relays are the 4.5 V coil version (G6K-2F-Y DC4.5), on purpose. The coil only sees the 5 V rail minus the Schottky drop and the opto's saturation voltage, which is about 4.0 to 4.3 V at the USB minimum of 4.75 V (the opto's saturation voltage at 20-odd mA is not in the datasheet, I assumed 0.2 to 0.4 V from the curves). A 5 V coil needs 4.0 V to pull in, which is too thin; the 4.5 V one pulls in at 3.6 V. Worth measuring the coil voltage on the first board.

Licence

Copyright 2026 Dejan Noveski. Released under CC BY-SA 4.0, the full text is in LICENSE. In plain words: build it, sell it, change it, as long as you credit me and share your changes under the same licence. That covers the schematic, the board, the Gerbers, the script and the ESPHome example.

The exception is lib/, which holds trimmed copies of KiCad's stock libraries. Those keep their own licence, see lib/NOTICE.md.

Parts

27
QtyValueFootprintReferences
4MountingHoleMountingHole:MountingHole_3.2mmH1, H2, H3, H4
2150Resistor_SMD:R_0603_1608MetricR1, R2
21N4148WDiode_SMD:D_SOD-123D2, D3
2G6K-2F-Y-TR DC4.5Relay_SMD:Relay_DPDT_Omron_G6K-2F-YK1, K2
2LTV-817S-TA1-DPackage_DIP:SMDIP-4_W9.53mmU2, U3
110kResistor_SMD:R_0603_1608MetricR4
110uF 25VCapacitor_SMD:C_1206_3216MetricC1
11N4148WSDiode_SMD:D_SOD-323D4
11N5819HW-7-FDiode_SMD:D_SOD-123D1
1470Resistor_SMD:R_0603_1608MetricR3
15V_IN (+/-)Connector_JST:JST_XH_B2B-XH-A_1x02_P2.50mm_VerticalJ1
1LTV-817S-TA1-CPackage_DIP:SMDIP-4_W9.53mmU4
1PLED_FROM_MBConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ8
1PLED_TO_CASEConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ9
1PWR_FROM_CASEConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ3
1PWR_TO_MBConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ2
1RST_FROM_CASEConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ5
1RST_TO_MBConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ4
1XIAO_LEFT_D0-D6Connector_PinSocket_2.54mm:PinSocket_1x07_P2.54mm_VerticalJ6
1XIAO_RIGHT_5V-D7Connector_PinSocket_2.54mm:PinSocket_1x07_P2.54mm_VerticalJ7

Questions

How big is the Boop PCB?

It measures 74 × 38 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Boop use?

27 parts, built around the LTV-817S-TA1-D, LTV-817S-TA1-C, 1N4148W and 1N4148WS. 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 Boop KiCad files?

From the dekomote/boop repository on GitHub, at the commit this page was made from: the board is boop.kicad_pcb and its schematic boop.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Boop design in my own project?

Its repository publishes it under the CC-BY-SA-4.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 layers100 × 100 mmUlva controller, the printed circuit board in 3D

    Ulva controller

    ivere27/ulva

    controller board for robotics and agriculture

    106 partsMIT
  • 4 layers159.6 × 130 mmFE UFPR 4 0, the printed circuit board in 3D

    FE UFPR 4 0

    josearistidesbail/FE_UFPR_4_0

    KiCad 10 project for the board that sits between a TI LAUNCHXL-F28379D (runs the FOC firmware) and an Infineon PrimeSTACK 6PS04512E43W39693 inverter driving an EMRAX 208 motor.

    374 parts
  • 4 layers130 × 150 mmCampervan management V2, the printed circuit board in 3D

    Campervan management V2

    akladnig/CamperVan

    - CamperVan Design and Arduino Circuit Design - Campervan Design Overview - Dashboard App - Electrical System - Sensors - Circuit Design - Battery and voltage monitoring - Voltage Divider Design - Low Pass Filter - TODO

    183 parts
  • 2 layers100.5 × 83 mmPicoLogger, the printed circuit board in 3D

    PicoLogger

    WestianPKl/Logger_Dashboard

    A full-stack IoT monitoring platform for collecting, visualizing, and managing environmental sensor data from distributed devices.

    65 parts
  • 2 layers70 × 40 mmHallTapBoard, the printed circuit board in 3D

    HallTapBoard

    ssbingo/samba-solar-track

    Samba Solar Track – Solarnachführung mit Sturmschutz: Handbuch, Platine und Gehäuse für den Nachbau (10,1-Zoll-Version)

    58 parts
  • 2 layers10 × 50.8 mmIN-24V, the printed circuit board in 3D

    IN-24V

    Thierry-oshw/Allumettes

    module 5mm x 34mm de fonction unitaire

    15 partsCERN-OHL-P-2.0
  • 2 layers100.5 × 83 mmPicoLogger, the printed circuit board in 3D

    PicoLogger

    WestianPKl/pcb-docs

    A collection of custom PCB designs created in KiCAD, centered around the Raspberry Pi Pico (RP2040) platform. Each board is a standalone module that connects to the Main Board and extends its functionality via I2C, SPI…

    81 parts