Serial write time

Then the straight critical engineering question is do you have to have 3000 full 8 byte data points per second?
Can you get away with 1000 packets per second or using fewer bytes each to pass only the changes between data points?

Does the data have to go wherever via bluetooth or is that a convenience?

Must the data be generated +and+ sent continuously at full speed without letup?

Suppose that you could generate and store the data during a busy time and transmit during data-idle time?

SPI is Serial Peripheral Interface. It's not so different from the RX/TX TTL serial that code for one can't be substituted for the other without major effort.

Look at interface types here, there are many choices though USB probably is not USB-host able to read Arduino.
http://www.mouser.com/Embedded-Solutions/RF-Wireless-Modules/Bluetooth-802151-Modules/_/N-6l7pg

Hey, IF it's critical then what choice do you have?

Indeed, I could win some bytes by passing only the changes between data points but I won't be able to divide the number by 3.
Bluetooth is the best choice to do a wireless low-energy connection with an Android device.
It is impossible to have idle time, or wait to send because I must receive the data in "real-time" and the movement speed is constant.

Following your ideas, I found this SPI to UART converter : https://www.sparkfun.com/products/9981
With it, I should be able to run my Bluetooth module at full speed (460800 bauds) so my problem will be solved, given that the time taken by the functions of Arduino's SPI to transmit to the converter the message to be converted to Serial is small enough...

That converter looks good!
So instead of 2 AVR's with SPI between it will be 1 AVR (the Arduino) SPI to the converter.

Are you okay from here?

Yup, thank you so much for everything, it helped me a lot ! :slight_smile: