Radio-sniffer 433/315 MHz. Открывашка для шлагбаумов и ворот

Сейчас почти в каждом дворе наставили шлагбаумов, на работе ворота, дома пульты от люстры и даже шторы раздвигаются дистанционно. Как это работает, смотрим видос на моем канале youtube:

Схема соединения модулей

Схема соединения довольна простая, при желании ее должен осилить любой старшеклассник.

Приемник подключается к ардуинке всего 3 проводками. Передатчик тоже тремя проводками. Дисплей — четырьмя. Аккум прямо впаивается в ардуинку.

Пины подключения приемника и кнопки OK лучше не менять, т.к. скетч использует прерывания INT0 и INT1. Я использую приемник и передатчик на 433 МГц, но все должно работать и на 315-ти мегагерцовых модулях.

схема соединения радиосниффера

Механическая сборка в корпус

В качестве корпуса используется коробочка от тик-така.

Скетч и Библиотеки

Скетч найдёте на странице проекта на GitHub. Для чтения радиопультов я не использую библиотеки библиотеки типа RC-switch или radiobutton. Скетч достаточно универсален самостоятельно распознает любой цифровой повторяющийся сигнал содержащий до 160 переключений и содержащий защитные паузы от 5 до 30 мс. При этом фиксируется длительность единицы и нуля, полярность сигнала, наличие преамбул и дополнительных бит. Полученные данные скетч может сохранять в EEPROM и синтезировать на их основе исходный сигнал.

Не забудьте нажимать reset на ардуино как только закончится компиляция скетча и появится надпись «Загрузка». Этот программатор автоматом не посылает сигнал ресет.

Энергопотребление и сбережение

Т.к. девайс должен функционировать длительное время автономно, нужно позаботиться от энергосбережении. Поэтому за основу взята arduino pro mini с пониженной частотой 8МГц и пониженным питанием 3.3В. Все модули питаются также от 3.3В. Также из ардуино отпаян индикатор питания. Программно сделано следующее:

  • Понижена тактовая частота до 2 МГц
  • Отключена неиспользуемая периферия МК: АЦП, компаратор, SPI, неиспользуемые порты ввода-вывода
  • При ожидании используется режим глубокого сна с потреблением в 150 мкА!
  • При необходимости OLED дисплей переводится в режим сна
  • Модуль передатчика включается только в момент передачи
  • Модуль приемника отключается при передаче
Потребление тока всем девайсом в режиме глубокого сна

Как заряжать аккумулятор?

Для зарядки аккумулятора от usb использую замечательный модуль 134N3P. У него два гнезда. Внимание! Для подключения к блоку питания используется microUSB. В режиме Normal одного заряда хватит на несколько месяцев работы.

Описание режимов работы радио-сниффера

Режим NORMAL: после включения сниффер загружает из EEPROM ардуино текущий ключ, показывает его код на дисплее, а также тип ключа и количество ключей в EPPROM. При этом сниффер уже слушает эфир. Если он “услышал” новый ключ, то дисплей отобразит серийник этого ключа. Долгое удержание ОК сохранит ключ в EEPROM. Кнопками влево и вправо можно листать ключи из списка. По нажатию на кнопку ОК сниффер передает текущий ключ в эфир. Т.е. его можно использовать как пульт. Через 5 секунд бездействия девайс засыпает. Потребление тока опускается до 140 мкА.

Режим AUTO:  Переключение между режимами происходит двойным кликом по кнопке ОК. Текущий режим отображается в правом нижнем углу дисплея. Режим авто отличается от нормал тем, что “подслушанный” ключ автоматически добавляется в EEPROM, если конечно там такого ключа еще нет. Если сниффер услышал новый ключ, то из буззера раздается писк. В этом режиме снифеер не засыпает. Потребление тока составляет 14 мА.

Режим SILENCE: тоже что и режим  авто, только при этом отключается дисплей и не пищит буззер. В этом режиме сниффер можно оставить на несколько суток и он тихонечко будет сохранять в EEPROM все, что услышит. В EEPROM влазит максимум 30 ключей. Очистить eeprom можно одновременным нажатием на кнопки влево и вправо. Потребление тока в этом режиме составляет 7 мА.

Что умеет читать/повторять?

От самых простых 12 битных пультов от шлагбаума CAME, различных 24 битный пультов от ворот найс, люстр и прочих китайских радиорэле до 64 битных ключей KeeLoq с динамической и псевдодинамической частью от откатных ворот AN-motors и автосигналок типа Пантера и Шэрхан.

Естественно, воспроизводить динамические ключи таким способом бессмысленно. 

ПРОИЗВОДСТВО и РАСПРОСТРАНЕНИЕ настоящих снифферов НЕЗАКОННО!

Статья 138 часть 1 уголовного кодекса: незаконное производство, приобретение или продажа спец. средств, для тайного получения информации. Карается лишением свободы до 4 лет. 

К таким средствам относятся не только аппаратура для прослушки, но и перехват информации с технических каналов связи. Т.е. все чужие (не ваши) автосигнализации и системы управления доступом такие, как ворота, шлагбаумы и домофоны законом запрещено прослушивать.

