Как заставить работать nRF24L01, Уроки Arduino

Ғылым және технология

Уроки Arduino для начинающих, #8, Как заставить работать или почему не работают радиомодули nRF24L01
🐾Оригинальные nRF24L01 на али: got.by/3kl1on got.by/3klqii
лотерея или перемаркированные SI24R01: got.by/3klr07 got.by/3klqq3
🐾Библиотека RF: tmrh20.github.io/RF24/index.html
🐾Установка библиотеки в Arduino IDE: • Установка библиотеки в...
🐾Старые примеры для модулей: arduinolab.pw/index.php/2015/1...
Желающим оказать материальную поддержку.
www.donationalerts.ru/r/arduin...
#программирование #arduino #ардуино #уроки #nRF24L01

Пікірлер: 84

  • @anatolytitov4169
    @anatolytitov41695 жыл бұрын

    Спасибо, полезно!

  • @user-sd4gi7vj5f
    @user-sd4gi7vj5f5 жыл бұрын

    Спасибо. А то я иногда не понимал, почему на устройство передаётся команда, а ответа нет. Думал проблема в коде, а тут всё стало на свои места. Я эти модули покупал у разных продавцов - где подешевле, и никогда на маркировку не смотрел. Ещё раз спасибо - открыли глаза.

  • @dred77780

    @dred77780

    5 жыл бұрын

    Абсолютно те же грабли.

  • @-92tv47

    @-92tv47

    2 жыл бұрын

    Спасибо вам и автору видио. Только думаю о данном модуле.

  • @dizer3680
    @dizer36805 жыл бұрын

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

  • @1padlaxaker
    @1padlaxaker5 жыл бұрын

    спасибо за труд

  • @alexey1119
    @alexey11195 жыл бұрын

    спасибо. интересно

  • @user-ov2ix1us3x
    @user-ov2ix1us3x5 жыл бұрын

    Интересно, я один жду шесть месяцев третий урок?)

  • @1two299

    @1two299

    5 жыл бұрын

    изв, 3й урок из чего ? иф не секрет

  • @manaevemil

    @manaevemil

    3 жыл бұрын

    Третьего урока так и до сих пор нет . 2020

  • @bbnmn4800

    @bbnmn4800

    2 жыл бұрын

    @@manaevemil все ещё нет. Сейчас2021

  • @PleerFol

    @PleerFol

    2 жыл бұрын

    @@bbnmn4800уже 2022 так то

  • @smehopraym7916

    @smehopraym7916

    Жыл бұрын

    @@PleerFol всё ещё ждём.2023

  • @user-dp8mr4jz8z
    @user-dp8mr4jz8z5 жыл бұрын

    Спасибо за подсказку, проверю все свои модули, ради интереса.., а то их штук 10 лежит.. ))

  • @TolyaBogomolov
    @TolyaBogomolov5 жыл бұрын

    Хм... Теперь я точно сделаю радио магнитолу на ардуино)

  • @dimapiter7586
    @dimapiter75865 жыл бұрын

    Всё хорошо, но хотелось бы конкретики так сказать. Вот есть бочка с водой на некоторой высоте, провода ло неё тянуть муторно, как реализовать на данных модулях отключения насоса внизу, когда уровень воды в бочке достигнет определенного уровня? Датчик поплавковый, герконовый итп. Наверху передатчик, внизу приемник.

  • @sergt291
    @sergt2915 жыл бұрын

    Я также керамику напаиваю на них:-)

  • @user-lc3oy3pj9v
    @user-lc3oy3pj9v5 жыл бұрын

    ну правильно... после шестого урока должен быть восьмой...

  • @dizer3680

    @dizer3680

    5 жыл бұрын

    А тоесть то что после 2 урока сразу 6 тебя вообще не смутило?!

  • @user-lc3oy3pj9v

    @user-lc3oy3pj9v

    5 жыл бұрын

    @@dizer3680 ну вообщето ожидалось что _шестой_ - последний.. потому что понятно что у автора с обучением - не очень... Но нет... а про нумерацию лучше всех сказал в своё время покойник задорнов.. _"Пассажиры, у которых были билеты в девятый вагон, естественно, сели в первый из них. Потому что все нормальные люди с детства знают: девятый вагон тот, что сразу после восьмого. И никому в голову не может прийти, что после девятого вагона окажется снова девятый."_

  • @kostya1306
    @kostya13065 жыл бұрын

    Спасибо. Меня давно мучает вопрос по этим модулям. У них есть режим подтверждения приема данных. У самого пока руки не дошли разобраться. Если расскажете будет здорово.

  • @iiiBog
    @iiiBog10 ай бұрын

    У меня модули без усилителя - без текста на чипе, только точка. Модули с усилителем с оригинальной маркировкой. Но пока оба варианта работают без сбоев

  • @gromitwoll6907
    @gromitwoll69072 жыл бұрын

    Решил проблему с задержкой delay. Для тех кто сталкивался с тем что модуль перестает работать после задержки больше 10 миллисекунд. Во-первых функция write в конце опускает питание модуля. Модуль может повторно не выйти из спящего режима. Питание нужно самому поднять. Но мне это не помогло. Оказалось что перед передачей числа нужно активировать две функции startListening() и stopListening(). до сих пор не понимаю как они работают, но они пробуждают модуль после долгого сна.

  • @Sashka96963
    @Sashka969633 жыл бұрын

    У меня с Али пришли 2 модуля одной не разломанной платой. Точки на одной вплотную к буквам, на другой с краю платы. Текст напечатан четко. Но из 8 шт заказанных нашел 2шт. SI24L01.

  • @2009wein
    @2009wein4 ай бұрын

    А что посоветуете, аналог или лучше модулей нрф24?

  • @spajalnikom
    @spajalnikom5 жыл бұрын

    Давно с ними работал.До сих пор лежит собранный проект😀

  • @dmaraptor
    @dmaraptor5 жыл бұрын

    Ссылка на оригинальные модули из описания ведет на магазин с какими то нереальными ценами. Можна почти за те же деньги взять лора модули

  • @smert_okupantam
    @smert_okupantam5 жыл бұрын

    сегодня нашел в клаве NRF24LE1H, хотя по даташиту там последняя буква максимум F. подделка?

  • @frmurafa3048
    @frmurafa30486 ай бұрын

    Здравствуйте! Подскажите пожалуйста, возможно ли сделать детектор вайфай сигнала на основе данной платы? Нужно сделать прибор сигнализирующий об обгаружении вайфай звуковым и световым сигналом.

  • @DGT67

    @DGT67

    5 ай бұрын

    Да. См. функцию testCarrier(); Назначение: Проверка наличия несущей частоты на выбранном канале (частоте). Синтаксис: testCarrier(); Параметры: Нет. Возвращаемое значение: bool - наличие несущей на выбранном канале за все время его прослушивания. Примечание: Функция используется модулем в режиме приёмника, или после режима приёмника. Функцию можно использовать для проверки помех при выборе или смене канала. Если несущая обнаружена, значит на данном канале работает кто то другой и этот канал выбирать не стоит. При прослушивании канала для определения на нём сторонних устройств рекомендуется отключить автоматическую отправку подтверждения приёма данных вызвав функцию setAutoAck(false), чтоб не нарушать работу этих устройств. Функция не определяет факт наличия несущей в момент её вызова, а возвращает внутренний флаг библиотеки который устанавливается если за всё время прослушивания хоть раз была обнаружена несущая частота выбранного канала. Функция будет постоянно возвращать true если несущая была хоть раз обнаружена, пока не выйти из режима приёма функцией stopListening() и опять не начать прослушивание функцией startListening(). Для обнаружения сторонних устройств можно использовать и функцию testRPD(), которая отличается от данной функции тем, что возвращает true при обнаружении только мощного сигнала на выбранном канале, а не любой несущей.

  • @DGT67

    @DGT67

    5 ай бұрын

    Но testCarrier будет также ловить уровни от микроволновки, мышек, наушников

  • @frmurafa3048

    @frmurafa3048

    5 ай бұрын

    @@DGT67 Большое спасибо!)

  • @frmurafa3048

    @frmurafa3048

    5 ай бұрын

    @@DGT67 Можно ли редактировать сигнал функции setAutoAkc ?

  • @DGT67

    @DGT67

    5 ай бұрын

    @@frmurafa3048 а что вы здесь хотите редактировать ? подтверждения - они либо есть либо их нет))) тем более setAutoAck() ничего не возвращает (void): void RF24::setAutoAck(bool enable) { if ( enable ) write_register(EN_AA, 0b111111); else write_register(EN_AA, 0); }

  • @StatistPL
    @StatistPL5 жыл бұрын

    Не знаю как Si24R1, я покупал SE8R01. Продают их под видом nRF24L01 mini. Такая же чушь совместимости. Ходят легенды, что при проектировании китайцы там перепутали порядок бит в байте, в одном из регистров. На самом деле они совместимы (по радиоданным), но не работает RX_PAYLOAD для ACK и сам ACK. Т.е. данные отправить и принять можно, но подтверждение получить невозможно. Как и отправить полезные данные в ACK... а это ооооочень полезная функция. Ну и скорость 500 оригинальный чип не поддерживает, естественно. Крайне не рекомендую покупать SE8R01.. у них хоть мощность чуть больше, но там целая простыня инициализации и калибровки. Информации по ней минимум, пришлось рыть китайские сайты. Да и жрет она значительно больше оригинала (актуально для батарейного питания).

  • @dizer3680

    @dizer3680

    5 жыл бұрын

    Не чего не понимаю но очень интересно...

  • @SuperBatiskaf
    @SuperBatiskaf5 жыл бұрын

    Алексей подскажите что нибудь для моей хитрой задачи. Есть группа LoRa устройств объединенных в сеть, один в качестве раутера, остальные клиенты. У раутера есть соединение с интернетом через WiFi. Задача настроить передачу данных из устройств этой сети в интернет на MQTT сервер и обратно. Я так понимаю что нужно для PubSubClient предоставить свою имплементацию TCP Client - see PubSubClient::setClient(Client* client); Возможно есть уже готовая реализация клиента для LoRa модема, чтобы свою не писать? Там конечно класс небольшой, можно свое написать, тем более что в стандартной LoRa библиотеке уже есть реализация Stream, клиент к стриму несколько методов добавляет, типа connect по ай-пи адресу с хендшейком, запись чтение. Но с отладкой неделя уйдет легко. Возможно есть что то готовое?

  • @SuperBatiskaf

    @SuperBatiskaf

    5 жыл бұрын

    Похоже речь все таки идет про LoRaWAN, а LoRaStream все таки для пир ту пир. Задача значительно усложняется.

  • @user-he6vg3kk9l
    @user-he6vg3kk9l5 жыл бұрын

    Я бросил проект с радиомашинкой именно из-за проблем с этим модулем. Я уж думал, что я тупой и не могу нормально спаять все.

  • @indevor8337
    @indevor83375 жыл бұрын

    Данные можно передавать одновременно с чтением(слушанием), если соблюсти ряд условий: radio.setAutoAck(1); // режим подтверждения приёма, 1 вкл 0 выкл radio.enableAckPayload(); // разрешить отсылку данных в ответ на входящий сигнал radio.enableDynamicPayloads(); //разрешить динамический размер пакета в ответе ... radio.setDataRate(RF24_1MBPS); // скорость обмена должна быть > 250 и в пакете "ответа" улетит ваша "нагрузка" (payload) ... radio.read(&recieved_data, sizeof(recieved_data)); //читаем нашу структуру radio.writeAckPayload(pipeNo, &telemetry, sizeof(telemetry) ); //отправляем структуру в ответе А тот модуль с усилителем, но с керамической антенной, сколько кушает и дальность хотя бы 100м будет?..

  • @indevor8337

    @indevor8337

    4 жыл бұрын

    @Planerful приемник отправит пакет в ответ на входящий сигнал от передатчика. Соответственно приемник должен слушать трубу передатчика.

  • @indevor8337

    @indevor8337

    4 жыл бұрын

    @Planerful т.е сначала готовим данные которые отправим. Потом слушаем и в момент "приема" отправляе м в ответе данные. Описываемая вами ситуация выше произайти не может.

  • @indevor8337

    @indevor8337

    4 жыл бұрын

    @Planerful реализуется просто: радио.врайтаскпейлоад(труба, массив отправки, ссылка на массив); радио.рид();

  • @indevor8337

    @indevor8337

    4 жыл бұрын

    @Planerful целесообразность в том что передатчику не нужно становиться приемником, а приемнику - передатчиком. Все остаются на своих местах и обмен двусторонний получатся. Код проще и батарейки сэкономим.

  • @indevor8337

    @indevor8337

    4 жыл бұрын

    @Planerful тут все очень подробно: wiki.iarduino.ru/page/NRF24L01-trema/ по функция.

  • @alexandernikolaev6838
    @alexandernikolaev68383 жыл бұрын

    Ссылка "Библиотека RF" не работает, ошибка 404 "File not found".

  • @iotmanager
    @iotmanager5 жыл бұрын

    А есть режим low power или deep sleep?

  • @iotmanager

    @iotmanager

    5 жыл бұрын

    Можно от батарейки запитать?

  • @user-jc1cw7nm6s
    @user-jc1cw7nm6s4 жыл бұрын

    Подскажите в чём может быть проблема. Заказывал 2-ве одинаковых ардуино нано, к ним 2-ва одинаковых модуля nRF24L01+, собрал и когда решил проверить столкнулся с такой проблемой - в режиме обзора оба модуля работают нормально, а вот в связке друг с другом работать не хотят (кто бы из них ни был передатчиком, другой не хочет принимать данные)

  • @cycymber1

    @cycymber1

    3 жыл бұрын

    Такая же проблема

  • @murkotikus8383

    @murkotikus8383

    3 жыл бұрын

    Ты же проблема. Уже несколько разных продавцов перебрал. Везде чипы немного отличаются друг от друга в способе нанесения маркировки. Эфир слушают все, а вместе заработали только 2 модуля и то это продлилось недолго. Хз кароч. Появилось впечатление, что это очень ненадёжное устройство и лучше осваивать блютус модули.

  • @startstopru
    @startstopru4 жыл бұрын

    Подскажите, всю голову сломал, передатчик с усилителем, приемник без, при уровне передатчика low передача идет, при уровне max или high на приемнике пусто(. Передатчик подключен через стабилизатор, кондер на питании, вроде все по феншуй. Что я делаю не так.

  • @cycymber1

    @cycymber1

    3 жыл бұрын

    Разобрались в чем проблема?

  • @Ais_Hunt
    @Ais_Hunt5 жыл бұрын

    Когда-то пытался сделать простейшую мигалку на attiny13 и nRF в итоге потерпел неудачу. Причём Я пытался организовать передачу в одну сторону (не смотря на то что пины sck, miso, mosi нужня для перепрошивки. На тот момент Я не знал, что у тинки 13 - нет spi), т.е. замкнуть ногу CE на питание а csn по хитрой схеме через резистор и конденсатор. P.S. не повторяйте моих ошибок, лучше взять для передачи модуль на 433 мгц.

  • @indevor8337

    @indevor8337

    5 жыл бұрын

    сделал сигналку на attiny85 + nrf24l01 + pir-датчик)

  • @user-ec7kq9hy9l
    @user-ec7kq9hy9l5 жыл бұрын

    а какой модуль порекомендуете для новичка?????

  • @arduinoLab

    @arduinoLab

    5 жыл бұрын

    JDY-40 может легко заменить nRFку

  • @user-nq1qx7qt5i

    @user-nq1qx7qt5i

    3 жыл бұрын

    ... Ток передатчика: 40 мА Ток приёмника: 24 мА Ток покоя: 5 мкА Питание: 1.9-3.6 В ... cxemka.com/40-besprovodnoi-modul-2-4-ggc-jdy-40-uartdistancionnoe-upravlenie.html

  • @Sherkhan_61
    @Sherkhan_61 Жыл бұрын

    Скажите, а если схема, которую я повторяю (используется как спектроанализатор) использует обычную плату (БЕЗ усилка), то плата с усилком не заработает??? Я слышал, что усилок нужно как то инициализировать. Повторюсь, у меня только прием используется.

  • @LpSts

    @LpSts

    10 ай бұрын

    Модули с усилом и без работают вместе без напряга и доп.кода

  • @Sherkhan_61

    @Sherkhan_61

    10 ай бұрын

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

  • @woffko5205
    @woffko52055 жыл бұрын

    у меня NRF без усилителя около 20 метров пробивают, и конденсатор к ножкам обязательно.

  • @martinxi3286

    @martinxi3286

    Жыл бұрын

    бетон пробивает?

  • @lucmal11
    @lucmal113 жыл бұрын

    а на каких модулях следует учиться ?

  • @MsMalets

    @MsMalets

    3 жыл бұрын

    Что нибудь на ГУ-50

  • @lucmal11

    @lucmal11

    3 жыл бұрын

    @@MsMalets что это ?

  • @user-nq1qx7qt5i

    @user-nq1qx7qt5i

    3 жыл бұрын

    @@lucmal11 Это лампово ;)

  • @DmitryAvilkin
    @DmitryAvilkin4 жыл бұрын

    Как smd версию заставить работать больше чем на 6 метров?

  • @Egor00f

    @Egor00f

    4 ай бұрын

    + Питание не от ардуины + Припаяй антену

  • @TEENASPECT
    @TEENASPECT5 жыл бұрын

    И всё-таки они очень капризные по питанию.))

  • @gromitwoll6907
    @gromitwoll69072 жыл бұрын

    ссылка на библиотеку не работает

  • @exclight6820
    @exclight68205 жыл бұрын

    Есть интересная тема, может соберёмся помозгуем. Авторазблокировка дверей авто при присутствии хозяина авто с работающим блютузом на телефоне. Т.е ардуина с блютузом стоит в машине на управлении замками открытия дверьми, при приближении телефона к авто и сопряжении с блютузом, двери автоматически разблокируются. Может кто подскажет как это реализовать. Автор канала, хэлп

  • @arduinoLab
    @arduinoLab5 жыл бұрын

    а мог уехать в ПВД (

  • @user-mc6rv2pn2c

    @user-mc6rv2pn2c

    5 жыл бұрын

    в полиэтилен высокого давления?

  • @user-js4tr5sl2c

    @user-js4tr5sl2c

    5 жыл бұрын

    @@user-mc6rv2pn2c Поход Выходного Дня ?

  • @lebfrspb

    @lebfrspb

    5 жыл бұрын

    Летом надо ставить в приоритет ПВД. Хотя вот у нас дожди идут. Сижу дома. :(

  • @AlexeyBukreev

    @AlexeyBukreev

    5 жыл бұрын

    kzread.info/dash/bejne/o2WImduMoqzgeJM.html

  • @PenuriaArt
    @PenuriaArt10 ай бұрын

    То чувство, когда оригинал выглядит хуже клона

  • @romaVeber
    @romaVeber5 жыл бұрын

    на сколько я понял, данные можно ганять в обе стороны, но не одновременно

  • @zhuk462
    @zhuk4624 жыл бұрын

    про трубы не правильно рассказал

  • @Hedgehog_in_the_Fog
    @Hedgehog_in_the_Fog5 жыл бұрын

    *индитификатор :(

  • @arduinoLab

    @arduinoLab

    5 жыл бұрын

    не переживай, закончу уроки и закрою канал.

  • @Hedgehog_in_the_Fog

    @Hedgehog_in_the_Fog

    5 жыл бұрын

    Но я же про другое!

  • @user-kx3cv4rc5w
    @user-kx3cv4rc5w5 жыл бұрын

    Было интересно, но ниуя не понял.

Келесі