<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;DE8ESXc8fCp7ImA9WhFSE0Q.&quot;"><id>tag:blogger.com,1999:blog-1597214980833186328</id><updated>2013-06-16T08:33:28.974-07:00</updated><category term="ATmega" /><category term="arduino" /><category term="serial" /><category term="Calculator" /><category term="AVRISP-U" /><category term="programming bug" /><category term="Interrupts" /><category term="Kanda" /><category term="C" /><category term="DIY" /><category term="debugger" /><category term="handbook" /><category term="Exam" /><category term="FE" /><category term="Fundamentals of Engineering" /><category term="microcontroller" /><category term="socket" /><category term="8515" /><category term="infrastructure" /><category term="palette" /><category term="ti36x pro" /><category term="GIMP" /><category term="EIT" /><category term="layout" /><category term="AVR" /><category term="LED" /><category term="ncees" /><category term="development board" /><category term="STK200" /><category term="Texas Instruments" /><title>Nick Weil's Blog</title><subtitle type="html">A place for my various projects and interests...</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://nickweil.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://nickweil.blogspot.com/" /><author><name>Nick Weil</name><uri>https://plus.google.com/106576647283267943602</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-9mC581-2b38/AAAAAAAAAAI/AAAAAAAAAks/KJhs9Q44Tqk/s512-c/photo.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>17</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/blogspot/xwXJM" /><feedburner:info uri="blogspot/xwxjm" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;DEENQHc6fCp7ImA9WhVVFEg.&quot;"><id>tag:blogger.com,1999:blog-1597214980833186328.post-7800353025236923609</id><published>2012-05-07T22:58:00.000-07:00</published><updated>2012-05-07T22:58:11.914-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-05-07T22:58:11.914-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="DIY" /><title>DIY: Custom Graduation Photo Cards</title><content type="html">&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-EKvC7e3CxAg/T4MsjSNGEDI/AAAAAAAAAW8/UD6TCvqqRTw/s1600/card_in_envelope.JPG" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img alt="Card in envelope" border="0" height="300" src="http://4.bp.blogspot.com/-EKvC7e3CxAg/T4MsjSNGEDI/AAAAAAAAAW8/UD6TCvqqRTw/s400/card_in_envelope.JPG" title="Custom Graduation Photo Card" width="400" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;The final result of my DIY photo card adventure&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
Since I'm graduating this May, I decided to send out a special graduation thank you note to my friends and family. I started using the&amp;nbsp;&lt;a href="http://photo.walgreens.com/walgreens/fe/l=en_US/p/store/facettedbrowser/FacetBrowser/bk=Cards/merch_oid=16354/facetFilters=product_type_xfcpt_card-card_type_xfcct_photo_card_xfcPhoto+Cards/stl=Flat+Photo+Cards/category=all_categories?tab=photo_cards_PhotoCards"&gt;photo card creator on the Walgreens website&lt;/a&gt;&amp;nbsp;but quickly got frustrated with the lack of customization tools. Specifically, I wanted custom fonts and also to change font colors within a text box.&amp;nbsp;Being an incurable DIYer, I thought to myself: &lt;b&gt;"I can make this myself in GIMP and customize it all I want!"&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;What size card? &lt;/i&gt;I started with the assumption that the card would be 5x7 inches, but I changed my mind when I realized I only had letter envelopes (4 1/8 x 9 1/2) which wouldn't fit a 5x7 card. So, I switched to a &lt;b&gt;4x8 inch card&lt;/b&gt; which would fit in a letter envelope. Ultimately, the &lt;a href="http://www.artscow.com/"&gt;website where I ordered my prints&lt;/a&gt; supplied me with envelopes for free so this was all for naught, but I'm still glad I went with the 4x8 format.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;What resolution? &lt;/i&gt;For photo prints, you need a pretty high resolution for the photo to look good. For my 4x8 card, the GIMP "canvas" was &lt;b&gt;2880x1440 pixels&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;What design?&lt;/i&gt;&amp;nbsp;I came up with a &lt;b&gt;template&lt;/b&gt; for my card:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-c4iCqLs9akE/T4Ma3OA5E9I/AAAAAAAAAWs/HVSpMpA5j8A/s1600/gradcard_for_blog.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="160" src="http://2.bp.blogspot.com/-c4iCqLs9akE/T4Ma3OA5E9I/AAAAAAAAAWs/HVSpMpA5j8A/s320/gradcard_for_blog.jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;General template for graduation photo card (2880x1440 px)&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
In general, pictures on the right and text on the left. I thought that four pictures of myself looked a bit vain, so I made the smallest frame an "object" picture. For my object, I used a cool picture of the golden gate bridge. The &amp;nbsp;outside black border is 20 pixels and the inside "framing" is 10 pixels.&lt;br /&gt;
&lt;br /&gt;
You might notice a blank black area on the far left side which seems unused. This is a actually a buffer area to make sure the text won't get cut off during printing. The size of buffer you need depends on who you're ordering prints from. With pictures, having the edges cut off is not not the worst thing in the world, but text becomes unreadable with missing letters. I would say a good rule of thumb is to &lt;b&gt;reserve 6% of the total width and height for a buffer&lt;/b&gt;. That is, 3% of the total width reserved on both the left and right and 3% of the total height reserved on both the top and bottom. Trust me, it's better to be safe than sorry (see below):&lt;br /&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-OBmCVX2WUOQ/T4MnvuZ3CeI/AAAAAAAAAW0/Ij0Uh1g5FvQ/s1600/Cut_off_text.JPG" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="240" src="http://4.bp.blogspot.com/-OBmCVX2WUOQ/T4MnvuZ3CeI/AAAAAAAAAW0/Ij0Uh1g5FvQ/s320/Cut_off_text.JPG" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Edge text cut off on prints=FAIL!&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;i&gt;How to put it together? &lt;/i&gt;I'm no GIMP expert, so perhaps someone can offer a better way to do it. But I simply created a black "frame" layer with transparent squares at the photo locations. This part took a bit of planning and some back-of-a-napkin calculations, but it wasn't too hard. As a sidenote, I found &lt;b&gt;"Guides" to be especially helpful&lt;/b&gt; to line things up appropriately. Try selecting one of the transparent squares and going to Image&amp;gt;Guides&amp;gt;New Guides From Selection. This will create four Guides; one for each side of the square.&lt;br /&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-TP2KXGgE5p8/T6iyBBbTlZI/AAAAAAAAAY4/yys_GO9xkok/s1600/gimptastic.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="219" src="http://3.bp.blogspot.com/-TP2KXGgE5p8/T6iyBBbTlZI/AAAAAAAAAY4/yys_GO9xkok/s320/gimptastic.jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;GIMP-tastic photo editing fun&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
Once you have the frame completed and the pictures you want picked out, &lt;b&gt;open the pictures as new layers&lt;/b&gt;. Then you need to adjust the pictures to the right size and frame them in the square the way you want.&lt;br /&gt;
&lt;br /&gt;
The main paragraph of text is simple - just use the text tool. One tip: &lt;b&gt;make the fancy text stuff on a separate GIMP canvas&lt;/b&gt; and import the final product into your card canvas. I did that for the "Thank You" header and the major and school overlay at the bottom.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;Where to print it? &lt;/i&gt;It was surprisingly hard to find a site that will make 4x8 custom prints. I finally stumbled upon &lt;a href="http://www.artscow.com/photo-gifts/collage/photo-cards-328"&gt;&lt;b&gt;artscow.com&lt;/b&gt;&lt;/a&gt; and ordered from them. They have an elaborate client card designer, but all I did was upload my image, place it on a card and select "Apply to All." I ended up ordering 30 cards and it cost about $15 including shipping.&lt;br /&gt;
&lt;br /&gt;
I&amp;nbsp;received my package in the mail about &lt;b&gt;2 weeks later&lt;/b&gt;, sent from an address in Hong Kong. The package included all of my cards, nicely wrapped and 30 envelopes to send my cards in. I was very satisfied with the whole process.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;Did it save money?&lt;/i&gt;&amp;nbsp;&lt;b&gt;No.&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;Did it save time?&lt;/i&gt; &lt;b&gt;No.&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;Was it worth it?&lt;/i&gt; &lt;b&gt;Yes.&lt;/b&gt;&lt;br /&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-lqN_PtAPiFs/T4NLd4TYJAI/AAAAAAAAAXE/SeB685sb4Mo/s1600/sideways_card_and_envelope.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="300" src="http://4.bp.blogspot.com/-lqN_PtAPiFs/T4NLd4TYJAI/AAAAAAAAAXE/SeB685sb4Mo/s400/sideways_card_and_envelope.jpg" width="400" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Another view of the final product&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/xwXJM/~4/m89g8QVl78U" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nickweil.blogspot.com/feeds/7800353025236923609/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://nickweil.blogspot.com/2012/05/diy-custom-graduation-photo-cards.html#comment-form" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/7800353025236923609?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/7800353025236923609?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/xwXJM/~3/m89g8QVl78U/diy-custom-graduation-photo-cards.html" title="DIY: Custom Graduation Photo Cards" /><author><name>Nick Weil</name><uri>https://plus.google.com/106576647283267943602</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-9mC581-2b38/AAAAAAAAAAI/AAAAAAAAAks/KJhs9Q44Tqk/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-EKvC7e3CxAg/T4MsjSNGEDI/AAAAAAAAAW8/UD6TCvqqRTw/s72-c/card_in_envelope.JPG" height="72" width="72" /><thr:total>4</thr:total><feedburner:origLink>http://nickweil.blogspot.com/2012/05/diy-custom-graduation-photo-cards.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUYBQXw4cCp7ImA9WhVWGUo.&quot;"><id>tag:blogger.com,1999:blog-1597214980833186328.post-5381486545395740599</id><published>2012-05-02T08:39:00.000-07:00</published><updated>2012-05-02T08:39:10.238-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-05-02T08:39:10.238-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="infrastructure" /><title>Interesting Infrastructure: Caltrans and Music Notes</title><content type="html">&lt;div class="separator" style="clear: both; text-align: left;"&gt;
These photos are from Cotati, CA in the northern bay area. As you can see, Caltrans incorporated a music note motif into their new overpass project. Since Cotati is sort of a hippie town, and also home of an annual Accordian Festival, it fits the local vibe.&amp;nbsp;The motif has a treble clef sequence and a bass clef sequence, and they appear on the sound walls, the retaining walls and on the actual overpass. I alternate between thinking this is really cool and thinking it is a huge waste of money, but here are the pics anyway:&lt;/div&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href="http://2.bp.blogspot.com/-B89B9hAxQnk/T5F6av040hI/AAAAAAAAAXo/bK7lDwn72p4/s1600/varied+021+(Medium).jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="240" src="http://2.bp.blogspot.com/-B89B9hAxQnk/T5F6av040hI/AAAAAAAAAXo/bK7lDwn72p4/s320/varied+021+(Medium).jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption"&gt;&lt;span style="font-size: x-small;"&gt;Sound wall in final stages of project&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href="http://2.bp.blogspot.com/-1ZeIg9Sk8OE/T5F6Z184P_I/AAAAAAAAAXg/a8tectNAfaY/s1600/varied+009+(Medium).jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="240" src="http://2.bp.blogspot.com/-1ZeIg9Sk8OE/T5F6Z184P_I/AAAAAAAAAXg/a8tectNAfaY/s320/varied+009+(Medium).jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption"&gt;&lt;span style="font-size: x-small;"&gt;Overpass with alternating design&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-S_k8bX4UhB0/T5F6YatAwJI/AAAAAAAAAXQ/Jxp2R9ly054/s1600/varied+001+(Medium).jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="240" src="http://4.bp.blogspot.com/-S_k8bX4UhB0/T5F6YatAwJI/AAAAAAAAAXQ/Jxp2R9ly054/s320/varied+001+(Medium).jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;span style="font-size: x-small;"&gt;Retaining wall with treble clef design&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-zDiuf_QYnM8/T5F6ZRCFMYI/AAAAAAAAAXY/EbILREmA6lY/s1600/varied+005+(Medium).jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="240" src="http://1.bp.blogspot.com/-zDiuf_QYnM8/T5F6ZRCFMYI/AAAAAAAAAXY/EbILREmA6lY/s320/varied+005+(Medium).jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Retaining wall with bass clef design&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-6ruXJrWmpdA/T5GApe3mimI/AAAAAAAAAXw/gQxDygXMWmo/s1600/varied+024+(Medium).jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="240" src="http://1.bp.blogspot.com/-6ruXJrWmpdA/T5GApe3mimI/AAAAAAAAAXw/gQxDygXMWmo/s320/varied+024+(Medium).jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Sound wall with temporary frames to hold design in place&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
The local Press Democrat's Road Warrior blog investigated this and reported:&lt;br /&gt;
"...Leah Haygood of the landscape design firm for the 101 project, Haygood &amp;amp; Associates in Albany, composed the song melody.&amp;nbsp;Caltrans spokesman Bob Haus said the song is called 'Reaching For Center … Reaching For You.' Haygood couldn’t be reached for comment.&amp;nbsp;But once on paper, not all of the notes worked visually, so some were moved up or down until they did, he said."&lt;br /&gt;
&lt;br /&gt;
Note that neither "melody" has a time or key signature, so it is impossible to accurately "play" the notes. But we can make some&amp;nbsp;assumptions&amp;nbsp;and try to&amp;nbsp;reconstruct&amp;nbsp;what it is supposed to sound like. If we assume it is has a 4/4 time signature, C key signature and overlay the treble clef and bass clef, it would look something like this:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-EJ1vQMuwzbc/T5GLwLTTmRI/AAAAAAAAAX4/16_L3-zpvXY/s1600/caltrans+music.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="80" src="http://3.bp.blogspot.com/-EJ1vQMuwzbc/T5GLwLTTmRI/AAAAAAAAAX4/16_L3-zpvXY/s400/caltrans+music.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
And at 90 BPM, it would sound like:&lt;br /&gt;
&lt;iframe frameborder="no" height="166" scrolling="no" src="http://w.soundcloud.com/player/?url=http%3A%2F%2Fapi.soundcloud.com%2Ftracks%2F43790446%3Fsecret_token%3Ds-qj9GC&amp;amp;show_artwork=false&amp;amp;secret_url=true" width="100%"&gt;&lt;/iframe&gt;
Which does not sound quite right. Clearly there is still more work to do reconstructing this melody.&lt;br /&gt;
&lt;br /&gt;
LINKS:&lt;br /&gt;
Article with more info about the project:&lt;br /&gt;
&lt;a href="http://roadwarrior.blogs.pressdemocrat.com/13483/cotatis-musical-sound-walls-overpass/"&gt;http://roadwarrior.blogs.pressdemocrat.com/13483/cotatis-musical-sound-walls-overpass/&lt;/a&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/xwXJM/~4/LVlFHc9T6a4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nickweil.blogspot.com/feeds/5381486545395740599/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://nickweil.blogspot.com/2012/05/interesting-infrastructure-caltrans-and.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/5381486545395740599?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/5381486545395740599?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/xwXJM/~3/LVlFHc9T6a4/interesting-infrastructure-caltrans-and.html" title="Interesting Infrastructure: Caltrans and Music Notes" /><author><name>Nick Weil</name><uri>https://plus.google.com/106576647283267943602</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-9mC581-2b38/AAAAAAAAAAI/AAAAAAAAAks/KJhs9Q44Tqk/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-B89B9hAxQnk/T5F6av040hI/AAAAAAAAAXo/bK7lDwn72p4/s72-c/varied+021+(Medium).jpg" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://nickweil.blogspot.com/2012/05/interesting-infrastructure-caltrans-and.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkAASHw7cSp7ImA9WhVQEUo.&quot;"><id>tag:blogger.com,1999:blog-1597214980833186328.post-2962088454035469074</id><published>2012-03-30T23:19:00.001-07:00</published><updated>2012-03-30T23:19:09.209-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-03-30T23:19:09.209-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="palette" /><category scheme="http://www.blogger.com/atom/ns#" term="GIMP" /><title>GIMP: Adding New .gpl Palette</title><content type="html">Palettes are very useful if you want to have a consistent color scheme. I find that having good colors readily available helps in the creative process as well. You can find great user-created palettes for free at &lt;a href="http://kuler.adobe.com/"&gt;kuler.com (link)&lt;/a&gt; and &lt;a href="http://www.colourlovers.com/"&gt;colourlovers.com (link)&lt;/a&gt;; using these palettes can give your project a very professional look.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;table cellpadding="0" cellspacing="0" class="tr-caption-container" style="clear: left; float: left; margin-bottom: 1em; text-align: left;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;br /&gt;
&lt;a href="http://1.bp.blogspot.com/-w0uDjgVKWx4/TxdWkCbFn9I/AAAAAAAAAOY/wESSKueFzHo/s1600/gimp_scshot_pal_only.jpg" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="320" src="http://1.bp.blogspot.com/-w0uDjgVKWx4/TxdWkCbFn9I/AAAAAAAAAOY/wESSKueFzHo/s320/gimp_scshot_pal_only.jpg" width="221" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Palette dialog&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
The easiest way to import a palette is to simply drop the file in the the file system GIMP created when it was installed. On Windows XP, the file would be: C:\Documents and Settings\&amp;lt;fill in user name&amp;gt;\.gimp-2.6\palettes. On Mac OS X, it would be: Users/homefolder/library/applicationsupport/ GIMP/palettes. I am not familiar with the location on other operating systems but if you look around a bit it should be obvious. Note that the file must have the file the extension .gpl to work. Also, you must restart GIMP for the palette to show up.&lt;br /&gt;
&lt;br /&gt;
An alternate way to add palettes is to use the user interface. Since this does not depend on the file structure, it should be valid for all operating systems. From the image window, go to Windows&amp;gt;Dockable Dialogs&amp;gt;Palettes and click to open the Palettes dialog. On the Palettes dialog, click on the little arrow on the top right. This brings up a menu where you go Palettes Menu&amp;gt;Import Palette. From here, you simply select "palette file" as the source and browse to the desired .gpl file.&lt;br /&gt;
&lt;br /&gt;
FYI, I used GIMP 2.6.11 for this tutorial.&lt;br /&gt;
&lt;br /&gt;
&lt;table cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-XHE3DWCPouU/TxdXWiZs7dI/AAAAAAAAAOg/7Uaa6Cx-sXQ/s1600/imp_pal_dlg_only.jpg" imageanchor="1" style="clear: left; margin-bottom: 1em; margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="260" src="http://2.bp.blogspot.com/-XHE3DWCPouU/TxdXWiZs7dI/AAAAAAAAAOg/7Uaa6Cx-sXQ/s320/imp_pal_dlg_only.jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Import New Palette dialog&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/xwXJM/~4/PwduBdXMMRw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nickweil.blogspot.com/feeds/2962088454035469074/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://nickweil.blogspot.com/2012/03/gimp-adding-new-gpl-palette.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/2962088454035469074?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/2962088454035469074?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/xwXJM/~3/PwduBdXMMRw/gimp-adding-new-gpl-palette.html" title="GIMP: Adding New .gpl Palette" /><author><name>Nick Weil</name><uri>https://plus.google.com/106576647283267943602</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-9mC581-2b38/AAAAAAAAAAI/AAAAAAAAAks/KJhs9Q44Tqk/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-w0uDjgVKWx4/TxdWkCbFn9I/AAAAAAAAAOY/wESSKueFzHo/s72-c/gimp_scshot_pal_only.jpg" height="72" width="72" /><thr:total>2</thr:total><feedburner:origLink>http://nickweil.blogspot.com/2012/03/gimp-adding-new-gpl-palette.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CE8CQXw9fip7ImA9WhBSGUk.&quot;"><id>tag:blogger.com,1999:blog-1597214980833186328.post-7691504291759176364</id><published>2012-03-21T15:01:00.000-07:00</published><updated>2013-02-26T21:27:40.266-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-02-26T21:27:40.266-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="arduino" /><category scheme="http://www.blogger.com/atom/ns#" term="serial" /><title>Arduino: Sending Hex Bytes to Serial Devices</title><content type="html">I have been working on a project which involves an Arduino communicating serially with an LCD display device. Through a lot of trial and error, I finally figured out that when you want to send a HEX-encoded byte from the Arduino, you need to use the Serial.write() command rather than the Serial.print() command. The Serial.print() command works find when you are sending an ASCII byte but it will not work when you try to send a HEX byte. The right and wrong ways are below:&lt;br /&gt;
&lt;pre class="prettyprint"&gt;//Serial.print('U');  &amp;lt;----right (ASCII)
//Serial.write('U');  &amp;lt;----also fine (ASCII)
//Serial.print(0x55); &amp;lt;----WRONG! (HEX)
//Serial.write(0x55); &amp;lt;----right (HEX)
&lt;/pre&gt;
&lt;br /&gt;
LINKS:&lt;br /&gt;
Similar problem and solution:&amp;nbsp;&lt;a href="http://www.arduino.cc/playground/Learning/SparkFunSerLCD"&gt;http://www.arduino.cc/playground/Learning/SparkFunSerLCD&lt;/a&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/xwXJM/~4/W0ZIzt_QqvI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nickweil.blogspot.com/feeds/7691504291759176364/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://nickweil.blogspot.com/2012/03/arduino-sending-hex-bytes-to-serial.html#comment-form" title="7 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/7691504291759176364?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/7691504291759176364?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/xwXJM/~3/W0ZIzt_QqvI/arduino-sending-hex-bytes-to-serial.html" title="Arduino: Sending Hex Bytes to Serial Devices" /><author><name>Nick Weil</name><uri>https://plus.google.com/106576647283267943602</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-9mC581-2b38/AAAAAAAAAAI/AAAAAAAAAks/KJhs9Q44Tqk/s512-c/photo.jpg" /></author><thr:total>7</thr:total><feedburner:origLink>http://nickweil.blogspot.com/2012/03/arduino-sending-hex-bytes-to-serial.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkAERXc9eyp7ImA9WhNSE0o.&quot;"><id>tag:blogger.com,1999:blog-1597214980833186328.post-6979952951136806326</id><published>2012-03-01T14:25:00.001-08:00</published><updated>2012-10-27T14:51:44.963-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-10-27T14:51:44.963-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="C" /><category scheme="http://www.blogger.com/atom/ns#" term="LED" /><category scheme="http://www.blogger.com/atom/ns#" term="ATmega" /><category scheme="http://www.blogger.com/atom/ns#" term="AVRISP-U" /><category scheme="http://www.blogger.com/atom/ns#" term="AVR" /><category scheme="http://www.blogger.com/atom/ns#" term="STK200" /><title>STK 200: First Program (LED Blink)</title><content type="html">For this program, you should already have AVR Studio 5 and AVRISP-U installed on your computer. If you don't, visit my previous post &lt;a href="http://nickweil.blogspot.com/2012/02/stk-200-getting-started-programming.html"&gt;Getting Started Programming Guide (link)&lt;/a&gt;. This is a simple program which simply makes the built-in LEDs to blink. I'm going to use C for this program because the code looks really simple. The assembly version is not really difficult either but we'll keep it simple for now. Note that AVR Studio 5 has a built-in C compiler. You might remember for AVR Studio 4, you had to download AVR GCC and integrate it. If you downloaded AVR Studio 5, you already have the C compiler.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;What will the program do? &lt;/i&gt;If you look at the STK 200, there is a row of 10 LEDs numbered from 0 to 7 then "ISP" and "ON." These are the built-in LEDs. Our program will make the LEDs numbered from 0 to 7 blink on and off at a rate perceptible to the human eye. In microcontroller terms, this means physically connecting the LEDs to PORTB and sending alternating HIGH/LOW signals to PORTB. Note that is all output - no input. If you don't know what PORTB is, check my &lt;a href="http://nickweil.blogspot.com/2012/01/stk-200-basic-layout-guide.html"&gt;Basic Layout Guide (link)&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;Step 1 - Create a new project:&lt;/i&gt; Go ahead and open AVR Studio 5. From the startup screen, go to File&amp;gt;New&amp;gt;Project... and you should see a New Project dialog box. At the top left of the dialog box, select the C templates and then choose "C Executable Project" in the middle of the screen. At the bottom, fill in "blink" as the name and this should automatically fill the solution name field with the same text. Also, make sure that the "Create directory for solution" box is checked. This checkbox will not affect your code at all, but it will keep your AVRStudio folder better organized. Look at the picture below and make sure your screen looks the same:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-XyaO9-guZ9U/T0_BA3gE2OI/AAAAAAAAAWI/5UC-frY1vpk/s1600/blink_screen1_cropped_withText.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="208" src="http://3.bp.blogspot.com/-XyaO9-guZ9U/T0_BA3gE2OI/AAAAAAAAAWI/5UC-frY1vpk/s320/blink_screen1_cropped_withText.jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;STK 200: New Project Dialog Box&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;a name='more'&gt;&lt;/a&gt;Click OK and you should see a Device Selection dialog box. Here, you select the name of your microcontroller. If you don't know what microcontroller you have, I'd&amp;nbsp;recommend looking at my post &lt;a href="http://nickweil.blogspot.com/2012/01/stk-200-switching-microcontrollers.html"&gt;Switching Microcontrollers (link)&lt;/a&gt;.&amp;nbsp;I'm using an ATmega32, so I selected that. Hit OK and you should reach the actual C file that you are going to edit. The screen should look something like what is below:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-MnniuPVwSBs/T0_B14TdGcI/AAAAAAAAAWQ/DGhweMpvO0k/s1600/blink_screen2_cropped_withText.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="187" src="http://3.bp.blogspot.com/-MnniuPVwSBs/T0_B14TdGcI/AAAAAAAAAWQ/DGhweMpvO0k/s320/blink_screen2_cropped_withText.jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;STK 200: Blank C Template&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;i&gt;Step 2 - Writing the code:&lt;/i&gt; As you can see, the program automatically generates some code to make you life easier. Since our program is so simple, we only need to add a couple lines and we are done. Basically, the code section (not including the top comments section) needs to read:&lt;br /&gt;
&lt;pre class="prettyprint"&gt;&lt;/pre&gt;
&lt;pre class="prettyprint"&gt;#include &amp;lt;avr/io.h&amp;gt;
#include &amp;lt;util/delay.h&amp;gt;

