<?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>www.billy.gr</title>
	<atom:link href="http://www.billy.gr/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.billy.gr</link>
	<description></description>
	<lastBuildDate>Wed, 09 May 2012 20:10:57 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>AVR Dot Matrix Led</title>
		<link>http://www.billy.gr/avr-dot-matrix-led/</link>
		<comments>http://www.billy.gr/avr-dot-matrix-led/#comments</comments>
		<pubDate>Sun, 29 Apr 2012 18:01:35 +0000</pubDate>
		<dc:creator>billy</dc:creator>
		
		<guid isPermaLink="false">http://www.billy.gr/?page_id=13</guid>
		<description><![CDATA[<a class="ninja_pages_read_more"  href="http://www.billy.gr/avr-dot-matrix-led/"></a>]]></description>
			<content:encoded><![CDATA[<p>Playing with Dot matrix leds (5&#215;7) the easy way</p>
<p>Some theory first</p>
<p>A 5&#215;7 dot matrix led is what the name calls: a dot led in a 5&#215;7 matrix <img src='http://www.billy.gr/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>The pinout is the following:</p>
<p><img class="alignnone" title="5x7 pinout" src="http://www.billy.gr/wp-content/uploads/avr-dot-matrix-led/kingbright_5x7_pinout.png" alt="" width="451" height="380" /></p>
<p>Source: Kingbright</p>
<p>In order to light the led you need to provide an active high(+Volts) to his ROW (RX) and an active low(Zero or ground) to his column (CX).</p>
<p>The tricky part is when you want to have a complete character and not a pix on.</p>
<p>Pseudo code:</p>
<p>ROWS=the_leds_you_want_on<br />
C1 = 0<br />
wait some time<br />
C1= 1<br />
ROWS=the_leds_you_want_on<br />
C2 = 0<br />
wait some time<br />
C2 = 1</p>
<p>Repeat for the 5 columns.</p>
<p>Doing that with the correct frequency you will see a character.</p>
<p><strong>Parts</strong></p>
<p>1xAtmega168<br />
7x1KΩ resistors for the ROWS<br />
1x16MHz crystal<br />
2x22pF capacitors<br />
1x5x7 Common Cathode LED matrix<br />
Your bench power supply at 5V</p>
<p><strong>Connections to the display</strong><br />
COL1 PC0<br />
COL2 PC1<br />
COL3 PC2<br />
COL4 PC3<br />
COL5 PC4</p>
<p>ROW1 PD0<br />
ROW2 PD1<br />
ROW3 PD2<br />
ROW4 PD3<br />
ROW5 PD4<br />
ROW6 PD5<br />
ROW7 PD6</p>
<p>Source code: <a title="avrmatrixled source" href="http://www.billy.gr/wp-content/uploads/avr-dot-matrix-led/avrmatrix.tar.gz">avrmatrix.tar.gz</a></p>
<p>References: www.kingbright.com</p>
]]></content:encoded>
			<wfw:commentRss>http://www.billy.gr/avr-dot-matrix-led/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AVR USB Programmer</title>
		<link>http://www.billy.gr/avr-usb-programmer/</link>
		<comments>http://www.billy.gr/avr-usb-programmer/#comments</comments>
		<pubDate>Sun, 29 Apr 2012 18:00:59 +0000</pubDate>
		<dc:creator>billy</dc:creator>
		
		<guid isPermaLink="false">http://www.billy.gr/?page_id=12</guid>
		<description><![CDATA[<a class="ninja_pages_read_more"  href="http://www.billy.gr/avr-usb-programmer/"></a>]]></description>
			<content:encoded><![CDATA[<p>Due to fact the serial ports in many new computers are beeing removed + i hate to use a USB2Serial cable, it was about time to move to USB..</p>
<p>USBasp is a USB in-circuit programmer for Atmel AVR controllers. It simply consists of an ATMega48/ATMega88/ ATMega8 and a couple of passive components. The programmer uses a firmware-only USB driver so we don&#8217;t need any special USB controller is needed. (source http://www.fischl.de/usbasp/)</p>
<p>So i created a clone keeping all the part count and designators the same however changing the PCB to be easy to etched at home</p>
<p><strong>Features</strong></p>
<ul>
<li>Single Side PCB ready to be etched at home (4 jumpers)</li>
<li>No SMD components</li>
<li>Added an ISP6 connector (the original ISP10 remains)</li>
</ul>
<p><strong>Photo</strong><br />
<a href="http://www.billy.gr/wp-content/uploads/avr-usb-programmer/avr-usb-programmer.jpg"><img title="AVR USB Programmer" src="http://www.billy.gr/wp-content/uploads/avr-usb-programmer/avr-usb-programmer.jpg" alt="" width="480" height="183" /></a></p>
<p><strong>Programming</strong><br />
In order to program the programmer <img src='http://www.billy.gr/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  using avrdude work try the following</p>
<p><code><br />
avrdude -c avr910 -P com3 -b 115200 -p atmega8 -B 1 -U flash:w:usbasp.atmega8.2011-05-28.hex<br />
avrdude -c avr910 -P com3 -b 115200 -p atmega8 -B 200 -U hfuse:w:0xC9:m -U lfuse:w:0xEF:m<br />
</code></p>
<p><strong>Schematic and PCB</strong><br />
<a href="http://www.billy.gr/wp-content/uploads/avr-usb-programmer/AVR_USB_Programmer_Schematic.pdf">Schematic</a><br />
<a href="http://www.billy.gr/wp-content/uploads/avr-usb-programmer/AVR_USB_Programmer_PCB.pdf">PCB</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.billy.gr/avr-usb-programmer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MCS-51 Basic</title>
		<link>http://www.billy.gr/mcs-51-basic/</link>
		<comments>http://www.billy.gr/mcs-51-basic/#comments</comments>
		<pubDate>Sun, 04 Dec 2011 13:44:18 +0000</pubDate>
		<dc:creator>billy</dc:creator>
		
		<guid isPermaLink="false">http://www.billy.gr/?page_id=11</guid>
		<description><![CDATA[<a class="ninja_pages_read_more"  href="http://www.billy.gr/mcs-51-basic/"></a>]]></description>
			<content:encoded><![CDATA[<p>MCS-51 Basic</p>
<p>Intel MCS-51 (aka 8051) was developed by Intel in 1980.</p>
<p>Somewhere in 1985 one of Intel engineers created a BASIC interpreter for this processor<br />
and the fun just started.</p>
<p>One of my boards with the absolute minimum configuration&#8230;</p>
<ul>
<li>Atmel 89C52 (8052 clone) burned with the MCS-51 Basic</li>
<li>74LS373</li>
<li>62265 aka 32Kbytes memory. YES this is 32768 bytes of RAM</li>
</ul>
<p><img src="http://www.billy.gr/wp-content/uploads/mcs-51-basic/mcs-51-board.jpg" alt="MCS-51 Basic Board" /></p>
<p>You connected the power press space 2-3 times and the familiar basic prompt showed up</p>
<p><img src="http://www.billy.gr/wp-content/uploads/mcs-51-basic/mcs-51-basic.png" alt="MCS-51 Basic" /></p>
<p>Commands:</p>
<ul>
<li>PRINT MTOP: Printed the maximum available memory of the system (32768 bytes)</li>
<li>The second is an Easter egg from the developer of the MCS-51 basic</li>
</ul>
<p>To be continued&#8230;</p>
<p>Last update: 01/12/2011</p>
]]></content:encoded>
			<wfw:commentRss>http://www.billy.gr/mcs-51-basic/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AVR Clock</title>
		<link>http://www.billy.gr/avr-clock/</link>
		<comments>http://www.billy.gr/avr-clock/#comments</comments>
		<pubDate>Thu, 06 Jan 2011 17:29:13 +0000</pubDate>
		<dc:creator>billy</dc:creator>
		
		<guid isPermaLink="false">http://www.billy.gr/?page_id=10</guid>
		<description><![CDATA[<a class="ninja_pages_read_more"  href="http://www.billy.gr/avr-clock/"></a>]]></description>
			<content:encoded><![CDATA[<p>The project started as a timer for my PCB exposure box.<br />
However since it almost look like a clock when i was designing it i added some clock features and the AVR Clock + Timer + (maybe i will add a temperature sensor was born).</p>
<p>It is split in two or if you add the power part 3 PCB</p>
<p><strong>Display Board</strong><br />
4 Common Anode Seven Segments multiplexed<br />
IDC 14 connector to the main board<br />
2x3mm LEDs</p>
<p><strong>Logic board</strong><br />
ATmega168<br />
ICP 6 pins for the In system programming<br />
IDC 14 connector to the Display Board<br />
DS1307 with the CR2032 coin battery</p>
<p><strong>Buttons</strong><br />
3 Button for the operation<br />
Minutes Up<br />
Seconds Up<br />
Mode</p>
<p>Mode is selected beetween<br />
Clock<br />
Date<br />
Timer Set (with the Minutes UP, Seconds UP)<br />
Timer Ready (start with the Minutes UP, stop with the Second Up)</p>
<p>BOM</p>
<p>DS1302<br />
2x22pf<br />
32768 Hz Crystal<br />
ATMega168<br />
2x22pf<br />
1x16MHz Crystal</p>
<p>4xSeven Segment displays</p>
<p>Code</p>
]]></content:encoded>
			<wfw:commentRss>http://www.billy.gr/avr-clock/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AVR Programmer</title>
		<link>http://www.billy.gr/avr-programmer/</link>
		<comments>http://www.billy.gr/avr-programmer/#comments</comments>
		<pubDate>Fri, 01 May 2009 15:00:03 +0000</pubDate>
		<dc:creator>billy</dc:creator>
		
		<guid isPermaLink="false">http://www.billy.gr/?page_id=8</guid>
		<description><![CDATA[<a class="ninja_pages_read_more"  href="http://www.billy.gr/avr-programmer/"></a>]]></description>
			<content:encoded><![CDATA[<p>A low cost AVR Programmer based on AVR910.</p>
<p><strong>History</strong><br />
Somewhere back in time (i think it was 1997) Atmel started the family of AVR processors, small RISC based, easy to program and cheap.</p>
<p>The first evaluation board i used was the A96021000C (AT89/90 series flash micro controller kit). To be honest i bought it because the AT89S8252 was a 8051 core with ICP/ISP programming <img src='http://www.billy.gr/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  , OK i bought it for programming the AVR processors <img src='http://www.billy.gr/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  me laughs.</p>
<p>On the same year the Atmel released the famous AVR910 In System Programming based on a AT90S1200 (obsolete now) (<a href="http://www.atmel.com/dyn/resources/prod_documents/DOC0943.PDF" target="_blank">original atmel pdf</a>) (<a title="AVR910 pdf" href="http://www.billy.gr/wp-content/uploads/avr-programmer/AVR910.pdf" target="_blank">local copy</a>)</p>
<p>Finally the vendor himself has released all the information you needed in order to create programming boards on the cheap.</p>
<p>The years has passed, and internet grew to a huge number of sites but we still cannot find a way to manage all the information we need in order to create something. Everybody has a different opinion, a new design and so on, this is something i don&#8217;t like, but on the other hand some times i do the same (take this page as an example). That&#8217;s why you are reading this instead of some links to different sites.</p>
<p>The information should be organized and I am trying to do it with the page that you are reading.</p>
<p>It is the same reason why the arduino succeeded which is based on AVR, more on that on a different page.</p>
<p><strong>Standardization -&gt; Hardware</strong><br />
What Atmel did from the beginning was to standardize the method of ISP that they will use on their family, and the famous ISP 10 pins was born.</p>
<div class="wp-caption alignnone" style="width: 285px"><img title="ISP Connector 10 pin and 6 pin" src="http://www.billy.gr/wp-content/uploads/avr-programmer/isp_connectors_6pin_and_10pin.jpg" alt="ISP Connector 10 pin and 6 pin" width="275" height="118" /><p class="wp-caption-text">ISP Connector 10 pin and 6 pin</p></div>
<p>On the new designs they suggest that you use the <strong>6 pins</strong> version.</p>
<p><strong>Standardization -&gt; Software</strong><br />
Atmel has done it again with the release of the AVR Studio. One program to rule them all.<br />
And all means all their boards, and all their processors.</p>
<p>On the other hand again for all the linux guys like me their is <a title="avrdude" href="http://savannah.nongnu.org/projects/avrdude/" target="_blank">avrdude</a>.</p>
<p><strong>Schematics</strong><br />
The board is based on the work of <a href="http://www.klaus-leidinger.de/mp/Mikrocontroller/AVR-Prog/AVR-Programmer.html" target="_blank">Klaus Leidinger</a> with a couple of changes.</p>
<p>Change list:</p>
<ul>
<li>Redesigned using Altium Designer (not big deal).</li>
<li>Small PCB ready to be etch at home.</li>
<li>It has 2 ISP/ICP connectors, one is the standard 10 pin the other one  is the new 6 pins. (Important for me at least)</li>
<li>TTL to RS232 levels is being done using a Dallas/Maxim DS275 (Yes, it works without issues with laptops and USB2serial converters)</li>
</ul>
<p>The schematic is self explanatory.</p>
<ul>
<li>A small power supply arround  the 7805 in order to convert the input voltage to 5V.</li>
<li>2 different connectors</li>
<li>Crystal with the capacitors</li>
<li>DB9 connector</li>
<li>Power/Program LED</li>
</ul>
<p><a title="AVR Programmer Schemtic" href="http://www.billy.gr/wp-content/uploads/avr-programmer/AVR_Programmer_Schematic.pdf" target="_blank">AVR programmer schematic</a></p>
<p><strong>PCB</strong></p>
<p>The PCB dimensions are 7&#215;5 cm. It is designed in a way to be etched at home. The are only 3 jumber wires, 2 on the top and one in the bottom.</p>
<p>Jumbering the 2 pin header enables programming for the programmer from a different programmer <img src='http://www.billy.gr/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  (I am not 100% sure that this expressions exists in English, it is the best translation from the Greek language)</p>
<p><a title="AVR Programmer PCB" href="http://www.billy.gr/wp-content/uploads/avr-programmer/AVR_Programmer_PCB.pdf" target="_blank">AVR Programmer PCB</a></p>
<p><a title="AVR Programmer Compoments Placement" href="http://www.billy.gr/wp-content/uploads/avr-programmer/AVR_Programmer_Compoments_Placement.jpg" target="_blank">Compoments Placement</a></p>
<p><a title="AVR Programmer Photo" href="http://www.billy.gr/wp-content/uploads/avr-programmer/AVR_Programmer.jpg" target="_blank">AVR Programmer Photo</a></p>
<p><strong>Software</strong></p>
<p>You can use the programmer with avrdude. This is what exactly i am using. Have in mind that the baud rate is 115200 bps firmware. The firmware is from Clauss.</p>
<p>In order to make our life easier use this version of avrdude 5.11 Patch 7610<br />
<a title="AVR Programmer Compoments Placement" href="http://www.billy.gr/wp-content/uploads/avr-programmer/avrdude-5.11-Patch7610-win32-avr910.zip" target="_blank">avrdude-5.11</a> with an updated avrdude.conf for this programmer.</p>
<p>In order to program your devices you could use the following standard ISP/ICP cable. I admit i forgot to add a ZIF socket my bad.</p>
<div class="wp-caption alignnone" style="width: 240px"><img title="IDC Header 6 pin" src="http://www.billy.gr/wp-content/uploads/avr-programmer/idc_header_6pin.jpg" alt="IDC Header 6 pin" width="230" height="218" /><p class="wp-caption-text">IDC Header 6 pin</p></div>
<div class="wp-caption alignnone" style="width: 240px"><img title="IDC Header 10 pin" src="http://www.billy.gr/wp-content/uploads/avr-programmer/idc_header_10pin.jpg" alt="IDC Header 10 pin" width="230" height="230" /><p class="wp-caption-text">IDC Header 10 pin</p></div>
<p><strong>BILL OF MATERIALS</strong></p>
<table border="1" cellspacing="0" cellpadding="1" bgcolor="#c0c0c0">
<tbody>
<tr>
<td>
<table border="1" cellspacing="0" cellpadding="1" bgcolor="#c0c0c0">
<tbody>
<tr class="Header" valign="top" bgcolor="#d4d0c8">
<td align="left" width="100">Designator</td>
<td align="left" width="100">Comment</td>
<td align="left" width="100">Quantity</td>
</tr>
<tr>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">C1</span></td>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">47μF/25V</span></td>
<td align="right" bgcolor="#ffffff"><span style="font-size: 8pt;">1</span></td>
</tr>
<tr>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">C2</span></td>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">47μF/16V</span></td>
<td align="right" bgcolor="#ffffff"><span style="font-size: 8pt;">1</span></td>
</tr>
<tr>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">C3, C4</span></td>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">22pF</span></td>
<td align="right" bgcolor="#ffffff"><span style="font-size: 8pt;">2</span></td>
</tr>
<tr>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">D1</span></td>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">1N4001</span></td>
<td align="right" bgcolor="#ffffff"><span style="font-size: 8pt;">1</span></td>
</tr>
<tr>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">DB9</span></td>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">DB9 FEMALE</span></td>
<td align="right" bgcolor="#ffffff"><span style="font-size: 8pt;">1</span></td>
</tr>
<tr>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">ISP6</span></td>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">Header 3X2</span></td>
<td align="right" bgcolor="#ffffff"><span style="font-size: 8pt;">1</span></td>
</tr>
<tr>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">ISP10</span></td>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">Header 5X2</span></td>
<td align="right" bgcolor="#ffffff"><span style="font-size: 8pt;">1</span></td>
</tr>
<tr>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">J1</span></td>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">PWR2.5</span></td>
<td align="right" bgcolor="#ffffff"><span style="font-size: 8pt;">1</span></td>
</tr>
<tr>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">LED</span></td>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">DUAL COLOR LED</span></td>
<td align="right" bgcolor="#ffffff"><span style="font-size: 8pt;">1</span></td>
</tr>
<tr>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">R1</span></td>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">10K</span></td>
<td align="right" bgcolor="#ffffff"><span style="font-size: 8pt;">1</span></td>
</tr>
<tr>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">R2</span></td>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">680</span></td>
<td align="right" bgcolor="#ffffff"><span style="font-size: 8pt;">1</span></td>
</tr>
<tr>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">REG1</span></td>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">LM7805</span></td>
<td align="right" bgcolor="#ffffff"><span style="font-size: 8pt;">1</span></td>
</tr>
<tr>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">RESETBUTTON</span></td>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">Small button<br />
</span></td>
<td align="right" bgcolor="#ffffff"><span style="font-size: 8pt;">1</span></td>
</tr>
<tr>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">U1</span></td>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">ATTINY2313-20PC</span></td>
<td align="right" bgcolor="#ffffff"><span style="font-size: 8pt;">1</span></td>
</tr>
<tr>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">U2</span></td>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">DS275</span></td>
<td align="right" bgcolor="#ffffff"><span style="font-size: 8pt;">1</span></td>
</tr>
<tr>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">XTAL</span></td>
<td align="left" bgcolor="#ffffff"><span style="font-size: 8pt;">7.3728MHz</span></td>
<td align="right" bgcolor="#ffffff"><span style="font-size: 8pt;">1</span></td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<p>Total cost around 10 Euros.</p>
<p><strong>Programming the ATTINY2313</strong></p>
<p>You need a ATTINY programmed for the programmer (chicken egg problem), if nobody can program the chip for you send me an email and we will find a solution <img src='http://www.billy.gr/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Correct fuses for avrdude (example command line):</p>
<p>avrdude -p attiny2313 -u -U lfuse:w:0xed:m</p>
<p><strong>Operation</strong></p>
<ul>
<li>Power up the board. The LED should go from <span style="color: #ff0000;">RED </span>to <span style="color: #339966;">Green</span>.  If not remove the power and start troubleshooting</li>
<li>Connect the DB9 with a straight cable to your PC comm port and check with avrdude that it can speak to the board. The command line is: avrdude -c avr910 -P com1 -b 115200 (replace com1 with the correct com port)</li>
</ul>
<p>Complete ZIP file with the above</p>
<p>Plans for Version 2:</p>
<ul>
<li>Make it USB ready</li>
<li>Powered from the USB</li>
<li>Add a 20 pin ZIF socket</li>
</ul>
<p>References:</p>
<p>ATMEL original version</p>
<p>Last update: Apr 2012</p>
]]></content:encoded>
			<wfw:commentRss>http://www.billy.gr/avr-programmer/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Arduino Bootloader</title>
		<link>http://www.billy.gr/arduino-bootloader/</link>
		<comments>http://www.billy.gr/arduino-bootloader/#comments</comments>
		<pubDate>Sat, 10 Jan 2009 17:00:58 +0000</pubDate>
		<dc:creator>billy</dc:creator>
		
		<guid isPermaLink="false">http://www.billy.gr/?page_id=9</guid>
		<description><![CDATA[<a class="ninja_pages_read_more"  href="http://www.billy.gr/arduino-bootloader/"></a>]]></description>
			<content:encoded><![CDATA[<p>Arduino among others has a really nice feature&#8230; The bootloader. Once you burn it on the chip you can upload your code without the need of an external programmer.</p>
<p>I have started using it for my AVR projects but i came across on some issues so i compiled a COMPLETE list of what you need to do it, in order not to search again for the obvious&#8230;</p>
<p>Programmer used AVR910 (or compatible) with avrdude. In the avrdude commands I assume that the<br />
programmer is AVR910, COM port=COM3 and baud rate=115200. Adjust to your programmer.</p>
<p>Have in mind that you might use also -x devcode=0&#215;35 for AVR910</p>
<p><strong>ATMEGA8</strong></p>
<p>The default fuses of ATMega8 are (pdf and locally tested):<br />
High Fuse:      0xd9<br />
Low Fuse:       0xe1<br />
Lock:           0x3f</p>
<p>Programming the bootloader. Chip erase (-e maybe needed in some cases)</p>
<ul>
<li>Unlock the bootloader (TEST: try with -e)</li>
</ul>
<p><code>avrdude -c avr910 -P com3 -b 115200 -p atmega8 -U lock:w:0xff:m</code><br />
(fails with avrdude: verification error, first mismatch at byte 0&#215;0000 0xff != 0x3f)</p>
<ul>
<li>Program the fuses</li>
</ul>
<p><code>avrdude -c avr910 -P com3 -b 115200 -p atmega8 -U hfuse:w:0xca:m -U lfuse:w:0xdf:m</code></p>
<ul>
<li>Burn the bootloader (TEST: try with -D disable auto erase)</li>
</ul>
<p><code>avrdude -c avr910 -P com3 -b 115200 -p atmega8 -U flash:w:ATmegaBOOT.hex</code></p>
<ul>
<li>Lock the bootloader</li>
</ul>
<p><code>avrdude -c avr910 -P com3 -b 115200 -p atmega8 -U lock:w:0xcf:m</code><br />
(fails with avrdude: verification error, first mismatch at byte 0&#215;0000 0xcf != 0x0f)</p>
<p>But it works&#8230;.</p>
<p><strong>ATMEGA168</strong></p>
<p>The default fuses of ATMega168 are (pdf and locally tested):<br />
High Fuse:      0xd9<br />
Low Fuse:       0xe1<br />
Lock:           0x3f</p>
<p>Programming the bootloader. Chip erase (-e maybe needed in some cases)</p>
<ul>
<li>Unlock the bootloader</li>
</ul>
<p><code>avrdude -c avr910 -P com3 -b 115200 -p atmega168 -U lock:w:0x3f:m</code></p>
<ul>
<li>Program the fuses</li>
</ul>
<p><code>avrdude -c avr910 -P com3 -b 115200 -p atmega168 -U hfuse:w:0xdd:m -U lfuse:w:0xff:m -U efuse:w:0x00:m</code></p>
<ul>
<li>Burn the bootloader</li>
</ul>
<p><code>avrdude -c avr910 -P com3 -b 115200 -p atmega168 -U flash:w:ATmegaBOOT_168_ng.hex</code></p>
<ul>
<li>Lock the bootloader</li>
</ul>
<p><code>avrdude -c avr910 -P com3 -b 115200 -p atmega168 -U lock:w:0x0f:m</code></p>
<p>And now the good part:</p>
<p>Once you burn the bootloader to a chip you can use this excellent program to upload any hex file to your ATmega with <a title="Arduino uploader" href="http://www.ngcoders.com/downloads/arduino-hex-uploader-and-programmer">Arduino uploader</a></p>
<p><strong>References</strong></p>
<ul>
<li><a href="http://www.arduino.cc/en/Tutorial/Bootloader">http://www.arduino.cc/en/Tutorial/Bootloader</a></li>
<li><a href="http://arduino.cc/en/Hacking/Bootloader">http://arduino.cc/en/Hacking/Bootloader</a></li>
<li><a href="http://arduino.cc/en/Hacking/Bootloader?from=Main.Bootloader">http://arduino.cc/en/Hacking/Bootloader?from=Main.Bootloader</a></li>
<li>(settings based on<a href="http://arduino.cc/en/Hacking/Bootloader?from=Main.Bootloader"> http://arduino.cc/en/Hacking/Bootloader?from=Main.Bootloader</a> 09/01/2009)</li>
</ul>
<p>Updated: April 2012</p>
]]></content:encoded>
			<wfw:commentRss>http://www.billy.gr/arduino-bootloader/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>divx howto</title>
		<link>http://www.billy.gr/divx-howto/</link>
		<comments>http://www.billy.gr/divx-howto/#comments</comments>
		<pubDate>Thu, 01 May 2008 19:00:43 +0000</pubDate>
		<dc:creator>billy</dc:creator>
		
		<guid isPermaLink="false">http://www.billy.gr/?page_id=6</guid>
		<description><![CDATA[<a class="ninja_pages_read_more"  href="http://www.billy.gr/divx-howto/"></a>]]></description>
			<content:encoded><![CDATA[<p><strong>My DivX HOWTO (in 10 simple steps)</strong></p>
<p>I desided to make my own divx movies and i realised that i must have a couple of masters and a Phd to do so <img src='http://www.billy.gr/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> )</p>
<p>So i desided to write my own howto.</p>
<p>What you will need:</p>
<ul>
<li><a href="http://www.divx.com/">DivX Codec (use 5.2.1)</a></li>
<li>MP3 Codec</li>
<li>DVD2AVI</li>
<li>vfapi-converter</li>
<li><a href="http://www.virtualdub.org/">VirtualDub</a></li>
<li>DVD Decrypter</li>
</ul>
<p><strong>HOWTO</strong></p>
<p>&nbsp;</p>
<p><strong>1) Rip it with DVD Decrypter (about 10-15 minutes).</strong></p>
<p><strong>2) DVD2AVI (VOB to AVI convert)</strong></p>
<p>Open the first vob. It will automatically load the others.<br />
Do a preview (Press F5) and write down the file info.</p>
<p>Options: Audio &#8211;&gt; Track Number 1<br />
Channel Format &#8211;&gt; Autoselect<br />
Dolby Digital &#8211;&gt; Off<br />
MPEG Audio &#8211;&gt; Off<br />
Use only FILM95 Option if FILM95 is available in preview.<br />
Save the project (about 5 minutes).</p>
<p><strong>3) Audio (ac3tool)</strong></p>
<p>Open the dvd2avi file created on step 2. Lunch Analysis. (about 30 minutes)<br />
On the AC3 to WAV tab change the &#8220;Main level&#8221; to +10db (recommended)<br />
Process&#8230;<br />
<strong>4) Create the avi file for Virtual Dub (vfapi-converter)</strong></p>
<p>Open the DVD2AVI file from step 2 and press convert.</p>
<p><strong>5) Get the subtitles (Virtual Dub + vobsub filter).</strong></p>
<p>Open Virtual Dub.<br />
From the filters menu add the vobsub filter.<br />
Open the ifo file of the movie from step 1.<br />
Select the subtitles you want. Press &#8220;i have stripped the source files and cross my fingers&#8221;<br />
Fade in/out recommended 200ms<br />
Select smooth image<br />
<strong>6) Calculate the proper bitrate to fit on 2x74min CD (Advance Bitrate Calculator).</strong></p>
<p>&nbsp;</p>
<p><strong>7) Divx Compression + Resize + Subtitles (VirtualDub + vobsub + null transform + resize filter)</strong></p>
<p>Crop the black bars.<br />
Resize to 720&#215;304.</p>
<p><strong> <img src='http://www.billy.gr/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' /> VirtualDub (Full process using mode for audio and video)</strong></p>
<p><strong>9) Split the AVI</strong></p>
<p>Either use Virtual Dub or avi split That&#8217;s it. <strong>More details soon. Need help ? Mail me</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.billy.gr/divx-howto/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hardware</title>
		<link>http://www.billy.gr/hardware/</link>
		<comments>http://www.billy.gr/hardware/#comments</comments>
		<pubDate>Thu, 01 May 2008 19:00:31 +0000</pubDate>
		<dc:creator>billy</dc:creator>
		
		<guid isPermaLink="false">http://www.billy.gr/?page_id=3</guid>
		<description><![CDATA[<a class="ninja_pages_read_more"  href="http://www.billy.gr/hardware/"></a>]]></description>
			<content:encoded><![CDATA[<p>Visit the <a title="Projects" href="http://www.billy.gr/projects/">projects </a>page</p>
<p><strong>Dallas DS2250/DS5000 Evaluation Kit</strong></p>
<p>Dallas Evaluation Kit Version 2.0. This kit is a MUST for everybody you wants to start working with the 8051 microcontroller.</p>
<p><strong>Specifications</strong></p>
<ul>
<li>8051 core at 11.0592 MHz (16 MHz max.)</li>
<li>32KB of NVRAM</li>
<li>32 I/O lines</li>
<li>LCD Connector with contrast abjust</li>
<li>2xRS232 Interface. One connected to the DS2250</li>
<li>Eurocard Connector (dimensions 10&#215;15) with 96DIN connector on board</li>
</ul>
<p><strong>PDFs and documentation for the Dallas DS2250 Evaluation Kit</strong><br />
You can also download the datasheets for the<br />
<a href="http://www.billy.gr/pdfs/DS2250T.pdf">DS2250</a>,<a href="http://www.billy.gr/pdfs/DS275.pdf">DS275</a> and for the <a href="http://www.billy.gr/pdfs/MAX220-MAX249.pdf">MAX232</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.billy.gr/hardware/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Home Network</title>
		<link>http://www.billy.gr/home-network/</link>
		<comments>http://www.billy.gr/home-network/#comments</comments>
		<pubDate>Thu, 01 May 2008 18:00:22 +0000</pubDate>
		<dc:creator>billy</dc:creator>
		
		<guid isPermaLink="false">http://www.billy.gr/?page_id=5</guid>
		<description><![CDATA[<a class="ninja_pages_read_more"  href="http://www.billy.gr/home-network/"></a>]]></description>
			<content:encoded><![CDATA[<p>I spend a lot of time working home. To be honest this is the first i do after i finish my work at my company.</p>
<p>It used to be a Cisco powered Home (well almost) <img src='http://www.billy.gr/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ))</p>
<p>I have setup a home network and i am always trying to improve it in order to do my life easier.</p>
<p>Here is my full equipment:</p>
<ul>
<li>PC Zotac ION</li>
<li>PC Intel ATOM D945GGLF</li>
<li>Toshiba Pro U300</li>
<li>SparcStation 5</li>
<li>XBOX 360</li>
<li>A Cisco 1600 Router</li>
<li>Lafonera 2.0n</li>
<li>Lafonera</li>
<li>LinkSys WRT54GS Access Point</li>
<li>APC SmartUPS 700VA</li>
</ul>
<p><strong>Full Specifications</strong></p>
<ul>
</ul>
<ul>
<li>Linksys WRT54GS (the gateway)</li>
</ul>
<p>DD-WRT 2.4 (i used to pay for the Sveasoft Talisman=&gt; not any more)</p>
<ul>
</ul>
<ul>
<li>PC Intel D945GCLF (the fileserver)</li>
</ul>
<p>1 GB RAM<br />
2x80GB (RAID1 for the OS)<br />
2x1TB GB SATA HDD<br />
Powered by Debian 6.0 (tested also with Windows 7. Experience index 2.1 <img src='http://www.billy.gr/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<ul>
</ul>
<ul>
<li>PC Zotac ION</li>
</ul>
<p>4GB RAM<br />
1x250GB SATA HDD<br />
Powered by Windows 7</p>
<ul>
</ul>
<ul>
<li>Toshiba U300 Laptop</li>
</ul>
<p>3 GB RAM<br />
250 GB SATA HDD<br />
Running Windows 7</p>
<ul>
</ul>
<ul>
<li>Cisco 1603</li>
</ul>
<p>IOS Image c1600-k8osy-l.122-5.bin<br />
16MB RAM<br />
16MB Flash</p>
<ul>
</ul>
<ul>
<li>SUN SparcStation 5</li>
</ul>
<p>microSparc running at 70 MHz<br />
64 MB RAM<br />
9 GB HDD<br />
Plextor 32x CDROM in an external SCSI cabinet<br />
Powered by Debian 3.1 SPARC</p>
]]></content:encoded>
			<wfw:commentRss>http://www.billy.gr/home-network/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Projects</title>
		<link>http://www.billy.gr/projects/</link>
		<comments>http://www.billy.gr/projects/#comments</comments>
		<pubDate>Thu, 01 May 2008 18:00:08 +0000</pubDate>
		<dc:creator>billy</dc:creator>
		
		<guid isPermaLink="false">http://www.billy.gr/?page_id=7</guid>
		<description><![CDATA[<a class="ninja_pages_read_more"  href="http://www.billy.gr/projects/"></a>]]></description>
			<content:encoded><![CDATA[<p>Projects page</p>
<p><strong>AVR based (completed)</strong></p>
<ul>
<li><a title="AVR Programmer" href="http://www.billy.gr/avr-programmer/">AVR Programmer</a> an AVR910 clone</li>
<li><a title="AVR USB Programmer" href="http://www.billy.gr/avr-usb-programmer/">AVR USB Programmer</a> an USPasp clone</li>
<li><a title="AVR Clock" href="http://www.billy.gr/avr-clock/">AVR Clock/Timer</a> an AVR based clock/timer (primary use my UV exposure box)</li>
</ul>
<p><strong>Running projects (TODO)</strong></p>
<ul>
<li>AVR Based LED Dice</li>
<li>AVR Stepper driver</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.billy.gr/projects/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

