Прикупил я себе парочку модулей 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 сниффер и путем десяти минут тыканья пришел к выводу, что если отправить в режиме конфигурации в порт пакет:
то модуль даст тебе текущие настройки. И если они отличаются от:
значит в мозги его вбилась какая то дурь и ему надо отправить
для сбрасывания в дефолт.
Казалось бы, фигня проблема. Что нам впервой чтоль периферию иницализировать. Но тут вылазит очередная задница, да еще пожирней предыдущей для входа в режим программирования надо передернуть питание. Т.е. просто поднять в 1 ножку CONFIG недостаточно. Нужно выключить питалово, выставить Config в 1 и подать питание на модуль. Ну №,№№!!! То есть это ставить еще оптрон или транзистор, на прерывание питания, чтобы это все можно было на лету настраивать? Вот уроды
Косяк второй
Пробовал прогнать систему в интенсивном режиме. Шлю поток на вход и тут же возвращаю его обратно. То есть как бы заставляю работать его в режиме дуплекса. Отлично. Гоню, диодик мигает передача идет, конечно, с потерями, но это понятно чуда от полудуплекса я не жду. Тут раз и на приемопередающем модуле стухают диодики и он тупо виснет. Ни туда ни обратно. До, правильно, передергивания питания. Так что слать байты медленно и печально, чтобы наш китаец не вспотел.
Тест на дальность
Но может хоть тут порадует агрегат? HMT+HMR, помнится, мне на двух проволоках выдал под 150 метров. Передатчик лежал на столе, возле окна на пятом этаже приемник в 150 метрах в прямой видимости окна. Как покажет себя HM-TR433? А никак. Только вышел и на 50 метров не отошел, как передача тупо сдохла. Подошел восстановилась. Так что поводок у нас коротенький.
UPD:
Обнаружил, что в разьеме контакт какой то подозрительный. Вроде как не контачит толком. Заменил антенну. Стало чуть получше. Добился полного приема послания на 215 метрах почти прямой видимости (через стену), но ОЧЕНЬ сильно зависело от положения антенны. То есть на 5-10 градусов в сторону и все, не ловит нихрена.
В общем, не модуль, а набор разочарований. Глючный, с малой дальностью, невнятной документацией и высокой ценой. Применение я, конечно, ему найду. Но вот покупать не советую намучаетесь.
Оцените статью!