int main(void)
{
    DDRB=0xFF;          //PORT B (LEDs) output
    while(1)
    {
        PORTB=0x00;     //LEDs ON
        _delay_ms(1000); //delay
        PORTB=0xFF;     //LEDs OFF
        _delay_ms(1000); //delay
    }
}&lt;/pre&gt;
&lt;pre class="prettyprint"&gt;&lt;/pre&gt;
Once this code is entered, you need to build it. Hitting F7 is the easiest way to do that. Otherwise, go to Build&amp;gt;Build Solution. At the bottom of the screen you should end up with a message saying "Build succeeded."&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;Step 3 - Make the connections:&lt;/i&gt;&amp;nbsp;First, make sure that&amp;nbsp;PORTB is connected to the LED header using the ribbon cable supplied with the kit. Then, connect the board to the computer using the ISP also supplied with the kit. If this doesn't make sense, look at the picture below and make it look the same:&lt;br /&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href="http://1.bp.blogspot.com/-9J01lrVRUy4/T0AG6aUDuzI/AAAAAAAAATY/1WoK-oUMZ-Q/s1600/programming_stk_connections.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="240" src="http://1.bp.blogspot.com/-9J01lrVRUy4/T0AG6aUDuzI/AAAAAAAAATY/1WoK-oUMZ-Q/s320/programming_stk_connections.jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="font-size: 13px;"&gt;STK 200: Make the Connections&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;i&gt;Step 4 - Transfer program to board:&lt;/i&gt; Now, we need to transfer the built program from step 2 to the microcontroller.&amp;nbsp;Back in AVR Studio, go to Tools&amp;gt;AVRISP-U and you should see the AVRISP-U software pop up. Check the bottom left corner for a green light and text describing the correct device (in my case ATmega32). &amp;nbsp;If you get a red light, check the hardware connections and try again. Now, we need to load the hex file to flash, so hit Ctrl+O or go to File&amp;gt;Load&amp;gt;Flash... and browse to the hex file of the program you just wrote. On my machine (windows xp), the projects are stored in separate files in My Documents\AVRStudio. I named my project "blink" and used the default file location, so the hex file had the following path:&lt;br /&gt;
C:\Documents and Settings\Nick\My Documents\AVRStudio\blink\blink\Debug\blink.hex&lt;br /&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-vtGM6THHK1E/T0_CMr-JjwI/AAAAAAAAAWY/fUjEGXsOwBo/s1600/AVRISP_screenshot_LEDblink.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="320" src="http://4.bp.blogspot.com/-vtGM6THHK1E/T0_CMr-JjwI/AAAAAAAAAWY/fUjEGXsOwBo/s320/AVRISP_screenshot_LEDblink.jpg" width="294" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;STK 200: Loading Program with AVRISP-U&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
Hitting open will load the hex file into the AVRISP-U software. Before you load the program onto the board, you should probably erase what is currently in the microcontroller's Flash, so go to Device&amp;gt;Erase. After that, hit Ctrl+Alt+F6 or go to Device&amp;gt;Program&amp;gt;Flash and the hex file you loaded previously will be transferred to the board.&lt;br /&gt;
&lt;br /&gt;
At that point, the LEDs should start blinking. The program will continue forever (or until you erase it or turn it off).&lt;img src="http://feeds.feedburner.com/~r/blogspot/xwXJM/~4/B6vIhoK0tow" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nickweil.blogspot.com/feeds/6979952951136806326/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://nickweil.blogspot.com/2012/03/stk-200-first-program-led-blink.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/6979952951136806326?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/6979952951136806326?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/xwXJM/~3/B6vIhoK0tow/stk-200-first-program-led-blink.html" title="STK 200: First Program (LED Blink)" /><author><name>Nick Weil</name><uri>https://plus.google.com/106576647283267943602</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-9mC581-2b38/AAAAAAAAAAI/AAAAAAAAAks/KJhs9Q44Tqk/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-XyaO9-guZ9U/T0_BA3gE2OI/AAAAAAAAAWI/5UC-frY1vpk/s72-c/blink_screen1_cropped_withText.jpg" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://nickweil.blogspot.com/2012/03/stk-200-first-program-led-blink.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C04BQnk5fCp7ImA9WhRaFUw.&quot;"><id>tag:blogger.com,1999:blog-1597214980833186328.post-6061501453076789395</id><published>2012-02-17T11:00:00.000-08:00</published><updated>2012-02-17T12:52:33.724-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-17T12:52:33.724-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Kanda" /><category scheme="http://www.blogger.com/atom/ns#" term="AVRISP-U" /><category scheme="http://www.blogger.com/atom/ns#" term="AVR" /><category scheme="http://www.blogger.com/atom/ns#" term="STK200" /><title>STK 200: Getting Started Programming Guide</title><content type="html">To start programming the STK 200, you need to download some software. Namely, you need AVR Studio and AVRISP-U. I talked about the basic layout of the board in a previous post (link), so check that out if some of the terms I am using are unfamiliar. I broke the process into three steps below.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;Step 1 - Download AVR Studio 5:&lt;/i&gt; I started programming with AVR Studio 4, but if you are starting today, you might as well start with the new AVR Studio 5 release.&amp;nbsp;The program is built using the Microsoft Visual Studio Shell (VSS) so the user interface is very similar to Visual Studio. I suppose this can be a good thing for those who like Visual Studio and a bad thing for those who don't. Overall, it seems to have a lot of convenient features such as IntelliSense and debugging interface.&lt;br /&gt;
&lt;br /&gt;
So to get the software, go to the &lt;a href="http://www.atmel.com/dyn/products/tools_card.asp?tool_id=17212&amp;amp;source=avr_5_studio_overview"&gt;AVR Studio 5 page (link)&lt;/a&gt; from Atmel and download the software package you need. I recommend downloading the package that includes VSS and .NET 4.0. The software is completely free but you do have to fill out a registration form. The installer is pretty big (the one including VSS and .NET is over 600 MB).&lt;br /&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-IKP2geaE-v4/TzqfKgeDTSI/AAAAAAAAASQ/x-DIdbFusgo/s1600/avrstudio_startup_small.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="225" src="http://1.bp.blogspot.com/-IKP2geaE-v4/TzqfKgeDTSI/AAAAAAAAASQ/x-DIdbFusgo/s320/avrstudio_startup_small.jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;STK 200: AVR Studio 5&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div style="text-align: left;"&gt;
&lt;/div&gt;
&lt;div style="text-align: left;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;i&gt;&lt;/i&gt;&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;i&gt;Step 2 - Download and initialize AVRISP-U:&lt;/i&gt; The&amp;nbsp;other&amp;nbsp;piece of software you will need is "AVRISP-U" from Kanda. This will take the hex file you created using AVR Studio and send it through the ISP connecting your USB port to the board and program the chip. This package is not nearly as big as AVR Studio (~5 MB). Go ahead and extract the .exe file and install the software. After that is complete, plug in your STK 200, turn it on, and connect the ISP from the board to your USB port. If that is confusing, look at the image below:&lt;br /&gt;
&lt;br /&gt;
After it is all connected, you might get a notice that the ISP's driver was installed. Now launch AVRISP-U. It should automatically detect the microcontroller in the STK 200. You should get a screen similar to the image below, with a green dot on the bottom left and a message saying that the ISP is initialized:&lt;br /&gt;
&lt;i&gt;&lt;/i&gt;&lt;br /&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: left;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-REY1IQJGbdU/TzqgsfoILCI/AAAAAAAAASg/eQGdO6_wM34/s1600/AVRISP_screenshot.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="200" src="http://3.bp.blogspot.com/-REY1IQJGbdU/TzqgsfoILCI/AAAAAAAAASg/eQGdO6_wM34/s200/AVRISP_screenshot.jpg" width="183" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;STK 200: AVRISP-U&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;i&gt;Step 3 - Integrate AVRISP-U with AVR Studio 5:&lt;/i&gt; Open AVR Studio 5 and go to Tools Menu &amp;gt; External Tools. You will see the External Tools dialog box.&amp;nbsp;If this is the first time you have ever&amp;nbsp;accessed&amp;nbsp;this dialog,&amp;nbsp;there should be a placeholder tool named "[New Tool 1]." You can overwrite this tool. Or if you have previously entered tools, simply click the Add button near the top right. Now,&amp;nbsp;you will fill out some information about the new programmer you are adding. You can see the proper entries in the screenshot, or I listed them as text below:&lt;br /&gt;
&lt;br /&gt;
&lt;div style="text-align: left;"&gt;
&lt;b&gt;Title: AVRISP-U&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;Command: C:\Program Files\embres\AVRISP-U\AVRISP-U.exe&lt;/b&gt;
&lt;br /&gt;
&lt;b&gt;Arguments: $(ProjectDir)$(ProjectFileName)&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;Initial Directory: $(ProjectDir)&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
What does all this mean? The "Title" is simply the name given to the new programmer in AVR Studio. "Command" is the path to the .exe file which corresponds to the programmer; in our case: AVRISP-U.exe. The location of this file all depends on where you chose to install the AVRISP-U software during setup. If you are following step 2 of my guide and downloaded the software from Kanda's website and you kept the default path during the installation process, the path I have given should be correct.&amp;nbsp;If you installed the software from the CD that was shipped with the kit, the path is likely different. Browse around in the Program Files folder to find it for sure. It should resemble something like:&amp;nbsp;&lt;span style="text-align: center;"&gt;C:\Program Files\Kanda AVR\avrisp-u\AVRISP-U.exe.&amp;nbsp;&lt;/span&gt;The next two lines ("Arguments" and "Initial Directory") correspond to where the programmer can find the files it needs to program the microcontroller.&lt;br /&gt;
&lt;div style="text-align: left;"&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/--YuGDd8Hy0M/TzqrCe-WSZI/AAAAAAAAASo/m69SnsfTzpQ/s1600/adding_programmer_both.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="161" src="http://1.bp.blogspot.com/--YuGDd8Hy0M/TzqrCe-WSZI/AAAAAAAAASo/m69SnsfTzpQ/s320/adding_programmer_both.jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;STK 200: Adding AVRISP-U to AVR Studio 5&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
Hit OK and it should be installed!&amp;nbsp;To check that it worked, go to the Tools Menu in AVR Studio 5 and look to see if there is a menu item for AVRISP-U.&lt;/div&gt;
&lt;br /&gt;
LINKS:&lt;br /&gt;
AVR Studio 5:&amp;nbsp;&lt;a href="http://www.atmel.com/dyn/products/tools_card.asp?tool_id=17212&amp;amp;source=avr_5_studio_overview"&gt;http://www.atmel.com/dyn/products/tools_card.asp?tool_id=17212&amp;amp;source=avr_5_studio_overview&lt;/a&gt;
&lt;br /&gt;
AVR Studio 4:&amp;nbsp;&lt;a href="http://www.atmel.com/dyn/products/tools_card.asp?tool_id=2725"&gt;http://www.atmel.com/dyn/products/tools_card.asp?tool_id=2725&lt;/a&gt;&lt;br /&gt;
Kanda Software Download Page (AVRISP-U is near the top):&amp;nbsp;&lt;a href="http://www.kanda.com/downloads2.php"&gt;http://www.kanda.com/downloads2.php&lt;/a&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/xwXJM/~4/pA8L8Sx7ISY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nickweil.blogspot.com/feeds/6061501453076789395/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://nickweil.blogspot.com/2012/02/stk-200-getting-started-programming.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/6061501453076789395?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/6061501453076789395?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/xwXJM/~3/pA8L8Sx7ISY/stk-200-getting-started-programming.html" title="STK 200: Getting Started Programming Guide" /><author><name>Nick Weil</name><uri>https://plus.google.com/106576647283267943602</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-9mC581-2b38/AAAAAAAAAAI/AAAAAAAAAks/KJhs9Q44Tqk/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-IKP2geaE-v4/TzqfKgeDTSI/AAAAAAAAASQ/x-DIdbFusgo/s72-c/avrstudio_startup_small.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://nickweil.blogspot.com/2012/02/stk-200-getting-started-programming.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkIFQ3c_cSp7ImA9WhRaEUo.&quot;"><id>tag:blogger.com,1999:blog-1597214980833186328.post-7887677676997344238</id><published>2012-02-07T15:46:00.000-08:00</published><updated>2012-02-13T14:01:52.949-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-13T14:01:52.949-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="infrastructure" /><title>Interesting Infrastructure: Mouse shaped wetland</title><content type="html">Check out this satellite imagery from Petaluma, California, a city of about 60,000 people in the northern bay area. The city completed construction of a new wastewater treatment plant, the Ellis Creek Water Recycling Facility, in 2009 and they included some polishing ponds which had a very interesting shape. Environmental artist Patricia Johnson worked with the city and their consultants to make this wetland park a unique piece of artwork. The shape is a reference to the harvest field mouse, an indigenous species in the area near the Petaluma River. You can see the actual treatment facility towards the top right of the image.&lt;br /&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt; &lt;tbody&gt;
&lt;tr&gt; &lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-BMWHfxCLSAA/Tyw66D0afbI/AAAAAAAAAQc/w9ozg62UfwY/s1600/petaluma_field_mouse.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="208" src="http://1.bp.blogspot.com/-BMWHfxCLSAA/Tyw66D0afbI/AAAAAAAAAQc/w9ozg62UfwY/s320/petaluma_field_mouse.jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td class="tr-caption" style="text-align: center;"&gt;Mouse shaped wetland: Raw image&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt; &lt;tbody&gt;
&lt;tr&gt; &lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-hwjFWUw5YSo/Tyw69QfqN0I/AAAAAAAAAQk/mcevviUsGKw/s1600/petaluma_field_mouse_overlay.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="208" src="http://1.bp.blogspot.com/-hwjFWUw5YSo/Tyw69QfqN0I/AAAAAAAAAQk/mcevviUsGKw/s320/petaluma_field_mouse_overlay.jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td class="tr-caption" style="text-align: center;"&gt;Mouse shaped wetland: Mouse outlined&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;If you would like to check this out in your own browser, type “shollenberger park petaluma ca” into google maps and you will see the mouse shape just a bit to the east.&lt;br /&gt;
&lt;br /&gt;
LINKS:&lt;br /&gt;
Article detailing the Patricia Johnson’s work: &lt;a href="http://www.petaluma360.com/article/20100520/COMMUNITY/100529959?p=1&amp;amp;tc=pg"&gt;http://www.petaluma360.com/article/20100520/COMMUNITY/100529959?p=1&amp;amp;tc=pg&lt;/a&gt;&lt;br /&gt;
Article about the new wastewater plant: &lt;a href="http://www.petaluma360.com/article/20090731/COMMUNITY/907319990"&gt;http://www.petaluma360.com/article/20090731/COMMUNITY/907319990&lt;/a&gt;&lt;br /&gt;
More about Patricia Johnson: &lt;a href="http://patriciajohanson.com/archive/metroactive-01-2006.html"&gt;http://patriciajohanson.com/archive/metroactive-01-2006.html&lt;/a&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/xwXJM/~4/h5NFfGzbCI8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nickweil.blogspot.com/feeds/7887677676997344238/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://nickweil.blogspot.com/2012/02/interesting-infrastructure-mouse-shaped.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/7887677676997344238?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/7887677676997344238?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/xwXJM/~3/h5NFfGzbCI8/interesting-infrastructure-mouse-shaped.html" title="Interesting Infrastructure: Mouse shaped wetland" /><author><name>Nick Weil</name><uri>https://plus.google.com/106576647283267943602</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-9mC581-2b38/AAAAAAAAAAI/AAAAAAAAAks/KJhs9Q44Tqk/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-BMWHfxCLSAA/Tyw66D0afbI/AAAAAAAAAQc/w9ozg62UfwY/s72-c/petaluma_field_mouse.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://nickweil.blogspot.com/2012/02/interesting-infrastructure-mouse-shaped.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkINRno8eyp7ImA9WhRbFko.&quot;"><id>tag:blogger.com,1999:blog-1597214980833186328.post-5159687744177487923</id><published>2012-02-01T13:13:00.000-08:00</published><updated>2012-02-07T19:09:57.473-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-07T19:09:57.473-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="layout" /><category scheme="http://www.blogger.com/atom/ns#" term="Kanda" /><category scheme="http://www.blogger.com/atom/ns#" term="development board" /><category scheme="http://www.blogger.com/atom/ns#" term="STK200" /><title>STK 200: Basic Layout Guide</title><content type="html">The Kanda STK 200 has a lot of really cool features. But when I first got the board, I didn't even know where to begin.&amp;nbsp;This post goes over the board's basic layout and the main features that it includes.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;I/O:&lt;/i&gt;&amp;nbsp;Really, the core function of a microcontroller is Input/Output. In fact, out of the ATmega32's 40 pins, 32 pins are set aside for I/O. They are organized into four 8-pin ports named PORTA, PORTB, PORTC, and PORTD. The STK 200 makes it really easy to access these ports by giving them each headers. The board even labels the headers using the standard naming convention established by the AVR family (PORTA, etc.). Each header includes it's own VCC and GND, which devices almost always require. LEDs and switches are&amp;nbsp;probably&amp;nbsp;the most common form of I/O;&amp;nbsp;conveniently,&amp;nbsp;the STK 200 has 8 LEDs and 8 switches built into the board. You can dedicate ports to the LEDs, the&amp;nbsp;switches&amp;nbsp;or both using a 10-pin ribbon cable provided with the board and pictured below. PORTB is lined up with the LED input header and PORTD is lined up with the switches output header for an easy connection.&lt;br /&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href="http://4.bp.blogspot.com/-L0eW0Rk7jdY/Txs5IJsjOBI/AAAAAAAAAP8/FdjzpImRXMM/s1600/layout_IO.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="240" src="http://4.bp.blogspot.com/-L0eW0Rk7jdY/Txs5IJsjOBI/AAAAAAAAAP8/FdjzpImRXMM/s320/layout_IO.jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="font-size: 13px;"&gt;STK 200: I/O&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;i&gt;Programming: &lt;/i&gt;The STK 200 is shipped with a USB programming device, called an ISP (In-System Programmer). It attaches to the board via a 10-pin header outlined in the picture below.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-1bntyx3tS8Q/TxsirKcVbCI/AAAAAAAAAPs/8kniwX65vdc/s1600/layout_programming.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="240" src="http://3.bp.blogspot.com/-1bntyx3tS8Q/TxsirKcVbCI/AAAAAAAAAPs/8kniwX65vdc/s320/layout_programming.jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;STK 200: Programming&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div style="text-align: -webkit-auto;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;i&gt;LCD/USART:&lt;/i&gt; The board makes it really easy to set up serial communication with a computer and also to display output on an LCD screen. In general, I call serial communication USART which stands for Universal Synchronous-Asynchronous&amp;nbsp;Receiver/Transmitter. This is a fancy acronym which refers to a standard way that devices communicate. The board has a RS-232 port which facilitates USART communication. RS-232 used to be a standard port on computers but they are not so common today. I bought an RS-232 to USB cable which basically turns one of the USB ports on my laptop into a simulated RS-232 port. For LCD screens, the STK 200 has 11 I/O pins plus a VCC and GND dedicated to driving a display.&amp;nbsp;The LCD screen I bought was shaped in a way that it would not sit flat on the board's pins. To counteract that, I bought headers to "raise" the pins over the rest of the board. You can find similar headers from most electronic parts websites such as &lt;a href="http://www.jameco.com/"&gt;Jameco&lt;/a&gt;, &lt;a href="http://www.digikey.com/"&gt;Digi-Key&lt;/a&gt; or &lt;a href="http://www.sparkfun.com/"&gt;SparkFun&lt;/a&gt;. There is one thing you should be careful of, however. There is an LCD Disable jumper which I outlined below (middle red box). If this jumper is shorted, the LCD pins simply do not work. I spent quite few hours pulling my hair out before I&amp;nbsp;discovered&amp;nbsp;that. The LCD screen shown in the picture is a&amp;nbsp;16 character by 2 line display which I used with the board.&lt;br /&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-Nn-L2tfZ7jo/TxssjEj-t1I/AAAAAAAAAP0/vD8EzEqfJ1g/s1600/layout_LCD_usart.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="240" src="http://1.bp.blogspot.com/-Nn-L2tfZ7jo/TxssjEj-t1I/AAAAAAAAAP0/vD8EzEqfJ1g/s320/layout_LCD_usart.jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;STK 200: LCD/USART&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;i&gt;Power:&amp;nbsp;&lt;/i&gt;I had to purchase a 9V power supply for my STK 200. It uses the standard 2.2 mm DC input jack. There is also an ON/OFF switch so you don't have to pull out the power supply to turn the board off. When the board is turned on, a power indicator LED, outlined in red below,&amp;nbsp;lights up.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href="http://2.bp.blogspot.com/-Y_-FNIR111c/Txs7amYI2WI/AAAAAAAAAQE/TIaV_Kwcm7E/s1600/layout_power.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="240" src="http://2.bp.blogspot.com/-Y_-FNIR111c/Txs7amYI2WI/AAAAAAAAAQE/TIaV_Kwcm7E/s320/layout_power.jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="font-size: 13px;"&gt;STK 200: Power&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;i&gt;Microcontroller Sockets:&amp;nbsp;&lt;/i&gt;&amp;nbsp;I went over these in detail in a&amp;nbsp;&lt;a href="http://nickweil.blogspot.com/2012/01/stk-200-switching-microcontrollers.html"&gt;previous post (link)&lt;/a&gt;.&amp;nbsp;I typically use the 40-pin ATmega32, which you can see in the picture.&lt;br /&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href="http://2.bp.blogspot.com/-6GBhkahu6uQ/Txsa0GDRysI/AAAAAAAAAPc/mjapkihB-Fc/s1600/layout_mcu_sockets.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="240" src="http://2.bp.blogspot.com/-6GBhkahu6uQ/Txsa0GDRysI/AAAAAAAAAPc/mjapkihB-Fc/s320/layout_mcu_sockets.jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="font-size: 13px;"&gt;STK 200: Microcontroller Sockets&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;div&gt;
Note that this is not a comprehensive guide. But this&amp;nbsp;includes&amp;nbsp;the main features you will encounter in an&amp;nbsp;introductory&amp;nbsp;lab or class.&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/xwXJM/~4/eTCdUIK-L5A" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nickweil.blogspot.com/feeds/5159687744177487923/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://nickweil.blogspot.com/2012/01/stk-200-basic-layout-guide.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/5159687744177487923?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/5159687744177487923?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/xwXJM/~3/eTCdUIK-L5A/stk-200-basic-layout-guide.html" title="STK 200: Basic Layout Guide" /><author><name>Nick Weil</name><uri>https://plus.google.com/106576647283267943602</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-9mC581-2b38/AAAAAAAAAAI/AAAAAAAAAks/KJhs9Q44Tqk/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-L0eW0Rk7jdY/Txs5IJsjOBI/AAAAAAAAAP8/FdjzpImRXMM/s72-c/layout_IO.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://nickweil.blogspot.com/2012/01/stk-200-basic-layout-guide.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkEBQX0zfip7ImA9WhRbFko.&quot;"><id>tag:blogger.com,1999:blog-1597214980833186328.post-2691636352251448486</id><published>2012-01-20T12:38:00.000-08:00</published><updated>2012-02-07T19:10:50.386-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-07T19:10:50.386-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="microcontroller" /><category scheme="http://www.blogger.com/atom/ns#" term="ATmega" /><category scheme="http://www.blogger.com/atom/ns#" term="socket" /><category scheme="http://www.blogger.com/atom/ns#" term="AVR" /><category scheme="http://www.blogger.com/atom/ns#" term="STK200" /><title>STK 200: Switching Microcontrollers</title><content type="html">When I bought my Kanda STK 200, it was shipped with an ATmega8515 microcontroller. While the 8515 is a fine microcontroller, I wanted to replace it with an ATmega32 due to the latter's more robust features. &amp;nbsp;Namely, the ATmega32 has 32KB of flash memory compared to the 8515's 8KB. Also, the 8515 has no built-in analog to digital or digital to analog conversion while the 32 does. If you are also interested in switching the microcontroller on the STK 200, here is a quick guide:&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;Sockets on the development board:&lt;/i&gt;&amp;nbsp;When you look at the board, you can see various sockets. Check out the following image to see the available sockets and what their name is:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-Sq-7gBl58pg/TxnKzJlRd_I/AAAAAAAAAPE/GceEDGo4bV4/s1600/labeled_board_sockets_small.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="300" src="http://4.bp.blogspot.com/-Sq-7gBl58pg/TxnKzJlRd_I/AAAAAAAAAPE/GceEDGo4bV4/s400/labeled_board_sockets_small.jpg" width="400" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;STK 200: Sockets on the Development Board&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;i&gt;Socket support:&lt;/i&gt;&amp;nbsp;It took me a long time to find this extremely helpful documentation. I finally found it in the datasheet on the Kanda website. As you can see, it lists all the supported microcontrollers and which socket they should be placed in. Obviously, all of these are AVR microcontrollers from Atmel. For my microcontrollers, you can see that the ATmega8515 should be placed in socket "40D" while the ATmega32 should be placed in "40A."&lt;br /&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-p7w38OBBHhA/TxnGD8363MI/AAAAAAAAAO0/iueBRKuEFCU/s1600/stk200_socket_support.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="203" src="http://1.bp.blogspot.com/-p7w38OBBHhA/TxnGD8363MI/AAAAAAAAAO0/iueBRKuEFCU/s400/stk200_socket_support.jpg" width="400" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;STK 200: Socket Support&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;i&gt;Label on microcontroller:&lt;/i&gt; What if you have a microcontroller and you are not sure what it is? Just look on the top of the chip and you should see a name:&lt;br /&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-oKXnCH0RdRY/TxnNQhyGYFI/AAAAAAAAAPM/WAAlrcWHb1Y/s1600/mcu_sidebyside_small.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="222" src="http://1.bp.blogspot.com/-oKXnCH0RdRY/TxnNQhyGYFI/AAAAAAAAAPM/WAAlrcWHb1Y/s400/mcu_sidebyside_small.jpg" width="400" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Label on MCU&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
When I first got my ATmega32, I mistakenly put it in the 40D socket because I assumed it would go in the same socket as the ATmega8515. As you can tell from the socket support sheet, I was wrong. I was actually able to program the chip fine, but I kept getting very strange results from my programs. I finally tracked it down and realized it was an analog to digital conversion issue. That's when I realized the chip was in the incorrect socket. That was very frustrating but at least it did not damage the chip!&lt;br /&gt;
&lt;br /&gt;
LINKS:&lt;br /&gt;
ATmega32:&amp;nbsp;&lt;a href="http://atmel.com/dyn/products/product_parameters.asp?category_id=163&amp;amp;family_id=607&amp;amp;subfamily_id=760&amp;amp;part_id=2014&amp;amp;ListAllAttributes=1"&gt;http://atmel.com/dyn/products/product_parameters.asp?category_id=163&amp;amp;family_id=607&amp;amp;subfamily_id=760&amp;amp;part_id=2014&amp;amp;ListAllAttributes=1&lt;/a&gt;
&lt;br /&gt;
ATmega8515:&amp;nbsp;&lt;a href="http://www.atmel.com/dyn/products/product_card.asp?part_id=2006"&gt;http://www.atmel.com/dyn/products/product_card.asp?part_id=2006&lt;/a&gt;&lt;br /&gt;
Kanda:&amp;nbsp;&lt;a href="http://www.kanda.com/"&gt;http://www.kanda.com/&lt;/a&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/xwXJM/~4/XwNxX-xvVaw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nickweil.blogspot.com/feeds/2691636352251448486/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://nickweil.blogspot.com/2012/01/stk-200-switching-microcontrollers.html#comment-form" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/2691636352251448486?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/2691636352251448486?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/xwXJM/~3/XwNxX-xvVaw/stk-200-switching-microcontrollers.html" title="STK 200: Switching Microcontrollers" /><author><name>Nick Weil</name><uri>https://plus.google.com/106576647283267943602</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-9mC581-2b38/AAAAAAAAAAI/AAAAAAAAAks/KJhs9Q44Tqk/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-Sq-7gBl58pg/TxnKzJlRd_I/AAAAAAAAAPE/GceEDGo4bV4/s72-c/labeled_board_sockets_small.jpg" height="72" width="72" /><thr:total>4</thr:total><feedburner:origLink>http://nickweil.blogspot.com/2012/01/stk-200-switching-microcontrollers.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEcDQnY-eCp7ImA9WhRaFk0.&quot;"><id>tag:blogger.com,1999:blog-1597214980833186328.post-4769586034475123612</id><published>2012-01-18T21:01:00.000-08:00</published><updated>2012-02-18T13:54:33.850-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-18T13:54:33.850-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="ncees" /><category scheme="http://www.blogger.com/atom/ns#" term="FE" /><category scheme="http://www.blogger.com/atom/ns#" term="Exam" /><category scheme="http://www.blogger.com/atom/ns#" term="Fundamentals of Engineering" /><category scheme="http://www.blogger.com/atom/ns#" term="EIT" /><title>Fundamentals of Engineering/EIT Exam Strategy</title><content type="html">I wrote some general tips for the Fundamentals of Engineering Exam in a &lt;a href="http://nickweil.blogspot.com/2012/01/fundamentals-of-engineeringeit-exam.html"&gt;previous post (link)&lt;/a&gt;. Here are test taking strategies to go along with those.&lt;br /&gt;
&lt;br /&gt;
&lt;table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: left; margin-right: 1em; text-align: left;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-kyo53lMDeIk/TxeRzK3IrkI/AAAAAAAAAOo/QkNNATrSh2c/s1600/banner_answer_key.jpg" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"&gt;&lt;img alt="exam answer bubbles" border="0" height="175" src="http://4.bp.blogspot.com/-kyo53lMDeIk/TxeRzK3IrkI/AAAAAAAAAOo/QkNNATrSh2c/s320/banner_answer_key.jpg" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;FE Exam: Multiple Choice&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;i&gt;Overall strategy: &lt;/i&gt;&lt;b&gt;Become an expert in the subject areas that you are most familiar with and know the basics of all other subjects&lt;/b&gt;. There is a reason the engineering profession is split into specialties (civil, mechanical, etc); there is so much to know that it is almost impossible to be an expert in everything. Furthermore, we all have our own ways to solve problems. Those thought processes might work especially well on certain subjects and not so well on other subjects. I found that it is much more productive to focus on the subjects that I have a background in rather than try to learn an unfamiliar subject from scratch.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;Guessing: &lt;/i&gt;The entire test is multiple choice with four possible answers. This means that if you completely guess, theoretically you have a 25% chance to get the correct answer. Further, if you are able to eliminate one of the possible answers, you now have a 33.3% chance to pick the right answer. Eliminating two possible answers leaves you with a 50% chance and, according to my study manual, &lt;b&gt;a passing score on the FE Exam is a bit less than 50%&lt;/b&gt;. So, theoretically, if you were able to eliminate two possible answers for every question on the test, you should pass. Of course, this is not practical. In reality, there are some questions where you absolutely know the answer and some questions where you have no idea, but this does highlight the effectiveness of strategic guessing.&lt;br /&gt;
&lt;i&gt;&lt;/i&gt;&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;i&gt;Subject areas: &lt;/i&gt;In the front of the NCEES handbook, there is a breakdown showing what percentage of the test is related to each subject area for the morning and afternoon session. I reproduced the breakdown for the morning session below:&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Mathematics:&lt;/b&gt; 15% (equivalent of 18 questions)&lt;br /&gt;
&lt;b&gt;Engineering Probability and Statistics:&lt;/b&gt; 7% (equivalent of 8.4 questions)&lt;br /&gt;
&lt;b&gt;Chemistry:&lt;/b&gt; 9% (equivalent of 10.8 questions)&lt;br /&gt;
&lt;b&gt;Computers:&lt;/b&gt; 7% (equivalent of 8.4 questions)&lt;br /&gt;
&lt;b&gt;Ethics and Business Practice:&lt;/b&gt; 7% (equivalent of 8.4 questions)&lt;br /&gt;
&lt;b&gt;Engineering Economics:&lt;/b&gt; 8% (equivalent of 9.6 questions)&lt;br /&gt;
&lt;b&gt;Engineering Mechanics (Statics and Dynamics):&lt;/b&gt; 10% (equivalent of 12 questions)&lt;br /&gt;
&lt;div&gt;
&lt;b&gt;Strength of Materials:&lt;/b&gt; 7% (equivalent of 8.4 questions)&lt;br /&gt;
&lt;b&gt;Material Properties:&lt;/b&gt; 7% (equivalent of 8.4 questions)&lt;br /&gt;
&lt;b&gt;Fluid Mechanics:&lt;/b&gt; 7% (equivalent of 8.4 questions)&lt;br /&gt;
&lt;b&gt;Electricity and Magnetism:&lt;/b&gt; 9% (equivalent of 10.8 questions)&lt;br /&gt;
&lt;b&gt;Thermodynamics:&lt;/b&gt; 7% (equivalent of 8.4 questions)&lt;br /&gt;
&lt;br /&gt;
I suggest you approach this is to &lt;b&gt;separate the subjects into two categories: subjects that you are comfortable with ("good subjects") and the subjects you are not comfortable with ("bad subjects")&lt;/b&gt;. Personally, I felt comfortable with Math, Computers, Ethics, Economics, and Electricity. Now, &lt;b&gt;set a goal that you will get a score of 75% on the "good subjects" and 33% on the "bad subjects."&lt;/b&gt; Note that 75% is pretty high goal - this means that you get three out of every four questions correct. I chose 33% for the "bad subjects" because it corresponds to the probability of guessing when you have eliminated one possible answer. This come from the idea that you should be familiar enough with your "bad subjects" to have a general idea if one answer is out of whack. If you want to get really nerdy, you can create a table to see what you would score if you followed achieved this goal. The one I made is below:&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table border="1" cellpadding="2" cellspacing="0" style="width: 550px;"&gt; &lt;tbody&gt;
&lt;tr&gt; &lt;td valign="top" width="152"&gt;&lt;b&gt;Subject&lt;/b&gt;&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;b&gt;Percentage of Test Content&lt;/b&gt;&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;b&gt;My Score (Out of 100)&lt;/b&gt;&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;b&gt;My Weighted Score&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: left;"&gt;
Mathematics&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
0.15&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
75&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
11.25&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: left;"&gt;
Probability &amp;amp; Stats&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
0.07&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
33&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
2.31&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: left;"&gt;
Chemistry&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
0.09&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
33&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
2.97&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: left;"&gt;
Computers&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
0.07&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
75&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
5.25&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: left;"&gt;
Ethics&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
0.07&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
75&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
5.25&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: left;"&gt;
Economics&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
0.08&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
75&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
6&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: left;"&gt;
Statics &amp;amp; Dynamics&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
0.10&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
33&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
3.3&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: left;"&gt;
Strength of Materials&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
0.07&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
33&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
2.31&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: left;"&gt;
Material Properties&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
0.07&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
33&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
2.31&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: left;"&gt;
Fluid Mechanics&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
0.07&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
33&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
2.31&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: left;"&gt;
Electricity &amp;amp; Magnetism&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
0.09&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
75&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
6.75&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: left;"&gt;
Thermodynamics&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
0.07&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
33&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
2.31&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td style="text-align: center;" valign="top" width="152"&gt;&lt;/td&gt; &lt;td style="text-align: center;" valign="top" width="152"&gt;&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
&lt;b&gt;TOTAL SCORE (%)&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt; &lt;td valign="top" width="152"&gt;&lt;div style="text-align: center;"&gt;
&lt;b&gt;52.32&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
If I exactly followed my projections on the test, I would score over 50% for the morning section. In reality, I am slightly more confident in certain “bad subjects” and slightly less confident in some “good subjects” but this at least gives me a baseline goal to achieve for a passing score.&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;Time per question:&lt;/i&gt; For the morning session, you have 4 hours to complete 120 questions. This works out to &lt;b&gt;2 minutes per question&lt;/b&gt;. For the afternoon session, you have 4 hours to complete 60 questions. This works out to &lt;b&gt;4 minutes per question&lt;/b&gt;. In general, I would say that time is not an issue on the afternoon portion. Many people finish early and leave. The morning session, on the other hand, is a race against the clock. I believe my overall strategy can be applied here. As I said, it is pretty much impossible to be an expert in every single subject on the test. Thus, there will be questions where you completely guess. Taking into account the time to read the question and fill in the answer sheet, a guess should take about 20 seconds. Suppose you guess on 20 questions throughout the morning portion; this frees up 33 minutes and 20 seconds to be distributed among other questions. If that is distributed evenly, it results in an extra 20 seconds per non-guessing question. That extra time can be applied to questions where you know you are on the right track but need more time to make sure you have the right answer.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;Morning/Afternoon session weight&lt;/i&gt;: Both the morning and afternoon portions are weighted equally, so &lt;b&gt;1 correct afternoon question is "worth" 2 correct morning questions&lt;/b&gt;. Basically this means you should not neglect studying for the afternoon session because it is your major/specialty and you feel confident in that material. The afternoon questions are difficult so you need to study for those too. Since there are fewer questions, the stakes are higher to solve each one.&lt;br /&gt;
&lt;br /&gt;
Good luck on the exam!&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/xwXJM/~4/bMBdqChcz6M" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nickweil.blogspot.com/feeds/4769586034475123612/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://nickweil.blogspot.com/2012/01/fundamentals-of-engineeringeit-exam_18.html#comment-form" title="12 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/4769586034475123612?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/4769586034475123612?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/xwXJM/~3/bMBdqChcz6M/fundamentals-of-engineeringeit-exam_18.html" title="Fundamentals of Engineering/EIT Exam Strategy" /><author><name>Nick Weil</name><uri>https://plus.google.com/106576647283267943602</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-9mC581-2b38/AAAAAAAAAAI/AAAAAAAAAks/KJhs9Q44Tqk/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-kyo53lMDeIk/TxeRzK3IrkI/AAAAAAAAAOo/QkNNATrSh2c/s72-c/banner_answer_key.jpg" height="72" width="72" /><thr:total>12</thr:total><feedburner:origLink>http://nickweil.blogspot.com/2012/01/fundamentals-of-engineeringeit-exam_18.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ck8DSH87cSp7ImA9WhRbFko.&quot;"><id>tag:blogger.com,1999:blog-1597214980833186328.post-2342315404591215191</id><published>2012-01-17T15:30:00.000-08:00</published><updated>2012-02-07T19:14:39.109-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-07T19:14:39.109-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="ti36x pro" /><category scheme="http://www.blogger.com/atom/ns#" term="programming bug" /><category scheme="http://www.blogger.com/atom/ns#" term="Calculator" /><title>TI-36X PRO: Programming Bug Info (VIDEO)</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;img alt="ti36x pro programming bug" border="0" height="218" src="http://2.bp.blogspot.com/-C8-AqSQkYpY/TxYHf-ObjgI/AAAAAAAAANo/7xv7__630VY/s400/banner_TI_screen.jpg" width="400" /&gt;&lt;/div&gt;
In a &lt;a href="http://nickweil.blogspot.com/2012/01/product-review-texas-instruments-ti-36x.html"&gt;previous post (link)&lt;/a&gt;, I explained why the TI-36X PRO is a great calculator 
is you are taking the Fundamentals of Engineering or PE Exam. But it has one 
problem: a programming bug. Essentially, the bug is a display problem which only 
occurs when you try to display a mixed fraction involving pi, but still, any 
time your calculator is giving you wrong answers it is a serious problem.&lt;br /&gt;
&lt;br /&gt;
I made a video to illustrate the bug, embedded below:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;object class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://i.ytimg.com/vi/zVi2Ldu4IuE/0.jpg" height="266" width="320"&gt;&lt;param name="movie" value="http://www.youtube.com/v/zVi2Ldu4IuE?version=3&amp;f=user_uploads&amp;c=google-webdrive-0&amp;app=youtube_gdata" /&gt;





&lt;param name="bgcolor" value="#FFFFFF" /&gt;





&lt;embed width="320" height="266"  src="http://www.youtube.com/v/zVi2Ldu4IuE?version=3&amp;f=user_uploads&amp;c=google-webdrive-0&amp;app=youtube_gdata" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
To check if your TI-36X PRO has the bug, first make sure you are in MathPrint mode. You can check this by pressing \(mode\) and scrolling down to the bottom of the list of options. Now, you need to tell the calculator to display answers in mixed fraction form. To do this, type \(1.75\) into he command line, then press \(math\) then \(1\) then 
enter. You should see the result \(1\frac{3}{4}\). Then type \(\pi12.5^2\)&amp;nbsp;into the command line. When you hit \(enter\), you should receive the answer \(490.8738521\). Now press the answer toggle button (it is directly above \(enter\)) and your calculator will display \(154\frac{\pi}{4}\) if your 
calculator has the bug. The mathematically correct answer would either be \(\pi154\frac{1}{4}\) or \(\frac{\pi654}{4}\). Remember to clear the memory (hit \(on\) and \(clear\) at the same time) after you try this!&lt;br /&gt;
&lt;br /&gt;
Overall, I’m still a fan of the calculator. To avoid the bug, I never try to 
convert anything to a mixed fraction. There are very few times where I ever need 
a mixed fraction anyway. You can get all the information you need in either 
decimal or improper fraction form. I actually used this calculator on the 
Fundamentals of Engineering Exam and I was very happy with it.&lt;br /&gt;
&lt;br /&gt;
LINKS:&lt;br /&gt;
TI-36 Wikipedia Page:&amp;nbsp;&lt;a href="http://en.wikipedia.org/wiki/TI-36#Programming_Errors"&gt;http://en.wikipedia.org/wiki/TI-36#Programming_Errors&lt;/a&gt;&lt;br /&gt;
The Consumerist Article:&amp;nbsp;&lt;a href="http://consumerist.com/2011/09/this-texas-instruments-calculator-cant-calculate-correctly.html"&gt;http://consumerist.com/2011/09/this-texas-instruments-calculator-cant-calculate-correctly.html&lt;/a&gt;&lt;br /&gt;
Product Guidebook from TI:&amp;nbsp;&lt;a href="http://education.ti.com/downloads/guidebooks/scientific/36xPro/TI36PRO_Guidebook_EN.pdf"&gt;http://education.ti.com/downloads/guidebooks/scientific/36xPro/TI36PRO_Guidebook_EN.pdf&lt;/a&gt;&lt;br /&gt;
Here is a video from MrTechLabs describing the same problem:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;object class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://3.gvt0.com/vi/pVyXz8ZvY8s/0.jpg" height="266" width="320"&gt;&lt;param name="movie" value="http://www.youtube.com/v/pVyXz8ZvY8s&amp;fs=1&amp;source=uds" /&gt;



