Радиомодуль HopeRF HM-TR433

Прикупил я себе парочку модулей HM-TR433. Так, помучить. Стоит такая радость на данный момент порядка 800рублей. Это трансивер, то есть он может как принимать, так и передавать. Мало того, тут стоит управляющий контроллер, который сам кодирует информацию, загоняет ее в радио канал и декодирует пойманное. То есть, по сути, мы получаем удлинитель UART и всякие проблемы вроде шума после пропадания несущей, какие были в связке HM-T433/HM-R433 нас уже не волнуют. Один минус — канал полудуплексный, то есть синхронный прием и передача невозможны, только по очереди. Но это не велика проблема — зачастую полудуплекса хватает за глаза.


Существует две модификации этого модуля. Одна имеет окончание TTL другая RS232. Разница лишь в уровнях и в том, что в первую китайцы забыли впаять MAX232 и обвязку из конденсаторов, зато поставили перемычки. Так что имея прямые руки и нужный инструмент можно из TTL сделать RS232 и наоборот. Впрочем, по цене они копейка в копейку идут.

Антенна подключается через SMA разъем, что видимо и делает модуль таким дорогим, т.к. ВЧ разъемы стоят недешево. Плюс ко всему желательно потратиться и на ответную часть разъема, которая стоит порядка 70-100рублей, а уже антенну припаять к ней. Либо купить готовую антенну. У нас готовые не продавались, поэтому я впаял туда обычный 1/4 волновый штырь. Напомню, что для 433Мгц это будет 17см.

Поглядев и пофоткав это барахло я приступил к непосредственным испытаниям. Подключил к МК и терминалке, посадил управляющие ноги Config и Enable как это требует даташит. Для работы в режиме приема-передачи Config должне быть на нуле, а Enable в единичке.

Подал питание и нифига… Точнее передача то идет, но вот на вход приходит какой то мусор. Ясно — скорости не совпадают. Но как же так? По дефолту должны быть выставлены на 9600.
Подключаю модули к компу, через обычный шнур преобразователь уровня на COM порт. Запускаю софтину для настройки. Обана. Какя то лажа — все настройки кривые и не те. Сбрасываю их в дефолт. Выключаю модуль. Подключаю второй, там тоже сбрасываю настройки.
Включаю всю систему. Прием идет и передача тоже. Отлично!

Косяк первый
Выключил питание… включаю… не работает. Лажа какая то. Начинаю все проверять, уже грешил на МК, но с МК идут данные и терминал их ловит отлично.
В конец сломав себе мозг, подключаю модуль к компу. Запускаю прогу… Б-дь! Настройки опять перекосило все нахрен. Какого черта? Выставляю их снова. Не работает. Подключаю другой модуль — у него тоже настройки слетели. Выставляю как надо — работает.
Короче, главный косяк этого модуля в том, что у тех кто его сделал руки из задницы, раз настройки слетают от обычного включения/выключения. Я бы понял если бы это происходило когда управляющие выводы CONFIG и ENABLE болтаются как попало — случайно вошел в режим конфигурации и принял из воздуха что то не то. Но они же жестко стояли на нужном уровне. Enable при передаче ножкой порта поднималась в 1, а Config был намертво посажен на землю. Причем процент слета настроек очень велик. То есть при передергивании питания в 1 из 5 случаев настройки уходят в даун.

Решение проблемы
Ладно, хорошо что косяк вылез вот только сейчас, а не когда я этот модуль уже в реальный девайс поставил. Раз его можно заинициализировать с компа, то это же я смогу сделать через МК. Ага. Хрена лысого! Я облазил весь сайт производителя и изнасиловал гугль с яндексом. Ни-гу-гу. В родной же документации про внутреннюю структуру не сказано НИЧЕГО. Вообще нигде. Ни описание регистров, ни значения. Ладно, хрен с тобой золотая рыбка. Будем реверсить обмен.

Запускаю RS232 сниффер и путем десяти минут тыканья пришел к выводу, что если отправить в режиме конфигурации в порт пакет:

0x12,0x01,0x00,0x00

то модуль даст тебе текущие настройки. И если они отличаются от:
0x52,0x01,0x80,0x17

значит в мозги его вбилась какая то дурь и ему надо отправить
0x10,0x00,0x00,0x00

для сбрасывания в дефолт.

Казалось бы, фигня проблема. Что нам впервой чтоль периферию иницализировать. Но тут вылазит очередная задница, да еще пожирней предыдущей — для входа в режим программирования надо передернуть питание. Т.е. просто поднять в 1 ножку CONFIG недостаточно. Нужно выключить питалово, выставить Config в 1 и подать питание на модуль. Ну №;№№»!!! То есть это ставить еще оптрон или транзистор, на прерывание питания, чтобы это все можно было на лету настраивать? Вот уроды…

