Go Down

Topic: Serial communication blocks arduino 2560? (Read 1 time) previous topic - next topic

valerio_sperati

Hi everyone,
my problem concerns with the use of Serial communication.
I briefly describe what happenes:
I use Serial.print(myVariable) just to check some data
on the Serial Monitor of the IDE

void loop()
{
    Serial.print(myVariable);
   
    //my loop lasts 100 ms
    delay(100);
}

1) Immediately after uploading, the LED TX becomes always  ON,
and it becomes impossible to upload new sketches on Arduino!!!!

2)Moreover, if I try to open the Serial Monitor, the IDE tell
me that the Serial port (/dev/tty/ACM0 in my case) is not found!
I do not understand why the serial port becomes occupied!

3)Everything in the IDE is blocked!

4)The only way to reset everything it to comment the Serial.print,
unplug the board, maintain pressed the RESET button on the board,
plug again the board, release the RESET button and contemporary
upload the new sketch. 

The Arduino board is the ATMega2560, running on LINUX Ubuntu 10.04.
Note that the same code uploaded on ATMega 1280, works
without any problem!

thanks, valerio








 

mellis

You probably need to update the firmware on the ATmega8U2 that serves as the USB to serial convertor on the board.  See: http://arduino.cc/en/Hacking/DFUProgramming8U2 for instructions.

WillR

Mellis:

I have a Mega2560 as well -- purchased in January in Canada at Creatronic Inc. (This may help date issues)

I am happy with it etc.

Regarding this firmware upgrade to the USB controller:

(1) Is there anyway to determine if you need the upgrade by looking at revision numbers (somehow) etc. This is assuming that you can read codes from the USB controller.

(2) I understand there is an upgrade to the Mega2560 Boot Controller as well -- that may be causing some of these issues. Is that upgrade now available? (I know that I do not have the new version as I tested it for the "three "!!!" problem.)

Thanks.


valerio_sperati

#3
Mar 28, 2011, 03:06 pm Last Edit: Mar 29, 2011, 10:54 am by valerio_sperati Reason: 1
[SOLVED]:

As suggested, I solved updating the firmware on the ATmega8U2.  
Anyway, note that the instructions on the official site
http://arduino.cc/en/Hacking/DFUProgramming8U2
are incomplete! In fact , in the paragraph  
"Reset the 8u2" the picture showing how to reset the board concerns only Arduino Uno.
The right way to bridge the reset pins on Arduino Mega 2560 is correctly showed here:
http://www.wayneandlayne.com/blog/2011/02/16/fixing-linux-firmware-issues-on-arduino-mega-2560/

Note that if the pins are not reset in the proper way,
when you launch
sudo dfu-programmer at90usb82 erase
you get the following error:
dfu-programmer: no device present.

Thanks a lot, bye



hugo007

Hello all
I'm  also having the same trouble with MEGA and I was reading the tuturial to update the firmware on MEGA.
My problem is when I go download the firmware the page shows   MEGA-dfu_and_usbserial_combined.hex    December 04, 2010
Is this the last firmware???
The date is to old! Can someone confirm if this is the right one or give me the link of the correct?

Debian,Mint,Ubuntu
Arduino Mega 2560
Arduino Nano
Arduino Duemilanove
MAC OS Montain Lion
Raspberry PI Model B

valerio_sperati

well, I updated just the Arduino-usbserial-mega.hex, to make everything work.
The date reported on the file is 21 may 2011.
The link is exactly the one showed here (the same indicated in the forum):

https://github.com/arduino/Arduino/tree/master/hardware/arduino/firmwares

Note that I downloaded all the folders clicking the "Downolads" button in the upper left corner
of the internet page. This download  the file "arduino-Arduino-fcb66dd.tar".
Open it and go to Hardware/arduino/firmwares/arduino-usbserial. There there is the hex file.
bye!

Go Up