Модуль Zigbee UART DL-20


Я не видел никаких статей на такой модуль, поэтому решил исправить этот пробел.
Лирическое отступление, к сожалению я до этого не работал с zigbee и поэтому надеюсь на ваши дополнения и в дальнейшем планирую дополнять материал как только получу какие то новые данные + я заказал на али CC2531 сниффер и CC Debugger.
Ссылка на доки www.hexin-technology.com/250m_TTL_to_ZigBee_Module-Product-565.html
Итак приступим, модуль построен на CC2530F256 и принципе модули вполне рабочие если учитывать несколько нюансов:
1. Достаточно высокий рабочий ток 30мА — что практически ставит крест на портативном применении
2. Байты приходят с ощутимой задержкой до 10-20мс и перерывами у меня были перерывы в передачи в одной посылке до 15мс и их может быть несколько, заявленная скорость в эфире 3300baud.
3. Модули имеют низкую мощность 2.5мВт? и дальность, несмотря на заявленную 250м и судя по всему интерферируют с другими радиосигналаими — особенно WiFi, что приводит к потерям пакетов.
4. Конфигурация производится кнопкой зажатой при подаче питания — никаких команд для управления не предусмотрено.
5. Mesh — не поддерживается судя по всему (пока точно проверить не знаю как)
Итак модули могут работать в двух режимах — Poin to Point — A и B т.е. 2 модуля и Broadcast — несколько модулей на одном канале. Модули имеют следующий выбор битрейтов 2400/4800/9600/14400/19200/38400/57600/115200 и имеется 16 каналов — естественно что все работающие вместе модули должны быть на одном канале.
Итак практическая работа — первое это надо сконфигурировать модули.
1. При зажатой кнопку — включить питание, светодиодики заморгают это значит что модуль в конфигурационном режиме.
2. Выбирается битрейт — согласно картинки, на совместно работающих модулях может быть разный битрейт, короткое нажатие выбор, длинное к следующему шагу.

3. Канал — он должен одинаковый для работающих вместе модулей (одинаковые светодиодики)
4. Тип конфигурации P2P или Broadcast — производитель пишет что P2P более надежный (пока сложно сказать так ли это)

5. Последнее длинное нажатие сохраняет и применяет конфигурацию.
В режиме P2P один из красных светодиодиков синдицирует присутствие другого модуля — при отсутствии гаснет, для Broadcast просто моргают на прием и передачу — и можно по скорости моргания оценить качество приема. Вот товарищ их на видео конфигурирует и использует www.youtube.com/watch?v=V1Pt7mTXi-o
Мое применение это Modbus RTU И первое, что надо преодолеть это перерывы в передаче превышающие 3.5 символа и получается несколько парадоксальная ситуация т.к. модули медленные то надо повышать скорость по стороне uart, чтобы байты быстрее приходили в модуль и быстрее уходили на другой стороне, чтобы уменьшить задержки. И главный момент — надо как то преодолевать перерывы в передаче т.е. модуль может вполне послать 1 байт а потом сделать большой перерыв.

Первый вариант просто сделать таймаут на прием не 3.5 символа, а больше максимальной подсмотренной анализатором задержки т.е. примерно 20мс — это сработало, но передача получается несколько медленной. Если по проводу на 19200 у меня скорость 34-35 посылок, то при 57600 на uart, по воздуху получается где-то 12-14 посылок в секунду (такой подход будет работать на ПК где софт не умеет по другому).

Второй подход — разрешить несколько таймаутов на прием — количество должно перекрывать паузу передачи я выбрал 0,8мс и максимальное количество 30, но после каждого проверять посылку и по приему валидной посылки задержки не будет. И еще сделать задержку на передачу я сделал x4 таймаута на прием — это необходимо для того чтобы все ловили паузу по валидному приему. И скорость получилась 27-29 посылок — неплохо!

Дальность в железобетонном доме прямо скажем небольшая в пределах комнаты работает пристойно, но стену пробивает с трудом и сыпет ошибками, но для дачи вполне может подойти и есть модуль с усилителем и антенной DL-22 он должен быть ощутимо мощнее.
На данный момент ценник на модуль не очень гуманный что-то около 400-500руб на али, но я надеюсь что со временем снизится.
  • +5
  • 20 августа 2019, 12:16
  • GYUR22

Комментарии (26)

RSS свернуть / развернуть
По моему не самый адекватный вариант модулей.
Возможно вам стоит рассмотреть вот эти ru.aliexpress.com/i/32831835613.html

rfm95w применяются серийно совместно с сетью ртелеком и показывают весьма приличное качество связи в условиях улицы. Естественно с внешней антенной вот такой на вид марку сейчас уже не вспомню.

