Open main menu

CDOT Wiki β

Changes

Phonegap Healthcare Adapter Backlog

4 bytes added, 15:24, 25 November 2012
Summary of Bluetooth communication test between Android and A&D BTP devices
* Important research findings for building the Bluetooth applications:
** Use the right Bluetooth service name and application UUID (00001101-0000-1000-8000-00805f9b34fb).
** Set the Android device to 'discoverable' state for the first medical measurement even through for paired device it should not be necessary.
** The Android Bluetooth server works only after rebooting the Android device. This is the first issue we met on the tests. After search on the Internet, We condemned the medical devices uses the fixed RFCOMM port number - #1. This conclusion was "confirmed" by the documentation in the A&D Blackberry code from NexJ, which states that port #1 be used to build Bluetooth server socket. This conclusion could be right form A&D early products. But the current market products of the A&D BTP series (at least UC-321PBT and UA-767PBT) are DSP conformable and are able to use any RFCOMM port number provided by Bluetooth server. The real reason that "Android Bluetooth server works only after rebooting the Android device" is this: When the application (Android activity) exits by clicking the "back" or "home' button, it becomes inactive but its Bluetooth server thread keeps receiving signals from the medical devices. So the newly started applications cannot not receive data. Therefore, the issue of "A&D medical devices use fixed Bluetooth port#" is actually not the case.
** Unreadable data from medical devices may affect the Bluetooth communication. In the tests, we found inappropriate process of unreadable data from medical devices will interrupt the Bluetooth communication, leading to these unreadable measurement records accumulated within medical device's memory (up to 40 records). Each time a new measurement is made, unreadable records will be sent to the Bluetooth server first, and these records will cause communication failure. The solution for this issue is that the Bluetooth server accepts these wrong data instead of giving exceptions to interrupt the process. We may let applications to deal with these invalid data.
1
edit