Skip to the content
2 layers38 × 25.1 mmMistMaker Battery Kit V0-4, the printed circuit board in 3D

MistMaker Battery Kit V0-4

Dav1dyang/Programmable-Mist-Maker26

An open-source, low-cost ultrasonic mist maker designed to share commercial humidifier circuits and empower creators with accessible, well-documented hardware.

Size
38 × 25.1 mm
Copper layers
2
Thickness
1.6 mm
Parts
105
Nets
44
Pads
193
Tracks, vias
362, 110
Pours
9
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
13 May 2025
Updated
7 Aug 2026

Overview

MistMaker Battery Kit V0-4 is an open-source printed circuit board by Dav1dyang, from the Dav1dyang/Programmable-Mist-Maker repository on GitHub, published under the MIT licence. It is a 2-layer board of 38 × 25.1 mm with 105 parts on 44 nets, routed with 362 tracks and 110 vias.

It is built around the TPS61023DRL, UCC27511ADBV and LP4060B5F, with the PH-2PWB, DMT10H009LCG-7-VB and PMEG10010ELRX-TP among its other parts. Its parts include 22 resistors, 15 connectors, 12 capacitors, 6 ICs and 4 diodes. It belongs with the power boards of this library.

Main components

8

README

README.md

Programmable Mist Maker

Open-source, programmable ultrasonic mist maker kits — by shuang cai & David Yang at ByProduct Lab.

📖 Documentation · 🛒 Buy a kit · 📜 OSHWA certified US002742 · ✍️ Build story on Hackster

A Battery Kit board with a XIAO ESP32-C6 and a Li-Po cell, driving a piezo disc that is actively misting

Most mist-maker circuits online are undocumented black boxes. This project fills that gap: tested reference circuits, full KiCad sources, an Arduino library, and honest notes about what went wrong along the way — so creators, educators, and engineers can explore mist as a material. First presented as a hands-on workshop at the Open Hardware Summit 2025.

The boards

BoardPowerBest forStatus
Extension KitUSB-CFirst builds, desks, classroomsV0.1 — hardware + firmware ready
Battery KitLi-Po + USB-CPortable builds, installationsV0.4.1 — in production, bench-validated
Block KitLi-Po + USB-CDrop-in container UX, 14 LEDsV0.1 — demoed at OHS 2026
I2C MultiPackTBDMulti-emitter installationsIn design
Legacy V1.4USB / Li-PoReproducing the original workshop kitShipped, frozen

Extension Kit V0.1, top side Battery Kit V0.4.1, top side

The two shipping boards: Extension Kit V0.1 (left) and Battery Kit V0.4.1 (right).

Each variant folder has its own README with pin maps, an order-ready BOM + JLCPCB production files, and build instructions. Board-by-board guides with interactive schematics live on the documentation site.

Start here

  1. Pick a board — the Extension Kit is the easiest first build; the Battery Kit cuts the cord. (Or buy one assembled and tested.)
  2. Flash the variant's BringUp sketch to verify the hardware feature by feature.
  3. Install the MistMaker Arduino library (v2.2+) and work through the examples: Blink → Breath → WaterDetect → PhoneDemo (control it from your phone).
  4. Smart home? firmware-examples/home-assistant/ joins Home Assistant with no code at all (ESPHome).

How it works

An ESP32 drives a piezo disc at its 108.7 kHz resonance through a MOSFET and a 3-legged tapped inductor — an autotransformer + LC tank that steps 5 V up to the ~80 Vpp the disc needs, while a current-sense amp lets the firmware detect the disc and the water level on one ADC pin. The full story — atomization science, why that strange inductor is everywhere in Shenzhen and nowhere at DigiKey, and a verified alternative circuit — is at docs.byproductlab.com/how-it-works.

Repo map

PathContents
variants/<board>/Per-board KiCad project, BOM, production files, BringUp firmware, enclosure
legacy/v1-4/The original workshop kit, preserved as documented (incl. duck & UFO enclosure STLs)
firmware-examples/ESPHome / Home Assistant configs
docs/The documentation site (MkDocs), incl. docs/assets/photos/
assets/Legacy V1.4 photos and the design-progress GIFs

[!NOTE] Reproducing the legacy V1.4 board? It has a few quirks the V0.x boards designed away (power sequencing, upload-while-misting) — fixes are preserved on the Legacy V1.4 docs page.

Use and care

[!WARNING] Water + electronics + time = biology. Use distilled or clean tap water, clean the container regularly, and let cotton sticks dry between uses. Never run a disc dry for long, and never drive the circuit without a disc attached. Full notes in the docs.

License & credits

Open source under the MIT License, certified open source hardware (OSHWA US002742). Designed and tested by David Yang and shuang cai, inspired by community reverse-engineering and YouTube teardowns — full reference list in the docs.

