Uno to Nano...

Hi,
Up until now I have only used a Uno, this programs every time, although the port seems to change now and again, but I think that is a windows thing. However today I got a Nano, this I plugged in to another USB port on the front of my PC? It seems to have settled on COM-8 (The Uno is on 4). But everytime I try to upload a sketch I get the this message: stk500_getsync() not in sync
resp=0x00. It looks like the RX LED flashes 3 times and that's it nothing, I even nkow the problem is no comms, do I need a different driver for a Nano? if the Uno works fine, arn't they all installed along with IDE?

I have seen a few threads on this, but none of them seem to solve the problem, So yes I've made sure it's the right board under Tools also tried all the available ports, but I can't get any luck, it's frustrating to say the least!!

Any help or advice will be very welcome.
Regards

Mel.

1 Like

Did you change the board type to the Nano?

So yes I've made sure it's the right board under Tools also tried all the available ports, but I can't get any luck, it's frustrating to say the least!!

So the answer is YES! I did.

Yes, the Nano board requires a different PC USB driver program then the Uno board to be installed as it uses a on-board FTDI USB serial converter chip.

Lefty

So, CactusFace, at this point in Windows, you want to open Device manager with the Nano plugged in, select virtual port by expanding the Ports (COM & LPT), navigate to the Nano port, double-click the setting, select the "Driver" tab, select "Update Driver..." and browse to your Arduino installation; mine is here:
C:\Program Files\Arduino_105\drivers\FTDI USB Drivers
(if you have instructed windows to look in sub-directories, you should be able to install from the "drivers' path)

Read the README.txt file. Install the driver. Remove and reinstall the Nano.

Here are the results from USBView.exe

Device Descriptor: bcdUSB:             0x0200 bDeviceClass:         0x00 bDeviceSubClass:      0x00 bDeviceProtocol:      0x00 bMaxPacketSize0:      0x08 (8) idVendor:           0x0403 (Future Technology Devices International Limited) idProduct:          0x6001 bcdDevice:          0x0600 iManufacturer:        0x01 0x0409: "FTDI" iProduct:             0x02 0x0409: "FT232R USB UART" 0x0409: "FT232R USB UART" iSerialNumber:        0x03 0x0409: "A9015BP2" bNumConfigurations:   0x01 ConnectionStatus: DeviceConnected Current Config Value: 0x01 Device Bus Speed:     Full Device Address:       0x01 Open Pipes:              2 Endpoint Descriptor: bEndpointAddress:     0x81  IN Transfer Type:        Bulk wMaxPacketSize:     0x0040 (64) bInterval:            0x00 Endpoint Descriptor: bEndpointAddress:     0x02  OUT Transfer Type:        Bulk wMaxPacketSize:     0x0040 (64) bInterval:            0x00 Configuration Descriptor: wTotalLength:       0x0020 bNumInterfaces:       0x01 bConfigurationValue:  0x01 iConfiguration:       0x00 bmAttributes:         0xA0 (Bus Powered Remote Wakeup) MaxPower:             0x2D (90 Ma) Interface Descriptor: bInterfaceNumber:     0x00 bAlternateSetting:    0x00 bNumEndpoints:        0x02 bInterfaceClass:      0xFF bInterfaceSubClass:   0xFF bInterfaceProtocol:   0xFF iInterface:           0x02 0x0409: "FT232R USB UART" 0x0409: "FT232R USB UART" Endpoint Descriptor: bEndpointAddress:     0x81  IN Transfer Type:        Bulk wMaxPacketSize:     0x0040 (64) bInterval:            0x00 Endpoint Descriptor: bEndpointAddress:     0x02  OUT Transfer Type:        Bulk wMaxPacketSize:     0x0040 (64) bInterval:            0x00 

Good luck,

Ray

Hi Chaps,
Thanks for your replies, following the advice of MrB I can't find the Nano in Device manager, so perhaps it's faulty it was only a cheap chinese job, that did'ent cost a lot. Of course the Uno has the ATM chip as USB and the Nano the FTDI?

So is my Nano dead?? or can I try something else? ....

Regards

Mel.

Cactusface:
So is my Nano dead?? or can I try something else? ....

More than likely not. Just the usual sort of problems. And in my (few months) experience, the Chinese ones work just fine.

I'll tell you one reason I seem to find it easier - mostly I am using Linux, and Linux uses generic device drivers which just work for practically any device of a given enumerated type with no fuss at all. Why Windoze is so deliberately and culpably painful, I really cannot fathom.

The "try something else" I would seriously recommend, is Linux. XD Ubuntu or Mint.

Hi Paul__B,
I have in the past used Mint, and like it. I am one of that group that thinks it's a shame that the most popular OS is also the worst!! I do have a Macbook so I could try that and see what happens. I did use it for a time when I was using Picaxe and that was a problem too.....

Regards
Mel.

Hi Mel.

Did you try to open device manager and plugging your nano in a port it hasn't seen yet ?
Doesn't that result in a pop up or some unknown device in device manager ?
Any yellow triangular sign with an exclamation mark ?

If so, right click it and install the driver like mrburnette told you.

Hi All,
Many thanks for your help and advice!! I solved the problem today, when a new Nano turned up and worked first time! So the other one is a DUD, they both came from the same supplier, so who knows? As only the RX led flashed (3 times) on trying to upload code, it could be the USB bit that's faulty, might take a look at that??

But I do like it's size and it's great for breadboard work.

So all I have to do now is play wih it and have fun, because that's what it's about. Until I find a real use for it!!

Regards

Mel.

@Mel,

Great news with the new Nano. Now that you have one that works, you could try to use the good one and run the ArduinoISP sketch and use it in an attempt to program the broken one by ISP. If this works, you can still 'salvage' the broken unit and use it for something semi-permanent.

Ray

Hi Ray,
Now there's a good idea, I take it I just need to connect the same pins as per the Uno ISP sketch!
While we're talking of such things I was'ent quite sure about actully programimg a Nano/Uno with a program for a stand alone application, do I go about it the same way and do I need the bootloader? I have no objection for buying a cheap ISP programmer if needed, any thing come to mind!!

Thanks again.
Regards
Mel.

programimg a Nano/Uno with a program for a stand alone application, do I go about it the same way and do I need the bootloader?

Essentially, the 328 running the ArduinoISP (or Nick's equivalent) is connected to the PC via normal USB and to the chip/board using the ISP wiring diagram Gammon Forum : Electronics : Microprocessors : How to make an Arduino-compatible minimal board OR
Burning a bootloader to an Arduino Nano using another Arduino | sysexit
Set up your sketch in the GUI, select the target board (one being loaded), select Arduino as ISP, and use the GUI commands
File-> Upload Using Programmer.

Ray

Updated:
As for dedicated ISP, I have gotten through 3 years without one. For raw chips, I use this shield on my UNO

When needing an ISP wired connection, I have a little jig made that fits the ZIF socket and brings out the pinouts for the ISP connector. I have programmed 328P, t85, and 1284's without issues. It is rare these days to need to unplug the shield from the UNO as I use Mini-Pro and Nano for most things that I do. It would be very easy to build up a clone uno on breadboard and put in s $1 Chinese ZIF XD

Hi All.
@Ray, Thanks for your reply and pointing me to Nick Gammon's links. I followed Nick instructions and got my DEAD Nano to work, like Nicks my Nano came from China and had no bootloader, but once that was burnt in, all seems to be OK.

But sadly I can't program my spare ATmega 328 chip, I have build the Adafruit programmer shield as per their website, the RED LED blinks all the time, even without a chip in the socket, but this could be normal? The GREEN LED comes on for a short time before the error shows up.

I also tried Nick's breadboard layout, along with his Atmega_board_detector, this can't reconize the board/Chip, double checked all wiring, etc. their both coming up as unreconized... a DUD chip, or have I blown it? or perhaps hopefully something else?

Here's a couple of pics that might help.

Thanks again.
Regards
Mel.

Mel,

Using this pic as a reference;

It looks like the reset line wiring is not going to pin #1.... count the holes.

I cannot edit and see the pic at the same time, but double check your ZIF location on the board, then the wiring.

Ray

Added:
Using a solderless breadboard jumper or small piece of bare wire (but NOT a DMM probe) and without the 328P-PU in the socket... insert the jumper, close the ZIF and use the DMM on Ohm setting to ring-out the wiring. Your socket and Limor's picture are "off" by one horizontal row from what it appears.

Hi Ray,
Thanks again, I moved the ZIF Socket one space to the left, this allowed me to add a 0.1uF cap to the power rails at the other end of the socket.. Double checked reset in on pin one, also checked the others out and the socket to make sure all pins are connected, all pins that need to be connected that is !! and to the right socket pin.

When I try to upload the bootloader I get this message:

################################## | 100% 0.06s

avrdude: Device signature = 0x1e9514
avrdude: Expected signature for ATMEGA328P is 1E 95 0F
Double check chip, or use -F to override this check.
avrdude: Send: Q [51] [20]
avrdude: Recv: . [14]
avrdude: Recv: . [10]

avrdude done. Thank you.

Does that seem to suggest that there might be a problem with the chip itself? as again Nick's Atmega_board_detector, returns similar results, as per pictures. I'll keep trying the breadboard and shield, must get it right soon, but if anyone's any good ideas, I'm listerning..

Regards
Mel.

@Mel

Before you can use the chip to load sketches, you need to select UNO as your board type and use the Tools menu to burn bootloader ...this will (should) set the fuses.

Ray

Hi, I had The same Problem Like you, I fond The solution here.

http://pdp11.byethost12.com/AVR/ArduinoAsProgrammer.htm

You are Using Atmega328 and the arduino uses the atmega328p so the digital signature is different. I use the above solution because I tried to follow other posts with arduino software configurations modifications and found no solution there.

@Ray,
Yes that's what I've been doing or trying, as I get the error- Error while burning bootloader... As I said I've checked everything I can think of ! Would a crystal and caps help, making things more stable clock wise? If I don't use them does the chip settle for the internal resonator, 8Mhz.

circuito's post looks interesting and is perhaps what I really want to do! Put Hex code directly in to the ATmega328 for stand-alone apps, but I have no experiance of working with Avrdude this way, it seems fairly straight forward? It's years since I ventured in to the command line prompt (but using the IDE would be even better).

Regards
Mel.

@Mel,

It does appear that you were sold Atmel328-PU (non-"picoPower" variant of the ATMega328P) instead of the Atmel328P-PU... bummer!

As I recall, there are several work-arounds available, as here:
http://www.instructables.com/id/Bootload-an-ATmega328/step6/
and
http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&p=922850
and
http://computerpr0n.com/2012/03/burning-arduino-bootrom-on-an-atmega328-pu/
and
http://forum.arduino.cc/index.php?topic=58670.0
and (added):
http://3g1l.com/blog-burn-bootloader-blank-atmega328atmega328p-arduino-uno

You can get GUI support, it appears as the last example explains. However, it is a fix only for flashing the bootloader and then setting the fuses the first time.

According to retroLefty:

Once you have a arduino bootloader installed on a non p 328 chip, you need no further modifications to any arduino files to compile and upload to the chip from the arduino IDE.

But I must admit I have a bunch of 328P-PU and not a one 328-PU, so I really have not run into this before. It may be interesting to revisit the advertisement that drove the chip sale... I suspect the distributor could have gotten it wrong. I have ordered from Adafruit once and the chip was a 328P.

Ray