Skip to the content
PCBKitNew board
2 layers41 × 75 mmNanoProgrammers, the printed circuit board in 3D

Programmers for Attinies

Size
41 × 75 mm
Copper layers
2
Thickness
1.6 mm
Parts
14
Nets
40
Pads
99
Tracks, vias
78, 0
Pours
2
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
26 Jan 2025
Updated
4 Mar 2025

Overview

NanoProgrammers is an open-source printed circuit board by Sanjit1, from the Sanjit1/Attiny2x4x8x-Programmers repository on GitHub, published under the MIT licence. It is a 2-layer board of 41 × 75 mm with 14 parts on 40 nets, routed with 78 tracks and 0 vias.

It is built around the ATTINY84-20PU, ATTINY85V-10PU and OS102011MS2QN1. Its parts include 3 connectors, 2 ICs, 1 capacitor, 1 resistor and 1 diode. It belongs with the interfaces and adapters boards and the AVR (ATmega, ATtiny) boards of this library.

Main components

3

README

README.md

Programmer for the ATTiny2/4/8 series.

These are the KiCad Files for programmers that use Arduino as ISP to program ATTinies. There is an Arduino Uno and an Arduino Nano version. There are headers for both the '5s and the '4s.

TOC

Convinient Links

Usage Guide

This should be fairly simple to setup. You can read a general guide over here. All this PCB does is replace the wiring to make life easier. I will be doing this in Arduino Legacy using Damellis' core. If you want to use 2.0 or SpenceKonde's core, you can do that too. Just make sure to configure it properly.

Configuring the Arduino for In-System Programming:

You only need to do this once. If the programmer has already been set up you don't need to do this again.

  1. Open the ArduinoISP sketch from File > Examples > ArduinoISP.
  2. Correctly select the Arduino Uno/Nano as your board and the correct port.
  3. Make sure that the reset capacitor switch is facing the cap, otherwise it will mess with the programming.
  4. Upload!

Installing the AttinyCore:

  1. Go to Arduino IDE > File > Preferences > Additional Boards Manager URLs.
  2. Add https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json to the list.
  3. Open the Boards Manager from Tools > Board > Boards Manager.
  4. Search for ATTinyCore and install it.

Programming the ATTiny:

  1. You will have to edit a bunch of options in Tools: Board, Processor, Clock, Port and Programmer.
  2. Board and Processor: Correctly select what ATTiny you are using(25/45/85/24/44/84)
  3. Clock: Unless you know what you are doing, select one of the Internal clocks.
  4. Port: Select the port that the Arduino is connected to.
  5. Programmer: Select Arduino as ISP.
  6. If this is the first time you are using that ATTiny, you may need to burn the bootloader. This is done by selecting Burn Bootloader.
  7. Use keyboard shortcut Ctrl+Shift+U to Upload Using Programmer.

Keep in mind that if you want to program and arduino after this ,you will need to change the programmer back to AVRISP mkII or whatever you were using.

Blink

I have provided a sample blink sketch. If you find that the LED is blinking faster/slower than expected, you may need to change the clock speed. This is done by burning the bootloader again.

Common Debugging Tips/FAQ:

  • If Arduino IDE cant find the Arduino Nano or you cant see a change in the port list, install the CH340 driver.
  • If you can't upload the sketch, make sure that the programmer is set to Arduino as ISP.
  • If you are getting avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x00, this is usually a wiring issue or incorrect programmer selected.
  • If you are getting avrdude: Yikes! Invalid device signature., this is usually a wiring issue or incorrect ATTiny selected.

Parts Required

  • 1x Arduino Nano/Uno
  • 1x Arduino Nano Header/Male Headers for the Uno
  • 2x 15-pin headers if you are using the Nano version(Optional)
  • 2x 7-pin headers + 2x 4-pin headers if you are using the Uno version(Optional)
  • 1x 10uF capacitor(elecrolytic/ceramic is fine)
  • 1x 14-pin DIP socket
  • 1x 8-pin DIP socket
  • 1x Switch
  • 1x 2x3 ICSP header(optional)
  • 1x LED (optional)
  • 1x 220 Ohm resistor (optional)

