android + piconets + припаркованные устройства

71
7

Я пытаюсь закодировать приложение с Android и Bluetooth. В качестве резюме, и, как я думаю, хорошо документировано в Интернете, bluetooth 2.1 (я не мог найти информацию для 3.0 и 4.0) поддерживает только 7 активных устройств в одной и той же пикосети и до 255 в припаркованном режиме (не подключен и не обнаружен через Проверка запроса, покупка синхронизации при прослушивании широковещательных пакетов). Я не мог найти информацию для спецификаций 3.0 и 4.0, если они продолжают это ограничение из 7 активных членов.

Есть тонны вопросов, ответы на которые нелегко найти о bluetooth. Надеюсь, кто-то может помочь мне в следующем выпуске.

Как вы можете общаться с устройством в припаркованном режиме на Android через RFCOMM? Если только 7 устройств могут быть активны с открытым соединением сокета (paged & connected), как вы можете заставить все устройства взаимодействовать друг с другом через ведущее устройство?

Чтобы сделать вещи немного ясными, мы можем представить, что я пытаюсь создать коммуникационное приложение между всеми устройствами в пикосети, где все пользователи рядом с мастером могут войти в "чат". Но чтобы все они общались, вам нужны все устройства (подключенные и припаркованные), "подключенные" через RFCOMM, чтобы они могли обмениваться информацией с помощью сокетов.

Но если только 7 может общаться и может открыть активный сокет, как могла бы быть стратегия? Как я могу заставить всех из них общаться друг с другом, чтобы все устройства могли получать одну и ту же информацию, чтобы разговаривать через чат?

заранее большое спасибо.

спросил(а) 2011-08-05T15:05:00+04:00 8 лет, 4 месяца назад
1
Решение
90

Количество активных и припаркованных устройств остается одинаковым с Bluetooth 3.0, а Bluetooth 4.0 немного отличается, поскольку он имеет 2 режима - Bluetooth 4.0 добавляет новый радиомодуль в Bluetooth, называемый Bluetooth Low Energy, поэтому есть устройства, которые могут работать в двух режимах, то есть классические функции Bluetooth (2.1, 3.0) и новые функции Low Energy, некоторые устройства будут работать только с низкой энергией, а некоторые из них будут работать в двух режимах как в режиме Low Energy, так и в классическом bluetooth.

Возможности Classic Bluetooth по-прежнему в основном такие же, как и в 4.0, Low Energy - совершенно новая опция, опция Low Energy (радио) не может связываться с классическим вариантом. (Если это не двойной режим, имеющий как классические, так и низкоэнергетические варианты)

Теперь приведенная выше теория была важна, потому что в случае низкой энергии нет ограничений на активные устройства, теоретически у вас есть сотни тысяч устройств (при условии, что они разговаривают с неперекрывающимися интервалами). (В отличие от Classic, где предел был равен 7), в Low Energy нет особых режимов, таких как Park. Низкая энергия, как правило, предназначена для сенсорных устройств, которые с некоторым интервалом пробуждения соединяют отправку некоторых данных и уходят. Обычно это низкая пропускная способность и короткая связь. Это делает вариант с низким энергопотреблением привлекательным, а беспроводные датчики могут работать от батареек с ячейками в течение многих лет.

Теперь, чтобы ответить на остальные вопросы: - Вы не можете напрямую связываться с устройствами Parked, есть механизм вещания для отправки (в одном направлении) данных (нерегулярно) на припаркованные устройства, у Android нет поддержки API для него. Кроме того, я буду препятствовать использованию парка, поскольку это сложная процедура и склонна к проблемам взаимодействия с радиостанциями разных поставщиков, кроме того, режим парковки устарел в последних версиях Bluetooth.

Альтернатива заключается в том, чтобы разблокировать устройства один за другим - сделать их активными - завершить связь в активном режиме, а затем оставить их обратно. Это может привести к сложной работе приложения для группового чата.

Надеюсь, поможет.

ответил(а) 2011-08-05T18:20:00+04:00 8 лет, 4 месяца назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема