Я работаю над проектом Android Bluetooth для отправки и получения данных с изготовленного на заказ оборудования. В качестве основы я использовал Образец Bluetooth-чата в SDK.
Я понял, что невозможно изменить скорость передачи данных на клиенте (телефон Android), а скорость передачи данных будет зависеть от оборудования. Я пробовал устанавливать разные скорости передачи данных на оборудовании, но ни одна из них не соответствовала нашим ожиданиям;
Самое быстрое, что я могу получить, это 91 Кбит/с (когда скорость передачи данных установлена на 2,7 Мбит/с ~ 910 Кбит/с). Используя минимальную скорость передачи данных (115 Кбит/с), я получаю 43 Кбит/с. Пробовал с разных телефонов, тоже самое. Мне нужно передавать 170 КБ данных в секунду на оборудование.
Спецификации
Протокол. Синхронизированные или сгенерированные данные отправляются на оборудование с помощью пакетов размером не более 520 байт. Аппаратное обеспечение отправляет команду проверки после того, как каждый пакет получен и утвержден, а затем телефон отправляет следующий пакет данных.
Клиент: Android 2.3.3, Samsung galaxy w i8150, Bluetooth v3.0, RFCOMM
Оборудование: Custom, Bluetooth v2.1 BlueGiga WT11i
Я в полном замешательстве. Может ли это быть проблемой, вызванной устройством Android или Bluetooth на телефоне? Интересно, какая максимальная скорость передачи? Есть ли способ ускорить передачу (например, увеличить максимальный размер пакета или отправить все пакеты, не дожидаясь команд проверки оборудования).
Изменить
После изменения размера пакета на 4160 байт пропускная способность увеличилась до 254 Кбит/с. Я пытаюсь выяснить оптимальный размер пакета для достижения 1,5 Мбит/с. Я ценю любые предложения