
Batterymeter
hb020/batterymeter
Handheld Battery AC and Time Domain characterization tool on Attiny series 2

Generic washing Machine Controller - Result of the TuttleButtle Hackathon 2025
Mr washi is an open-source printed circuit board by mayermakes, from the mayermakes/MyGenWashy repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 147.8 × 106.3 mm with 54 parts on 75 nets, routed with 477 tracks and 383 vias.
It is built around the ATTINY3226-SU, BTB16-600B and IRM-10-5, with the MOC3020M, ULN2003 and RTD14730 among its other parts. Its parts include 16 connectors, 9 capacitors, 9 switches, 7 resistors and 6 ICs. It belongs with the AVR (ATmega, ATtiny) boards of this library.
Generic washing Machine Controller - Result of the TuttleButtle Hackathon 2025 held 13.-15.6.2025 in Vienna Austria.
the team got a broken washing machine and set the task to create a generic open source washing machine controler. the original washing machine and its electronics and a chinese replacement board were partly reverse engineered to understand the functionality. the team tested their theories on how safety mechanisms and machine parts worked and had to be controlled. At the end of day two the machine was running a cold wash programm from a dev kit and some homemade electronics controlled via ESP-home. On day three the learnings and circuits were converted into a kicad design for further testing and software development.
the board is intended to be locally produceable, by hand soldering and easy to repair. We avoided "special" components for easy component substitution. Unit cost is not a concerning factor, this is about the availability of a workable design that can be fitted with whatever components are available.
Thanks to Aisler for the Protoype PCBs and Farnell for supporting us with parts!
Find the Presentation PDF here:
| Qty | Value | Footprint | References |
|---|---|---|---|
| 6 | RZ03-1C4-D005 | Relay_THT:Relay_SPDT_Schrack-RT1-16A-FormC_RM5mm | K1, K2, K3, K4, K5, K8 |
| 3 | RTD14730 | Relay_THT:Relay_SPDT_Schrack-RT1-16A-FormC_RM5mm | K6, K7, K9 |
| 2 | 10uF | Capacitor_THT:C_Disc_D3.0mm_W2.0mm_P2.50mm | C8, C9 |
| 2 | 47k | Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal | R5, R6 |
| 2 | PC817 | Package_DIP:DIP-4_W7.62mm | U4, U5 |
| 1 | 0,1uF | Capacitor_THT:CP_Radial_D6.3mm_P2.50mm | C7 |
| 1 | 0,1uF | Capacitor_THT:C_Disc_D3.0mm_W1.6mm_P2.50mm | C2 |
| 1 | 1.5KExxCA | Diode_THT:D_DO-201AE_P15.24mm_Horizontal | D5 |
| 1 | 100 | Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal | R3 |
| 1 | 100mA | Fuse:Fuseholder_Clip-5x20mm_Keystone_3512_Inline_P23.62x7.27mm_D1.02x1.57mm_Horizontal | F1 |
| 1 | 10k | Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal | R4 |
| 1 | 10uF | Capacitor_THT:C_Disc_D3.0mm_W1.6mm_P2.50mm | C1 |
| 1 | 10uF | Capacitor_THT:CP_Radial_D7.5mm_P2.50mm | C6 |
| 1 | 1k | Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal | R1 |
| 1 | 230V_IN | TerminalBlock:TerminalBlock_bornier-2_P5.08mm | J16 |
| 1 | 330 | Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal | R2 |
| 1 | 330uF | Capacitor_THT:CP_Radial_D8.0mm_P5.00mm | C5 |
| 1 | 400V 100nF | Capacitor_THT:C_Disc_D7.0mm_W2.5mm_P5.00mm | C3 |
| 1 | 400V 10nF | Capacitor_THT:C_Disc_D7.0mm_W2.5mm_P5.00mm | C4 |
| 1 | 5k | Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal | R7 |
| 1 | ATtiny3226-S | Package_SO:SOIC-20W_7.5x12.8mm_P1.27mm | U1 |
| 1 | BTB16-600B | Package_TO_SOT_THT:TO-220-3_Vertical | Q1 |
| 1 | Conn_01x02_Socket | TerminalBlock:TerminalBlock_bornier-2_P5.08mm | J15 |
| 1 | Conn_01x05_Socket | TerminalBlock:TerminalBlock_bornier-5_P5.08mm | J13 |
| 1 | D | Diode_THT:D_T-1_P5.08mm_Horizontal | D2 |
| 1 | DOOR LOCK | TerminalBlock:TerminalBlock_bornier-2_P5.08mm | J8 |
| 1 | DOOR_INTERLOCK | TerminalBlock:TerminalBlock_bornier-2_P5.08mm | J9 |
| 1 | DRAIN PUMP | TerminalBlock:TerminalBlock_bornier-2_P5.08mm | J2 |
| 1 | Fuse | Fuse:Fuseholder_Clip-5x20mm_Keystone_3512_Inline_P23.62x7.27mm_D1.02x1.57mm_Horizontal | F2 |
| 1 | HEATER | TerminalBlock:TerminalBlock_bornier-2_P5.08mm | J3 |
| 1 | HIGH_LEVEL | TerminalBlock:TerminalBlock_bornier-2_P5.08mm | J7 |
| 1 | IRM-10-5 | Converter_ACDC:Converter_ACDC_MeanWell_IRM-10-xx_THT | PS1 |
| 1 | LED | LED_THT:LED_D5.0mm | D1 |
| 1 | LOW_LEVEL | TerminalBlock:TerminalBlock_bornier-2_P5.08mm | J6 |
| 1 | MCP1825S | Package_TO_SOT_SMD:SOT-223-3_TabPin2 | U6 |
| 1 | MOC3020M | Package_DIP:DIP-6_W7.62mm | U3 |
| 1 | NTC 5k | TerminalBlock:TerminalBlock_bornier-2_P5.08mm | J17 |
| 1 | PRG_01x03_Pin | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | J1 |
| 1 | ROTOR | TerminalBlock:TerminalBlock_bornier-2_P5.08mm | J11 |
| 1 | STATOR | TerminalBlock:TerminalBlock_bornier-2_P5.08mm | J10 |
| 1 | TACHO | TerminalBlock:TerminalBlock_bornier-2_P5.08mm | J12 |
| 1 | ULN2003 | Package_SO:SOIC-16_3.9x9.9mm_P1.27mm | U2 |
| 1 | WATER INLET 1 | TerminalBlock:TerminalBlock_bornier-2_P5.08mm | J4 |
| 1 | WATER INLET 2 | TerminalBlock:TerminalBlock_bornier-2_P5.08mm | J5 |

hb020/batterymeter
Handheld Battery AC and Time Domain characterization tool on Attiny series 2

etherkit/EtherKeyerMini
A simple Morse Code keyer that does the basic functions you need


mayermakes/analog-bridge
modular logic probe (3V3 logic level, 16 channels per device, SCPI)



alexanderenrique/attiny-e-ink
Ultra-low-power ATtiny3226 e-ink quote display — firmware and KiCad PCB

etherkit/Si5351AVFO
After any schematic change, run tools/exportdocs.sh (needs KiCad 10 kicad-cli). It rewrites docs/Si5351AVFOschematic.pdf, the netlist, SVGs and docs/erc.rpt.
It measures 147.8 × 106.3 mm and has 2 copper layers, 1.6 mm thick.
54 parts, built around the ATTINY3226-SU, BTB16-600B, IRM-10-5 and MOC3020M. 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.
From the mayermakes/MyGenWashy repository on GitHub, at the commit this page was made from: the board is mr_washi/mr_washi.kicad_pcb and its schematic mr_washi/intermediary.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository publishes it under the GPL-3.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).