Косяк второй
Пробовал прогнать систему в интенсивном режиме. Шлю поток на вход и тут же возвращаю его обратно. То есть как бы заставляю работать его в режиме дуплекса. Отлично. Гоню, диодик мигает передача идет, конечно, с потерями, но это понятно — чуда от полудуплекса я не жду. Тут раз и на приемопередающем модуле стухают диодики и он… тупо виснет. Ни туда ни обратно. До, правильно, передергивания питания. Так что слать байты медленно и печально, чтобы наш китаец не вспотел.

Тест на дальность
Но может хоть тут порадует агрегат? HMT+HMR, помнится, мне на двух проволоках выдал под 150 метров. Передатчик лежал на столе, возле окна на пятом этаже — приемник в 150 метрах в прямой видимости окна. Как покажет себя HM-TR433? А никак. Только вышел и на 50 метров не отошел, как передача тупо сдохла. Подошел — восстановилась. Так что поводок у нас коротенький.

UPD:
Обнаружил, что в разьеме контакт какой то подозрительный. Вроде как не контачит толком. Заменил антенну. Стало чуть получше. Добился полного приема послания на 215 метрах почти прямой видимости (через стену), но ОЧЕНЬ сильно зависело от положения антенны. То есть на 5-10 градусов в сторону и все, не ловит нихрена.

В общем, не модуль, а набор разочарований. Глючный, с малой дальностью, невнятной документацией и высокой ценой. Применение я, конечно, ему найду. Но вот покупать не советую — намучаетесь.

Файлы к статье:

Ссылки по теме:

