XBee отправить всем

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

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

Это решение в порядке - я просто не могу понять команду, которую можно использовать для этого. Есть ли какая-то команда Serial sendAll? Все устройства находятся на одном и том же ATID.


person user592419    schedule 10.03.2013    source источник


Ответы (1)


Как правило, в этой ситуации вы должны настроить мастер в режиме API, чтобы вы получали кадры «Получить явные» с информацией об адресации источника и могли отправлять с типом кадра «Передавать явные» и включать информацию об адресации в свои кадры.

Если вы используете режим AT (прозрачный последовательный режим), то вам приходится менять параметры DH и DL на вашем координаторе каждый раз, когда вы хотите изменить, кому вы отправляете. Вам следует избегать использования широковещательных пакетов, поскольку каждый из них приводит к большому количеству сетевого трафика (IIRC, каждый маршрутизатор будет отправлять широковещательный пакет три раза).

Я не знаю хорошей библиотеки XBee для Arduino, но возможно портировать Digi с открытым исходным кодом ANSI C XBee Host библиотеки на эту платформу.

person tomlogic    schedule 13.03.2013
comment
Да, я понял маршрут API вскоре после публикации вопроса. Томлогик спасибо. - person user592419; 19.03.2013