I'm wanting to send serial data from multiple Arduinos to a Raspberry Pi using the HC-06 module.

The connection will be delivering sensor data from the Arduino to the Pi for a smart home setup and it's important that the data make it to the Pi reliably (the piece I'm working on now is a door sensor for an alarm).

Assuming a connection can be made at all, does the Bluetooth protocol used between the HC-06 and the Raspberry Pi provide any guarantees of delivery?

Questions I'm having trouble finding answers to:

  1. Is the ordering of messages guaranteed?
  2. Is the integrity of messages guaranteed?
  3. Can messages be dropped? If so, under what conditions?
  4. Is there a reliable way Arduino side to tell when a Pi connects/disconnects?
  5. Are guarantees consistent across HC-06 vendors or do they vary depending on who I buy the module from?
  6. Are these the same guarantees the HC-05 has?

I'm wondering whether I should trust the protocol like I do with TCP/IP or if I need to build my own protocol on top of the SoftwareSerial.h package to ensure delivery of my data?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.