&lt;param name="bgcolor" value="#FFFFFF" /&gt;



&lt;embed width="320" height="266"  src="http://www.youtube.com/v/pVyXz8ZvY8s&amp;fs=1&amp;source=uds" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/xwXJM/~4/oqeU9ccX4IE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nickweil.blogspot.com/feeds/2342315404591215191/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://nickweil.blogspot.com/2012/01/ti-36x-pro-programming-bug-info-video.html#comment-form" title="5 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/2342315404591215191?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/2342315404591215191?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/xwXJM/~3/oqeU9ccX4IE/ti-36x-pro-programming-bug-info-video.html" title="TI-36X PRO: Programming Bug Info (VIDEO)" /><author><name>Nick Weil</name><uri>https://plus.google.com/106576647283267943602</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-9mC581-2b38/AAAAAAAAAAI/AAAAAAAAAks/KJhs9Q44Tqk/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-C8-AqSQkYpY/TxYHf-ObjgI/AAAAAAAAANo/7xv7__630VY/s72-c/banner_TI_screen.jpg" height="72" width="72" /><thr:total>5</thr:total><feedburner:origLink>http://nickweil.blogspot.com/2012/01/ti-36x-pro-programming-bug-info-video.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkICQX85fCp7ImA9WhRaEUo.&quot;"><id>tag:blogger.com,1999:blog-1597214980833186328.post-2663145060490381829</id><published>2012-01-13T08:18:00.000-08:00</published><updated>2012-02-13T14:02:40.124-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-13T14:02:40.124-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="ncees" /><category scheme="http://www.blogger.com/atom/ns#" term="ti36x pro" /><category scheme="http://www.blogger.com/atom/ns#" term="FE" /><category scheme="http://www.blogger.com/atom/ns#" term="handbook" /><category scheme="http://www.blogger.com/atom/ns#" term="Exam" /><category scheme="http://www.blogger.com/atom/ns#" term="Fundamentals of Engineering" /><category scheme="http://www.blogger.com/atom/ns#" term="EIT" /><title>Fundamentals of Engineering/EIT Exam General Tips</title><content type="html">I took the Fundamentals of Engineering Exam in October 2011. Two months later I received the results, stating that I passed (YAY!). Hopefully I can pass on a couple tips from my experience with the test!&lt;br /&gt;
&lt;br /&gt;
&lt;table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: left; margin-right: 1em; text-align: left;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://lh5.ggpht.com/-coqdqnO6UgU/Tw820E2F2YI/AAAAAAAAANA/MEn4njr6Qc4/banner_FE_passed_thumb%25255B3%25255D.jpg?imgmax=800" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img alt="banner_FE_passed" border="0" height="174" src="http://lh5.ggpht.com/-coqdqnO6UgU/Tw820E2F2YI/AAAAAAAAANA/MEn4njr6Qc4/banner_FE_passed_thumb%25255B3%25255D.jpg?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block;" title="banner_FE_passed" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Pass the FE Exam&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;span id="Wait_Time"&gt;&lt;em&gt;Waiting time to get results:&lt;/em&gt;&lt;/span&gt; Like I said before, it took me two months to get my results. I took my exam on October 29, 2011 and on December 20, 2011 I got an email saying&amp;nbsp;“Your results from your recent NCEES exam have been released. To access your results, log into your NCEES exam registration account.”&amp;nbsp;When I logged into my NCEES account I was able to see a message stating that I passed. I got an actual letter in my mailbox about a week after that.&lt;br /&gt;
&lt;br /&gt;
&lt;em&gt;Calculator:&lt;/em&gt; The most important tip I can give is to get a good calculator and learn how to use it to the fullest extent. I’m partial to Texas Instruments (TI) calculators, so I looked up what was allowed for the exam. I found that, for TI branded calculators, “TI-36” must be part of the name. The most powerful calculator fitting that description was the “TI-36X PRO,” so I ordered it. I did a &lt;a href="http://nickweil.blogspot.com/2012/01/product-review-texas-instruments-ti-36x.html"&gt;review of the calculator in a previous post (link)&lt;/a&gt;. Bottom line is that it is a great calculator for this test. I know that some people take pride in doing calculations in their head, but during the morning portion, you will have so many questions to answer that you will likely be crunched for time. Some of the math questions on the morning portion will simply take a couple keystrokes on the right calculator. This time savings will help you when you reach the subjects you struggle with.&lt;br /&gt;
&lt;em&gt;&lt;/em&gt;&lt;br /&gt;
&lt;em&gt;&lt;/em&gt;&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;em&gt;Handbook:&lt;/em&gt; The second most important tip I can give is to print out the NCEES handbook (the PDF they give you with all the formulas), get it bound and use it to solve a bunch of practice problems. I know that we are in the digital age where we mostly look at documents on a computer screen, but this is one document where you need to actually have a hard copy. Note that the handbook is over 200 pages, which makes it very unwieldy if it is not bound. Again, like the calculator, some of the questions on the morning exam will be answered implicitly by the handbook. On exam day, when you are struggling with a problem, you will have two resources to help you out: your handbook and your calculator. If you are not familiar with either resource, they won’t be very much help.&lt;br /&gt;
&lt;br /&gt;
&lt;em&gt;Review Manual:&lt;/em&gt; My school did not offer a review course, so I bought Michael R. Lindeburg’s &lt;u&gt;FE Review Manual&lt;/u&gt;. This book only prepares you for the morning portion but it does a great job. It has practice questions at the end of each chapter and a full 4 hour practice test in the back. In general, I felt like the questions on the actual FE Exam were easier than Lindeburg’s practice questions. Perhaps this was on purpose, but it made me feel confident on exam day. Also, the pages before the first chapter contain very good general information about the exam, such as what to bring and what to expect on exam day. I would recommend getting this book.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://nickweil.blogspot.com/2012/01/fundamentals-of-engineeringeit-exam_18.html"&gt;Also check out my post on FE Exam Strategy (link)&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
LINKS:&lt;br /&gt;
Lindeburg's Review Manual: &lt;a href="http://ppi2pass.com/shop/fe-eit-exam/fe-eit-exam-review-materials"&gt;http://ppi2pass.com/shop/fe-eit-exam/fe-eit-exam-review-materials&lt;/a&gt;&lt;br /&gt;
NCEES: &lt;a href="http://www.ncees.org/"&gt;http://www.ncees.org/&lt;/a&gt;&lt;br /&gt;
Great resource site:&amp;nbsp;&lt;a href="http://www.feexamreview.com/"&gt;http://www.feexamreview.com/&lt;/a&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/xwXJM/~4/ZBVWvvfP1KY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nickweil.blogspot.com/feeds/2663145060490381829/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://nickweil.blogspot.com/2012/01/fundamentals-of-engineeringeit-exam.html#comment-form" title="8 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/2663145060490381829?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/2663145060490381829?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/xwXJM/~3/ZBVWvvfP1KY/fundamentals-of-engineeringeit-exam.html" title="Fundamentals of Engineering/EIT Exam General Tips" /><author><name>Nick Weil</name><uri>https://plus.google.com/106576647283267943602</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-9mC581-2b38/AAAAAAAAAAI/AAAAAAAAAks/KJhs9Q44Tqk/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh5.ggpht.com/-coqdqnO6UgU/Tw820E2F2YI/AAAAAAAAANA/MEn4njr6Qc4/s72-c/banner_FE_passed_thumb%25255B3%25255D.jpg?imgmax=800" height="72" width="72" /><thr:total>8</thr:total><feedburner:origLink>http://nickweil.blogspot.com/2012/01/fundamentals-of-engineeringeit-exam.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkEEQXszeSp7ImA9WhBTGUw.&quot;"><id>tag:blogger.com,1999:blog-1597214980833186328.post-7686149539106611488</id><published>2012-01-12T08:46:00.000-08:00</published><updated>2013-02-14T22:43:20.581-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-02-14T22:43:20.581-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="ti36x pro" /><category scheme="http://www.blogger.com/atom/ns#" term="Calculator" /><category scheme="http://www.blogger.com/atom/ns#" term="Exam" /><category scheme="http://www.blogger.com/atom/ns#" term="Fundamentals of Engineering" /><category scheme="http://www.blogger.com/atom/ns#" term="Texas Instruments" /><title>Product Review: Texas Instruments TI-36X PRO Calculator</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;img alt="ti36x pro" border="0" height="219" src="http://1.bp.blogspot.com/-peZ84sWlxyg/Tw8Nz-hIjGI/AAAAAAAAAMM/i4RaiFOjXDU/s400/banner_TI36PRO_calc.jpg" width="400" /&gt;&lt;/div&gt;
&lt;strong&gt; Summary:&lt;/strong&gt; The only reason you need this product is if you are taking a test which has a strict calculator policy, such as the Fundamentals of Engineering or PE Exam. It has high level math capabilities without the graphing and programming of TI-89, TI-92 etc. But if you are taking one of those tests, this calculator is a fantastic.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Price:&lt;/strong&gt; Under $30 (I bought mine from Amazon) And here is a link from officemax for $22.99:&lt;br /&gt;
&lt;a href="http://gan.doubleclick.net/gan_click?lid=41000613802464048&amp;amp;pid=22515342&amp;amp;adurl=http%3A%2F%2Fwww.officemax.com%2Ftechnology%2Fcalculators-accessories%2Fscientific-calculators%2Fproduct-prod3490004%3Fcm_mmc%3DPerformics-_-Technology-_-Calculators%2520and%2520Accessories-_-Scientific%2520Calculators%26ci_src%3D14110944%26ci_sku%3D22515342&amp;amp;usg=AFHzDLuZbKi9RJEdS4RzC0RunPto75J2JQ&amp;amp;pubid=589519" rel="nofollow"&gt;TI-36X Pro Scientific Calculator 36PRO/1L1/A (Google Affiliate Ad)&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Review:&lt;/strong&gt; The TI-36X PRO is a calculator which seems to be designed specifically for standardized testing. Basically, it takes most of the features of an advanced graphing calculator, such as a TI-89, and puts them in a package that is allowed on your standardized test. I bought this calculator for the FE Exam and I as amazed at how much it could do.&lt;br /&gt;
&lt;br /&gt;
&lt;em&gt;Solver:&lt;/em&gt; One of the most powerful features is the numerical solver. You can enter any single variable equation and solve for the variable (a numerical result). This comes is so handy on a test where you are provided a formula and the variable you need to solve for is not isolated. You have to be a little careful, though. The numerical solver only returns one solution, even though if the equation you entered has multiple solutions, and there is no warning. The polynomial solver, on the other hand, does return all possible solutions. Obviously, the equation must be in the form of a polynomial to use this feature but usually that is not a problem. As if that wasn’t enough, there is also a system solver. This can be used when you have a 2x2 or 3x3 linear system of equations. This feature is somewhat duplicative since you can also just transform a representative matrix into reduced row echelon form (rref) on the matrix menu, but oh well.&lt;br /&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;em&gt;Calculus: &lt;/em&gt;The TI-36X PRO does calculate definite integrals (no indefinite). And the calculator will take the first order derivative of any single variable function, evaluated at a given value. The common theme here is that you will get a numerical result. One thing the calculator does not do is symbolic manipulation, where you will get an answer with variables in it. But still, being able to do integrals and derivatives is very useful. In fact, on the FE Exam I had physics questions which boiled down to simple derivatives (position/velocity/acceleration) and the calculator helped me out tremendously.&lt;br /&gt;
&lt;br /&gt;
&lt;em&gt;Matrices/Vectors:&lt;/em&gt; You can create matrices (up to 3x3) and manipulate them using the following functions: Transpose, Inverse, ref, and rref. You can create vectors (up to a dimension of 3) and use the dot product, cross product and magnitude functions. &lt;br /&gt;
&lt;br /&gt;
&lt;em&gt;Electrical: &lt;/em&gt;As an electrical engineering student, I was very happy that the calculator made it easy to switch complex numbers from polar to rectangular format. I was also happy with digital/logic type features. You can convert numbers to hexadecimal, binary or octal base and even create logic equations using and, or, xor, not, nand and 2’s complement.&lt;br /&gt;
&lt;br /&gt;
&lt;em&gt;Statistics:&lt;/em&gt; I am not a statistics expert, but the calculator give me everything I needed on the FE exam. It has built-in functions which take lists of data points (max 5 per list), and calculates all of the statistics you would ever want (at least on the FE Exam). There is also a linear regression function which I found useful.&lt;br /&gt;
&lt;br /&gt;
&lt;em&gt;Conversion/Constants:&lt;/em&gt; The built-in conversion function is very useful. It includes English-Metric, temperature, speed/length, pressure and power/energy conversions. Granted, this feature is somewhat limited to common, basic conversions but often that is exactly what you need. The calculator also contains 20 scientific constants, from the acceleration due to gravity to the charge of an electron. Again, not a comprehensive list but useful nonetheless.&lt;br /&gt;
&lt;br /&gt;
&lt;em&gt;Programming Bugs:&lt;/em&gt; I wrote &lt;a href="http://nickweil.blogspot.com/2012/01/ti-36x-pro-programming-bug-info-video.html"&gt;a post (link)&lt;/a&gt; all about the programming bug. There is more info on the &lt;a href="http://en.wikipedia.org/wiki/TI-36#Programming_Errors"&gt;Wikipedia page for the TI-36&lt;/a&gt; and also &lt;a href="http://consumerist.com/2011/09/this-texas-instruments-calculator-cant-calculate-correctly.html"&gt;here (link)&lt;/a&gt;. The bug only affects mixed fractions that include \(\pi\), but make sure you try my example to check if your calculator has the bug.&lt;br /&gt;
&lt;br /&gt;
Of course, there are other features of this calculator but I have went over the features I found most interesting and useful. If you are an engineering student or someone else who needs to calculate integrals or derivatives, get a TI-89 or TI-92 and make life easier for yourself. On the other hand, if you are someone who does not do any high level math, get the simplified TI-30X and ditch all the bells and whistles that you don’t need. The TI-36X PRO is in a niche between those extremes. If that is what you need, the TI-36X PRO is for you&lt;br /&gt;
&lt;div style="text-align: center;"&gt;
&lt;iframe bordercolor="#000000" frameborder="0" height="250" hspace="0" marginheight="0" marginwidth="0" scrolling="no" src="http://ad.doubleclick.net/adi/N7433.148119.BLOGGEREN/B6535994.1538;sz=300x250;ord=[timestamp]?;lid=41000613802464048;pid=22515342;usg=AFHzDLuZbKi9RJEdS4RzC0RunPto75J2JQ;adurl=http%253A%252F%252Fwww.officemax.com%252Ftechnology%252Fcalculators-accessories%252Fscientific-calculators%252Fproduct-prod3490004%253Fcm_mmc%253DPerformics-_-Technology-_-Calculators%252520and%252520Accessories-_-Scientific%252520Calculators%2526ci_src%253D14110944%2526ci_sku%253D22515342;pubid=589519;price=%2422.98;title=TI-36X+Pro+Scientific+Calculator+36PRO%2F1L1%2FA;merc=OfficeMax;imgsrc=http%3A%2F%2Fwww.officemax.com%2Fcatalog%2Fimages%2F397x353%2F22515342i_01.jpg;width=151;height=135" vspace="0" width="300"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/blogspot/xwXJM/~4/tUE0tvnWwRo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nickweil.blogspot.com/feeds/7686149539106611488/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://nickweil.blogspot.com/2012/01/product-review-texas-instruments-ti-36x.html#comment-form" title="8 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/7686149539106611488?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/7686149539106611488?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/xwXJM/~3/tUE0tvnWwRo/product-review-texas-instruments-ti-36x.html" title="Product Review: Texas Instruments TI-36X PRO Calculator" /><author><name>Nick Weil</name><uri>https://plus.google.com/106576647283267943602</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-9mC581-2b38/AAAAAAAAAAI/AAAAAAAAAks/KJhs9Q44Tqk/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-peZ84sWlxyg/Tw8Nz-hIjGI/AAAAAAAAAMM/i4RaiFOjXDU/s72-c/banner_TI36PRO_calc.jpg" height="72" width="72" /><thr:total>8</thr:total><feedburner:origLink>http://nickweil.blogspot.com/2012/01/product-review-texas-instruments-ti-36x.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0UBQ30zfyp7ImA9WhRbFk4.&quot;"><id>tag:blogger.com,1999:blog-1597214980833186328.post-4029576423347640453</id><published>2012-01-09T21:43:00.001-08:00</published><updated>2012-02-07T08:14:12.387-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-07T08:14:12.387-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="development board" /><title>Q&amp;A: What is a development board?</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;img alt="arduino and breadboard" border="0" height="219" src="http://3.bp.blogspot.com/-i8eWrb_6fQU/Twz1f92QtUI/AAAAAAAAALo/BVzwylfnon8/s400/banner_arduino_bbd2.jpg" width="400" /&gt;&lt;/div&gt;
A development board is a printed circuit board with circuitry and hardware designed to facilitate experimentation with a certain microcontroller.&lt;br /&gt;
&lt;br /&gt;
Imagine if you had a microcontroller which could do all kinds of cool things but to be able to use it, you had to set up a bunch of circuitry and hardware on your breadboard each time. Obviously, this would get sort of frustrating, especially when there are circuits which are going to be the same every time, such as the power circuit. Also there are certain hardware circuits which greatly aid testing and debugging such as pushbuttons and LEDs. Having all of the hardware and circuitry already constructed makes life much easier and is much more conducive to experimentation and general prototyping.&lt;br /&gt;
&lt;br /&gt;
Typical components of a development board include:&lt;br /&gt;
-power circuit; typically set up to run off of a 9V power supply&lt;br /&gt;
-programming interface; an easy way program the microcontroller from a computer&lt;br /&gt;
-basic input; usually buttons&lt;br /&gt;
-basic output; usually LEDs&lt;br /&gt;
-I/O pins; to be used for everything else, motors, temperature sensors, LCD screens, etc.&lt;br /&gt;
&lt;br /&gt;
Probably the most popular and recognizable development board is the Arduino, and for good reason. The Arduino is exceedingly simple to use and even open source. But there are many, many other great development boards such as the BeagleBoard, the Chumby board and the TI Launchpad. Again, these are only boards that I have had contact with but there are many others.&lt;br /&gt;
&lt;br /&gt;
Working with development boards can be educational, fulfilling and fun. Go ahead and try working with one and I bet you will learn something new.&lt;br /&gt;
&lt;br /&gt;
LINKS:&lt;br /&gt;
This is an incredible resource from Hack A Day: &lt;a href="http://hackaday.com/2011/02/01/what-development-board-to-use/"&gt;http://hackaday.com/2011/02/01/what-development-board-to-use/&lt;/a&gt;&lt;br /&gt;
Wikipedia on development boards: &lt;a href="http://en.wikipedia.org/wiki/Microprocessor_development_board"&gt;http://en.wikipedia.org/wiki/Microprocessor_development_board&lt;/a&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/xwXJM/~4/H6W7M_CGWhY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nickweil.blogspot.com/feeds/4029576423347640453/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://nickweil.blogspot.com/2012/01/q-what-is-development-board.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/4029576423347640453?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/4029576423347640453?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/xwXJM/~3/H6W7M_CGWhY/q-what-is-development-board.html" title="Q&amp;amp;A: What is a development board?" /><author><name>Nick Weil</name><uri>https://plus.google.com/106576647283267943602</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-9mC581-2b38/AAAAAAAAAAI/AAAAAAAAAks/KJhs9Q44Tqk/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-i8eWrb_6fQU/Twz1f92QtUI/AAAAAAAAALo/BVzwylfnon8/s72-c/banner_arduino_bbd2.jpg" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://nickweil.blogspot.com/2012/01/q-what-is-development-board.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0QFSX86eSp7ImA9WhRbEkQ.&quot;"><id>tag:blogger.com,1999:blog-1597214980833186328.post-8548676153775640975</id><published>2011-06-07T20:53:00.000-07:00</published><updated>2012-02-03T12:01:58.111-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-03T12:01:58.111-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="debugger" /><category scheme="http://www.blogger.com/atom/ns#" term="Interrupts" /><category scheme="http://www.blogger.com/atom/ns#" term="ATmega" /><category scheme="http://www.blogger.com/atom/ns#" term="AVR" /><category scheme="http://www.blogger.com/atom/ns#" term="STK200" /><title>blinky lights with interrupts</title><content type="html">In the previous post, I kind of glossed over the problem with using the built in delay function. I said that it would be better to use interrupts so I'll go more in depth about that.&lt;br /&gt;
&lt;br /&gt;
The problem with using the built in delay is that CPU clock cycles are essentially wasted. In such a simple program like we had in the previous post, we are not worried about conserving clock cycles but you can imagine that in a very complex program you would want every clock cycle to do something. Once interrupts are set up and enabled, they will "interrupt" the program when a certain condition is met. In the case of delay, a timer counts clock cycles and once a certain number is reached, the program is interrupted and carries out a "service routine" specified by the programmer. Once the service routine is finished, the program returns to the line of code it was executing when the interrupt occurred.&lt;br /&gt;
&lt;br /&gt;
To illustrate the difference between the two types of delays, I wrote a program that does the exact same thing as the program in the previous post but it uses interrupts rather than the built in delay. This program simply makes the built in LEDs turn on and off at a rate that is perceptible to the human eye:&lt;br /&gt;
&lt;pre class="prettyprint"&gt;&lt;code&gt;#include &amp;lt;avr/io.h&amp;gt;
#include &amp;lt;avr/interrupt.h&amp;gt;