Хочу всех предостеречь. У вас как у пользователя шлагбаума или автоматических ворот может возникнуть чувство ложной безопасности. При этом проникнуть на участок вашего загородного дома или вывезти со склада материальные ценности может оказаться не так сложно.  С помощью данного самодельного девайса вы можете протестировать свою систему на безопасность.

Помните, подключая приемную антенну вы сможете читать чужие коды, а это может привести к уголовной ответственности. Берегите себя и своё имущество и не нарушайте закон.

Поддержи Автора!

Если вам понравился проект — поддержите автора!

Если вам нравится самоделка, вы можете заказать комплект для самостоятельной сборки

  • Комплект для самостоятельной сборки 1900 руб

Доставка в ваш город составляет примерно 270 руб и уже включена в стоимость.

Вырученные средства пойдут на на закупку материалов для новых проектов, оборудования для съемки, содержание сайта и доменного имени.

Необходимые Материалы

Полезные ссылки

579 комментариев к «Radio-sniffer 433/315 MHz. Открывашка для шлагбаумов и ворот»

  1. Доброго дня. Собрал все по схеме, прошил, ловит сигнал и записывает. Почему то не всегда отрабатывает отправка сигнала, иногда приходится несколько раз подряд нажимать ОК — что бы сработка прошла. Пробовал на 433.92 слушать эфир — действительно, отсылает иногда нормально, но чаще после нескольких попыток. Клавиша отрабатывает 100%. Куда копать ? Передатчик глючный или Что то накосячил с прошивкой ? И еще поврос, у Вас использованы модули 433мгц с микросхемами, я купил такие, но у меня есть еще без микросхем и тоже на 433мгц — есть разница какие использовать ?

  2. Приветствую , собрал все как в описании только на плате нано, нужно ли как то менять скетч? а то приемник почему то не принимает сигналы. Буду очень благодарен к совместной решении проблемы pppavelll@inbox.ru

  3. Здравствуйте! Подскажите пожалуйста, сколько будет сделать прибор для перехвата шлагбаума и отправить в МСК? А то, снимаю квартиру, а УК ключ не дают, потому что я не собственик, а хозяевам не дают, потому что у них нет автомобиля. По хорошему бы в суд надо подать, но хозяйка не хочет заморачиваться. Думаю, самый простой способ перехватить ключ, записать на свой брелок и пользоваться спокойно.

    1. сверху же написано изготовление и распространение НЕЗАКОННО!!

  4. Здравствуйте, Собрал по инструкции, читает сигнал только с китайского пульта
    (шлагбаумы, сигналка — глухо). Может проблема в количестве повторений сигнала(то что скетч считает правильным ключом)? В программировании нуб. Подскажите в каких строках скетча какие параметры корректировать(Количество удачно считанных повторений). Заранее спасибо.

  5. У меня устройство используется только для чтения кодов. Для выдачи используется другой, установленный в машине.
    После считывания, записываю код в машину. Возник вопрос как рассчитываются параметры для выдачи 1 и 0. Например считали:
    Code=a6:74:61: codeLenth 24, firstDataIdx 1, Key type 24bit, zero [240, -480], one [468, -196], startPause [128, -4576]
    -4576, 480, -224, 256, -480, 480, -224, 256, -480, 256, -448, 480, -256, 480, -224, 256, -480, 256, -448, 480, -256, 480, -224, 480, -256, 224, -512, 448, -256, 224, -512, 224, -480, 256, -480, 448, -256, 480, -256, 224, -480, 256, -480, 224, -480, 256, —
    Данные по 0 и 1, наверное должны быть симметричными. В RAW данных основная масса импульсов далеко не -196.
    Непонятка…

    1. Вопрос возник из-за того, что RAW не храниться в EEPROM.
      Т.е. какие использовать параметры 0 и 1 для выдачи не очень понятно. Может быть средние?
      (240+480+468+196)/6=231 -> zero [231, -462], one [462, -231]?

  6. День добрый.
    Изучал, ваш ход. Появились несколько вопросов.
    Вы использовали делитель частоты clock_div_4 обозначив переменную.

    Если мой камень прошит без внешнего кварца, а на внутреннем 8мгц. Могу ли я использовать эту запись clock_div_4, как делитель частоты?

    Далее в сетапп
    У вас есть запись например
    (50 >> prescal), если я не использую делитель частоты, то мне нужно просто убрать побайтовый сдвиг регистра, и оставить только 50?

  7. Автору спасибо!
    Есть вопрос — не считывает пульт от радиореле , демо-скетч с библиотекой RCSwitch декодирует :

    Decimal: 14574729 (24Bit) Binary: 110111100110010010001001 Tri-State: not applicable PulseLength: 375 microseconds Protocol: 1 Rawdata:1760,1176,344,1168,360,400,1120,1160,360,1160,360,1152,368,1152,376,384,1128,392,1136,1136,384,1136,384, 376,1144,376,1136,1144,376,384,1144,376,1136,1144,384,376,1144,376,1144,376,1136,1136,384,368,1152,368,1144,1136, 392,

    От другого пульта всё принимает-пишет в еепром , лог RCSwitch :
    Decimal: 5326128 (24Bit) Binary: 010100010100010100110000 Tri-State: FF0FF0FF0100 PulseLength: 153 microseconds Protocol: 1 Raw data: 4744,296,304,456,144,216,392,448,152,216,400,200,400,208,400,448,152,208,400,448,152,208,408,200,400,200,408,440,160,208,400,440,160,200,416,192,408,432,168,440,168,200,416,184,416,192,416,184,416,

    Тот что не копируется — длина импульса 350 , и rawdata больше… Что можно в скетче подправить ?

  8. а можно диод питания на плате ардуино гасить программно, без выпаивания?

  9. Добрый день.
    Очень не хватает еще одного режима, в котором будет лишь один код, из числа сканированных. Чтобы пользоваться сниффером как брелком.
    Может напишете кусочек кода для вставки в скетч?

  10. Добрый день!хотел бы попросить скинуть уже готовый скетч (рабочий) с изменениями на почту !спасибо
    eeo20@mail.ru

  11. Доброго дня, а как то можно реализовать одновременную работу модулей 315 и 433 ? Может кто то уже делал такое?

  12. Здравствуйте! За ранее спасибо и надеюсь на ответ.
    Планируется новая версия? Дело в том, что проблема со статикой типа NIce и Came 12/24
    Вообщем прибор ее видит, но на экране одни FF от CAME. Эта статика почему то не работает, нельзя записать на брелок потом. В чем может быть проблема? Нужно, что-то выставлять в скетче? Смотрите есть в сети еще проекты на ардуино и там спокойно воспроизводит код CAME и NICE, он перехватывает и потом можно точно воспроизвести код и пульт копировщик его понимает и записывает, проверено. Интересен Ваш проект по тому, что может анализировать динамику, а это очень прикольно! Те проекты этого не умеют! Но прошу добавить поддержку Came и Nice статических. За ранее спасибо помогите разобраться пожалуйста!
    Простите если такой вопрос был, поиск по всем страницам по словам NICE CAME, не показал нужного результата.

  13. Здравствуйте. Пробую клонировать свой пульт Marantec Digital 302. Снифер его считывает как Unknow. На отправку не срабатывает, хотя передача работает исправно, проверил на пультах от люстры. Считывает одинаково:
    90 12 82 A1 codeLenth 37, firstDataIdx 1, Key type Unknown, zero [992, -1272], one [1988, -1356], startPause [2048, -9984]
    -9984, 1984, -1024, 992, -2016, 992, -1024, 1984, -1024, 992, -1024, 992, -1024, 992, -1024, 992, -1024, 992, -1024, 992, -1024, 992, -2016, 1984, -1024, 992, -1024, 992, -2016, 1984, -2016, 992, -1024, 1984, -2016, 992, -1024, 992, -1024, 992, -1024, 992, -1024, 992, -1024, 1984, -1376, 960, -2016, 1984, -1024, 992, -2016, 1984, -1024, 992, -1024, 992, -1024, 992, -1984, 1024, -992, 2016, -2016, 992, -992, 2016, -1024, 992, -992, 1024, -1024, 992, -1984, 2048, rawLen 76
    90 12 82 A1 codeLenth 37, firstDataIdx 1, Key type Unknown, zero [992, -1276], one [1988, -1344], startPause [2016, -9984]
    -9984, 2016, -992, 1024, -1984, 1024, -992, 2016, -992, 992, -1024, 992, -1024, 992, -1024, 992, -1024, 992, -1024, 992, -1024, 992, -2016, 1984, -1024, 992, -1024, 992, -2016, 1984, -2016, 992, -1024, 1984, -2016, 992, -1024, 992, -1024, 992, -1024, 992, -1024, 992, -1024, 1984, -1344, 992, -2016, 1984, -1024, 992, -2016, 1984, -1024, 992, -1024, 992, -1024, 992, -2016, 992, -1024, 1984, -2016, 992, -1024, 1984, -1024, 992, -1024, 992, -1024, 992, -2016, 2016, rawLen 76
    90 12 82 A1 codeLenth 37, firstDataIdx 1, Key type Unknown, zero [996, -1268], one [2000, -1344], startPause [2048, -9984]
    -9984, 2016, -1024, 992, -2016, 992, -1024, 1984, -1024, 992, -1024, 992, -1024, 992, -1024, 992, -1024, 992, -1024, 992, -1024, 992, -2016, 1984, -1024, 992, -1024, 992, -2016, 1984, -2016, 992, -1024, 1984, -2016, 992, -1024, 992, -1024, 992, -1024, 992, -1024, 992, -1024, 1984, -1344, 992, -1984, 2016, -1024, 992, -1984, 2016, -1024, 992, -1024, 992, -992, 1024, -1984, 1024, -992, 2016, -1984, 1024, -992, 2016, -992, 1024, -992, 1024, -1024, 992, -1984, 2048, rawLen 76

    Но при передачи не срабатывает, возможно у меня скетч не правленый? Подмогите люди добрые? 🙂

  14. Добрый день! Хотел бы попросить скинуть уже готовый скетч (рабочий) с изменениями на почту! Спасибо.

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Наверх