Hi,
I am working on a project that involves Arduino BT-V06. The big problem is I can't upload ANYTHING to my arduino using bluetooth.
After searching a while in this forum I came to understand that this is a known issue and there are multiple solutions for it but none of them seem to work for me or I simply don't understand them. Here is a little overview what I found (also handy for people who search this forum in the future):
Arduino BT Upload Help
14.11.2009 at 08:13:21
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1258182801/0#0
(It seems marcocp007 has the same problem but nobody answered his topic)
Probably a baud rate problem on ArduinoBT
05.11.2009 at 09:48:14
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1257410894/7
(this was the most useful topic, read more later on).
Auto-Reset for Arduino-BT
28.08.2009 at 00:21:53
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1251415313
Solutions I found for this problem:
The Arduino BT requires a manual reset via the reset button before downloading a sketch to activate the bootloader, because it doesn't support the auto-reset feature. The timing is a bit critical, the best way is to hold down the reset button and release it just after starting the download in the IDE. To get some feedback when avrdude really starts, you can set
Code:upload.verbose=true
in preferences.txt
I added the upload.verbose=true in the preferences.txt and now I can see when the avrdude starts. More in the next solution.
When you release the reset button too early, the bootloader starts the currently loaded sketch and avrdude complains about unexcpected responses.
When you release it too late (after the connection from the PC has been already been established), the existing connection gets terminated.
It seems supernatural timing is required for this trick cause I tried it over 20 times now but I still can't upload my program.
I tried:
- disconnect power -> hold reset -> connect -> upload -> when avrdude starts release reset
- Hold reset -> upload -> when avrdude starts release reset
- Hold reset for 10 secs -> release reset -> upload program
You can avoid this case by connecting a resistor (0 to around 100 Ohm) between pin 1 of connector SV2 and GND.
I tried that but it made no difference for me, maybe I got the wrong pin? (to explain in n00b terms I put a 120 ohm (had no 100 around) in the second pin counting from the right top (the one where TX stands) to the ground).
When your sketch is filling up the receive buffer of the WT-11 bluetooth chip, you will run into this problem. This means you need some kind of handshake to avoid this case.
Yep, that's it. The handshaking suggestion solved the problem. Thanks.
I read that Geert had the same problem and seemed to have fixed it with the handshake thing, the sad thing is he didn't explain how he did it.
It can be easily done by setting the iWRAP parameters to configure a WT-11 GPIO pin as DTR (e.g. PIO7) and connecting it to the ATmega reset pin using a little curcuit. The curcuit is needed because the WT-11 DTR signal is not inverted (this could be configured) and because the WT-11 uses 3,3V logic.
I read the entire topic 3 times and I was still like LOLWUT?!?!?? I really don't understand a thing of how that auto-reset works.
I hope anyone can help me (and others) further with this problem.