int main(void)
{
    DDRB = 0xFF;        //PORT B (LEDs) output
    TCNT0 = 0;          //timer starts at zero
    OCR0 = 200;         //and counts up to 200
    TCCR0 = 0b00001101; //CTC mode, internal clk, 1024 prescaler

    sei();              //global interrupt enable
    TIMSK = (1&amp;lt;&amp;lt;OCIE0); //timer0 overflow interrupt enable
 
    while(1)
        asm("nop");     //stay here....
}

ISR (TIMER0_COMP_vect)
{
    PORTB ^= 0xFF;      //toggle PORTB (LEDs)
}
&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;
So you can load this program using the same method as I showed before and see that the LEDs simply turn on and off. All the connections should be exactly the same.&lt;br /&gt;
&lt;br /&gt;
Some notes on the program: we first set up timer0 by setting TCCR0 to the binary 0001101. Of course we could express this in hex or even decimal but for me, the binary makes it easier to understand whats going on. Using the 8 bits of the TCCR0 register, you can specify whether you want "normal mode" (based on overflow) or "CTC mode" (based on compare match). You can also specify a prescaler value which is multiplies the number of clock cycles needed for a count. In other words, a large prescalar makes a delay longer. For our purposes, we'll set TCCR0 for CTC mode and have a prescaler of 1024. TCNT0 is the register which counts upwards with the clock cycles so we want this to start at zero. OCR0 is the value that TCNT0 will count up to before the interrupt occurs, so we will set this to 200. Note that since this is an 8 bit register, the largest value possible is 255. The sei() command sets the global interrupt bit and TIMSK enables the various different conditions that can cause an interrupt. The one we want is OCIE0 (timer0 overflow) which is actually bit _. Finally, the asm("nop") is not necessary for the program to work but it makes it easier to simulate the program in the AVR Simulator.&lt;br /&gt;
&lt;br /&gt;
Speaking of the AVR Simulator or debugger in AVR Studio, lets take a look at how to make sure the program works without even loading it on the AVR. After you have entered all the code and hit F7 for build, go to Debug on the top menu and select Start Debugging.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/-dwQcIN87g0M/TfGXZaPZrAI/AAAAAAAAAF0/9r547UVZB_A/s1600/debugger_arrow.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="316" src="http://1.bp.blogspot.com/-dwQcIN87g0M/TfGXZaPZrAI/AAAAAAAAAF0/9r547UVZB_A/s400/debugger_arrow.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/-RiCT2VE9QJc/TfGXua2fhsI/AAAAAAAAAF4/T-dtM4Thm5s/s1600/debugger_io.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="278" src="http://1.bp.blogspot.com/-RiCT2VE9QJc/TfGXua2fhsI/AAAAAAAAAF4/T-dtM4Thm5s/s400/debugger_io.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
First notice that a yellow arrow is pointing to the first executable line of your code. If you hit F11, you will see that the arrow moves to the next line. This is called stepping through the code. One subtle thing to notice is that F10 steps OVER lines of code while F11 steps INTO lines of code. This comes into play when you have subfunctions within your main() function. You can step INTO the subfunctions or step OVER them. Anyway, lets look at the I/O view on the right side of the screen.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
The I/O view should pop up automatically but if not you can hit Alt+5 to bring it up. From this view you can see that status of all the registers in the AVR which can be extremely useful. For our program, click on the TIMER_COUNTER_0 and check out the registers we were talking about before (OCR0, TCCR0, TCNT0 and TIMSK). Now step through the program and once you get to the asm("nop"), notice how the arrow just stays here every time you hit F11. This is because you are in a while(1) loop, so this would normally just go on forever but we have interrupts now so once the compare match happens we will escape the loop and perform the service routine. If you hit F11 a bunch of times you will see that TCNT0 is increasing slowly. This is because of the prescaler. If there was no prescaler, each clock cycle would increase TCNT0. As you can see, it will take a lot of cycles to get TCNT0 to 200 and see the service routine in action, but eventually you can get there.&lt;br /&gt;
&lt;br /&gt;
So thats about all I'm going to get into. Of course there is a lot more to this subject but this at least illustrates one example.&lt;img src="http://feeds.feedburner.com/~r/blogspot/xwXJM/~4/5XTyr2akHzg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nickweil.blogspot.com/feeds/8548676153775640975/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://nickweil.blogspot.com/2011/06/blinky-lights-with-interrupts.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/8548676153775640975?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/8548676153775640975?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/xwXJM/~3/5XTyr2akHzg/blinky-lights-with-interrupts.html" title="blinky lights with interrupts" /><author><name>Nick Weil</name><uri>https://plus.google.com/106576647283267943602</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-9mC581-2b38/AAAAAAAAAAI/AAAAAAAAAks/KJhs9Q44Tqk/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-dwQcIN87g0M/TfGXZaPZrAI/AAAAAAAAAF0/9r547UVZB_A/s72-c/debugger_arrow.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://nickweil.blogspot.com/2011/06/blinky-lights-with-interrupts.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Dk4FSH48fCp7ImA9WhNSE0o.&quot;"><id>tag:blogger.com,1999:blog-1597214980833186328.post-3931962122226371150</id><published>2011-06-04T13:07:00.000-07:00</published><updated>2012-10-27T14:55:19.074-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-10-27T14:55:19.074-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="ATmega" /><category scheme="http://www.blogger.com/atom/ns#" term="Kanda" /><category scheme="http://www.blogger.com/atom/ns#" term="AVRISP-U" /><category scheme="http://www.blogger.com/atom/ns#" term="8515" /><category scheme="http://www.blogger.com/atom/ns#" term="STK200" /><title>STK 200 - blinky lights</title><content type="html">&lt;i&gt;* update: I wrote a revised version of this guide using AVR Studio 5. It uses the same code but I added new photos and wording. Check it out:&amp;nbsp;&lt;a href="http://nickweil.blogspot.com/2012/03/stk-200-first-program-led-blink.html"&gt;STK 200: First Program (LED Blink)&lt;/a&gt;&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
As I mentioned previously, I was initially frustrated when I tried to program the &lt;a href="http://www.kanda.com/products/kanda/STK200.html"&gt;STK 200 from Kanda&lt;/a&gt;&amp;nbsp;because of the lack of documentation. So I thought it would be helpful to post some of my experiences. To start off, I'll explain the way I loaded a super simple, blinky lights program.&lt;br /&gt;
&lt;br /&gt;
So lets assume you just got the kit in the mail and you have not done any AVR programming in the past. Lets start by installing some software. Go to the &lt;a href="http://www.atmel.com/dyn/products/tools_card.asp?tool_id=2725"&gt;Atmel website&lt;/a&gt; and download AVR Studio 4 (you will have to register but it is free). Atmel released AVR Studio 5 beta in March 2011 but as of now I still use AVR Studio 4 because of the extensive support for it. Next go to the &lt;a href="http://www.kanda.com/downloads2.php"&gt;Kanda website&lt;/a&gt; and download their AVRISP-U software. Finally, we need AVR GCC (C Compiler). So you can check out the &lt;a href="http://winavr.sourceforge.net/index.html"&gt;WinAVR website&lt;/a&gt; for a link to the download page or just go the WinAVR &lt;a href="http://sourceforge.net/projects/winavr/files/"&gt;sourceforge page&lt;/a&gt; and find the latest stable release.&lt;br /&gt;
&lt;br /&gt;
So what do we actually want our program to do? Our objective is to simply cause the built-in LEDs to blink. If you look at the kit, there is a row of 10 LEDs numbered from 0 to 7 then "ISP" and "ON." Looking along the edge of the board, there is a row of "PORTS" and across from "PORTB" there is a 10 pin header named "LED'S". We need to connect PORTB to the LED header using the supplied ribbon cable. I marked the two locations on the picture below:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-usD5hhDZDa0/TfGYR5h-y4I/AAAAAAAAAF8/TRDLmBQJveM/s1600/markedup_STK1.JPG" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="300" src="http://1.bp.blogspot.com/-usD5hhDZDa0/TfGYR5h-y4I/AAAAAAAAAF8/TRDLmBQJveM/s400/markedup_STK1.JPG" width="400" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;STK 200: LED Layout&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
This is a good time to point out that on the above picture, I switched my stock ATmega8515 with an ATmega32 which I ordered. For this program, everything, including the code is exactly the same for both. However, for complex programs, you might need more memory or functionality which the ATmega32 could provide. If you are interested in switching your microcontroller, check out my &lt;a href="http://nickweil.blogspot.com/2012/01/stk-200-switching-microcontrollers.html"&gt;"switching microcontrollers" post (link)&lt;/a&gt;.&amp;nbsp;And in this blog post, whenever you see ATmega32, replace it with ATmega8515 if you are using the stock STK kit.&lt;br /&gt;
&lt;br /&gt;
Assuming all of the software is now installed, go ahead and open AVR Studio 4. You should see the following screen (except there will be no recent projects):&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-AoJ-uMs9aqw/TfGYvENG7nI/AAAAAAAAAGE/xSKsmLm_y4k/s1600/AVR_studio_firstscreen_markup.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="232" src="http://3.bp.blogspot.com/-AoJ-uMs9aqw/TfGYvENG7nI/AAAAAAAAAGE/xSKsmLm_y4k/s400/AVR_studio_firstscreen_markup.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
Pick the New Project option. Now choose "AVR GCC" as the Project Type, "blink" as the project name and make sure that both the "Create Initial File" and "Create Folder" boxes are checked. It should look like:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/--LlA26dFmOU/TfGY2tIvM5I/AAAAAAAAAGI/96l5MiHcXis/s1600/AVR_studio_secondscreen_markup.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="220" src="http://4.bp.blogspot.com/--LlA26dFmOU/TfGY2tIvM5I/AAAAAAAAAGI/96l5MiHcXis/s400/AVR_studio_secondscreen_markup.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Finally, click next and select "ATmega8515" from the list of devices on the right side. Click finish and you are finally ready to write some code!!&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Essentially, PORTB is an I/O port which will control the LEDs. So our code will just tell PORTB to send out alternating OFF/ON signals. Here is the C code I would write:&lt;/div&gt;
&lt;pre class="prettyprint"&gt;#include &amp;lt;avr/io.h&amp;gt;
#include &amp;lt;util/delay.h&amp;gt;

