How to Build a USBTiny ISP Programmer

Oct 02nd, 2020 | by: Suhail Panarath
Category: Electronics Microcontrollers
Views 1003

Did you think about how to build a USBTiny ISP Programmer on your own?

Doing electronics projects is so exciting and fun for us, makers. But most makers and hardware enthusiasts who are just stepping ahead to the maker culture built their projects with development boards, breadboards, and modules. This way, we can build the rapid prototype version of our project. But it shall be bulk in size and messed with breadboard wirings. Similar case while using a Generic PCB board, it also looks messy and unprofessional!

So, how we can build our projects in a more convenient way?

The best way to use Standalone PCBs for our project!

Designing and manufacturing a PCB for our project is a better and convenient way to express your professionalism and expertise!. We can minimize the size of our project into a compatible size and custom shapes, PCBs are looking neat and sturdy connections are some of the advantages.

So, what matters is, how we build a PCB cost-effective and time-effective?

We can send our design to a PCB manufacturer to manufacture our PCB design, but it should be time taking and blew your pocket. Another method is to do a toner transfer method using a laser printer and photo paper. But its also time taking and test your level of patience and you also need a permanent marker to patch the non-etched parts. I used this method a lot of time and I hate it.

So, what is the best way?

In my case, The best way to use CNC milling machines to build your PCB. PCB milling machines give you good quality PCB and it takes less time, less resource and cheapest way to produce PCB prototypes!

But it just my own view, The way of method will vary person to person and where you live and accessible resources.

So, let’s build a USBtiny ISP programmer by utilizing a CNC milling machine!

Without further due, let’s get started!

Step 1: You Don’t Want to Be Rich!

Really! you don’t want to purchase a PCB milling machine. Most of us don’t have the budget to buy an expensive machine like this. I don’t even have one.

So, how I got access to a machine? Simply ask your friend circles or do just whai i did, I just go to a fablab, makerspace, or a hackerspace in my locality! In my case, I just go to a fablab and use the machine for a cheap price. So, find a place like fablab or a makerspace in your locality. For me, the price is 48¢/hour for using the PCB milling machine. The price may vary in your locality. So, like I said you don’t want to be rich!

Step 2: Bill of Materials

Components list

  • Attiny 45/85 microcontroller (SOIC package)
  • 499 Ohms x 2
  • 49 Ohms x 2
  • 1K x 2
  • 2 x 3.3 Zener diode
  • 0.1mf capacitor
  • Blue led
  • Green led
  • 2×3 Male header pins (SMD)
  • 20cm 6wire Ribbon cable
  • 2 x 2×3 Female Header IDC Ribbon Cable Transition Connector
  • 4cm x 8cm FR4 Copper Clad

Please note: (Resistors, capacitors, diodes and led are used in this projects is 1206 package)

Tools requirements

  • Soldering station or soldering iron (Micro-tip)
  • Soldering Lead wire
  • Tweezer (microtip)
  • Desoldering Wick
  • Third-hand tool
  • Multimeter
  • Wire Stripper
  • Fume Extractor (Optional)

Machines Requirement

  • Modela MDX20 (Any PCB milling machine do the job, but the job control software will change)

        Download the resources for this project!

Step 3: What Is a PCB Milling Machine?

PCB milling machine is a CNC (Computer Numerical Control) machine that used to fabricate PCB prototypes. PCB milling machines are mill away the copper parts of the copper-clad to make out traces and pads of the PCB. The PCB milling machine comes with a three-axis mechanical movement (X, Y, Z). Each axis is controlled by a stepper motor for precisional movements. These axis movements are controlled by a computer program by giving G-code commands. Gcode is widely using Numerical control programming languages, most of the machines are using g-code to control the axis of the machines. A tool head (usually a milling bit) is connected to these axes that will mill out the PCBs.

:- The machine I am using is a MODELA MDX20 CNC milling machine.

The Modela MDX 20 PCB Milling Machine

The Modela MDX20 is a PCB milling machine. Modela MDX20 is usually used to fabricate PCBs but we can also make moldings, etchings, etc… Modela can mill on different materials like Plywood, Wax, Acrylic, Differents PCB materials like Fr1 Fr4, etc… The modela is lightweight and comes with small in size. We can place it on even a small desktop. The bed (milling surface) is attached to Y-axis and the tool head is attached to X and Z. That means the movement of the bed is controlled by the Y-axis and the movement of the tool head is controlled by X-axis and the tool head is controlled by Z-axis. Modela has its own computer program. But I am using a Linux program called FABModules. FABmodules communicate with Modela to control the cutting and milling process. Fab Modules never set X, Y, Z axis automatically, we need to set them manually.

