Go Down

Topic: arduino nano bootloader (Read 823 times) previous topic - next topic

protossalot

Hi,

I AM able to get the message "done burning bootloader" in the Arduino IDE, but I don't think it is really happening.

When I reset my target, PB1 (pin 13) does not flash.  When I try to load a program with an FTDI module, I cannot communicate with the target.

Has anyone else experience this?

Thanks.

westfw

The "pin13" that the bootloader flashes is neither pin 13 of the atmega chip, nor pin 13 of the dip-like footprint of the nano, but rather the equivalent of the arduino "digital 13" pin, which is pb5.
Most real and "clone" nanos have the built-in led "L" on this pin.  What actual hardware do you have?

protossalot

Thanks for the reply westfw.

Well don't I feel silly.  PB5 doesn't seem to work either.

Here is the schematic I am using to burn the bootloader.  I will follow up with my FTDI schematic, I'm just tired.

I followed this tutorial: http://www.electronoobs.com/eng_arduino_tut6.php
I think they did a great job.

I'm using a close Arduino Nano for the programmer.  I'm using a QFP32-DIP28 IC test socket (for ATmega 8 AVR series) to connect to the target ATmega328P.  I have omitted the test socket in my schematic.

6v6gt

I don't believe this is correct, taken from the tutorial you are following:



Usually, the programmer to select is "Arduino as ISP" and not "ArduinoISP"

DrAzzy

#4
Oct 18, 2017, 10:15 pm Last Edit: Oct 18, 2017, 10:15 pm by DrAzzy
I don't believe this is correct, taken from the tutorial you are following:



Usually, the programmer to select is "Arduino as ISP" and not "ArduinoISP"
Yup. Yet another example of tutorials being written by people who have apparently not bothered to test their own tutorial...
ATtiny core for 841+1634+828 and x313/x4/x5/x61/x7/x8 series Board Manager:
http://drazzy.com/package_drazzy.com_index.json
ATtiny breakouts (some assembled), mosfets and awesome prototyping board in my store http://tindie.com/stores/DrAzzy

protossalot

#5
Oct 18, 2017, 11:30 pm Last Edit: Oct 19, 2017, 04:11 am by protossalot
I used "Arduino as ISP".  His accent is a little heavy, but he did clarify that.

Here is the schematic for loading sketches.  I changed the programmer back to "AVRISP mkll" before uploading.

westfw

Your pull-up resistor on RESET should be 10k rather than 1k, but I would think that even 1k should work OK.  It might interfere with auto-reset, though (but that shouldn't matter for the first "upload")
You should have bypass caps between Vcc and Gnd.  The cap you have between Vref and Vcc is weird and wrong, but again, I don't think it should affect basic uploading.

protossalot

I have tried both 10k and 1k resistors.

I tried using the capacitor combo for the power supply pins as specified by the official arduino nano schematic.  Surprisingly, this appears to interfere.  I do not see in the ATmega datasheet where this is explicitly recommended.

Using a 40-100uF electrolytic cap on Vref works better, but this appears to not be the problem.

I suspect that my breadboard wire lengths may be causing my issues, but not a whole lot I can do about that.

I have ordered regular crystal oscillators to try next, but in theory that should not work as well as a resonator.

For now I'm giving up. 

The good news is I discovered that the nano will operate with 3.3V applied to the 5V pin (bypassing the regulator).

So for a couple extra dollars, and a little bit of un-optimized board space, I can just use a knock-off nano plugged on top of my pcb projects.

Thanks for trying to help me.

BJHenry

The ATMega328 needs to have the clock selection fuses changed to run off a clock rather than a resonator/crystal.
See section 9.8 of the datasheet.

hammy

#9
Oct 20, 2017, 09:26 pm Last Edit: Oct 20, 2017, 09:47 pm by hammy
After you've put the bootloader on , load the "flash "
Example using the USB. If that works, then you have a bootloader in place. If you load a program via the FDTI then that over writes the bootloader .
I use NANO's and set the board as "UNO". ; then load the bootloader  - that gives you optiboot ( smaller and allows you to use interrupts )

Go Up