Наличие буквы W в конце не принципиально это всего лишь значит что эта серия сответствует требованиям ЕС. Если вам для хобби то пойдёт. А если потом сдаваться в контору то придётся брать «W».
0
А забыл уточнить у меня они были вроде на 868МГц, но не поручусь сейчас.
0
Но ведь это не ZigBee, это LoRa…
0
Б… точно. простите я затупил.
0
Спасибо, но у ваших модулей форм фактор требует еще допиливания да и spi они, а мне были интересны uart.
0
А сниффером CC2531 можно только смотреть пакеты в эфире или он может и передавать данные? Например если необходимо быстро связаться с каким-то ZigBee устройством?
0
посммотреть точно должно быть, а остального не знаю — думал знающие люди подтянутся
0
Поищите на Али E18-MS1-PCB. Цена около $3. Это полноценный модуль на СС2530 со всеми доступными пинами. TI дает отличный SDK с кучей примеров. SDK заточен на низкое потребление. В режиме сна там вроде 40uA и в момент передачи ток подпрыгивает, но на очень короткое время. К нему можно CC-Debuger подключить и нормально отлаживаться. Если нужен снаружи UART, так его дописать пара часов всего. Переферия у CC2530 очень простая.
+1
  • avatar
  • Zuy
  • 28 августа 2019, 07:59
Добавлю еще про снифер на CC2531. На нем сразу есть разьем под CC-Debuger т.е. можно спокойно заливать в него свою прошивку и отлаживаться. Чтобы вернуть ему обратно функцию снифера нужно будет просто залить оригинальную прошивку, которую TI тоже предоставляет. Довольно удобная отладка получается.
0
Чем его программировать (iar?) есть какие то ссылки кроме CC2530 Software Examples User’s Guide?
0
Основная среда — это IAR. Ещё KEIL поддерживается. Это основной минус, среды платные. Но для DIY есть разные варианты.
На сайте TI доступен полный SDK в нем много документации, примеров и всего остального.
0
А он кроме ZigBee что-то умеет? Емнип какие-то из СС25хх блютус держат?
0
CC2531 и СС2530 это только ZigBee. А вот CC2541 и CC2540 это ровно тоже самое но BT/BLE. Они даже пин в пин совместимые. SDK тоже такой же, но заменены примеры и бинарники RF библиотеки. Еденичка в маркировке обоих серий это наличие USB на борту чипа.
0
Засада с этими E18-MS1-PCB модулями, что их надо кудато припаивать программировать и стоимость готового решения будет сильно выше -хотелось что то готовое за небольшой прайс
0
У вас же готовое решение это какая-то плата, а не бредбоард с проводами, так? Доразведите несколько проводников. Ну а с программированием вы получите полный контроль над чипом и не будете говорить, что он не подходит для автономной работы от батарейки т.к. он именно для этого и сделан.
Я не знаю, что у вас за система но вполне вероятно что CC2530 может вообще все в ней делать а не только связь. Там внутри 51е ядро на 32МГц и кое какая переферия есть.
0
Мне понравился минималистичный форм фактор этого девайса и я хотел получить готовый беспроводной UART.
зы для своих проектов использую более жирные кортексы stm32
0
Понятно. Раз уж вы заказали снифер и дебагер я бы посоветовал поиграться с этими чипами поплотнее и разобраться с SDK. За свою цену они на многое способны.
0
За свою цену они на многое способны.
а вот с этим согласен — за 1,7 контроллер с бле — можно пихать во всякие редко нужные девайсы и рулить ими с телефона. при этом припаяться можно даже проводками. это я про готовые модули с СС2541.
0
но да, придеццо один раз купить аж за десятку реплику CCDebugger`а сделанную по родным герберам техаса…
0
Все верно, я использую модули JDY-08 с Али. $1.7 всего и уже вся обвеска на месте. Штук 100 наверно уже получил и ни один не подвел.
0
Что за извращение про полоумный дом и подключение всего к телефону? Максимум оповещалки на телефон должны приходить.
0
с программированием вы получите полный контроль над чипом
поржал.
0
«Полный контроль на те моменты, когда закрытый стек соизволит отдать вам управление»?
0
Если правильно помню, там из закрытого только сами стеки Zigbee и BT. Вся остальная переферия открыта ровно так же, как в любом микроконтроллере. В SDK «операционка» и весь обвес тоже открыт.
Под полным контролем я имел ввиду обычный способ работы с чипом, а не то что девайс из топика предлагает.
0
Что ты имеешь в виду — понятно, поэтому и спрашиваю я не тебя…
0
Протокол Zigbee вроде как закрытый.
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.