I need to squeeze about 150000 bps through a serial to bluetooth bridge, and was wondering what the maximum operating speed of the serial port on the Arduino is.
The reference page specifically mentions 115200 (not quite enough bandwidth to accomodate the amount of data I need sent), but also notes that "other rates are possible."
Excellent! I was concerned about ordering external hardware when the software serial is limited to 115200. Good to know that I can squeeze more bandwidth out of it than that.
Updating subject to indicate the question has been answered.
You can actually put
Serial.begin(1000000); // 1Bps
it should even work with 2000000.
I did not test 2Mb with the Hardware serial library but with my own library as I need the serial in half-duplex mode and need some special stuff.
Anyway, you can squeeze a whooping 2Mbps out of an Arduino (tested only on Mega, but should be the same on the others as long as the clock is 16MHz). To modify the UARTnA register bit for Double Speed mode:
bitSet(UCSR0A, U2X0); // NB if you put now speed 10000 it is actually 20000, the UART divider is now 8 and not anymore 16
I am using this on the Arduino Megas TX3, so it is:
bitSet(UCSR3A, U2X3);
I needed that because I bricked ( :o ) a AX-12+ servo setting it to 2Mbit/sec