The LED?

Yea, there is an LED connected to MISO. With that, you can have a startup script that helps you verify that your program successfully uploaded.

On an Attiny85: MISO is Pin 6(PB1)

On an Attiny84: MISO is Pin 8(PB5)

Pics or it didn't happen

alt text alt text

I will take an IRL pic later.

Parts

14
QtyValueFootprintReferences
3LOGOCustom Art Exports:Smiley FaceG1, G2, G3
2Conn_01x15_PinConnector_PinHeader_2.54mm:PinHeader_1x15_P2.54mm_VerticalJ1, J2
110uCapacitor_THT:CP_Radial_D5.0mm_P2.50mmC1
1470RResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR1
1ATtiny84-20PPackage_DIP:DIP-14_W7.62mmU1
1ATtiny85V-10PPackage_DIP:DIP-8_W7.62mmU2
1Arduino_Nano_v3.xModule:Arduino_NanoA1
1ICSPConnector_PinHeader_2.54mm:PinHeader_2x03_P2.54mm_VerticalJ3
1LEDLED_THT:LED_D4.0mmD1
1LOGOfootprints:GithubQR_14G***
1OS102011MS2QN1OS102011MS2QN1:SPDT_OS102011_CNKSW1

Questions

How big is the NanoProgrammers PCB?

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

What parts does the NanoProgrammers use?

14 parts, built around the ATTINY84-20PU, ATTINY85V-10PU and OS102011MS2QN1. 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 NanoProgrammers KiCad files?

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

Can I use the NanoProgrammers 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).

More from Sanjit1/Attiny2x4x8x-Programmers

1
  • 2 layers68.6 × 53.3 mmUnoProgrammers, the printed circuit board in 3D

    UnoProgrammers

    Sanjit1/Attiny2x4x8x-Programmers

    Programmers for Attinies

    22 partsMIT

Similar boards

  • 2 layers116 × 40 mmBriefkastensensor, the printed circuit board in 3D

    Briefkastensensor

    hierle/letterbox-sensor

    LoRaWan letterbox sensor

    14 parts17GPL-3.0
  • 2 layers80 × 60 mmTwo phase charging, the printed circuit board in 3D

    Two phase charging

    HuntieDK/BMW-i3-two-phase-charging

    Extends the BMW i3 60Ah BEV/REX charging to use two phases

    73 parts8MIT
  • 2 layers109.2 × 61.5 mmPower board, the printed circuit board in 3D

    Power board

    mat3ck/eirbot1a_2018

    Eirbot first year team project for 2018 France Championship of Robotics

    29 parts2MIT
  • 2 layers97.8 × 95.3 mmHanukkah, the printed circuit board in 3D

    Hanukkah

    Electro707/2019_Menorah_PCB_Kit

    A soldering kit in the shape of menorah powered by an ATtiny84

    31 partsMIT
  • 2 layers60 × 52 mmRF Switch, the printed circuit board in 3D

    RF Switch

    gogreenpower/ATTiny84-RF-Button

    Second PCB design

    19 partsGPL-3.0
  • 2 layers70 × 60 mmMini EVSE, the printed circuit board in 3D

    Mini EVSE

    HuntieDK/Mini-EVSE

    Mini EVSE schematics for EV charging

    33 partsMIT
  • 2 layers27.6 × 47.6 mmCat door, the printed circuit board in 3D

    Cat door

    markasoftware/cat-door

    AVR firmware for my electronic cat door.

    19 partsGPL-3.0
  • 2 layers76.2 × 73.7 mmOcarina, the printed circuit board in 3D

    Ocarina

    raumzeitlabor/agenda2018

    23 parts