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 лет. 

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

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

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

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

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

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

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

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

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

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

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

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

  1. Добрый день.
    Можно ли использовать модуль HC12 (uart) там сразу приемник и передатчик с одной антенной. его можно удобно сендвичем расположить под ардуиной.
    Заранее благодарю.

    1. нет, НС12 имеет свои мозги на борту

  2. Здорова можно использовать
    #Aliexpress 265,04 руб. | Кабель для передачи данных Nano V3 ATmega328/CH340G + USB 2,0 (50 см). Совместим с Arduino Nano V3.0. Micro USB, не припаянные штырьковые коннекторы.
    https://a.aliexpress.ru/_eKvRZQ

  3. День добрый.
    Подключил вместо указанных приемника и передатчика плату zk54a r2 из брелка сигнализации Starline на микросхеме uaa3220t. Пакеты отсылает, другой девайс принимает, а вот с приемом никак. Пин RX-энэйбл как и положено на земле.
    Не подскажете по данной проблеме?
    Спасибо.

  4. Доброго дня. Ошибка в коде. читает/конвертирует came 24 с инверсией и сдвигом вправо. Т.е. если посылаю например 11100111 он определит/конвертирует как 0000110. Конкретный пример fff0ff определяет/конвертирует как 000780, и так же и выводит на дисплей.

    1. Ну, это не ошибка, а вопрос интерпретации данных. Я их получаю инверсно (с вашей точки зрения) и также инверсно отправляю. Я сдвигаю на один бит и также сдвинутым отправляю. Результат получается таким же. Вы же с чем-то сравниваете полученные цифры? У вас есть еще какой-то сниффер?

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

    3. у меня 24 битные ворота CAME вроде считались, но не открываются. Пульт TOP 432-EE

    1. у меня тоже, не знаю с чем это связанно, но он с дорханами( именно ориг. брелками) не работает

  5. Попробовал собрать. Пробовал на собственной машине. Ключи читает но на отправку не работает.

    1. Вы с теорией ознакомьтесь, которую Автор приложил к проекту. Про килог почитайте. И сразу станет понятно, что автосигнализации имеют в большинстве своем динамические коды.

  6. Arduino: 1.8.9 (Windows Store 1.8.21.0) (Windows 10), Плата:»Arduino Pro or Pro Mini, ATmega328P (3.3V, 8 MHz)»

    libraries\OLED_I2C\DefaultFonts.c.o (symbol from plugin): In function `RusFont’:

    (.text+0x0): multiple definition of `RusFont’

    sketch\DefaultFonts.c.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\DefaultFonts.c.o (symbol from plugin): In function `RusFont’:

    (.text+0x0): multiple definition of `TinyFont’

    sketch\DefaultFonts.c.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\DefaultFonts.c.o (symbol from plugin): In function `RusFont’:

    (.text+0x0): multiple definition of `BigNumbers’

    sketch\DefaultFonts.c.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\DefaultFonts.c.o (symbol from plugin): In function `RusFont’:

    (.text+0x0): multiple definition of `MediumNumbers’

    sketch\DefaultFonts.c.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\DefaultFonts.c.o (symbol from plugin): In function `RusFont’:

    (.text+0x0): multiple definition of `SmallFont’

    sketch\DefaultFonts.c.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::_convert_float(char*, double, int, unsigned char)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::_initTWI()’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::OLED(unsigned char, unsigned char, unsigned char)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::OLED(unsigned char, unsigned char, unsigned char)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::OLED(unsigned char, unsigned char)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::OLED(unsigned char, unsigned char)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::clrScr()’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::fillScr()’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::getDisplayHeight()’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::setPixel(unsigned int, unsigned int)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::clrPixel(unsigned int, unsigned int)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::invPixel(unsigned int, unsigned int)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::invertText(bool)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::_print_char(unsigned char, int, int)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::print(char const*, int, int)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::print(String, int, int)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::printNumI(long, int, int, int, char)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::printNumF(double, unsigned char, int, int, char, int, char)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::setFont(unsigned char*)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::drawHLine(int, int, int)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::clrHLine(int, int, int)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::drawVLine(int, int, int)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::clrVLine(int, int, int)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::drawLine(int, int, int, int)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::clrLine(int, int, int, int)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::drawRect(int, int, int, int)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::clrRect(int, int, int, int)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::drawRoundRect(int, int, int, int)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::clrRoundRect(int, int, int, int)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::drawCircle(int, int, int)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::clrCircle(int, int, int)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::drawBitmap(int, int, unsigned char*, int, int)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::_sendStart(unsigned char)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::_sendStop()’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::_sendNack()’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::_sendAck()’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::_waitForAck()’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::_writeByte(unsigned char)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::_sendTWIcommand(unsigned char)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::setBrightness(unsigned char)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::invert(bool)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::rotateDisplay(bool)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::sleepMode(bool)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::update()’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    libraries\OLED_I2C\OLED_I2C.cpp.o (symbol from plugin): In function `OLED::_convert_float(char*, double, int, unsigned char)’:

    (.text+0x0): multiple definition of `OLED::begin(unsigned char)’

    sketch\OLED_I2C.cpp.o (symbol from plugin):(.text+0x0): first defined here

    collect2.exe: error: ld returned 1 exit status

    exit status 1
    Ошибка компиляции для платы Arduino Pro or Pro Mini.

    Этот отчёт будет иметь больше информации с
    включенной опцией Файл -> Настройки ->
    «Показать подробный вывод во время компиляции»

    Вот какая проблема. Что не так?

    1. Спасибо решил. Поставил ардуино обычной версии, не с маркета win10

  7. С приёмником SRX887 v2.0 не работает. А с таким https://aliexpress.ru/item/32606396563.html только на 433 мгц работает, но дальность очень уж никакая(антенну пробовал штыревую 160-173мм и заводскую спираль). Есть вариант как запустить на SRX887?

    А вообще, спасибо за проект!)

  8. шлагбаумы nice он не правильно считывает , видимо у них пакет большой 99:0:0:0:0:0:0: c0:0:0:0:0:0:0: f6:0:0:0:0:0:0: принемает пакеты в таком виде

  9. Добрый день, немогу разобраться со скейчем. Объясните пожалуйста пошагово начиная с того что заходишь по ссылке под видео скейч и библиотека и т. д. С более постым проектом разобрался а тут запутался. Заранее спасибо.

  10. Спасибо, разабрался уже сам, все загрузилось заработало, только пока не на чем непроверял.

  11. Доброе время суток. Скажите пожалуйста, можно ли использовать ардуино в качестве приемника под пульты дорхан с динамическим кодом как блок управления и при этом использовать динамическую часть кода брелка. Я использую arduino в качестве блока управления ролворотами в гараж. Все собрал и работает, вот только могу использовать id брелка и кнопки. Хотелось бы ещё и динамическую часть кода брелка использовать для безопасность.

    1. Для работы на ардуино с динамическим кодом типа KeeLoq есть библиотека. Параметром в ней задается так называемый Мануфактурный код. Если вы знаете (а они продаются, конечно не легально) мануфактурный код от вашего пульта, то сможете научить ардуинку дружить с вашим пультом. Второй вариант — придумать свой мануфактурный код и сделать на арудино свой пульт.

  12. Не пойму в чем причина, снифер ловит сигнал с пульта но с фиг знает с какова нажатия, пульт подношу в притык. Помогите разобраться, куда копать.

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

    1. Я тоже заметил приём ни к черту -чувствительность у приёмника слабая Передатчик вроде тоже не очень .Как все работает у МЕХАТРОН DIY удивительно .

  14. Как увеличить дальность ? На прием работает отлично а на передачу только в притык …. причем разные антены дают незначительный эффект но не более + — 20см

    1. Какая частота приемника и передатчика?

  15. добрый день! собрал устройство, но при прошивке не было звука из бузера и ничего не показывает дисплей. в мониторе com-порта отображаются только надписи «wake up» и «sleeping…». при нажатии одновременно вправо+влево «EEPROM cleared». подскажите пожалуйста в чем может быть дело…

    1. а после нажатия reset на ардуино бузе не пиликает?

    2. нет, никаких звуков не происходит, только на ардуино красная лампочка мигает один раз

    3. проверяйте правильность подключения буззера

  16. Собирал несколько экземпляров устройства на разных платформах (нано, микро), в целом все хорошо, но есть несколько вопросов:

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

    2. Можно ли генерировать динамические коды keeloq если мне известен мануфактурный код конкретного шлагбаума или ворот?

    1. 1. Кнопка висит на прерывании. Может и наводка…
      2. Можно. Для этого есть готовая библиотека в репозитории. Ищется по слову keeloq. В ней есть маленький скетч с примером как раз про свой мануфактурный код.

  17. Подскажите как переделать скетчь под ардуино нано а то при компеляции на ЕЕРОМ жалуется

  18. Доброго времени суток, подскажите на одну ардуинку возможно поставить 433 и 315 частотные приемопередатчики одновременно, что бы так сказать ловили и передавали в двух диапозонах?

  19. Здравствуйте.
    Замечаю зависания устройства при повторной перезаписи уже заполненных 31-ой ячейке (т.е. когда заносится 1-я, 2-я и так далее ячейка из 31-ой). При выключении-включении eeprom оказывается пустым. Как eeprom разделён под хранение кодов? Под каждый код отводится равное количество байт, или коды пишутся «подряд», и занимают разный объём (в зависимости от своей длины)?

  20. Спасибо за проект! Как сделать звук громче? Его еле-еле слышно или я что-то сделал не так?

    1. Уменьшить номинал токоограничительного резистора

  21. Спасибо за проект! У меня бузер еле слышно. Это у меня косяк? Если нет, то как увеличить громкость?

    1. 1. Проверьте номинал резистора, который стоит последовательно с буззером. Должно быть 200-300 Ом
      2. Есть буззеры на разное напряжение. Нужно использовать пассивный буззер на 3.3 или на 5В. Активный буззер будет тихо хрипеть, а пассивный на 9-12 в просто тихо пищать.

  22. Доброго времени суток! МЕХАТРОН DIY, вы ещё не научили эту штуку читать шлагбаумы DOORHAN?

  23. Можно ли подключить изделие UART Радиомодуль HC-11 433МГц вместо указанных на схеме

  24. Добрый день, подскажите. Что не так?

    Arduino: 1.8.13 (Windows 10), Плата:»Arduino Micro»

    RadioSniffer:12:10: fatal error: OLED_I2C.h: No such file or directory

    #include

    ^~~~~~~~~~~~

    compilation terminated.
    exit status 1
    OLED_I2C.h: No such file or directory
    Этот отчёт будет иметь больше информации с
    включенной опцией Файл -> Настройки ->
    «Показать подробный вывод во время компиляции»

  25. Подскажите, расстояние чтения и отправки очень маленькое получается-порядка 3 метров, и это с антенной. Без антенны вообще только в упор — сантиметров 5. Это проблема с модулями приема-передачи или у всех так?

  26. Собрал, вроде работает. Но какое-то невнятное переключение режимов. Срабатывает не каждый раз. Осталось только найти шлагбаум и попытаться его открыть.

    1. С переключением разобрался. Вводит в заблуждение гаснущий экран при переключении в режим SILENT

  27. Доброго времени суток. Хочу попробовать реализовать на ардуино уно. Кроме входов какие еще отличия в скетче нужно исправить?

  28. Пишу повторно для МЕХАТРОН DIY Можно ли подключить изделие UART Радиомодуль HC-11 433МГц вместо указанных на схеме?

  29. Здравствуйте. Так и не смог сделать так что-бы заработало. уже и ардуинки менял, остановился на NANO. С библиотеками какаято беда, не могу понять что к чему, вернее куда что вставлять. то ошибку oled12 выдает. проверяю, тестом-рабочий. кароче три дня потратил и ничего в итоге не получил). библиотек кучу разных скачал и кстати только с одной мой дисплей заработал,её тоже подтягивал, но ……..

  30. Добрый день!
    Подскажите пожалуйста, почему в вашем проекте arduino подключается напрямую к аккумулятору, а не к выходу OUT модуля «134n3p»?
    Если я правильно понимаю, в таком случае не задействована защита от переразряда аккумулятора.
    Так же не нашёл информацию о том как в этом модуле реализовано (и реализовано ли вообще) ограничение тока заряда.
    Поделитесь пожалуйста, если владеете такой информацией.

  31. такая же фигня. Есть подозрение что китаец впаял в ардуинку кварц на 16мгЦ. Уж больно биппер быстро мигает., а в коде есть привязка к таймингу

  32. Добрый день!
    Собрал на версии nano, пульты от люстр ловит, а вот передавать не хочет. Замерил напряжение питания на передатчике в момент отправки ключа, показывает до 0.5 вольт. А на приемнике все по честному, почти 5В.
    Как я понимаю передатчику тупо не хватает напруги? Как быть в таком случае? Отдельно подавать 5 вольт на передатчик?

    1. какой передатчик использовали? На какую частоту? На какой частоте работает люстра?

  33. Доброго вечера, пытаюсь собрать на китайской arduino nano, но безрезультатно. Отправляю с передатчика из комплекта данные, чтобы проверить работоспособность но в мониторе порта тишина, грешил на то что китайцы прислали бракованные модули, попробовал их подключив библиотеку RadioHead — оказались рабочие. Подключаю к data ноге светодиод, при отправке данных он моргает, может подскажете в чем может быть проблема? Так как у у nano на выходе с пинов 5V вместо 3.3V необходимых, data ногу передатчика подключил через резистивный делитель, а приемник напрямую питаю от 3.3V и GND с ардуины.

    1. А зачем от 3.3 когда в описании модулей их питание 5V и только у модуля с катушками у передатчика может доходить до 12V

  34. Посмотри на ютубе вбив в поиске ОБЗОР радиомодулей 433 мгц передатчик + приемник

  35. Подскажите пожалуйста, при использовании модулей с разной частотой в одном аппарате переключатель лучше повещать на + модулей а остальные запараллелить? Или пины data сделать через переключатель? И приемники подключить можно к одной антенне а передатчики к другой? Не будут модули друг другу мешать, фонить или еще чего нибудь там? Помогите модернизировать аппарат

  36. всем привет. нашел как подключить сразу 2 приемника. передатчики думаю можно подключить через переключатель. но скорее всего повысится энергопотребление потому что питается сразу 2 приемника https://www.drive2.ru/b/482489617719755505/

  37. Всем привет! При заливке скейча выдает ошибку!
    Вопрос к автору почему проект не расписан как следует?
    Какая скорость монитор порта для выполнения команд?
    Нужны команды: для очистки сохраненных ключей и отправки ключа на устройство через монитор !!!
    Какой программатор указывать в Arduino????? По умолчанию стоит AVRISP mk2 !!!!
    Процессор указываю ATmega328p (3,3v,8MHz)!!!!!
    Програматор использую СЗ2102 MODULES usb to TTL!!!
    Плату выбираю «Arduino pro or Pro mini.
    Верный com3!
    Библиотеки устанавливать какие нужно?

    1. Вроде все описано .Все ссылки даны . Многие уже повторили проект и раз скетч выдает ошибку сами виноваты -что то не то грузите .Сходите по ссылкам и посмотрите какое ардуино -какой программатор

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

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

Наверх