Есть ли возможность общаться между пикосетями и другими пикосетями? - PullRequest
0 голосов
/ 05 февраля 2011

В моем предыдущем вопросе, опубликованном в , как общаться с мобильными устройствами с помощью Bluetooth в j2me задавали вопрос на основе Bluetooth. У меня есть некоторые идеи для реализации взаимодействия клиент-сервер. Теперь я здесь, чтобы задать вопрос, основанный на связи между пикосетью и другой пикосетью. Является ли это возможным? Ведущее устройство должно обмениваться данными с ведомым устройством в пикосети, а также с ведущим устройством и подчиненным устройством с другой пикосетью через подчиненное устройство своей собственной пикосети.

Может кто-нибудь дать мне руководство и статьи по моей проблеме.

пожалуйста, помогите мне ..

Заранее благодарен

1 Ответ

1 голос
/ 07 февраля 2011

В Bluetooth мастер инициирует связь с подчиненным. На уровне основной полосы мастер опрашивает раба. Однако на уровне приложения (API) это абстрагируется, что позволяет как ведущему устройству отправлять ведомому, так и ведомому отправлять ведущему.

Ситуация, которую вы описываете, является scatternet. Спецификация Bluetooth позволяет использовать scatternet. Используемый вами стек Bluetooth может накладывать ограничения на то, разрешен ли scatternet и, в более общем плане, какие конфигурации главного / подчиненного устройства разрешены (например, разрешено число одновременных ведомых устройств).

Вы обнаружите, что при взаимодействии с некоторыми устройствами требуется переключение ролей, чтобы предотвратить использование сетей. Например, удаленное устройство (ведущее устройство) может инициировать соединение с сотовым телефоном (ведомое устройство); Как только соединение установлено, сотовый телефон запрашивает смену роли, становясь ведущим. Это позволяет телефону оставаться мастером во всех соединениях и предотвращает формирование scatternets. В зависимости от API этот переключатель ролей может быть полностью прозрачным для вашего приложения. Вы не узнаете, что это произошло без следа от анализатора протоколов. Вы заметите снижение производительности, так как ведомый не может передавать так часто, как ведущий (так как ведомый не "управляет" соединением).

JSR-82 сам по себе не позволяет запрашивать смену роли. Если вы посмотрите на ServiceRecord.getConnectionURL(int, boolean), вы увидите, что вы можете требовать, чтобы ваше устройство было ведущим (передавая true), или вы можете разрешить ведущий или подчиненный режим (передавая false).

Спецификация Bluetooth (доступна здесь ) - хорошее место, чтобы начать понимать, как работают пикосети и скатернеты. Вам следует обратиться к документации по JSR-82 и, если возможно, к документации по вашему стеку, чтобы лучше понять некоторые из специфических для стека ограничений, которые могут присутствовать.

...