BeeCNC Back on Track!

19 June 2011

About a 1-minute read

Well,

After five days of pulling my hair out, I’ve gotten the MCU on the BeeCNC Motherboard to respond to programming commands!

The checklist for possible problems included

  • a bad crystal/ the wrong type
  • switched input/output lines
  • incorrect crystal caps
  • bad MCU chip
  • RESET line problems

Uploading with FTDI!

Drilling the Holes

Etching

Unfortunately, the list didn’t include the problem: a short on one of the crystal pins to a data line! The data line was not in use and so the crystal could not oscillate at all: the microcontroller was stuck on cycle #1 after programming. One pass with a razor knife fixed the problem right away.

Debugging the circuit forced me to learn a huge amount about breadboarding Arduino clones. Most of what I learned didn’t help me fix my problem, but I love to learn!

A note to those on Ubuntu who may have trouble uploading sketches to Arduino clones with an FTDI cable: It seems the FTDI drivers on Ubuntu have recently changed, and the new drivers hold RESET low all the time except a brief moment at the start of programming. The problem here is that RESET is supposed to go LOW right before upload then remain HIGH for the duration of the upload. With RESET LOW the whole time, the ATmega can’t hear programming instructions!

The fix is a bit disappointing at the moment for those seeking autoreset: cut the trace (or remove the wire) between the FTDI “DTR” pin and the AVR’s “RESET” pin. Instead of trusting the Arduino IDE to toggle the FTDI’s “DTR” line, just press the reset button on your breadboard (like the one in this tutorial) right after the IDE says “Binary sketch size…”

It may take a few tries, but fiddle with it and eventually you’ll get a good sync with successful upload!

Comments