General Specification

  • Workspace : 203.2 x 152.4 mm
  • Z-axis stroke: 60.5mm
  • Spindle speed: 6500RPM

 Milling Bits To use

  • Milling Bit: 1/64 inch (0.4 mm) bit
  • Cutting Bit: 1/32 inch (0.8 mm) bit

Step 5: What is the ISP (In-System – Programmer)?

In System Programmer (ISP) also known as In-Circuit Serial Programmer (ICSP) is a microcontroller programmer. The ISP will read the instructions and commands from the computer USB and send it to the Microcontroller through the serial peripheral interface (SPI). Simply ISP devices allow us to communicate with the microcontroller using SPI lines. SPI is the way of communication in the microcontroller. Every connected peripherals and interface communicate with microcontrollers through SPI. As an electronics enthusiast, the first thing that comes to my mind when say about ISP is MISO, MOSI SCK. These three pins are the important pins.

Simply, ISP is used to burn programs to the microcontroller and also used to communicate with your microcontroller!


USBTiny ISP is a simple open-source USB AVR programmer and SPI interface. It is a low cost, easy to make, works great with avrdude, is AVRStudio-compatible and tested under Windows, Linux and macOS X. Perfect for students and beginners, or as a backup programmer.

All the components are used in this project’s SMD Components. The brain of the USBTinyISP is an Attiny45 microcontroller.

ATtiny 45 Microcontroller

The microcontroller that is using in USBTinyISP is Attiny 45. Attiny45 is a High performance and low power 8- bit AVR microcontroller running on RISC Architecture by Atmel (microchip acquired Atmel recently). Attiny 45 comes in an 8 pin package. Attiny 45 has 6 I/O pins, Three of them are ADC pins (10 bit ADC) and the other two are Digital pins supporting PWM. It comes with a 4KM flash memory, 256 In-System Programmable EEPROM and 256B SRAM.

Operating voltage around 1.8V to 5.5v 300mA. Attiny 45 support Universal Serial Interface. Both SMD version and THT versions are available in the market. Attiny 85 is a higher version of Attiny 45, They are almost the same. The only difference is in the Flash memory, Attiny 45 have 4KB flash and Attiny 85 have 8KB flash. We can choose either Attiny 45 or Attiny 85, Not a big deal but Attiny 45 is more enough to make FabTinyISP. See the official documentation from here.

  • ATtiny 45 : 4KB FLASH /256 B EEPROM / 256 B SRAM
  • ATtiny 85 : 8KB FLASH / 512B EEPROM / 512 B SRAM

Special Features:-
  • debugWIRE On-chip Debug System
  • In-System Programmable via SPI Port
  • External and Internal Interrupt Sources
  • Low Power Idle, ADC Noise Reduction, and Power-down Modes
  • Enhanced Power-on Reset Circuit
  • Programmable Brown-out Detection Circuit
  • Internal Calibrated Oscillator

Step 7: Setup the Machine

Now let us Build the PCB using the PCB milling machine. I included the Trace layout and Cut layout in the zip file, you can download the zip file from below.

Prerequestment: Please download and install the Fabmodules from this link

Fabmodules only supported in Linux machines, I am using Ubuntu!

Step1: Sacrificial Layer

First of all, the work plate of the PCB milling machine (AKA milling bed) is a metal plate. It is sturdy and well builds. But in some cases, it may damage while cutting in over depth by mistake. So, I place a sacrificial layer on top of the milling bed (a copper-clad placed on top of the milling bed to avoid touching bits in the metal plate).

Step 2: Fix the 1/62 milling bit in the tool head

After placing the sacrificial layer, Now I need to fix the milling bit (usually used a 1/62 milling bit) in the tool head. I already explained the two-stage process of milling PCBs. For milling the traces and pads of the PCB, use a 1/64 milling bit and place it on the tool head using the Allen key. While changing the bits, always give extra care for the bits. The bit’s tip is so thin, It has more chances to break the bit while slip from our hands even it is a small fall. to overcome this situation, I placed a small piece of foam under the tool head to protect from accidental falls.

Step 3: Clean the copper-clad

