RN42 Bluetooth disconnects on iOS within seconds of streaming data

和自甴很熟 提交于 2019-12-03 16:45:12

I've spoken with guys at Microchip (the company that bought Roving Networks, who were the original makers of the RN42) about this type of problem, and it seems that there is an unfortunate little "feature" that is not documented anywhere in the RN42 manuals.

When the RN42 is used to communicate with an iOS device, it cannot communicate faster than 2.5-3kB/s... If it's used to communicate with an Android or computer or anything else, it can transfer at 35kB/s (over SPP).

The reason for this is an under-powered chip in the RN42, which can't handle both the BT stack AND re-packaging bytes in the format an iOS device needs (iAP protocol).

They recommend the following options:

  1. Switch to using a WiFi module.
  2. Implement the iAP protocol on your microcontroller and use a vanilla RN42 to transfer data (which should theoretically be back at 35kB/s).
  3. Buffer data on your device, and send it back at the slower rate.
  4. Use a vanilla RN42, and one of their PIC devices which implements the iAP stack.

I have a polite 5th suggestion... Find a new Apple-supported Bluetooth module.

Additionally, using 4-wire UART communication should help with the crashes.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!