Sunday, September 14, 2014

Mintduino Programming Error

As I occasionally do, today I'm using this blog to post about a specific issue that I encountered, where I had a very hard time finding the answer on the internet.

Some Background


As of late, I've been spending a lot of time learning about microcontrollers, specifically the Arduino kind.  Soon, I suspect I'll be putting together a larger post on this adventure.

The Problem


I decided to test my skill and build a Mintduino from Minitronics.  This was a true test of my skill at building circuits thusfar, and it was very rewarding (I even got an extra microcontroller to build stuff with at the end).

However, after the build, I hooked up the obligatory FTDI Friend from Adafruit and could not get the Mintduino to accept the new program.  To be specific, I was getting this error:

avrdude: stk500_getsync(): not in sync: resp=0x00
Unfortunately, this error has many causes.  Here are a few of the common ones.  Per the instructions at that link, I verified all of my drivers and checked the connections.  But my FTDI Friend has LEDs on it, that blink as it does it's job, so I was seeing the reset trigger on my mintduino by the LED on Pin 13 flashing, and I was seeing the FTDI Friend attempt to transmit data and fail (by it's LED).  So I went through the instructions again and verified my build.  Everything was fine.  I spent quite some time searching for the solution.  I tried holding down the reset button per this old article, but that didn't work.  Even Stack Exchange didn't have a decent answer.  I was almost to the point of buying a different USB to Serial Converter per this guy's advice.

The Solution


Deep in the bowels of the arduino forums, I found this post.  It turns out that the Mintduino needs to be programmed not as an Uno, but as a:
Duemilanove w/ ATmega328
I don't know if this is always the case, but it worked for me and for the guy on the forums.  The Mintduino doesn't always work as the Uno it seems.  Happy Coding.