Skip to the content
PCBKitNew board
2 layers100 × 75 mmDankdryer, the printed circuit board in 3D

the world's best filament dryer

Size
100 × 75 mm
Copper layers
2
Thickness
1.6 mm
Parts
52
Nets
63
Pads
236
Tracks, vias
373, 67
Pours
5
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
13 Sep 2024
Updated
22 May 2025

Overview

Dankdryer is an open-source printed circuit board by dankamongmen, from the dankamongmen/dankdryer repository on GitHub, published under the Apache-2.0 licence. It is a 2-layer board of 100 × 75 mm with 52 parts on 63 nets, routed with 373 tracks and 67 vias.

It is built around the ESP32-C6-MINI-1U-H4, T1210-800G-TR and LMT87LPM, with the NAU7802SGI, AH3712-P-B and IRLML2502TRPBF among its other parts. Its parts include 17 capacitors, 15 resistors, 10 connectors, 4 ICs and 2 transistors. It belongs with the ESP32 and RISC-V boards of this library.

Main components

7

README

README.md

ESP32, OpenSCAD, and KiCad sources for the Dankdryer, the world's best filament dryer. Side view a nick black joint

Features

  • Temperatures up to at least 150℃ when printed with proper materials.
    • Such temperatures are appropriate (necessary) for certain engineering filaments.
    • A high-temperature spool is required at these temperatures.
  • Accurate weight sensing throughout to determine how much water has been exorcised.
    • Post contextless deltas to reddit in the heat of dumbass arguments! DATA, bitch!
  • Slow rotation like delicious savory meat.
  • Equal heating of all the spool's filament.
  • Control and reporting over MQTT via WiFi.
  • OTA firmware upgrades.
  • Isolated hot and cool chambers, with most active equipment in the cool chamber.
  • Humidity sensing and temperature sensing in both chambers.
  • Entirely open source.

More info at dankwiki.

Dependencies

The project is built with GNU Make. Running make in the toplevel will attempt to build firmware and STLs. Building the firmware requires the esp-idf library and a configured ESP-IDF environment (i.e. the various IDF_* environment variables must be set), along with CMake. idf.py ought be in your $PATH, and work when invoked.

Firmware

3D models

  • OpenSCAD 2024.10+

I use BOSL2, which is included as a submodule.

PCB

  • KiCad 8+

Construction / BOM

The device as designed requires approximately 600g of high-temperature filament (PA6-CF, PA6-GF, PAHT-CF, etc.) to print. The exact amount of filament will depend on material and print settings. Six pieces must be printed:

  • Hot chamber
  • Cool chamber
  • Top
  • Motor sheath
  • Sheath coupling
  • Spool platform

The hot and cool chamber dominate filament consumption, though the top is non-negligible.

Hot chamber

We need a temperature sensor and hall effect sensor (and obviously the heating circuit) in the hot box; nothing else ought be there.

Cool chamber

PCB components
Custom PCB

Generated via Kicad:

