How To Build an Arduino Wireless Network with Multiple NRF24L01 Modules

Поделиться
HTML-код
  • Опубликовано: 27 авг 2024
  • $2 for 10 PCBs (100*100mm) jlcpcb.com
    Circuit diagrams, source codes and more details here ► howtomechatron...
    In this tutorial we will learn how to build an Arduino wireless network, composed of multiple NR24L01 transceiver modules.
    Thanks to JLCPCB for sponsoring this video.
    Visit HowToMechatronics.com for more Tutorials, Tips, Projects and How It Works videos:
    ► howtomechatroni...
    Like my page on Facebook:
    ► / howtomechatronics
    Add me on Google+:
    ►plus.google.co...
    Music: MÆSON - The Catch ( / tracks )

Комментарии • 225

  • @justinstraver24
    @justinstraver24 6 лет назад +16

    My goodness I've tried so many times and couldn't find a good tutorial to do this. Thanks a lot for making this video!

  • @cappedpluto7638
    @cappedpluto7638 5 лет назад +7

    you have no idea how much this helped me, i had almost given up on trying to figure this out

  • @drumminjeff71
    @drumminjeff71 5 лет назад +10

    I have four modules on the way and I can't wait to do this project :-) thank you for sharing your talent with us.

  • @sz72909
    @sz72909 4 года назад +1

    Best NRF24L01 Network tutorial so far! Thanks for sharing!

  • @Arrowtake
    @Arrowtake 5 лет назад +3

    Thank you for very clear explanation on how to create network of multiple NRF2401's Learned alot!

  • @dacelo3
    @dacelo3 5 лет назад +1

    You made it pretty simple! I was very confused from this library till now. CONGRATS!

  • @HaiTHaMKoBeIssI
    @HaiTHaMKoBeIssI 6 лет назад +6

    thanks you, very easy to understand, it cant be more simple and clear ,
    i"ve been trying to understand how to code the mesh network,
    now it is easy and clear,
    Thank you for this tutorial......

  • @pecilijevelicanstveni4973
    @pecilijevelicanstveni4973 4 года назад +1

    Thank you! Concise and full of information!
    According to diagram @3:00 minutes the hierarchy works in that way that the message for the lower nodes can go up/down a straight way from/to base node. When message needs to go to other node in the same hierarchy level or on the other level it must first go straight way up to base node than down to the destination node.
    But, if we look on the diagram @6:11 minutes it looks that that hierarchy is not respected. How?
    1. Base 00 (blue line) to Node 012: first send message to Node 02 than Node 02 will send to Node 012. The line must go through the rectangle of Node 02, not away of it.
    2. Base 00 (pink line) to Node 022: first send message to Node 02 than Node 02 will send to Node 022.The line must go through the rectangle of Node 02, not away of it.
    3. Node 012 (green line) to Node 01: first send message to Node 02, Node 02 to Base 00 and Base 00 will send message to Node 01. The line must go through the rectangle of Node 02 than to Base 00 than to Node 01, not away of it.
    All of that to avoid confusion.

    • @zafkeilgaming1280
      @zafkeilgaming1280 2 года назад

      pretty sure it was just explaining where data goes not HOW it gets there

  • @webslinger2011
    @webslinger2011 6 лет назад +3

    Wow! I've been waiting for something like this. Thank you!

  • @ArcticSeaCamel
    @ArcticSeaCamel Год назад

    This is so awesome!
    I'm planning to do Spider Cam system to my biggish workshop. One arduino is the "controller" and then on each corner (four of course) of the workshop there's stepper motors to control the single wire.
    ChatGPT implemented some code for me already for this! 😀

  • @dekipet
    @dekipet 5 лет назад

    Maybe i missed it in video, but... These modules are great for almost 100m distance, in open area and 2m above ground. Every single tree will drop range significaly. In a house project two of these modules separate by two walls can hardly achieve 8-10m range. If there are bunch of wires in walls behind one of them, range will drop more, and loss of packets will increase. Better solution would be use of PA-LNA versions. Or, to use third one for a bridge between two of them in a node manner as Dejan pointed in video. Beside, local network can mess up things even more. So, channel must be set 108 or above. 115 is pretty much ok. Data rate to 250.
    The other thing to notice is, these modules has Gremlins. Dupont cables can be used for making a project. For a finish product, dupont cables are out of business. Only hard-wired and capacitor on power lines is a MUST. Or to use an adapter for them, which is pretty good.
    Good one, btw, Dejan.
    Cheers.

  • @galaxylive6512
    @galaxylive6512 3 года назад

    u are really great boss. ur every tutorial is real and good . i follow ur project also try those and be success.

  • @sohaibsdq4280
    @sohaibsdq4280 3 года назад

    never success communication while using NRF on bredboard, may b the loose connection or something else, but working perfectly on PCB

  • @johangoethe2472
    @johangoethe2472 4 года назад

    I gave a "like" and I suscribed. Thank you very much for this amazing tutorial. It is so helpful.

  • @capiberra4118
    @capiberra4118 5 лет назад +4

    Excellent tutorial! Very well explained. Thank you

  • @3washoka
    @3washoka 5 лет назад +1

    Thank you. this video is the best! Wish you all the luck in your life !!!!!

  • @jeelansoni2866
    @jeelansoni2866 Год назад +1

    One video make tv(analog) transfer signal used rf module 😊

  • @jeevanshrestha8888
    @jeevanshrestha8888 6 лет назад +1

    Your videos are really..... Cool.....
    Can you create...... A full playlist of....... Using NRF24L01 from..... Beginning to.... End...... Complete tutorial........

  • @Sailingon
    @Sailingon 5 лет назад +1

    this is excellent im going to make something not sure what but definitely something using your tutorial.

  • @pacowang283
    @pacowang283 6 лет назад +6

    Excellent lesson! Thank you

  • @gsambolin
    @gsambolin Год назад

    I don't even have and Adruino (yet) and I understood everything. The potential here is ENDLESS !!! One new SUB here.
    What is the distance of the NRF24L01 module ?

    • @HowToMechatronics
      @HowToMechatronics  Год назад

      Thanks! The NRF24L01 module distance in open space should be up to 100 meters, and if the model is with the big antennas it should be up to 700 meter. But that would be significantly less if there are obstacles.

    • @gsambolin
      @gsambolin Год назад

      @@HowToMechatronics Thanks for your response. Very kind of you. I am looking at a project that will have obstructions in it maximum 150 feet... Wires concrete... etc etc. I would need to find the strongest module of this type out there.

  • @bigpickles
    @bigpickles 4 года назад

    I've referred to this several times, and your code. Thanks so much, bro!

  • @jstro-hobbytech
    @jstro-hobbytech 3 года назад

    Awesome video. I have a bunch of those nrf modules

  • @salh2665
    @salh2665 8 месяцев назад

    ❤❤❤❤احسن قناة لتبسيط الالكترونيك ❤❤❤❤

  • @niranjanmallick4411
    @niranjanmallick4411 3 года назад

    That's great project description Sir......

  • @music4u1235
    @music4u1235 3 года назад +1

    sir I faced issue while storing the different sensor data at receiver side . In which the value get shuffled between two variables .

  • @exe_
    @exe_ 5 лет назад

    DUUDE! awesome video and awesome example. We need more awesome dudes like you.

  • @tseckwr3783
    @tseckwr3783 4 года назад +1

    Great job on explaining. Thank you.

  • @MrMan6663
    @MrMan6663 6 лет назад +2

    Excellent video...can u teach us to build the same network using LORA instead of NRL24

  • @chiragburye793
    @chiragburye793 6 лет назад +7

    Sir can u make use of Wi-Fi module(esp8266) instead of Bluetooth

    • @mihailazar2487
      @mihailazar2487 4 года назад

      Wi-Fi uses -master - slave- oops, I mean primary-secondary connections (it's 2020 lol) while Bluetooth is peer-to-peer
      you can connect a bunch of wifi clients to a hotspot but then that hotspot will not be able to connect to another hotspot ... you would need 2 wi-fi modules on a single device for that, which is really innefficient. wi-fi wasn't designed for this. wi-fi modules are for many-to-one connections where a device can be wither a client or a host but now both, and the networn is encrypted, secured and high-bandwidth ... basically for internet tethering ... that's what wi-fi was designed to do
      connecting a whole bunch of devices through wi-fi, even if some of them had multiple modules so you could link them together would still be a huge pain in the ass because you would soon get horrible interference because there's only so many possible wi-fi channels
      so if you want to make a wi-fi network ... just go ahead and get a powerful enough router and connect everything in a single network instead

  • @soovui
    @soovui 5 лет назад +3

    Wow, thanks a lot for sharing such a perfect talented tutorial. Can it be applied for ESP32? If not, can't wait to see that u may come out with ESP32 mesh tutorial. 😊

  • @DavidFlores-uu6dy
    @DavidFlores-uu6dy 2 года назад +2

    hello an excellent project, I have a question how you define the, 0 and 10 for each specific node and if I wanted to use another node how can I define that data
    is the code of node 01
    if (header.from_node == 0)
    if (header.from_node == 10)
    Thank you

  • @jcjames9361
    @jcjames9361 5 лет назад

    Thanks for clear expanatios how to build or install the sencor..

  • @christianhansen2676
    @christianhansen2676 5 лет назад +6

    Great video! - if I wanted to make two systems with this setup so having in total 6 arduinos. Would the systems interfere with each others?

    • @maerufomer5469
      @maerufomer5469 5 лет назад +2

      i had the same thought, anyone with an answer pls

    • @bigpickles
      @bigpickles 4 года назад

      Use different channels

    • @saajidthakur6027
      @saajidthakur6027 3 года назад

      at nRF24L01 Network No any protocol follow as nrf24L01.h pipe following

  • @AliRashidi97
    @AliRashidi97 3 года назад +1

    Hello tnx for the GREAT tutorial. Can I connect a nodemcu to an Arduino which is wired to an NRF module? If yes , can I use the same libraries you used ?

  • @Smartliving-udanagayan
    @Smartliving-udanagayan 5 лет назад

    very nice and clear tutorial..thank you

  • @syedadnan9142
    @syedadnan9142 2 года назад +1

    sir can i write code like (radio.write(main_node, &customKey, sizeof(customKey));)

  • @kellyspoolhall761
    @kellyspoolhall761 2 месяца назад

    Hi! Thank you for this tutorial. You have laid this out so well. One thing I am confused about is at 7:30, where you explain "header.from_node", I couldn't see how some of these values correspond to the node numbers. First you say, if (header.from_node == 0) { // If data comes from Node00. This DOES makes sense. But then you say, if (header.from_node == 10) { // If data comes from Node012. This is what confuses me. How does 10 mean Node012? Am I missing something here?

  • @KabelkowyJoe
    @KabelkowyJoe 2 года назад +3

    Ok but as you even mentioned it's not mesh topology at all it's a TREE topology. Once root is gone, none of these will be able to communicate to each other. Second thing - instead to use device ID (defined by manufacturer) you used fixed address. In order to do real mesh you would have to traceroute packets, include all nodenames this packet was sent to, name of origin, and most importantly local time of sender to distinguish order of messages. This example is bad, i have no example written by my own yet that's why im interested in this topic but this example is just bad at first glance.

  • @nhewzik6778
    @nhewzik6778 4 года назад +1

    Node 01 is receiving from node 00 & 012
    Then why have u used 0 & 10 to check received data , please reply

    • @ufukzeybek3658
      @ufukzeybek3658 4 года назад +1

      I have a idea. In code(next to node address), he wrote octal format. Convert 012 to 10. (8^0)x2+(8^1)x1+(8'^2)x0=10 (if you dont understand , google octal format.)

  • @bigheat86
    @bigheat86 5 лет назад

    great content an super animation/video editing

  • @SoloNey
    @SoloNey 5 лет назад +1

    i...love... you, thank you so much for the Ecuador, Sir

  • @biancabersinar376
    @biancabersinar376 4 года назад

    i still dont get it..why single line command radio.read(&receiveddata,lengofdata) can take all the incoming pipe? should has to be command like this..(pipenumber,receiveddata,lengofdata) ? why the library didnt create like this?

  • @rdvardi3296
    @rdvardi3296 10 месяцев назад

    Please A button keyboard wirles one modul 4button transmiter keypad wirles

  • @basavarajd4183
    @basavarajd4183 2 года назад

    Sir can u plz tell me the single line of program that can send the data for maximum distance while using nrf24l01+pa+lna in multiple nodes network.

  • @neerajtenthouse-gosaipurse1190
    @neerajtenthouse-gosaipurse1190 6 лет назад +1

    thank you sir for this excellent video,
    but its not working when i checked for Node 00 and Node 012 and when i does not connected other nodes (when i want to on or off led of NODE 012 controlled by Node 00)
    please help me sir

    • @MinhLe-rd1xt
      @MinhLe-rd1xt 5 лет назад

      shubham jaiswal have you fixed? I think it need node01 online act as a router in case node012 too far away

  • @hubertmargreiter3508
    @hubertmargreiter3508 5 лет назад

    You really know how to explain. Great, please continue.
    I have a question: Which programmer do you recommend for programming the Arduino Nano? Please supply a link. Thanks in advance.

  • @hapysethi1306
    @hapysethi1306 5 лет назад +1

    Great work! Thanks

  • @just4electronics101
    @just4electronics101 6 лет назад

    Awesome video going to use soon

  • @saajidthakur6027
    @saajidthakur6027 2 года назад

    Two set of network nrf24 overlapping, if node00, node01, node011 same.
    Is there any unique pipe address as nRF24 ?
    Kindly help

  • @zlatkoturcic3041
    @zlatkoturcic3041 2 года назад

    Pozdrav !Sviđaju mi se vaši video uradci ali zašto nemate titlova za prevod !🙂

  • @atefmk2328
    @atefmk2328 3 года назад

    hi sir
    i have a problem with module nrf24
    with using multiples noeuds
    and one of this noeud play the rules of router
    sending and receving data
    can you help mee please

  • @bikramdeb8459
    @bikramdeb8459 5 лет назад

    Please make a video about how to make wireless cat6 transmitter and receiver

  • @b17_igedeparadiptadharmasa7
    @b17_igedeparadiptadharmasa7 2 года назад

    if i use nodemcu for this project, can u show how make if use nodemcu
    please

  • @therisingedge755
    @therisingedge755 5 лет назад +1

    Can you make a tutorial on how to push data from these nodes to cloud for iot use

    • @maerufomer5469
      @maerufomer5469 5 лет назад

      may be u could send the data serially to a raspberry pi then upload it to the cloud,, or add one node that connects to the cloud directly

  • @johntomasik1555
    @johntomasik1555 2 года назад

    Anyone know of wireless throughput greater than this module for the Arduino? If so, what's the max you've seen?

  • @remix2321
    @remix2321 3 года назад

    so you can communicate between 3125 NRF at the same time ??
    so one NRF can send information to 3124 NRF in the same time ??

  • @xrphobby1341
    @xrphobby1341 2 года назад

    Hi I have Arduino Uno with 3 pins connected to Max7219 with 7-segmentLED. How is it possible to send data to another 4 Arduino Uno using NRF24L01 so I will have exactly the same displays on all my 7-segment LEDs. Thank you

  • @RealElaineee
    @RealElaineee 6 лет назад

    I prefer to use Pcbway because they can check my design files mantually and help fix the small design error. So PCB always works perfectly and Fab quality is flawless. Moreover, there is no difference for me between $5 and $2.

  • @israelsoto3522
    @israelsoto3522 4 года назад

    How many nodes Could I have In a Mesh Topology?

  • @Science3D
    @Science3D 5 лет назад

    SOOO NICE !!! this is a great video !

  • @jjjunkie
    @jjjunkie 5 лет назад

    Thank you so much - excellent work!!!

  • @icebluscorpion
    @icebluscorpion 2 года назад

    how do you get the colored text bits when i code in my Ardino ide i dont get such colored text

  • @wjimenezu
    @wjimenezu 5 лет назад +1

    Priceless

  • @adamsolovay51
    @adamsolovay51 3 года назад

    Hello, I have three Arduinos. 1 Uno as the base and 2 Megas as Node 1 & 2. My Base is sending 1 type int to Node 2 and Node 1 is sending 2 type long (encoder values) to Node 2. I am using header.from_node to differentiate where the data is coming from, but it does not seem to be able to process. How do I package the data and read it when expecting two completely different types and data sizes? I've tried struct and including everything I'm sending and receiving and only writing to the values when it comes from the intended node. Please let me know if you have any suggestions.

  • @RashidAli-oc6yl
    @RashidAli-oc6yl 3 года назад

    Excellent carry on

  • @ashutoshovhal3433
    @ashutoshovhal3433 2 года назад

    Is it possible to use stm32 instead of ardiuno

  • @RahulKumar-zs2wv
    @RahulKumar-zs2wv 5 лет назад

    Nice Video... can you explain about"LoRa" module in next video.

  • @sonusagarkoo7123
    @sonusagarkoo7123 6 лет назад

    Please make vedio on gas sensor

  • @jeffvenqueleir2036
    @jeffvenqueleir2036 4 года назад

    verry nice now i get it thanks

  • @legendary9529
    @legendary9529 3 года назад

    "radio hardware is not responding!!" What does it mean?

  • @electronic7979
    @electronic7979 6 лет назад

    Useful video. Excellent

  • @gurdyalsingh1857
    @gurdyalsingh1857 6 лет назад

    Awesome explained

  • @HighlandViolinist
    @HighlandViolinist 4 года назад

    In comparison to OSC, how stable is the wireless network? Latency? Does it drop data with distance?

  • @Isambardify
    @Isambardify 3 года назад

    Very nice. Thanks. What's the lag like?

  • @donderladdich5811
    @donderladdich5811 2 года назад

    Hi, a very good Tutorial!
    And it works fine! But i have a question...
    Which variable i have to change in the code, to create another Mesh-Network? I need a second one in the near of the other.

  • @Tradeoptionlikeapro
    @Tradeoptionlikeapro 3 года назад

    3125 child nodes are there in the tree, can they send data to the base? One by One at a time delay one second any one plz help.

  • @keitholiver3981
    @keitholiver3981 5 лет назад

    Excellent video I have been looking for something like this for a long time. A couple of thoughts first thing can you use an ESP8266 for all nodes if you can which library’s would you use, second if you use an ESP8266 you can do away with the Arduino boards.

  • @scottkennedy7741
    @scottkennedy7741 6 лет назад

    Excellent video, would you be able to expand the tutorial to discuss the rf24mesh library?

    • @HowToMechatronics
      @HowToMechatronics  6 лет назад

      Thank you! That's a good suggestion but currently I have quite a big do-to list with other projects and tutorials, so it would take me some time to get to this one. Cheers!

  • @fatimarana6319
    @fatimarana6319 7 месяцев назад

    Hi, can someone help me if I want n number of Nrf24l01 and use 1 single arduino as central node?

  • @stevenarisnugroho8462
    @stevenarisnugroho8462 4 года назад

    Can I use one Master and let's say 10 Slave? with same address?

  • @GAment_11
    @GAment_11 4 года назад

    Great video. I assume the same can be done with a mix of Arduinos and Raspberry Pi’s at different notes? I am trying to mix Arduinos and Pi’s on the same network.

  • @coffeewithconcepts862
    @coffeewithconcepts862 5 лет назад

    Can u make a video on how to push data from these to cloud

  • @yanmyomaw3276
    @yanmyomaw3276 Год назад

    what is node o1 module?

  • @nurrudinazzaky8374
    @nurrudinazzaky8374 4 года назад +1

    Great video!
    Can this topology behave like an extender? For the example, sending data from node 011 to node 01, then forward it to master 00?

    • @zafkeilgaming1280
      @zafkeilgaming1280 2 года назад

      pretty sure it can
      but all the correct modules will need to be powered and in range so it wont be like 01 to 0122 without first going thro 012

  • @elaminenour3548
    @elaminenour3548 4 года назад

    it's really good !! thnx
    can connecting nodemcu with nrf24l01 ??

  • @neerajtenthouse-gosaipurse1190
    @neerajtenthouse-gosaipurse1190 6 лет назад

    Sir i want to make address of five digit Integer number
    like-
    this_Node = 31211 :
    Node1= 31222 :
    So, What i have to do sir
    or what are the changes i have to do,

  • @amjadali7691
    @amjadali7691 4 года назад

    How can i connect two NRF as receivers with single arduino uno connected with single TX ?

  • @kishoreysn7801
    @kishoreysn7801 5 лет назад

    What can the range be if we need to communicate between base 00 and base 01111

  • @silentknight4224
    @silentknight4224 5 лет назад

    Can this same thing done by node mcu using wifi without nrf24l module?

  • @savithaiyer8017
    @savithaiyer8017 3 года назад

    Can we connect node 01 directly to node 02, so that every successful step in the tree the nodes are connected to each other to reduce traffic through the central node?

  • @user-oc7mz2yg5l
    @user-oc7mz2yg5l 3 года назад

    bro can i get this version of the arduino programming tool , because the project does not work on the latest version

  • @SuperbTech
    @SuperbTech 5 лет назад

    hi, great videos! can you please tell what software you use for animation?

  • @webslinger2011
    @webslinger2011 5 лет назад

    Sorry, I'm lost On node01, if(header.from_node == 0) how did it point to Node02? Also, if(header.from_node ==10) how did it point to Node012?

    • @MinhLe-rd1xt
      @MinhLe-rd1xt 5 лет назад

      webslinger2011 i have the same problems, have you fixed it?

    • @MinhLe-rd1xt
      @MinhLe-rd1xt 5 лет назад

      And for your second question. In the library, they define node address in octal and if statement they using decimal to compare so 012 = 8^1 + 2x8^0

    • @webslinger2011
      @webslinger2011 5 лет назад

      Sorry it's still unclear to me. I've set it aside for now since I have another project to finish for school.

  • @3deeguy
    @3deeguy 4 года назад

    I bought knockoff modules. They lack certain features. Where did you buy yours?

  • @connectingthesciences
    @connectingthesciences Год назад

    Is there a reason you used long instead of int data types? Wouldn't it be more efficient to use an unsigned int and byte for 0 ~1023 and 0 ~180 respectively?

  • @condronugroho9388
    @condronugroho9388 5 лет назад +1

    Thank you so much

  • @feliwein_cc
    @feliwein_cc 4 года назад

    thank you a lot, so it has to be 5 level deep network? my network has to be vertically long, not horizontally, because i need a long range coverage, is there a way around this?

  • @vincewantuten8676
    @vincewantuten8676 6 лет назад +1

    is it only limited to 5 devices per node?

    • @fionasoon1
      @fionasoon1 4 года назад

      I tested with similar codes. Address 00 for receiver and 01-05 for the transmitters. It only limits me for 5 transmitters. It gives error for address 06.

  • @MrBobWareham
    @MrBobWareham 3 года назад

    Loved the video but I want to make 4 door sensors and one receiver with led indicators on the receiver so is it posable to change your sketch to do this thanks Bob

    • @rolandberendonck3900
      @rolandberendonck3900 3 года назад

      In this case you can just use the rf24 library; your application does not need the mesh network.