Здравствуйте. Настраиваю сеть (пока точка-точка, а потом звезда) ZIGBEE из 2 модулей(у меня wit-003 revK). В теории хочу передавать пакеты с DFrduino FIO, размером 256 байт, каждые 50 миллисекунд на компьютер с USB-XBEE модулем. На практике с конечными устройствами передать корректно 256 байт не получилось, хотя по подсчётам xbee'шка должна была потянуть такую скорость (заявленные 31000 байт в секунду = 1500 байт в 50 миллисекунд). Сеть настроена по вот этому гайду. После неудачи стал тестировать модули на компе через X-CTU. Отправлял пакеты по 256 байт вручную несколькими щелчками мыши, чтобы имитировать быструю передачу. При быстром двойном нажатии на передачу пакеты доходили не до конца либо с жуткими тормозами. Уменьшил пакет до нескольких байт и при быстрой передачи наблюдалось торможение в передаче. Передача данных идёт на скорости 115200 бод. В чём может быть проблема? Во время передачи xbee'шки были запитаны от компьютера через XBEE-USB модули, поэтому, думаю, что питание тут не причём. Ну это только мнение любителя. Посмотрел вот это для интереса, но так и не понял, добился ли радиолюбитель своей цели.
Обновление #1 Кусок кода из программы Arduino: Код (Text): uint8 rawClientPacket[256]; void setup() { Serial.begin(115200); } void loop() { Serial.write(rawClientPacket, 256); delay(50); } Когда я поменял задержку на 400 мс, то всё заработало как надо. Но меня не устраивает такая большая задержка. Как же быть?
Обновление #3 На официальном форуме Digi выяснил, что передать 256 байт за 50 мс не получится из-за ограничений модуля. Мне удалось передать только 84 байта, что меня не устраивает. Придётся брать Wi-Fi. Обидно.