DesignatorFootprintQuantityDesignation
U1TPS621321TPS62132
R4R_1206_3216Metric_Pad1.30x1.75mm_HandSolder1360
R2R_1206_3216Metric_Pad1.30x1.75mm_HandSolder1620
R6,R8R_1206_3216Metric_Pad1.30x1.75mm_HandSolder24.7k
C15,C16C_1206_3216Metric_Pad1.33x1.80mm_HandSolder21n
SW2SW_B3F-1000_OMR1bootmode
R13,R20,R15R_1206_3216Metric_Pad1.30x1.75mm_HandSolder310k
R5,R1,R22R_1206_3216Metric_Pad1.30x1.75mm_HandSolder3680
C7,C3,C9,C8,C20C_1206_3216Metric_Pad1.33x1.80mm_HandSolder50.1u
U2TRANS_AH3712-P-B_DIO1AH3712Q-P-B
C6,C13C_1206_3216Metric_Pad1.33x1.80mm_HandSolder222u
C10,C17C_1206_3216Metric_Pad1.33x1.80mm_HandSolder21u
IC1DIP792W51P254L1905H53Q16N1NAU7802KGI
J10FanPinHeader_1x04_P2.54mm_Vertical1lower fan
C19,C2,C1,C14C_1206_3216Metric_Pad1.33x1.80mm_HandSolder410u
J2JST_VH_B5P-VH-B_1x05_P3.96mm_Vertical1to microboard
J4TerminalBlock_bornier-2_P5.08mm1heater
J8TerminalBlock_bornier-2_P5.08mm1motor
J7FanPinHeader_1x04_P2.54mm_Vertical1upper fan
R9,R19R_1206_3216Metric_Pad1.30x1.75mm215k
U6XCVR_ESP32-C6-MINI-1U-H41ESP32-C6-MINI-1U
J11PinHeader_1x01_P1.00mm_Vertical1testpin
R16R_1206_3216Metric_Pad1.30x1.75mm_HandSolder1412
J13BarrelJack_Wuerth_6941xx3010021barreljack
R7R_1206_3216Metric_Pad1.30x1.75mm_HandSolder11.62k
C4,C18C_1206_3216Metric_Pad1.33x1.80mm_HandSolder2.01u
J5TerminalBlock_bornier-4_P5.08mm15kg load cell
R10,R11R_0805_2012Metric_Pad1.15x1.40mm_HandSolder247
U5TO-92_Inline1LM35-LP
R3R_1206_3216Metric_Pad1.30x1.75mm_HandSolder1100
L1IND_IFSC_1515AH_VIS12.2u
R14R_1206_3216Metric_Pad1.30x1.75mm_HandSolder13.3k
OC1MOC306XS_LTO1MOC3063S
C12C_1206_3216Metric_Pad1.33x1.80mm_HandSolder13.3n
C11C_0805_2012Metric_Pad1.18x1.45mm_HandSolder1470p
R21R_1206_3216Metric_Pad1.30x1.75mm_HandSolder168
J9PinHeader_1x04_P2.54mm_Vertical1UART
J6JST_PHD_B8B-PHDSS_2x04_P2.00mm_Vertical1LCD
J3JST_VH_B5P-VH-B_1x05_P3.96mm_Vertical1to baseboard
Q3TO-263-21T1210-800G
Q2SOT-323_SC-701SSM3K127TU
R12R_1206_3216Metric_Pad1.30x1.75mm_HandSolder1330
U3SOT-89-31HT7550

MQTT

MQTT is used to report status and to accept commands.

Controls

  • NAME/control/tare: tare using the last weight read
  • NAME/control/dry: takes as argument a string "DRYS/TEMP", where DRYS and TEMP are unsigned integers specifying the number of seconds to dry, and the temperature to dry at. Any ongoing drying operation will be replaced with the newly specified one. Specifying zero for DRYS will cancel any ongoing drying operation.
  • NAME/control/lpwm: takes as argument a hexadecimal number between 0 and 255, left-padded with zeroes so as to be exactly two digits, i.e. "00".."ff". Sets the lower fan's PWM.
  • NAME/control/upwm: takes as argument a hexadecimal number between 0 and 255, left-padded with zeroes so as to be exactly two digits, i.e. "00".."ff". Sets the upper fan's PWM.
  • NAME/control/factoryreset: takes no arguments. Blanks the persistent storage, disables the motor and heater, and reboots.

Renderings

View from the top of the lower chamber by itself, with the AC adapter and motor assembly present.

Top view, lower chamber

Combined OpenSCAD render for mating testing.

Combined render

Questions

  • How does air flow? Let's get some visible air and test it.
  • What all could we accomplish by reading RFID?

Parts

