<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>AVR Programmer Archives &#8211; Make Some Stuff</title>
	<atom:link href="https://makesomestuff.org/tag/avr-programmer/feed/" rel="self" type="application/rss+xml" />
	<link></link>
	<description>Build Cool Electronics Projects!</description>
	<lastBuildDate>Sat, 27 Sep 2025 21:59:02 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://i0.wp.com/makesomestuff.org/wp-content/uploads/2019/11/cropped-icon2.png?fit=32%2C32&#038;ssl=1</url>
	<title>AVR Programmer Archives &#8211; Make Some Stuff</title>
	<link></link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">165766821</site>	<item>
		<title>How I Made My Tiny AVR Programmer</title>
		<link>https://makesomestuff.org/how-i-made-my-avr-programmer/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=how-i-made-my-avr-programmer</link>
					<comments>https://makesomestuff.org/how-i-made-my-avr-programmer/#respond</comments>
		
		<dc:creator><![CDATA[Ahmed Ibrahim]]></dc:creator>
		<pubDate>Mon, 29 Mar 2021 23:28:34 +0000</pubDate>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[AVR]]></category>
		<category><![CDATA[AVR Programmer]]></category>
		<category><![CDATA[Programmer]]></category>
		<guid isPermaLink="false">https://makesomestuff.org/?p=1337</guid>

					<description><![CDATA[<p><a href="https://makesomestuff.org">Make Some Stuff</a><br />
<a href="https://makesomestuff.org/how-i-made-my-avr-programmer/">How I Made My Tiny AVR Programmer</a></p>
<p>Recently, I have been using a lot of AVR chips and I faced few problems regarding burning the code on these chips using commercial AVR programmers. So, I decided why not building my own AVR programmer and get rid of all of this hassle. And, why not customize it according to my needs. Tiny AVR [...]</p>
<p>The post <a href="https://makesomestuff.org/how-i-made-my-avr-programmer/">How I Made My Tiny AVR Programmer</a> appeared first on <a href="https://makesomestuff.org">Make Some Stuff</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><a href="https://makesomestuff.org">Make Some Stuff</a><br />
<a href="https://makesomestuff.org/how-i-made-my-avr-programmer/">How I Made My Tiny AVR Programmer</a></p>

<p class="wp-block-paragraph">Recently, I have been using a lot of AVR chips and I faced few problems regarding burning the code on these chips using commercial AVR programmers. So, I decided why not building my own AVR programmer and get rid of all of this hassle. And, why not customize it according to my needs.</p>



<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-4043148098486780" crossorigin="anonymous"></script>
<ins class="adsbygoogle" style="display:block; text-align:center;" data-ad-layout="in-article" data-ad-format="fluid" data-ad-client="ca-pub-4043148098486780" data-ad-slot="7344212982"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<h2 class="wp-block-heading">Tiny AVR Programmer Background</h2>



<p class="wp-block-paragraph">Today, we will take a look at how this board is designed, and I will take you on a journey on how each component is working in this design.</p>



<p class="wp-block-paragraph">If you have just an AVR chip, you need something to program it. the most common way is through ICSP(In-circuit serial programmer). simply, it&#8217;s a board that has 6 pins usually a 0.1&#8243; pitch header that can talk to your AVR chip through the SPI protocol. At the other end, it also can talk with your PC through the USB protocol. So, after compiling your C code using avr-gcc, the programmer board will take and send it to your AVR chip directly. You can think of it as a bridge between your PC and your AVR chip.</p>



<figure class="wp-block-gallery aligncenter has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/avr_programming_workflow.png?ssl=1"><img data-recalc-dims="1" fetchpriority="high" decoding="async" width="632" height="404" data-id="1341" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/avr_programming_workflow.png?resize=632%2C404&#038;ssl=1" alt="AVR Toolchain" class="wp-image-1341" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/avr_programming_workflow.png?w=632&amp;ssl=1 632w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/avr_programming_workflow.png?resize=300%2C192&amp;ssl=1 300w" sizes="(max-width: 632px) 100vw, 632px" /></a></figure>
</figure>



<p class="wp-block-paragraph">I did my research for AVR programmers and I found a lot of cool resources. <a href="http://fab.cba.mit.edu/classes/863.16/doc/tutorials/FabISP/FabISP_Demystified.html" target="_blank" rel="noreferrer noopener">this one </a>specifically caught my eye. It&#8217;s the <a href="http://fab.cba.mit.edu/classes/863.16/doc/tutorials/FabISP/FabISP_Demystified.html" target="_blank" rel="noreferrer noopener">FabOptimus AVR programmer</a> built by Ali Shtarbanov which built on the <a href="http://academy.cba.mit.edu/classes/embedded_programming/hello.ISP.44.png" target="_blank" rel="noreferrer noopener">FabISP programmer</a> built by prof. Neil from MIT Media Lab. the FabOptimus documentation is very good and easy to follow if you are a newbie. I decided to make a very small modification to the FabOptimus AVR programmer since it doesn&#8217;t have a power indicator LED, I wanna add one!</p>



<figure class="wp-block-gallery aligncenter has-nested-images columns-default is-cropped wp-block-gallery-2 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/hello.ISP_.44.res_.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="483" height="1024" data-id="1345" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/hello.ISP_.44.res_.png?resize=483%2C1024&#038;ssl=1" alt="" class="wp-image-1345" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/hello.ISP_.44.res_.png?resize=483%2C1024&amp;ssl=1 483w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/hello.ISP_.44.res_.png?resize=800%2C1696&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/hello.ISP_.44.res_.png?resize=142%2C300&amp;ssl=1 142w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/hello.ISP_.44.res_.png?resize=725%2C1536&amp;ssl=1 725w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/hello.ISP_.44.res_.png?resize=966%2C2048&amp;ssl=1 966w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/hello.ISP_.44.res_.png?w=1066&amp;ssl=1 1066w" sizes="auto, (max-width: 483px) 100vw, 483px" /></a><figcaption class="wp-element-caption">FabISP bt Prof. Neil</figcaption></figure>



<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-1.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="511" height="1024" data-id="1347" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-1.png?resize=511%2C1024&#038;ssl=1" alt="" class="wp-image-1347" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-1.png?resize=511%2C1024&amp;ssl=1 511w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-1.png?resize=600%2C1202&amp;ssl=1 600w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-1.png?resize=150%2C300&amp;ssl=1 150w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-1.png?resize=767%2C1536&amp;ssl=1 767w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-1.png?w=783&amp;ssl=1 783w" sizes="auto, (max-width: 511px) 100vw, 511px" /></a><figcaption class="wp-element-caption">FabOptimus by Ali Shtarbanov</figcaption></figure>
</figure>



<h2 class="wp-block-heading">PCB Design And Circuit In-depth Analysis</h2>



<p class="wp-block-paragraph">First, we need to understand how this board is designed and how each component in this circuit is behaving. </p>



<figure class="wp-block-gallery aligncenter has-nested-images columns-default wp-block-gallery-3 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Original_FaOptimus_SCH_board.jpg?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="770" height="602" data-id="1353" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Original_FaOptimus_SCH_board.jpg?resize=770%2C602&#038;ssl=1" alt="" class="wp-image-1353" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Original_FaOptimus_SCH_board.jpg?resize=1024%2C800&amp;ssl=1 1024w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Original_FaOptimus_SCH_board.jpg?resize=800%2C625&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Original_FaOptimus_SCH_board.jpg?resize=300%2C234&amp;ssl=1 300w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Original_FaOptimus_SCH_board.jpg?resize=87%2C67&amp;ssl=1 87w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Original_FaOptimus_SCH_board.jpg?w=1208&amp;ssl=1 1208w" sizes="auto, (max-width: 770px) 100vw, 770px" /></a><figcaption class="wp-element-caption">FabOptimus Original Schematic and Board Layout</figcaption></figure>
</figure>



<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-4043148098486780" crossorigin="anonymous"></script>
<ins class="adsbygoogle" style="display:block; text-align:center;" data-ad-layout="in-article" data-ad-format="fluid" data-ad-client="ca-pub-4043148098486780" data-ad-slot="7344212982"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<div style="height:50px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="wp-block-paragraph">This AVR programmer is based on the <a href="http://ww1.microchip.com/downloads/en/devicedoc/Atmel-7701_Automotive-Microcontrollers-ATtiny24-44-84_Datasheet.pdf" target="_blank" rel="noreferrer noopener">ATtiny44 AVR chip</a> which by default it comes blank, no code or anything is uploaded to it like any microcontroller chip you buy. Since we are building an AVR programmer, we need to upload a very specific firmware to the ATtiny44 chip that tells exactly the role it should follow and execute. Simply, which is sending some hex files to other AVR microcontrollers. This firmware is called <a href="http://archive.fabacademy.org/archives/2016/doc/programming_FabISP.html" target="_blank" rel="noreferrer noopener">FabISP firmware</a>(more on that later.) </p>



<p class="wp-block-paragraph">So, we need to be able to upload the FabISP firmware to the programmer AVR chip then disable the possibility of reprogramming it. </p>



<figure class="wp-block-gallery aligncenter has-nested-images columns-default wp-block-gallery-4 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-2.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="511" height="1024" data-id="1357" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-2.png?resize=511%2C1024&#038;ssl=1" alt="" class="wp-image-1357" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-2.png?resize=511%2C1024&amp;ssl=1 511w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-2.png?resize=600%2C1202&amp;ssl=1 600w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-2.png?resize=150%2C300&amp;ssl=1 150w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-2.png?resize=767%2C1536&amp;ssl=1 767w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-2.png?w=783&amp;ssl=1 783w" sizes="auto, (max-width: 511px) 100vw, 511px" /></a></figure>
</figure>



<p class="wp-block-paragraph">To be able to upload the FabISP firmware to the programmer AVR chip we need to pull its reset pin to LOW(0 volts). and to disable the possibility of reprogramming it once it has been programmed, we need to pull its reset pin to be always HIGH(5 volts). So, we need to design the circuit in such a way that the reset pin is HIGH(5 volts) by default. But, once another programmer is connected to it, it can pull the programmer AVR chip reset pin to LOW(0 volts). That&#8217;s why we are using a 10k ohm pull-up resistor on the reset pin.</p>



<p class="wp-block-paragraph">As you notice the ATtiny44 chip reset pin is connected to the RST pin on the ISP pin header through a 0 ohm resistor. after uploading the firmware to the ATtiny44 chip we will remove this zero ohm resistor to disable the possibility of reprogramming the board again.</p>



<figure class="wp-block-gallery aligncenter has-nested-images columns-default wp-block-gallery-5 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="511" height="1024" data-id="1361" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy.png?resize=511%2C1024&#038;ssl=1" alt="" class="wp-image-1361" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy.png?resize=511%2C1024&amp;ssl=1 511w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy.png?resize=600%2C1202&amp;ssl=1 600w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy.png?resize=150%2C300&amp;ssl=1 150w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy.png?resize=767%2C1536&amp;ssl=1 767w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy.png?w=783&amp;ssl=1 783w" sizes="auto, (max-width: 511px) 100vw, 511px" /></a></figure>
</figure>



<p class="wp-block-paragraph">Since we need to use our programmer board to program other AVR boards, our programmer board will need to be able to provide the reset signal to the other AVR boards that we need to program. So, we are also connecting an I/O pin from the ATtiny44 chip to the RST pin of the ISP pin header to provide the reset signal to the other AVR chips that we need to program.</p>



<figure class="wp-block-gallery aligncenter has-nested-images columns-default wp-block-gallery-6 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy-2.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="511" height="1024" data-id="1367" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy-2.png?resize=511%2C1024&#038;ssl=1" alt="" class="wp-image-1367" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy-2.png?resize=511%2C1024&amp;ssl=1 511w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy-2.png?resize=600%2C1202&amp;ssl=1 600w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy-2.png?resize=150%2C300&amp;ssl=1 150w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy-2.png?resize=767%2C1536&amp;ssl=1 767w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy-2.png?w=783&amp;ssl=1 783w" sizes="auto, (max-width: 511px) 100vw, 511px" /></a></figure>
</figure>



<p class="wp-block-paragraph">To reduce any high frequency noise or any voltage drops coming from the power supply we are using 1uf decoupling capacitor between the VCC(5 volts) and GND. </p>



<figure class="wp-block-gallery aligncenter has-nested-images columns-default wp-block-gallery-7 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy-5.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="511" height="1024" data-id="1368" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy-5.png?resize=511%2C1024&#038;ssl=1" alt="" class="wp-image-1368" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy-5.png?resize=511%2C1024&amp;ssl=1 511w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy-5.png?resize=600%2C1202&amp;ssl=1 600w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy-5.png?resize=150%2C300&amp;ssl=1 150w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy-5.png?resize=767%2C1536&amp;ssl=1 767w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy-5.png?w=783&amp;ssl=1 783w" sizes="auto, (max-width: 511px) 100vw, 511px" /></a></figure>
</figure>



<p class="wp-block-paragraph">We also using a 20MHz resonator as a clock source for the ATTiny44 chip instead of it&#8217;s internal clock to achieve more accuracy.</p>



<figure class="wp-block-gallery aligncenter has-nested-images columns-default wp-block-gallery-8 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy-4-1.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="511" height="1024" data-id="1370" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy-4-1.png?resize=511%2C1024&#038;ssl=1" alt="" class="wp-image-1370" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy-4-1.png?resize=511%2C1024&amp;ssl=1 511w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy-4-1.png?resize=600%2C1202&amp;ssl=1 600w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy-4-1.png?resize=150%2C300&amp;ssl=1 150w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy-4-1.png?resize=767%2C1536&amp;ssl=1 767w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FabOptimus2-copy-4-1.png?w=783&amp;ssl=1 783w" sizes="auto, (max-width: 511px) 100vw, 511px" /></a></figure>
</figure>



<p class="wp-block-paragraph">We are using two 3.3v Zener diodes as voltage clippers to regulate the voltage from 5v to 3.3v. According to the V-USB and USB specifications, the voltage on the USB data lines should not exceed 3.3v. Also, we are using a 1.5k ohm pull-up resistor on the D- pin of the USB to make it recognizable as a low-speed device on the host side.</p>



<figure class="wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-9 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FaOptimus_sch_edited_new_new-scaled.jpg?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="770" height="537" data-id="1373" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FaOptimus_sch_edited_new_new.jpg?resize=770%2C537&#038;ssl=1" alt="" class="wp-image-1373" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FaOptimus_sch_edited_new_new-scaled.jpg?resize=1024%2C714&amp;ssl=1 1024w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FaOptimus_sch_edited_new_new-scaled.jpg?resize=800%2C558&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FaOptimus_sch_edited_new_new-scaled.jpg?resize=300%2C209&amp;ssl=1 300w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FaOptimus_sch_edited_new_new-scaled.jpg?resize=1536%2C1071&amp;ssl=1 1536w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/FaOptimus_sch_edited_new_new-scaled.jpg?resize=768%2C535&amp;ssl=1 768w" sizes="auto, (max-width: 770px) 100vw, 770px" /></a></figure>
</figure>



<p class="wp-block-paragraph">Finally, I made a simple edit to the board. I added a power indicator LED to the board.</p>



<p class="wp-block-paragraph">It&#8217;s a best practice to disconnect the VCC pin on the ISP pin header to make sure that the AVR programmer is not attempting to supply power to the board that we want to program. the board that we want to program should provide its own power. If we didn&#8217;t disconnect the VCC pin on the ISP header, the AVR programmer and the board being programmed will draw their current from the USB port(from your computer). if your USB port can&#8217;t supply that much current or at any short circuit circumstances, that may cause a huge problem to your computer.</p>



<h2 class="wp-block-heading">PCB Manufacturing</h2>



<figure class="wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-10 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2021-03-15-at-11.40.33-AM.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="770" height="426" data-id="1380" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2021-03-15-at-11.40.33-AM.png?resize=770%2C426&#038;ssl=1" alt="" class="wp-image-1380" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2021-03-15-at-11.40.33-AM.png?resize=1024%2C566&amp;ssl=1 1024w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2021-03-15-at-11.40.33-AM.png?resize=800%2C443&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2021-03-15-at-11.40.33-AM.png?resize=300%2C166&amp;ssl=1 300w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2021-03-15-at-11.40.33-AM.png?resize=1536%2C849&amp;ssl=1 1536w" sizes="auto, (max-width: 770px) 100vw, 770px" /></a></figure>
</figure>



<p class="wp-block-paragraph">As you can see, I fabricated this board using a CNC milling machine at Fab Lab Egypt. But, if you are searching for high-quality PCB manufacturing with a solder mask and silkscreen at a very fair price and fast worldwide shipping with no minimum requirements you may order as small as 10 pieces for 5$. you can order yours from <a href="https://www.pcbway.com/" target="_blank" rel="noreferrer noopener">PCBWay</a>. You can also support me by just ordering this board from my link. </p>



<div class="wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-fe48e5de wp-block-buttons-is-layout-flex">
<div class="wp-block-button"><a class="wp-block-button__link has-background has-text-align-center wp-element-button" href="https://www.pcbway.com/project/shareproject/Tiny_AVR_Programmer.html" style="border-radius:100px;background-color:#00a99d" target="_blank" rel="noreferrer noopener">pcbway</a></div>
</div>



<p class="wp-block-paragraph"><br>We love open source. You can download all the board source files from my Github repo.</p>



<div class="wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-fe48e5de wp-block-buttons-is-layout-flex">
<div class="wp-block-button"><a class="wp-block-button__link has-background has-text-align-center wp-element-button" href="https://github.com/ahmedibrrahim/Tiny-AVR-Programmer" style="border-radius:100px;background-color:#00a99d" target="_blank" rel="noreferrer noopener">github</a></div>
</div>



<h2 class="wp-block-heading">PCB Soldering And Components Placings</h2>



<figure class="wp-block-gallery aligncenter has-nested-images columns-default is-cropped wp-block-gallery-11 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/EgyptISPComponents.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="684" height="1024" data-id="1376" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/EgyptISPComponents.png?resize=684%2C1024&#038;ssl=1" alt="" class="wp-image-1376" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/EgyptISPComponents.png?resize=684%2C1024&amp;ssl=1 684w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/EgyptISPComponents.png?resize=800%2C1197&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/EgyptISPComponents.png?resize=200%2C300&amp;ssl=1 200w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/EgyptISPComponents.png?resize=1026%2C1536&amp;ssl=1 1026w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/EgyptISPComponents.png?resize=1369%2C2048&amp;ssl=1 1369w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/EgyptISPComponents.png?w=1684&amp;ssl=1 1684w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/EgyptISPComponents.png?w=1540&amp;ssl=1 1540w" sizes="auto, (max-width: 684px) 100vw, 684px" /></a></figure>



<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7095-1-scaled.jpeg?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="770" height="578" data-id="1379" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7095-1.jpeg?resize=770%2C578&#038;ssl=1" alt="An old pencil drawing of Don Quixote and Sancho Panza sitting on their horses, by Wilhelm Marstrand." class="wp-image-1379" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7095-1-scaled.jpeg?resize=1024%2C768&amp;ssl=1 1024w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7095-1-scaled.jpeg?resize=600%2C450&amp;ssl=1 600w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7095-1-scaled.jpeg?resize=800%2C600&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7095-1-scaled.jpeg?resize=300%2C225&amp;ssl=1 300w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7095-1-scaled.jpeg?resize=1536%2C1152&amp;ssl=1 1536w" sizes="auto, (max-width: 770px) 100vw, 770px" /></a></figure>
</figure>



<figure class="is-style-regular wp-block-table"><table><tbody><tr><td><strong>Part Name</strong></td><td><strong>Quantity</strong></td></tr><tr><td>ATTINY44A microcontroller chip</td><td>1</td></tr><tr><td>CER RESONATOR 20.00MHZ SMD</td><td>1</td></tr><tr><td>MINI USB2.0 5POS</td><td>1</td></tr><tr><td>6 Positions Header Connector 0.100&#8243; SMD</td><td>1</td></tr><tr><td>CAP CER 1UF 50V 10% SMD 1206</td><td>1</td></tr><tr><td>RES 10.0K OHM 1-4W 1% 1206 SMD</td><td>1</td></tr><tr><td>RES 1.0K OHM 1-4W 1% 1206 SMD</td><td>1</td></tr><tr><td>RES 499 OHM 1-4W 1% 1206 SMD</td><td>2</td></tr><tr><td>RES 100 OHM 1-4W 1% 1206 SMD</td><td>2</td></tr><tr><td>DIODE ZENER 500MW 3.3V SOD123-</td><td>2</td></tr><tr><td>LED Blue CLEAR 1206 SMD-</td><td>1</td></tr></tbody></table><figcaption class="wp-element-caption">AVR Programmer Board Components </figcaption></figure>



<h2 class="wp-block-heading">Uploading The Firmware To The Programmer</h2>



<p class="wp-block-paragraph">To upload the FabISP firmware to the FabISP AVR programmer board, we need another programmer to help us upload the firmware to our FabISP board. we will use an Arduino UNO board as an ISP programmer and we will connect it to our FabISP AVR programmer board. </p>



<p class="wp-block-paragraph">First, we need to upload the &#8220;ArduinoISP&#8221; sketch to the Arduino UNO board. You can find that sketch from <strong>files-&gt;Examples-&gt;ArduinoISP-&gt;ArduinoISP.</strong> </p>



<figure class="wp-block-gallery has-nested-images columns-default wp-block-gallery-12 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-full"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2021-03-15-at-12.40.21-PM.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="770" height="429" data-id="1392" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2021-03-15-at-12.40.21-PM.png?resize=770%2C429&#038;ssl=1" alt="" class="wp-image-1392" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2021-03-15-at-12.40.21-PM.png?w=1674&amp;ssl=1 1674w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2021-03-15-at-12.40.21-PM.png?resize=800%2C445&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2021-03-15-at-12.40.21-PM.png?resize=300%2C167&amp;ssl=1 300w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2021-03-15-at-12.40.21-PM.png?resize=1024%2C570&amp;ssl=1 1024w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2021-03-15-at-12.40.21-PM.png?resize=1536%2C855&amp;ssl=1 1536w" sizes="auto, (max-width: 770px) 100vw, 770px" /></a></figure>
</figure>



<p class="wp-block-paragraph">After uploading it to the Arduino UNO board. Let&#8217;s connect our FabISP AVR programmer(Target) with the Arduino UNO board(Programmer).</p>



<figure class="wp-block-gallery aligncenter has-nested-images columns-default wp-block-gallery-13 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/ISP_Wiring_Arduino.jpg?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="753" height="1024" data-id="1393" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/ISP_Wiring_Arduino.jpg?resize=753%2C1024&#038;ssl=1" alt="" class="wp-image-1393" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/ISP_Wiring_Arduino.jpg?resize=753%2C1024&amp;ssl=1 753w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/ISP_Wiring_Arduino.jpg?resize=800%2C1089&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/ISP_Wiring_Arduino.jpg?resize=220%2C300&amp;ssl=1 220w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/ISP_Wiring_Arduino.jpg?w=915&amp;ssl=1 915w" sizes="auto, (max-width: 753px) 100vw, 753px" /></a></figure>
</figure>



<p class="has-text-align-center wp-block-paragraph">D10(Arduino) &#8211;&gt; Reset (Target)<br>D11(Arduino) &#8211;&gt; MOSI (Target)<br>D12(Arduino) &#8211;&gt; MISO (Target)<br>D13(Arduino) &#8211;&gt; SCK (Target)<br>GND(Arduino) &#8211;&gt; GND (Target)</p>



<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-4043148098486780" crossorigin="anonymous"></script>
<ins class="adsbygoogle" style="display:block; text-align:center;" data-ad-layout="in-article" data-ad-format="fluid" data-ad-client="ca-pub-4043148098486780" data-ad-slot="7344212982"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<div style="height:50px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="wp-block-paragraph">As you can notice we are connecting a 10uf capacitor between the Reset and the GND pin of the Arduino UBO board. As you notice, we are not providing power to our target board directly from the Arduino board. We are providing power to the FabISP AVR programmer board(target) by connecting it separately to the laptop through the USB port. And don’t forget to make a common GND between the two boards by connecting the GND of the FabISP AVR programmer board(target) board to the GND of the Arduino UNO(programmer).</p>



<figure class="wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-14 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-full"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7102-scaled.jpeg?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="770" height="578" data-id="1395" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7102-scaled.jpeg?resize=770%2C578&#038;ssl=1" alt="" class="wp-image-1395" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7102-scaled.jpeg?w=2048&amp;ssl=1 2048w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7102-scaled.jpeg?resize=600%2C450&amp;ssl=1 600w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7102-scaled.jpeg?resize=800%2C600&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7102-scaled.jpeg?resize=300%2C225&amp;ssl=1 300w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7102-scaled.jpeg?resize=1024%2C768&amp;ssl=1 1024w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7102-scaled.jpeg?resize=1536%2C1152&amp;ssl=1 1536w" sizes="auto, (max-width: 770px) 100vw, 770px" /></a></figure>
</figure>



<p class="wp-block-paragraph">After connecting the Arduino UNO board(Programmer) To the FabISP board(Target) we need to compile the FabISP firmware and upload it to the FabISP board. The Arduino UNO board will act as a bridge between my Laptop and the FabISP board. Since I&#8217;m using a Mac machine, I will download <a href="https://www.obdev.at/products/crosspack/index.html" target="_blank" rel="noreferrer noopener">AVR CrossPack</a>. CrossPack is a development environment for Atmel’s AVR® microcontrollers running on Apple’s Mac OS X, similar to AVR Studio on Windows. It consists of the GNU compiler suite, a C library for the AVR, the AVRDUDE uploader, and several other useful tools.” After heading to the AVR CrossPack website, click the “Download” button and install the&nbsp;<strong>.dmg file</strong>. That’s it!</p>



<figure class="wp-block-gallery aligncenter has-nested-images columns-default is-cropped wp-block-gallery-15 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-full"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-1.08.29-AM-scaled.jpg?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="770" height="468" data-id="1400" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-1.08.29-AM-scaled.jpg?resize=770%2C468&#038;ssl=1" alt="An old pencil drawing of Don Quixote and Sancho Panza sitting on their horses, by Wilhelm Marstrand." class="wp-image-1400" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-1.08.29-AM-scaled.jpg?w=2048&amp;ssl=1 2048w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-1.08.29-AM-scaled.jpg?resize=800%2C486&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-1.08.29-AM-scaled.jpg?resize=300%2C182&amp;ssl=1 300w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-1.08.29-AM-scaled.jpg?resize=1024%2C622&amp;ssl=1 1024w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-1.08.29-AM-scaled.jpg?resize=1536%2C933&amp;ssl=1 1536w" sizes="auto, (max-width: 770px) 100vw, 770px" /></a></figure>



<figure class="wp-block-image size-full"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-1.08.46-AM-scaled.jpg?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="770" height="468" data-id="1401" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-1.08.46-AM-scaled.jpg?resize=770%2C468&#038;ssl=1" alt="An old pencil drawing of Don Quixote and Sancho Panza sitting on their horses, by Wilhelm Marstrand." class="wp-image-1401" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-1.08.46-AM-scaled.jpg?w=2048&amp;ssl=1 2048w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-1.08.46-AM-scaled.jpg?resize=800%2C486&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-1.08.46-AM-scaled.jpg?resize=300%2C182&amp;ssl=1 300w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-1.08.46-AM-scaled.jpg?resize=1024%2C622&amp;ssl=1 1024w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-1.08.46-AM-scaled.jpg?resize=1536%2C933&amp;ssl=1 1536w" sizes="auto, (max-width: 770px) 100vw, 770px" /></a></figure>
</figure>



<p class="wp-block-paragraph">Then we need to download the FabISP firmware from the link below. The&nbsp;<strong>Makefile</strong>&nbsp;which is inside the original firmware folder is ready to use with the&nbsp;<strong><em>avrisp2</em></strong>&nbsp;or the&nbsp;<strong><em>usbtiny,</em></strong>&nbsp;if you will use a different programmer from these two options it will not work. So, I made some tweaks to that&nbsp;<strong>Makefile</strong>&nbsp;to make it compatible with the&nbsp;<strong>Arduino Uno</strong>&nbsp;that I use as a programmer. And it&#8217;s now ready to use with your Arduino UNO as a programmer you can download it from the link down below.</p>



<div class="wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-fe48e5de wp-block-buttons-is-layout-flex">
<div class="wp-block-button"><a class="wp-block-button__link has-background has-text-align-center wp-element-button" href="https://makesomestuff.org/wp-content/uploads/2021/03/fabISP_mac.0.8.2_firmware.zip" style="border-radius:100px;background-color:#00a99d" target="_blank" rel="noreferrer noopener">fabisp firmware download</a></div>
</div>



<p class="wp-block-paragraph"><br>Now, we will open the terminal and navigate to the firmware folder. Then,&nbsp;<strong>clean</strong>&nbsp;any previously compiled files by writing&nbsp;<code>make clean</code>.&nbsp;Then we need to generate a new&nbsp;<strong>.hex</strong>&nbsp;that meets our new&nbsp;<strong>MakeFile</strong>. We will use the&nbsp;<code>make hex</code>&nbsp;command.</p>



<figure class="wp-block-gallery aligncenter has-nested-images columns-default is-cropped wp-block-gallery-16 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-9.02.15-PM.jpg?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="770" height="517" data-id="1406" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-9.02.15-PM.jpg?resize=770%2C517&#038;ssl=1" alt="An old pencil drawing of Don Quixote and Sancho Panza sitting on their horses, by Wilhelm Marstrand." class="wp-image-1406" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-9.02.15-PM.jpg?resize=1024%2C687&amp;ssl=1 1024w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-9.02.15-PM.jpg?resize=800%2C537&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-9.02.15-PM.jpg?resize=300%2C201&amp;ssl=1 300w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-9.02.15-PM.jpg?resize=1536%2C1030&amp;ssl=1 1536w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-9.02.15-PM.jpg?resize=270%2C180&amp;ssl=1 270w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-9.02.15-PM.jpg?w=1756&amp;ssl=1 1756w" sizes="auto, (max-width: 770px) 100vw, 770px" /></a></figure>



<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-9.05.39-PM.jpg?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="770" height="508" data-id="1407" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-9.05.39-PM.jpg?resize=770%2C508&#038;ssl=1" alt="" class="wp-image-1407" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-9.05.39-PM.jpg?resize=1024%2C675&amp;ssl=1 1024w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-9.05.39-PM.jpg?resize=800%2C528&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-9.05.39-PM.jpg?resize=300%2C198&amp;ssl=1 300w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-9.05.39-PM.jpg?resize=1536%2C1013&amp;ssl=1 1536w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-9.05.39-PM.jpg?resize=370%2C245&amp;ssl=1 370w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-26-at-9.05.39-PM.jpg?w=1786&amp;ssl=1 1786w" sizes="auto, (max-width: 770px) 100vw, 770px" /></a></figure>
</figure>



<p class="wp-block-paragraph">Then&nbsp;we need to write the <code>make fuse</code> command&nbsp;to set the fuses so the board will use the external clock. You should see a response like the one in the first image. Lastly, use the command&nbsp;<code>make program</code>&nbsp;to burn our firmware to the board to work as an AVR Programmer.</p>



<figure class="wp-block-gallery aligncenter has-nested-images columns-default is-cropped wp-block-gallery-17 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/fuses-ok.jpg?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="744" height="1024" data-id="1408" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/fuses-ok.jpg?resize=744%2C1024&#038;ssl=1" alt="An old pencil drawing of Don Quixote and Sancho Panza sitting on their horses, by Wilhelm Marstrand." class="wp-image-1408" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/fuses-ok.jpg?resize=744%2C1024&amp;ssl=1 744w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/fuses-ok.jpg?resize=800%2C1101&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/fuses-ok.jpg?resize=218%2C300&amp;ssl=1 218w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/fuses-ok.jpg?resize=1116%2C1536&amp;ssl=1 1116w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/fuses-ok.jpg?w=1364&amp;ssl=1 1364w" sizes="auto, (max-width: 744px) 100vw, 744px" /></a></figure>



<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-02-27-at-1.59.59-AM.jpg?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="744" height="1024" data-id="1409" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-02-27-at-1.59.59-AM.jpg?resize=744%2C1024&#038;ssl=1" alt="" class="wp-image-1409" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-02-27-at-1.59.59-AM.jpg?resize=744%2C1024&amp;ssl=1 744w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-02-27-at-1.59.59-AM.jpg?resize=800%2C1101&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-02-27-at-1.59.59-AM.jpg?resize=218%2C300&amp;ssl=1 218w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-02-27-at-1.59.59-AM.jpg?resize=1116%2C1536&amp;ssl=1 1116w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-02-27-at-1.59.59-AM.jpg?w=1364&amp;ssl=1 1364w" sizes="auto, (max-width: 744px) 100vw, 744px" /></a></figure>
</figure>



<h2 class="wp-block-heading">FabISP AVR Programmer Testing</h2>



<p class="wp-block-paragraph">After finishing the previous steps, your computer should now recognize the board as an ISP. Since i’m using a MAC machine, click on the Apple logo, then click in “About This MAC”, then “System Report”.</p>



<figure class="wp-block-gallery aligncenter has-nested-images columns-2 wp-block-gallery-18 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-full"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.17.34-AM.jpg?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="770" height="403" data-id="1412" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.17.34-AM.jpg?resize=770%2C403&#038;ssl=1" alt="" class="wp-image-1412" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.17.34-AM.jpg?w=1768&amp;ssl=1 1768w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.17.34-AM.jpg?resize=800%2C419&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.17.34-AM.jpg?resize=300%2C157&amp;ssl=1 300w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.17.34-AM.jpg?resize=1024%2C536&amp;ssl=1 1024w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.17.34-AM.jpg?resize=1536%2C804&amp;ssl=1 1536w" sizes="auto, (max-width: 770px) 100vw, 770px" /></a></figure>



<figure class="wp-block-image size-full"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.18.46-AM.jpg?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="770" height="434" data-id="1411" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.18.46-AM.jpg?resize=770%2C434&#038;ssl=1" alt="" class="wp-image-1411" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.18.46-AM.jpg?w=1316&amp;ssl=1 1316w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.18.46-AM.jpg?resize=800%2C451&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.18.46-AM.jpg?resize=300%2C169&amp;ssl=1 300w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.18.46-AM.jpg?resize=1024%2C577&amp;ssl=1 1024w" sizes="auto, (max-width: 770px) 100vw, 770px" /></a></figure>



<figure class="wp-block-image size-full"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.19.05-AM.jpg?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="770" height="492" data-id="1410" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.19.05-AM.jpg?resize=770%2C492&#038;ssl=1" alt="" class="wp-image-1410" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.19.05-AM.jpg?w=1396&amp;ssl=1 1396w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.19.05-AM.jpg?resize=800%2C511&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.19.05-AM.jpg?resize=300%2C192&amp;ssl=1 300w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.19.05-AM.jpg?resize=1024%2C654&amp;ssl=1 1024w" sizes="auto, (max-width: 770px) 100vw, 770px" /></a></figure>
</figure>



<p class="wp-block-paragraph">Then from the left side menu under the “Hardware” section click on “USB”. your programmer should be recognized by your computer with the name&nbsp;<strong>FabISB</strong>. Which means your AVR ISP is now ready to work!</p>



<figure class="wp-block-gallery aligncenter has-nested-images columns-default is-cropped wp-block-gallery-19 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.24.47-AM.jpg?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="770" height="564" data-id="1418" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.24.47-AM.jpg?resize=770%2C564&#038;ssl=1" alt="" class="wp-image-1418" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.24.47-AM.jpg?resize=1024%2C750&amp;ssl=1 1024w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.24.47-AM.jpg?resize=800%2C586&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.24.47-AM.jpg?resize=300%2C220&amp;ssl=1 300w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.24.47-AM.jpg?resize=1536%2C1125&amp;ssl=1 1536w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/Screen-Shot-2020-03-28-at-3.24.47-AM.jpg?w=1726&amp;ssl=1 1726w" sizes="auto, (max-width: 770px) 100vw, 770px" /></a></figure>



<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7105-scaled.jpeg?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="770" height="578" data-id="1419" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7105.jpeg?resize=770%2C578&#038;ssl=1" alt="" class="wp-image-1419" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7105-scaled.jpeg?resize=1024%2C768&amp;ssl=1 1024w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7105-scaled.jpeg?resize=600%2C450&amp;ssl=1 600w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7105-scaled.jpeg?resize=800%2C600&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7105-scaled.jpeg?resize=300%2C225&amp;ssl=1 300w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_7105-scaled.jpeg?resize=1536%2C1152&amp;ssl=1 1536w" sizes="auto, (max-width: 770px) 100vw, 770px" /></a></figure>
</figure>



<h2 class="wp-block-heading">FabISP AVR Programmer 3d Printed Enclosure</h2>



<p class="wp-block-paragraph">I designed an enclosure for the Tiny AVR programmer you can download it from the links down below. I 3d printed these parts with 20% infill without supports.</p>



<figure class="wp-block-gallery aligncenter has-nested-images columns-default is-cropped wp-block-gallery-20 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_8269-scaled.jpeg?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="770" height="578" data-id="1459" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_8269.jpeg?resize=770%2C578&#038;ssl=1" alt="" class="wp-image-1459" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_8269-scaled.jpeg?resize=1024%2C768&amp;ssl=1 1024w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_8269-scaled.jpeg?resize=600%2C450&amp;ssl=1 600w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_8269-scaled.jpeg?resize=800%2C600&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_8269-scaled.jpeg?resize=300%2C225&amp;ssl=1 300w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_8269-scaled.jpeg?resize=1536%2C1152&amp;ssl=1 1536w" sizes="auto, (max-width: 770px) 100vw, 770px" /></a></figure>



<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_8268-scaled.jpeg?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="770" height="578" data-id="1458" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_8268.jpeg?resize=770%2C578&#038;ssl=1" alt="" class="wp-image-1458" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_8268-scaled.jpeg?resize=1024%2C768&amp;ssl=1 1024w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_8268-scaled.jpeg?resize=600%2C450&amp;ssl=1 600w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_8268-scaled.jpeg?resize=800%2C600&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_8268-scaled.jpeg?resize=300%2C225&amp;ssl=1 300w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_8268-scaled.jpeg?resize=1536%2C1152&amp;ssl=1 1536w" sizes="auto, (max-width: 770px) 100vw, 770px" /></a></figure>
</figure>



<figure class="wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-21 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-large"><a href="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_8267-scaled.jpeg?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" width="770" height="578" data-id="1397" src="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_8267.jpeg?resize=770%2C578&#038;ssl=1" alt="" class="wp-image-1397" srcset="https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_8267-scaled.jpeg?resize=1024%2C768&amp;ssl=1 1024w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_8267-scaled.jpeg?resize=600%2C450&amp;ssl=1 600w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_8267-scaled.jpeg?resize=800%2C600&amp;ssl=1 800w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_8267-scaled.jpeg?resize=300%2C225&amp;ssl=1 300w, https://i0.wp.com/makesomestuff.org/wp-content/uploads/2021/03/IMG_8267-scaled.jpeg?resize=1536%2C1152&amp;ssl=1 1536w" sizes="auto, (max-width: 770px) 100vw, 770px" /></a></figure>
</figure>



<div class="wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-fe48e5de wp-block-buttons-is-layout-flex">
<div class="wp-block-button"><a class="wp-block-button__link has-background has-text-align-center wp-element-button" href="https://makesomestuff.org/wp-content/uploads/2021/03/Tiny-AVR-Programmer-STLs.zip" style="border-radius:100px;background-color:#00a99d" target="_blank" rel="noreferrer noopener">stl files download</a></div>
</div>



<div style="height:10px" aria-hidden="true" class="wp-block-spacer"></div>



<div class="wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-fe48e5de wp-block-buttons-is-layout-flex">
<div class="wp-block-button"><a class="wp-block-button__link has-background has-text-align-center wp-element-button" href="https://makesomestuff.org/wp-content/uploads/2021/03/AVR-Programmer-Case.zip" style="border-radius:100px;background-color:#00a99d" target="_blank" rel="noreferrer noopener">step file download</a></div>
</div>



<div style="height:50px" aria-hidden="true" class="wp-block-spacer"></div>



<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-4043148098486780" crossorigin="anonymous"></script>
<ins class="adsbygoogle" style="display:block; text-align:center;" data-ad-layout="in-article" data-ad-format="fluid" data-ad-client="ca-pub-4043148098486780" data-ad-slot="7344212982"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<div style="height:50px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="wp-block-paragraph">Here comes the end of the tutorial, thanks for your patience and check our upcoming tutorials on how to use this Tiny AVR programmer and how to program your own circuit boards. Don&#8217;t hesitate to drop down any question you want!</p>
<p>The post <a href="https://makesomestuff.org/how-i-made-my-avr-programmer/">How I Made My Tiny AVR Programmer</a> appeared first on <a href="https://makesomestuff.org">Make Some Stuff</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://makesomestuff.org/how-i-made-my-avr-programmer/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1337</post-id>	</item>
	</channel>
</rss>

<!--
Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/?utm_source=w3tc&utm_medium=footer_comment&utm_campaign=free_plugin

Page Caching using Disk: Enhanced 
Minified using Disk

Served from: makesomestuff.org @ 2026-06-05 01:21:27 by W3 Total Cache
-->