Parts of the documentation were drafted with AI assistance; all technical content is validated against bench measurements and datasheets.

Contact: contact@byproductlab.com · @dav1dyang

Parts

105
QtyValueFootprintReferences
8Conn_01x01Connector_Wire:SolderWirePad_1x01_SMD_1x2mmJ4, J5, J9, J11, J12, J13, J14, J15
510KΩPCM_JLCPCB:R_0402R8, R14, R16, R18, R19
510uFPCM_JLCPCB:C_0603C5, C6, C12, C15, C16
4TestPointSparkFun-Connector:TestPoint-1.0mmTP2, TP3, TP4, TP6
322uFCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC7, C8, C9
35.1KΩPCM_JLCPCB:R_0402R5, R6, R7
3G***kibuzzard-69EB898Akibuzzard-69EB898A, kibuzzard-69EB898A, kibuzzard-69EB898A
3G***kibuzzard-69EB8976kibuzzard-69EB8976, kibuzzard-69EB8976, kibuzzard-69EB8976
2100KPCM_JLCPCB:R_0402R13, R21
2100KΩResistor_SMD:R_0603_1608MetricR11, R17
210uFPCM_JLCPCB:C_0402C13, C14
230KΩPCM_JLCPCB:R_0402R4, R15
2Conn_01x07_SocketConnector_PinSocket_2.54mm:PinSocket_1x07_P2.54mm_VerticalJ7, J8
2Conn_01x07_SocketDavidLib_Connector:PinSocket_1x07_P2.54mm_Vertical_MiniSilkJ1, J10
2G***kibuzzard-69DF44F0kibuzzard-69DF44F0, kibuzzard-69DF44F0
2G***kibuzzard-69DF4510kibuzzard-69DF4510, kibuzzard-69DF4510
2MountingHole_PadDavidLib_Connector:MountingHole_2.7mm_M2.5_ISO7380_Pad_SmallerPadH1, H2
2PH-2PWBDavidLib_Connector:PH2PWBJ2, J3
10.1uFCapacitor_SMD:C_0603_1608MetricC1
110ΩPCM_JLCPCB:R_0603R2
1150ΩPCM_JLCPCB:R_0402R9
11kΩResistor_SMD:R_0402_1005MetricR10
11uFCapacitor_SMD:C_0402_1005MetricC10
12.2ΩPCM_JLCPCB:R_0603R3
1220KPCM_JLCPCB:R_0402R22
122ΩPCM_JLCPCB:R_0402R20
12N7002PCM_Package_TO_SOT_SMD_AKL:SOT-23Q1
13 Legged InductorDavidLib_Power:IND-SMD_3P-CD75L1
130mΩResistor_SMD:R_1206_3216MetricR1
1732KPCM_JLCPCB:R_0402R12
1AP7361C-3.3VPCM_SparkFun-Semiconductor-Standard:DFN-8_3x3mm_P0.65mm_EP2.25x1.5mmU2
1DMT10H009LCG-7DavidLib_Switch:DMP3007SCG7Q4
1G***kibuzzard-69EB87F5kibuzzard-69EB87F5
1G***kibuzzard-6A488614kibuzzard-6A488614
1G***kibuzzard-6A38CD61kibuzzard-6A38CD61
1G***kibuzzard-69E03B47kibuzzard-69E03B47
1G***kibuzzard-69DF40F6kibuzzard-69DF40F6
1G***kibuzzard-69EB47E7kibuzzard-69EB47E7
1G***kibuzzard-69DF3D93kibuzzard-69DF3D93
1G***kibuzzard-69EB8D01kibuzzard-69EB8D01
1G***kibuzzard-69EB8B1Ckibuzzard-69EB8B1C
1G***kibuzzard-69DF414Fkibuzzard-69DF414F
1G***kibuzzard-69DF407Akibuzzard-69DF407A
1G***kibuzzard-69EB84CCkibuzzard-69EB84CC
1G***kibuzzard-69DF40D0kibuzzard-69DF40D0
1G***kibuzzard-69DF3D6Ekibuzzard-69DF3D6E
1G***kibuzzard-69EB87CAkibuzzard-69EB87CA
1G***kibuzzard-6A316FBEkibuzzard-6A316FBE
1G***kibuzzard-69EB470Ekibuzzard-69EB470E
1G***kibuzzard-6A317060kibuzzard-6A317060
1G***kibuzzard-69EB8824kibuzzard-69EB8824
1G***kibuzzard-69EB8B4Dkibuzzard-69EB8B4D
1G***kibuzzard-69EB4726kibuzzard-69EB4726
1G***kibuzzard-6A2F79F4kibuzzard-6A2F79F4
1G***kibuzzard-69EB8840kibuzzard-69EB8840
1GRAPHICMist_Library:DUCKY_ICON_STP1
1INA180A3Package_TO_SOT_SMD:SOT-23-5U3
1LED_GSparkFun-LED:LED_0402_1005MetricLED1
1LED_RSparkFun-LED:LED_0402_1005MetricLED2
1LED_WSparkFun-LED:LED_0402_1005MetricLED3
1LP4060B5FDavidLib_Power:BATT_Charger_SOT-23-5_Min_SilkU1
1PMEG10010ELRX-TPPCM_JLCPCB:D_SOD-123FLD1
1Qwiic_VerticalSparkFun-Connector:JST_1x04_P1.0mm_Vertical_SMDJ6
1SolderJumper_2_CloseJumper:SolderJumper-2_P1.3mm_Bridged_RoundedPad1.0x1.5mmJP5V5
1TPS2116DRLRDavidLib_Mux:TPS62932DRLRIC2
1TPS61023DavidLib_Power:SOT-563IC1
1TS-1088-AR02016DavidLib_Switch:TS1088AR02016S2
1UCC27511ADBVPackage_TO_SOT_SMD:SOT-23-6U4
1XEL4030-102MECDavidLib_Power:XEL4030102MECL2