41 thoughts on “Радиомодуль HopeRF HM-TR433”

  1. 800рублей — это сколько в евроденьгах ?
    если не на много дешевле чем евров 30 — то лучше всё же брать модули от EasyRadio, там и конфигурирование, и каналы, всё по уму :)
    проавда, вроде, тоже полулдуплекс.

    но если много дешевле 30 евро — тогда интересно … можно и в мегу чего своего засандалить …

      1. На Свердловском 33 под заказ купил TX-4MAVPF10 и RX-4MF1 (частотная модуляция). За оба модуля отдал примерно 730 рублей. Какая дальность не знаю ,но по квартире все ловит отлично.
        В отличии от ваших модулей постоянного сигнала на входе не требует (чтоб не отключаться). Если надо могу дать на прокат, попробовать.
        http://www.aurelwireless.com

  2. У нас народ баловался вот этими игрушками:

    http://www.digi.com/products/wireless/point-multipoint/xbee-series1-module.jsp

    Они обычно достаточно надежны для управления самопальными роботами на расстоянии нескольких десятков метров. Достаточно распространенные модули вроде.

  3. Я использую два типа RF трансиверов: RC1240 (Radiocrafts) и RXQ2 (Telecontrolli).
    Как показала практика RC1240 без проблем и прямой видимости уверенно работает до 500м на обыкновенные хреновые резинки. Если установить 1/4 штыри то расстояние увеличивается до 1км. В прошлом году покупал в Rainbow Technologies по 1000руб.
    Единственный недостаток этих модулей очень боятся статики. При пайке спалил две штуки.

    RXQ2 такой дальности конечно не имеют. Удалось выжать до 300м, но стоят дешевле и корпус DIL устанавливаю без пайки в панельки.
    RXQ2 до сих пор работает в пульте управления совместно с Tiny2313 оба в режиме PowerDown около 200мка двух «пальчиков» хватает (без выключения питания) на пол года.

    Сейчас жду когда завезут в Россию XBee-PRO 868 (Digi) и скорее всего перейду на них. Всё ближе к стандарту.

    1. Про радиокрафты слышал и не раз. Но дорогие падлы. Это же 4куска на комплект надо. Жаба. Но может быть… Спасибо про намек на статику, учту если что.

      А вот RXQ это уже интересней.

      У них, как я погляжу, прозрачный UART ? Т.е. инициализировал и забыл?

      1. Да. Проктически продолжение UART-a контроллера. Настраивается ихним софтом под конкретную частоту, ID-чипа, скорость и размер буфера. RTS CTC не использую, буфер устанавливаю в 1 byte (для команды больше не нужно) зато трансивер не ждет и не требует подтверждения для передачи, а передает сразу.

        Сам трансивер (типа универсальный) смонтирован в телефонной коробке и подключается к любому устройству, где есть UART шнурком RJ12ваш разъем. Короче получается переносная телефонная коробка с антенной (любая проволка 1/4)
        Для соглосования управляющих сигналов установлен буфер MM74НС125 и свой стабилизатор 3,3V LP5950CZ-3.3

        Вы будете смеяться, но я его использую для включения насоса в колодце, очень удобно куда шланг туда и кнопка. Кстати они (RXQ2) тоже в этом году заметно подорожали.

  4. А ты попробуй его своей прошивкой перешить =)

    А у меня вот всё руки не дойдут вот этих зверят попробовать, так сказать, в действии. По цене брал их где-то в районе 18 баксов, со встроенной антенной. С разъёмомом под внешнюю дороже, но сколько не помню.

        1. эм-м-м… Да на вид модуль не так уж сложно отреверсить. Ну и написать с нуля… Я так полагаю, там тупо — передатчик отдельно, а котлеты… то бишь контроллер отдельно… %) У тебя же есть чудо-осцилограф =) Где твой дух исследователя и первооткрывателя? =) Где покорение terra incognita? =)

  5. Да подозреваю, что под компаундом спрятана бескорпусная TRC102 от RFM (обвеска больно знакомая, параметры тоже совпадают). Если это она, за денёк можно аналог такого модуля изваять.

    1. Связался с китайцами. Они подтвердили косяк. Долго извинялись и выслали немного схемотехники, а также сказали, что TR433 = RF12+Mega48.
      Сейчас я у них пару подтверждений выужу и глядишь свою прошивку напишу.

      1. Требуй у них компенсацию за моральный ущерб и потраченные нервные клетки. Ну, и прошивку без глюков.
        А что мне понравилось больше всего в энтих штуках — так это симпатичная красная пимпочка на антенном разьеме. Я бы ее не стал снимать, а антенну припаял бы прямо к плате…

        1. Китайцы переделали прошивку HM-TR. Теперь обещают отсутствие таких косяков. Прежний их инженер по этим модулям был уволен за халатность — слишком много было претензий от клиентов. С марта все модули идут с новой прошивкой.

  6. Тем..
    для повышения дальности ходи на cqham.ru и кури по вопросу «направленная антенна»
    рекомендую сделать индикатор из мафонного микроамперметра и 2 точечных диодов
    диоды — могу дать парочку.
    удобно смотреть эффективность антенны на передатчике.

    скажу еще, что строить антенну на 433 — удовольствие еще то :(((
    миллиметры уже играют роль
    и 17.5 см, ва не 17, ЕМНИС.
    хотя, надо посчитать, 17 см — это в какой стороне. 441 мегагерц типа…
    17.5 см — 428 мегагерц.

      1. отвечу одно: с тем, что антенны не будет и прямой видимости и моща ограничена — не бывать тремстам метрам :(((
        это только если на принимающей стороне направленную антенну.

    1. Ну, если точно, то надо учитывать еще коэфициенты удлинения и укорочения в зависимости от диаметра провода, емкости его относительно окружающих предметов, и еще много всякого… А также не забыть учесть влияние луны на котовы яйца.

  7. Для входа в режим программирования необязательно передергивать питание. На обратной стороне платы есть выводы, с помощью которых китайцы программировали встроенную Меги48, в том числе и PC6, который является Reset»ом. Подпаиваемся к нему, и можно инициализировать модуль без передергивания питалова, перезагружая его.

    Еще для HM-TR868 дефолтными настройками являются 0×52,0×01,0×80,0×27

    Также есть некоторые соображения по поводу утери настроек, наверняка китайцы пихают их в EEPROM, который может глючить, если грамотно не сконфигурировать фъюзы BOD. Пробовал читать прошивку, она без проблем читается, только вот не пишется, а перепаивать туда новую мегу пока жаба душит :)

    1. По идее, кроме как в еепром писать больше некуда. Однако что то уж СИЛЬНО АДСКИ оно глючит. Сбрасывая настройки едва ли не в 50% случаев. Дается мне там слишком уж через жопу сделано. Хотя бод может и помочь.

      Читается??? С какой это радости? У меня считалось как 11, 22, 33, 44 и так далее. А вот перешить должно быть легко. Надо только сбросить его.

      1. Модуль глючит действительно неимоверно, купил пару около года назад, пару дней потыкал, не смог добиться устойчивой передачи данных между МК и забил :)
        Недавно увидел эту статью, все-таки добился устойчивой передачи данных, но стоило это кучу матов и психов :(

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

        Сбросить фъюзы, которые лочат запись в котнтроллер?? И потом переписать считанную прошивку, предварительно установив BOD??

        PS: у меня HM-TR868, может их забыли залочить :)

        1. Фюзы, которые лочат сбросить? Да вы маниак, батенька.
          Я заказывал как-то считывание прошивки, у китайцев есть
          такой сервис, с разрушением чипа. Но толку? У Атмег (не у всех)
          глючный внутренний еепром, потому слетают настройки.
          Если по-уму, то нужно писать свою прошивку с фиксированными
          настройками.

  8. я купил себе пару тоже для тестов.
    прошивка наверное новая — сбоев инициализации пока не видел!

    вообще интересные ДЕШЕВЫЕ модули. есть идея создать беспроводную распределенную систему управления из направления «Умный дом»

  9. Уже пошли модули с нормальными прошивками. Можно брать))
    На прошлой неделе купил пару в imrad.com.ua по 195 грн. штука. Работают без глюков. Пока доволен.
    Только софтина для настройки тупорылая..Это ж надо догадаться, что она работает только с COM1)))
    И еще.. Хальт писал, что для передачи нужно Enable в 1 поднимать. Такого я не делал, и в ДШ написано про автоматическое переключение на прием после передачи в течении 5 мс.

Добавить комментарий