I am working on circuit that will allow me to program my Arduino boards (I have an Arduino Uno and a couple of Arduino Pro Minis) over a wireless Bluetooth connection. I am planning to use my cheap and easy to find HC-06 Bluetooth module for this. One of the first thing to figure out is the baud rate that the Arduino IDE uses, when uploading the sketches to the various Arduino boards. I need to make sure that my HC-06 Bluetooth module is configured to communicate at the same rate, so the avrdude stays happy.
I bit of research online revealed the following:
- On the computer side the baud rate is specified in the Arduino IDE configuration files, and more specifically in boards.txt.
- On the micro-controller side, the baud rate is coded in the specific bootloader, used by the board.
A looked through the boards.txt file and here is what I found:
Board | IC | Upload Speed |
Arduino Yun | ATmega32u4 | 57600 |
Arduino Uno | ATmega328p | 115200 |
Arduino Duemilanove | ATmega328 | 57600 |
Arduino Duemilanove | ATmega168 | 19200 |
Arduino Nano | ATmega328p | 57600 |
Arduino Nano | ATmega168 | 19200 |
Arduino Mega | ATmega2560 | 115200 |
Arduino Mega | ATmega1280 | 57600 |
Arduino Leonardo | ATmega32u4 | 57600 |
Arduino Micro | ATmega32u4 | 57600 |
Arduino Esplora | ATmega32u4 | 57600 |
Arduino Mini | ATmega328p | 115200 |
Arduino Mini | ATmega168 | 19200 |
Arduino Pro Mini (5V, 16 MHz) | ATmega328p | 57600 |
Arduino Pro or Pro Mini (3.3V, 8 MHz) | ATmega328p | 57600 |
Arduino BT | ATmega328p | 19200 |
Arduino BT | ATmega168 | 19200 |
Arduino NG | ATmega168 | 19200 |
Arduino NG | ATmega8 | 19200 |
Arduino Robot | ATmega32u4 | 57600 |
LilyPad Arduino | ATmega328p | 57600 |
LilyPad Arduino | ATmega168 | 19200 |
It seems that I need to use 115200 for my Uno and 57600 for the Arduino Pro Mini.