52
QtyValueFootprintReferences
6100nCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC2, C3, C5, C8, C9, C20
410kResistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR7, R13, R15, R20
310uCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC1, C14, C19
31uCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC10, C12, C17
22.2kResistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR6, R8
222uCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC6, C21
2330Resistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR2, R12
247Resistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR10, R11
2680Resistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR1, R5
2HeaderX4Connector:FanPinHeader_1x04_P2.54mm_VerticalJ7, J10
2ScrewX2TerminalBlock:TerminalBlock_bornier-2_P5.08mmJ4, J8
11-2834016-4dank:TE_1-2834016-4J1
1100Resistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR3
110nCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC4
12.2uInductor_SMD:L_Sunlord_SWPA4030SL1
13.3kResistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR14
13.3nCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC7
1330pCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC11
1390Resistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR4
1AH3712-P-Bdank:TRANS_AH3712-P-B_DIOQ1
1ESP32-C6-MINI-1Udank:ESP32-C6-MINI-1U-H4U6
1IRLML2502TRPbFdank:IRLML2502TRPBFQ2
1LCDdank:JST_PHD_B8B-PHDSS_2x04_P2.00mm_VerticalJ6
1LMT87LPMPackage_TO_SOT_THT:TO-92_InlineU5
1MOC3063SMdank:MOC306XS_LTOOC1
1NAU7802SGIdank:SOI16_NAU7802SGI_NUVU3
1T1210-800G-TRdank:T1210-800G-TRD1
1TPS62132RGTRPackage_DFN_QFN:VQFN-16-1EP_3x3mm_P0.5mm_EP1.68x1.68mm_ThermalViasU4
1UARTConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ9
1barreljackdank:BarrelJack_Wuerth_6941xx301002J13
1bootdank:SW_B3F-1000_OMRSW2
1to baseboarddank:JST_VH_B4P-VH-B_1x04_P3.96mm_VerticalJ3
1to microboarddank:JST_VH_B4P-VH-B_1x04_P3.96mm_VerticalJ2

Questions

How big is the Dankdryer PCB?

It measures 100 × 75 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Dankdryer use?

52 parts, built around the ESP32-C6-MINI-1U-H4, T1210-800G-TR, LMT87LPM and NAU7802SGI. 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 Dankdryer KiCad files?

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

Can I use the Dankdryer design in my own project?

Its repository publishes it under the Apache-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 layers364 × 157.5 mmCloudfridge, the printed circuit board in 3D

    Cloudfridge

    plantalytix/hardware

    Hardware design documents for all plantalytix products. Created using KiCAD version 5 and 6.

    90 parts2
  • 2 layers99.1 × 58.4 mmHEAT, the printed circuit board in 3D

    HEAT

    milar111/HEAT

    An open-source STM32 SMD assembly station for precision soldering. Uses a custom Smart Pulse & Coast algorithm to drive 400W mains heaters via SSR. Features OLED UI, NTC feedback, and safety cooling.

    57 parts9
  • 2 layers29.5 × 70.5 mmKey fob pcb, the printed circuit board in 3D

    Key fob pcb

    BenMartens15/reviveride-key-fob-pcb

    This repo contains the schematic and PCB for the key fob. The firmware for the key fob can be found here: https://github.com/BenMartens15/reviveride-key-fob-firmware

    27 parts1
  • 4 layers66.1 × 66.5 mmLight Doorbell KiCad, the printed circuit board in 3D

    Light Doorbell KiCad

    Estylos/Light-Doorbell-HW

    KiCad project for a custom, battery-powered doorbell with dual-color LED feedback and 4-layer circular PCB design. Optimized for low power and compact integration

    87 parts1MIT
  • 2 layers91 × 80.5 mmAttention Seeker, the printed circuit board in 3D

    Attention Seeker

    M-Mrk/Attention-Seeker

    A hackpad with features to alert you to notifications (kde only for now). Zone out alot or focus intensely when doing stuff? You also miss some important notifications? Well me too, so I build this so I can hopefully…

    21 parts1Apache-2.0
  • 8 layers110.3 × 59.1 mmDFTBoard, the printed circuit board in 3D

    DFTBoard

    SunnyYoshimitsu/CelestiCall

    An attempt at making a somewhat modern smartphone with many functions.

    313 parts1
  • 2 layers89.5 × 50 mmBSC finish punches transmitter, the printed circuit board in 3D

    BSC finish punches transmitter

    ut-ims-robotics/eensaar-thesis-2026-wireless-finish-punch-transmission

    This repository hosts the source code, electrical schematics and layout, as well as documentation developed by Emil Eensaar for his Bachelor of Science thesis.

    63 parts1Apache-2.0
  • 4 layers80 × 80 mmFlightcomputer2, the printed circuit board in 3D

    Flightcomputer2

    UTS-Rocketry/ODIN-FlightController2026

    Primary avionics flight controller for the 2026 AURC rocket.

    114 parts1