Today I added some SD testing routines to my simple menu. One that allows me to view a file on the SD card, and another that writes the time from micros() from bootup. I timed the write of the time, and it took 52ms on average. Great, progress!
Then I tried to build a second one. I made sure all of the wires matched up, burned a bootloader just to make sure (using the bus pirate since I couldn’t get the USBasp to work). When I try to flash it, the LCD doesn’t display the text of the menus. The little selector arrow shows up just fine, but no text. I swapped the LCDs, and the same problem exists. At that point, I decided that it may be a problem with the breadboard, so I move everything to a new breadboard (well used). Mistake #1.
After everything is moved over, the same problem exists. I bring the faulty MCU to the working breadboard, and the same problem exists, so it is the MCU. So I burn a new MCU, and reprogram it, no go. Did it again with a fresher one, no go. I’ll play around with the bootloader to see if I messed up something. But why would the selector show up, if there is something wrong with the bootloader? It even moves as it should, and it doesn’t work in the ‘working’ circuit. Grrr….
While it may be discouraging at times when things don’t go your way, I think its the times when things are working in your favor that make it worth it.