I am using an FR1 copper clad for this project. The FR-1 is heat resistant and more durable. But copper clads will oxidize quickly. Coppers are fingerprint magnets. So before using a copper-clad even, it is a new one, I recommend you to clean the PCB with a PCB cleaner or acetone before and after milling the PCB. I used a PCB cleaner to clean the PCB.

Step 4: Fix the Copper clad on the milling pad

After cleaning the copper clad, place the copper clad on the top of the milling bed. I placed the copper clad on the milling pad with the help of double-sided sticky tape. The double-sided sticky tapes are so easy to remove and they are available for a cheap price. I stick the double-sided tape on the top of the sacrificial layer. Then placed the copper clad on the top of the sticky tape.

Step 8: Setup Fab Modules and Milling Process

Step 1: Power the machine and Load FabModules

powered on the machine and then open the Fab module software in a Linux system (I’m using Ubuntu) by typing the below command in the Linux terminal.


Then a new window will pop up. Select image(.png) as input file format and output format as Roland MDX-20 mill(rml). After that, click the Make_png_rml button.

 Step 2: Load the PCB design Image

At the top of the new window select the bit that you are going to use. then load your .png format by clink Load.png button. Then click on Make.path button to generate the path to for mill. Now click the Make.rml to generate the instructions and commands for the machine. A new Send it Button will appear on the top make the Make.rml button. Do not click on the button right now.

Step 3: Set X, Y & Z Axes

We are not done yet. Now press the View button on the Modela MDX20 control panel. make sure the bit is well tight. press once more the view button to get back to the default position. Now set the X, Y positions by entering the measurements (depends on your board position) in desired text boxes. I recommend you to note down the X & Y positions somewhere. If something went wrong and you need to start from first, You should need the exact X&Y positions to continue your milling process else it will mess up.

