

Programmer
Slot-in Manipulator of Output Levels
- Size
- 17.8 × 54 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 12
- Nets
- 10
- Pads
- 49
- Tracks, vias
- 34, 0
- Routed
- Yes
- KiCad
- KiCad 5 (file 20171130)
- Created
- 22 Jun 2018
- Updated
- 9 Apr 2021
Overview
Programmer is an open-source printed circuit board by heyspacebuck, from the heyspacebuck/SMOL repository on GitHub, published under the BSD-3-Clause licence. It is a 2-layer board of 17.8 × 54 mm with 12 parts on 10 nets, routed with 34 tracks and 0 vias.
It belongs with the interfaces and adapters boards and the AVR (ATmega, ATtiny) boards of this library.
README
README.mdSMOL
Slot-in Manipulator of Output Levels
(Revision 7)

It's a little PCB to rapidly turn on/off any simple battery-powered circuits. An Atmel ATTiny drives an N-channel MOSFET, which selectively breaks or completes the circuit. The tiny form factor makes it super-simple to install in a battery-powered circuit. Just slot the board between the negative end of the battery and the spring contact, and run a single wire up to the positive battery terminal.
Even with its miniscule form factor, SMOL is designed to be built by surface-mount novices! It has friendly large SMD pads to accept 0603 or 0805 components, and relatively big IC packages (no pitch smaller than 0.90 mm).

If you want to contribute, please do! This thing is here for everyone to experiment with! The circuit is designed in KiCad, just clone/download it and open the project. The project includes self-contained parts and footprints libraries, so it should work on any KiCad 5 installation.


Programming the SMOL
That card-edge connector on the picture above is the programming interface. Designing this part has been tougher than designing the actual SMOL! But once you get it working, you have the ATTiny10's entire kilobyte of program memory at your disposal. I suggest looking at the example programs
Schematic


Bill of Materials
| Designation | Description | My Source | My Cost (USD) | Notes |
|---|---|---|---|---|
| Printed circuit board | JLCPCB | $0.125 | See the /gerbs/ folder | |
| R1 | 1 MΩ resistor, SMD 0603 | Digikey | $0.180 | Abbreviated to "1" on the silkscreen. |
| R2 | 180 kΩ resistor, SMD 0603 | Digikey | $0.015 | Abbreviated to "2" on the silkscreen. |
| R3 | 20 kΩ resistor, SMD 0603 | Digikey | $0.100 | Abbreviated to "3" on the silkscreen. |
| R4 | 200 Ω resistor, SMD 0603 | Digikey | $0.100 | Abbreviated to "4" on the silkscreen. |
| C1, C2 | 10 μF capacitor, SMD 0603 | Digikey | $0.365 | Both are abbreviated to "C" on the silkscreen. |
| L1 | 4.7 μH inductor, SMD 0603 | Digikey | $0.200 | I should probably use one that's rated to more than 30 mA. Abbreviated to "L" on the silkscreen. |
| Q1 | N-channel MOSFET, SMD SOT-523 | Digikey | $0.360 | Datasheet. Abbreviated to "Q" on the silkscreen. |
| D1 | General purpose diode, SMD SOT-523 | Digikey | $0.270 | Datasheet. This part is optional but protects the board from motor back-EMF. Abbreviated to "D" on the silkscreen. |
| U1 | TLV61220 DC-DC boost converter, SMD SOT-23-6 | Digikey | $0.900 | Datasheet |
| U2 | ATTiny10 8-bit microcontroller, SMD SOT-23-6 Narrow | Digikey | $0.340 | Datasheet. Uses the TPI programming interface, which is a pain. |
| Approx. 5 cm of 30AWG wire | Anywhere | $0.000 | Solder to TP1 and attach the other end to the battery's positive terminal. Soldering an old battery clip to the end helps make a reliable connection. | |
| Approx. 1 cm of stiff bare wire | Anywhere | $0.000 | Solder to TP2 and bend so the battery's negative terminal rests on it but doesn't short any traces. | |
| Conformal coating (or other insulating material) | Anywhere | $0.000 | Optional but recommended. Insulate the board so the stiff bare wire can't short anything. |
TOTAL COST PER BOARD: approx. $3.50
Revision history
SMOL has changed a lot since I first got the idea. Amazingly, it hasn't gotten bigger. For a commentated revision history: click here.
Contact info:
- E-mail heyspacebuck at gmail
- Twitter @heyspacebuck
- Telegram @spacebuck
To Do:
- Write better assembly instructions
- Add pictures + video
- Post sample AVR code
- Add OSHW certification mark

IT'S SO SMOL
Parts
12| Qty | Value | Footprint | References |
|---|---|---|---|
| 4 | 2k | Resistors_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P5.08mm_Horizontal | 2kΩ, 2kΩ, 2kΩ, 2kΩ |
| 4 | MountingHole_3.2mm_M3 | Mounting_Holes:MountingHole_3.2mm_M3 | HOLE1, HOLE2, HOLE3, HOLE4 |
| 2 | SolderWirePad_single_1mmDrill | Wire_Pads:SolderWirePad_single_1mmDrill | HOLE5, HOLE6 |
| 1 | Arduino_Nano_v3.x | Modules:Arduino_Nano | A1 |
| 1 | Conn_01x05 | SMOL_footprints:edgeconn | J2 |
Questions
How big is the Programmer PCB?
It measures 17.8 × 54 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Programmer use?
12 parts. 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 Programmer KiCad files?
From the heyspacebuck/SMOL repository on GitHub, at the commit this page was made from: the board is SMOL_arduinonano_programmer_KiCad/programmer.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Can I use the Programmer design in my own project?
Its repository publishes it under the BSD-3-Clause licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).
More from heyspacebuck/SMOL
2- 2 layers7.4 × 12.2 mm

- 2 layers17.8 × 41.3 mm

Similar boards
- 2 layers

Nrf bga
github-linguist/linguist
Language Savant. If your repository's language is being reported incorrectly, send us a pull request!
12 parts14kMIT - 2 layers66.9 × 74.5 mm

- 2 layers40 × 15 mm

Sensors
google/mozc-devices
Circuit diagrams and firmware source code for Gboard DIY keyboards
12 parts3kApache-2.0 - 2 layers42.7 × 56.5 mm

- 2 layers26 × 16.9 mm

- 2 layers49 × 25 mm

5v boost regulator
hackclub/OnBoard
💡 Join 1,000 teenagers and make your first PCB with a $100 grant!
12 parts915 - 2 layers28.3 × 10.3 mm

Tap Photosensor PCB
VoronDesign/Voron-Tap
Tap is a nozzle-based z-probe for the V2 and Trident printer designs. The entire toolhead moves to trigger an optical switch. Tap offers many advantages:
12 parts716GPL-3.0 - 2 layers25.4 × 70.4 mm

Tpmsniffer
stacksmashing/pico-tpmsniffer
A simple, very experimental TPM sniffer for LPC bus
12 parts696