Android + Piconets + припаркованные устройства - PullRequest
0 голосов
/ 05 августа 2011

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

Существует множество вопросов, ответы на которые нелегко найти в отношении Bluetooth.Я надеюсь, что кто-то может помочь мне в следующем выпуске.

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

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

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

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

1 Ответ

0 голосов
/ 05 августа 2011

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

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

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

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

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

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

...