Передача данных Bluegiga BLE112 с ПК с Windows на устройства ios
Можно ли сделать передачу данных (менее 1 МБ данных) с ПК с Windows на устройства IOS?
Я ищу решение для передачи данных с компьютера под управлением Windows на устройства ios через Bluetooth LE и обнаружил, что bluegiga BLE112 - хороший вариант, но я не уверен, можно ли передавать данные, не являющиеся профилем GATT, из приложения.net в приложение IOS.
Это возможно?
2 ответа
Это возможно, но протокол BLE не очень подходит для отправки больших объемов данных по Bluetooth. Если вы действительно хотите это сделать, у Bluegiga есть пример проекта на их форуме.
Из их поста:
Профиль и проекты Bluegiga SPP-over-BLE созданы для того, чтобы обеспечить максимально простой способ соединения двух наших модулей, чтобы вы могли отправлять произвольные данные назад и вперед, подобно использованию SPP с классическим устройством Bluetooth. Протокол BLE не предназначен для очень эффективной передачи данных такого типа из-за очень маленького размера полезной нагрузки пакета (максимум 20 байт) и относительно больших задержек, требуемых между пакетами (радиосвязь BLE может быть включена только в течение меньшего времени). чем 25% времени даже в самой агрессивной конфигурации передачи). Тем не менее, можно использовать обычные операции Bluetooth Smart GATT, чтобы выглядеть так, как если бы у вас был открытый, прозрачный канал передачи данных между каждым концом соединения.
Также они отмечают, что максимальная пропускная способность составляет ~1 Кбайт / с. Так что это может быть нецелесообразно для размеров, которые вы хотите отправить.
Проделав достаточную работу BLE с разработками для Android, iOS и Windows, я скажу, что перенос больших объемов данных - это боль.
Реальные ограничения на самом деле происходят со стороны iOS, потому что они внутренне ограничивают задержки передачи (это улучшилось с iOS 6 до iOS 7, и я еще не тестировал пропускную способность на iOS 8).
Bluegiga имеет некоторые старые данные тестирования производительности здесь: https://bluegiga.zendesk.com/entries/22400867--HOW-TO-Maximize-throughput-with-BLE-modules
Мое личное тестирование (BLE112 и iOS 6 или 7) показало около 1000 байт / с с использованием подтвержденной передачи данных и 4000 байт / с с неподтвержденной передачей данных. Я не думаю, что это было оптимальное условие тестирования, но оно дает хороший пример.
Из Блюгига (идеальные условия):
Лучшее, что мы видели между двумя нашими модулями BLE, составляет около 60 Кбит / с (неподтвержденные пакеты).
Будущее BLE выглядит неплохо, так как BT 4.2 немного увеличивает пропускную способность (за счет увеличения размера пакетов): https://en.wikipedia.org/wiki/Bluetooth
К сожалению, кремний для этого, вероятно, не выйдет до конца этого года, и кто знает, когда он будет поддерживаться iOS (и Android).