Bring down the tool head by pressing the Down button. Stop when the Tool head reaches near to the copper clad. Then lose the tool head screw and bring down the bit a little bit down until it touches the copper layer of the copper clad. Then tighten the screw back again and bring back the tool head to the home position by pressing the View button. Now we all set. Close the safety Lid of the Modela and click the Send it button. The modela will start the milling process.



  • Noob 19129

    about 10 months ago

    Please try a hrefhttpswwwgooglecomGooglea before asking about a hrefhttpsgameitemstradethread1306post13954htmlpid13954New Product Infoa 9a70579

    Noob 19129

    about 7 months ago

    Please try Google before asking about Cool Product Tips 4c5f79e

    Noob 19129

    about 6 months ago

    Please try Google before asking about Recommended Product Info 0b59a70

    Noob 19129

    about 6 months ago

    Please try [url=https://www.google.com/]Google[/url] before asking about [url=https://qualityprogamer.de/forum/showthread.php?tid=37068&pid=56214#pid56214]Useful Product Info[/url] 94c5f79

    Noob 19129

    about 6 months ago

    Please try [url=https://www.google.com/]Google[/url] before asking about [url=https://chimatamusic.net/db/viewtopic.php?p=3067245#3067245]Excellent Product Info[/url] 023d94c

    Noob 19129

    about 5 months ago

    Please try [url=https://www.google.com/]Google[/url] before asking about [url=https://knpnewz.com/showthread.php?tid=4725&pid=38856#pid38856]New Product Guide[/url] 023d94c

    Noob 19129

    about 3 months ago

    Please try [url=https://www.google.com/]Google[/url] before asking about [url=https://ifutures.pl/post255018.html#p255018]Useful Product Website[/url] 4c5f79e

    Noob 19129

    about 2 months ago

    In reply to the lady asking about video of us, on live camera, live video like video, chatroulette stream, video about us, live and video, the web cam, watch now stream, live live video live video, video wwww, I highly recommend this [url=https://rylanmwtl40617.targetblogs.com/27689443/new-suggestions-for-choosing-escort-websites]what do you think for escort's asian journey tips[/url] or to watch today, settings live, notifications video, live video settings, beautiful a beautiful, live o live, streaming chats, i live video, watching lifetime, webcams traffic, and don't forget this [url=https://griffinjaqe43321.blogpixi.com/27416949/handy-suggestions-on-selecting-escort-websites]go to the website on meet escort in person tips[/url] as well as youtube current videos, on cam live, my location live video, youtube simulcast, live video women, video sach, notifications video, live it live, youtube broadcasts, vimeo v, alongside all this [url=https://josueonmu14047.bloginder.com/27752245/handy-news-for-picking-an-escort-site]my review here for your nyc companion tips[/url] which is also great. Also, have a look at this [url=https://collineowe22222.blog-a-story.com/6929228/recommended-suggestions-for-choosing-an-escort-website]source on escort's nyc rendezvous link[/url] and don't forget video se video, video with women, live webcam live, live views, video live video live video, on cam live, live women video, ww w video, youtube music playback, beautiful a beautiful, alongside all this [url=https://rafaeljpsn23467.getblogs.net/59574849/free-advice-for-deciding-on-an-escort-website]read this about nyc nightlife with escort tips[/url] with netcam live, youtube videos i, video live video live, live all, video customization, in video search, live webcam video, to live video, chat live video, youtube musicyoutube, for good measure. Check more @ [url=https://chimatamusic.net/db/viewtopic.php?p=3331478#3331478]Top Asian Escorts Site[/url] 057986_

    Noob 19129

    about 2 months ago

    For the guy asking about idr 88 slot, famous slot, link alternatif fortune slot 88, prag matic play, permainan slot, game yang online, rtp slot nexus, link alternatif, casino gacor, rtp slot cc, I highly recommend this [url=https://judahwbef84949.xzblogs.com/68864926/recommended-advice-for-selecting-cuanslot-websites]at bing for CuanSlot88 blog[/url] or link apk slot online, slot togel, nex4d login, https slot, thor slot, indonesia slot online, link apk slot, game slot aplikasi, mega gacor slot, online situs, as well as this [url=https://lukasukzk32207.get-blogging.com/27867352/handy-tips-to-selecting-cuanslot88-sites]see page on CUANSLOT forum[/url] on top of nex4d link alternatif, pragmatic slot adalah, s lo t, pragmatic play id, permainan 88, ini slot, champion slot online, slot pragmatic adalah, olympus gates slot, jaya slot, alongside all this [url=https://reidcszd70246.eveowiki.com/730431/recommended_facts_on_deciding_on_cuanslot_sites]go here for CUANSLOT site[/url] which is also great. Also, have a look at this [url=https://trentonrcjo53074.wikiexpression.com/3280626/new_news_to_selecting_cuanslot_websites]look at this on CuanSlot88 url[/url] and don't forget slot selalu gacor, slot online, link slot online, slot download apk, beranda slot, slot live hot, slot88 nexus, game slot rtp, slot whatsapp, mega jackpot 88 link alternatif, not to mention this [url=https://arthurtdmt87654.wikiexpression.com/3281703/recommended_info_for_selecting_cuanslot_websites]on the main page on CuanSlot88 url[/url] with fortune slot 88 link alternatif, slot terbaru 2023, apa rtp slot, slot apk, sepakbolacc wap, playtech slot online, slot permainan slot, to dalam slot, unduh slot online, download pragmatic slot, for good measure. Check more @ [url=https://beatfoundation.com/phpBB3/viewtopic.php?f=4&t=746&p=319441#p319441]New Human Composting Info[/url] 57980_a

    Noob 19129

    about 2 months ago

    In response to the guy asking about live casino table, best online casino aus, online gambling nova scotia, casino online uk new, online grand casino, casino online australia, non casino, live online gambling, top 10 casino sites no deposit, top online casino australia, I highly suggest this [url=https://fernandoyfgg28407.total-blog.com/recommended-tips-to-picking-non-gamstop-52640359]updated casino comparisons site[/url] or best online slot real money, money casino online, live casino deposit bonus, online casinos japan, live casino with bonus, legit casino websites, uk based online casino, slot casino online indonesia, table top casino games, best aus casino, as well as this [url=https://felixlgvk32087.ezblogz.com/59042267/recommended-news-on-deciding-on-top-10-non-ukgc-online-casinos]learn more here on top 10 best casinos forum[/url] alongside all pennsylvania online casino bonus, best curacao casinos, casino bonus offer, popular casino, uk casino bonus codes, popular casino online, best paying out online casino, play online for real money, top 10 casinos online, play casino games win real money, as well as this [url=https://holdenexjt35703.isblog.net/great-ideas-to-choosing-casinos-non-uk-44621134]great top 10 best casinos advice[/url] which is also great. Also, have a look at this [url=https://josuepdln89135.blogofoto.com/58610678/new-facts-for-choosing-casinos-non-uk]top gambling comparison portal link[/url] alongside all top best online casino, online casino sign up bonus, best roulette online, best casino with bonus, microgaming casinos australia, live casino online, rivers casino online games, play real casino games online, live stream casino, online gambling reviews uk, on top of this [url=https://edwinolfw09876.levitra-wiki.com/733330/top_advice_to_selecting_casinos_non_uk]great casino comparisons info[/url] with live online casino real money, best slot games to win on, casino online to win real money, best slot deposit bonus, best online gambling sign up bonus, top casino table games, latest online casino bonus codes, top casino online uk, rivers casino games, best sign up bonus for online casino, for good measure. Check more @ [url=https://www.ozazic.net/forum.php?mod=viewthread&tid=72618&pid=2964410&page=36&extra=#pid2964410]Awesome Asian Escorts Tips[/url] c4aa023

    Noob 19129

    about 1 month ago

    For the person asking about judi 4d slot, main games slot, link alternatif slot online, macau casino online, bandar spin slot, dunia play slot, link game judi slot online, slot judi indonesia, slot online play, judi slot 07, I highly recommend this [url=https://rankuppages.com/story2711511/cara-main-judi-online-and-judi-slot]agree with for dvl toto url[/url] or ion slot rtp, slot online dana ovo, apa slot itu judi, pragmatic slot login, login judi slot, jadi bandar judi, all spin slot, main slot game, bandar judi 4d, judi slot online itu apa, not to mention this [url=https://damian5h57hbv0.csublogs.com/profile]top dvltoto tips[/url] alongside all casino live online asia, main jackpot online, game slot online deposit, link main slot 88, spin deposit, slot flow gaming, judi slot online, slot online habanero, judi game slot, judi game slot online, as well as this [url=http://star.molifan.net/space-uid-2078344.html]updated dvl toto advice[/url] which is also great. Also, have a look at this [url=https://doctorbookmark.com/story17411970/singapore-slot88-login-and-live22-slot]continue reading this about dvl toto forum[/url] alongside all agen judi slot slot online, web slot online, judi slot88, bandar slot indonesia, link slot live, deposit judi slot, live22 slot game, agen judi slot online, bandar judi resmi, web judi online, and don't forget this [url=https://checkbookmarks.com/story2784102/apa-slot-itu-judi-and-live-online-slot]super fast reply about dvltoto advice[/url] with main game slot online, live casino slot, web judi togel, slot casino online gratis, slot indonesia online, link game slot, jadi agen judi slot, sexy gaming slot, slot itu judi, judi slot game, for good measure. Check more @ [url=http://yonghengro.gain.tw/viewthread.php?tid=444423&pid=1643116&page=2&extra=#pid1643116]Useful win1000x Guide[/url] 9e0b59a In response to the man asking about link main slot 88, judi 4d online, pg slot malaysia, bandar judi resmi, link judi, play slot online, bandar online deposit pulsa, sistem game slot, jago slot indonesia, all spin slot, I highly suggest this [url=https://socialmarkz.com/story7559694/online-judi-and-jili-slot-login]updated 7 raja togel advice[/url] or daftar slots, area slot online, link game online slot, casino slot 88, live judi slot, spade gaming slot, judi joker123 slot, pg slot malaysia, free spin login, judi 4d slot, on top of this [url=https://forums.richieallen.co.uk/member.php?action=profile&uid=16554]advice for 7 raja togel forum[/url] alongside all judi slot 07, spin slot88 login, google slot online, bandar slot singapore, online slot indonesia, agen situs judi slot, judi toto, mesin judi online, online slot, slot88 login online, and don't forget this [url=https://matthew2u82sdi7.blogchaat.com/profile]more info on 7 raja togel blog[/url] which is also great. Also, have a look at this [url=https://mixbookmark.com/story2760759/casino-slot-88-and-web-judi-slot]here on 7rajatogel url[/url] as well as game slot live22, website judi indonesia, bandar spin slot, indonesia slot online, bandar slot pragmatic play, situs slot 24 jam online, ovo slot 88 login, judi game slot, main slot game, apa game slot, on top of this [url=https://ayden2x84mlj1.theblogfairy.com/profile]new 7rajatogel details[/url] with slot88 free pragmatic play & joker123 slot online, slot online link, pragmatic id slot, bandar judi slot, link game online slot, main slot game, apa main slot, bandar slot 88, macau casino online, slot online yggdrasil, for good measure. Check more @ [url=https://www.prideanddream.com/viewtopic.php?p=146328#p146328]High Rated Slot WIN1000X Site[/url]

Login or Sign Up to post comments on this project.