More from Dav1dyang/Programmable-Mist-Maker

2
  • 2 layers50.8 × 26.7 mmMistMakerV1-4, the printed circuit board in 3D

    MistMakerV1-4

    Dav1dyang/Programmable-Mist-Maker

    An open-source, low-cost ultrasonic mist maker designed to share commercial humidifier circuits and empower creators with accessible, well-documented hardware.

    54 parts26MIT
  • 2 layers17.8 × 21 mmMistMaker Seeed Extension V0.1, the printed circuit board in 3D

    MistMaker Seeed Extension V0.1

    Dav1dyang/Programmable-Mist-Maker

    An open-source, low-cost ultrasonic mist maker designed to share commercial humidifier circuits and empower creators with accessible, well-documented hardware.

    33 parts26MIT

Similar boards

  • 4 layers49 × 55 mmRfGateway, the printed circuit board in 3D

    RfGateway

    maxim75/cc1101_receiver_esp32

    ESP32-S3 firmware that receives RF packets from two radios simultaneously and displays decoded data on an SH1107 128×128 OLED and serial monitor.

    40 parts1
  • 4 layers118 × 76 mmSmart led badge, the printed circuit board in 3D

    Smart led badge

    zgeez/Pixel-Badge

    Wearable 32x32 LED badge with Zephyr firmware, BLE control, passive NFC, and a Flutter Android app, built around a custom nRF52840 PCB.

    1,236 partsMIT
  • 4 layers100 × 75 mmOpenAirScope, the printed circuit board in 3D

    OpenAirScope

    emertcakir/OpenAirScope

    Open-source air quality and environmental monitoring node with STM32H743 + ESP32-C3, LoRaWAN, RS485, USB-C, Li-ion charging, and multi-sensor support.

    282 parts26MIT
  • 4 layers36 × 76 mmAi pendant recorder, the printed circuit board in 3D

    Ai pendant recorder

    embedrapp/ai-pendant-recorder

    AI pendant recorder firmware, PCB, and mechanical design

    115 parts1
  • 4 layers78 × 130 mmSolar oracle walkman relay, the printed circuit board in 3D

    Solar oracle walkman relay

    weiweiweiopen/self-powered-iv-curve-tester-with-single-dssc

    Single-DSSC energy-harvesting I-V tester: KiCad hardware, relay switching, GPIO firmware, and energy estimates.

    175 partsMIT
  • 2 layers28 × 130 mmOpenPixelPoi, the printed circuit board in 3D

    OpenPixelPoi

    Mitchlol/Open-Pixel-Poi

    Open source, 3D printable, LED pixel Poi: PlatformIO / Flutter / KiCad / STLs

    54 parts37GPL-3.0
  • 4 layers100 × 120 mmStockfishChess, the printed circuit board in 3D

    StockfishChess

    Ajakovski/Chess-Master-Board

    A chess board that sees every piece, lights every move, and thinks alongside you

    73 parts1MIT

Questions

How big is the MistMaker Battery Kit V0-4 PCB?

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

What parts does the MistMaker Battery Kit V0-4 use?

105 parts, built around the TPS61023DRL, UCC27511ADBV, LP4060B5F and PH-2PWB. 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 MistMaker Battery Kit V0-4 KiCad files?

From the Dav1dyang/Programmable-Mist-Maker repository on GitHub, at the commit this page was made from: the board is variants/battery-kit/hardware/kicad/MistMaker-Battery-Kit-V0-4.kicad_pcb and its schematic legacy/v1-4/hardware/MistMakerV1-4.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the MistMaker Battery Kit V0-4 design in my own project?

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