void delay_ms(unsigned int d)
{
    _delay_ms(d);        //make delay portable
}

int main(void)
{
    DDRB=0xFF;          //PORT B (LEDs) output
    while(1)
    {
        PORTB=0x00;     //LEDs ON
        delay_ms(1000); //delay
        PORTB=0xFF;     //LEDs OFF
        delay_ms(1000); //delay
    }
}
&lt;/pre&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
I should mention that using the built in delay function is probably not the best idea. I'm using it here because it makes the code look really clean and you can adjust the delay time very easily. You simply write delay_ms(x) where x is the number of milliseconds of delay. The way you should actually do delay is using interrupts but that is a whole other subject. So this works for now. One unfortunate side effect is that he AVR simulator (debugger) in AVR Studio 4 does not always work with the delay library. If you are getting a dialog box that asks you to "please browse to the present location for files originally found at c:\blah blah", you're not alone.&amp;nbsp;But anyway, once you've entered the code in AVR Studio, hit F7 to build the program. As long as you have no errors, you are good to go. Now, lets get set up to program the microcontroller.&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Look at this picture to get an idea for the connections:&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-8Vu2SBGXccw/TfGZIYja2uI/AAAAAAAAAGM/u3WfimbwUI0/s1600/STK+connections.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="300" src="http://2.bp.blogspot.com/-8Vu2SBGXccw/TfGZIYja2uI/AAAAAAAAAGM/u3WfimbwUI0/s400/STK+connections.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Basically, there is one connection with the ISP from your computer to the board and another connection with the ribbon cable between the LED Header and the PORT B Header. Both of the cables are provided with the kit.&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Next, open the AVRISP-U program on your computer and at the bottom of the window there should be green light and something saying that the device is recognized. If there is a red light, hit the reset button on the upper right and see if that works. Here is a screenshot of the program:&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/-yMafFMlFFIE/TeqKFVHLyTI/AAAAAAAAAFQ/O4CyFX8445I/s1600/AVRISP-U_markup.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="355" src="http://1.bp.blogspot.com/-yMafFMlFFIE/TeqKFVHLyTI/AAAAAAAAAFQ/O4CyFX8445I/s400/AVRISP-U_markup.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Then, on the top menu, File&amp;gt;Load&amp;gt;Flash... and browse to the "blink" folder you created when you started in AVR Studio. Once you are in the blink folder, open the folder named "default" and you should find a file named "blink.hex". Load this file. Then do Device&amp;gt;Erase. Next Device&amp;gt;Program&amp;gt;Flash. And finally Device&amp;gt;Run.&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
And thats it! All 8 of the LEDs should be blinking on and off at a reasonable rate. Hopefully it helps somebody getting started with the kit.&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Also check out my other STK 200 posts:&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Switching microcontrollers:&amp;nbsp;&lt;a href="http://nickweil.blogspot.com/2012/01/stk-200-switching-microcontrollers.html"&gt;http://nickweil.blogspot.com/2012/01/stk-200-switching-microcontrollers.html&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;
Getting started programming:&amp;nbsp;&lt;a href="http://nickweil.blogspot.com/2012/02/stk-200-getting-started-programming.html"&gt;http://nickweil.blogspot.com/2012/02/stk-200-getting-started-programming.html&lt;/a&gt;&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/blogspot/xwXJM/~4/hMwoIf3n_aQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nickweil.blogspot.com/feeds/3931962122226371150/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://nickweil.blogspot.com/2011/06/stk-200-blinky-lights.html#comment-form" title="7 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/3931962122226371150?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/3931962122226371150?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/xwXJM/~3/hMwoIf3n_aQ/stk-200-blinky-lights.html" title="STK 200 - blinky lights" /><author><name>Nick Weil</name><uri>https://plus.google.com/106576647283267943602</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-9mC581-2b38/AAAAAAAAAAI/AAAAAAAAAks/KJhs9Q44Tqk/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-usD5hhDZDa0/TfGYR5h-y4I/AAAAAAAAAF8/TRDLmBQJveM/s72-c/markedup_STK1.JPG" height="72" width="72" /><thr:total>7</thr:total><feedburner:origLink>http://nickweil.blogspot.com/2011/06/stk-200-blinky-lights.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0MDRX06cCp7ImA9WhZVEU8.&quot;"><id>tag:blogger.com,1999:blog-1597214980833186328.post-5462066556932922068</id><published>2011-05-22T21:37:00.000-07:00</published><updated>2011-05-22T21:37:54.318-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-05-22T21:37:54.318-07:00</app:edited><title>STK 200</title><content type="html">This semester I used the &lt;a href="http://www.kanda.com/products/Kanda/STK200.html"&gt;STK 200 from KANDA&lt;/a&gt;&amp;nbsp;as an AVR trainer kit. At first I found the kit to be extremely frustrating but it has started to grow on me. I continue to discover useful features built into the unit but these discoveries underline the reason I was frustrated in the first place: there is extremely poor documentation for the kit. After spending countless hours trying to utilize the onboard LCD pins, I stumbled upon &lt;a href="http://www.kanda.com/AVR-C-Code-LCD.php"&gt;example code&lt;/a&gt; on the KANDA website which allowed me to understand the pin controls. Perhaps I can detail some of the difficulties I had to work through in future posts and save others the hassle. The good news is that once you understand how to use the kit, it proves to be very robust and handy.&lt;img src="http://feeds.feedburner.com/~r/blogspot/xwXJM/~4/qN1bA2spMpU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://nickweil.blogspot.com/feeds/5462066556932922068/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://nickweil.blogspot.com/2011/05/stk-200.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/5462066556932922068?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1597214980833186328/posts/default/5462066556932922068?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/xwXJM/~3/qN1bA2spMpU/stk-200.html" title="STK 200" /><author><name>Nick Weil</name><uri>https://plus.google.com/106576647283267943602</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh3.googleusercontent.com/-9mC581-2b38/AAAAAAAAAAI/AAAAAAAAAks/KJhs9Q44Tqk/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://nickweil.blogspot.com/2011/05/stk-200.html</feedburner:origLink></entry></feed>
