Using LoRa for P2P half-duplex long range communication

  Рет қаралды 20,569

Sayanee Basu

Sayanee Basu

Күн бұрын

Пікірлер: 64
@muhammadfajarb
@muhammadfajarb 3 жыл бұрын
Hi, nice video. I'm new about LoRa. Can you explain, how if there are more LoRa device active at the same time? Will it be interfere with each other? the idea that I got from your explanation, LoRa will check and receive all signal from other LoRa whether it is a known device or unknown device. If like that, LoRa will take more time to check the right address sender device.
@sayanee
@sayanee 3 жыл бұрын
Specific to this example that I showed in the video, it might seem that the 2 nodes are receiving data from each other simultaneously, but it is not. The code adds a little random interval time plus a constant period of 2 seconds: github.com/hutscape/hutscape.github.io/blob/master/_tutorials/lora-duplex-a/lora-duplex-a.ino#L36. This ensures the 2 nodes are not "clashing" or interfering with each other. You can say that this is a very simplified form of ALOHA random access protocol www.scholarpedia.org/article/Aloha_random_access "In an ALOHA channel each transmitter sharing the channel transmits data packets at random times."
@muhammadfajarb
@muhammadfajarb 3 жыл бұрын
​@@sayanee Yes, I see. Thanks.
@jonathanm9436
@jonathanm9436 4 жыл бұрын
I really enjoyed this - clearly spoken, clearly explained, well paced, focussed, engaging and technically very competent. Thank you. Subscribed.
@Heppetronics
@Heppetronics 4 жыл бұрын
I had been looking at the adafruit data sheet with the example code for RX and TX transmission.... and that was rather long winded. This was clean and crisp. Thank you so much!
@victordiaz5922
@victordiaz5922 3 жыл бұрын
excellent video, I am learning LORA Arduino and also English. She also looks like an English teacher.
@sureshbabuvu
@sureshbabuvu Жыл бұрын
excellent, in-depth knowledge in coding, pl keep uploading such high standard contents.
@salvodippolito6013
@salvodippolito6013 6 ай бұрын
Great video! Thanks a lot for explaining everything so clearly.
@budirahmani
@budirahmani 4 жыл бұрын
There are many things that I have to learn about LORA, thank's for the explanation.
@kcpkcp1000
@kcpkcp1000 Жыл бұрын
Thank you for the video. It is so useful and informative. I just subscribed.
@SOURIENT_JR
@SOURIENT_JR Жыл бұрын
Excelente video! Thank you very much!!!
@soumitradey8208
@soumitradey8208 4 жыл бұрын
Excellent, Heltec LoRa V2 is also a good module on oled, great . Sx1278 and Sx1268 is a good module.
@SantanderDiogenes
@SantanderDiogenes 3 жыл бұрын
Excellent project!! Very well explained and very usefull!!
@SA-oj3bo
@SA-oj3bo 2 жыл бұрын
Explained very well ....
@mamunurrashid4628
@mamunurrashid4628 3 жыл бұрын
wow its too nice explanation . thanks
@dl8cy
@dl8cy 5 жыл бұрын
your videos are always a pleasure
@v12cat
@v12cat 5 жыл бұрын
Excellent clear description!!
@aadhikarianish
@aadhikarianish 4 жыл бұрын
Great tutorial superb explanation :D
@nikostheodorou1096
@nikostheodorou1096 2 ай бұрын
Hello! Is there a way to do data logging with this setup? I have a teensy 4.1 with a micro SD port and i'd like to ask if teensy can be used for this setup, instead of the arduino uno, for the use of data logging. Thank you!
@sanjeevrao7121
@sanjeevrao7121 2 жыл бұрын
Excellent video
@goncalobarroso8493
@goncalobarroso8493 2 жыл бұрын
hi, ive notice you´re not implementing things like Duty cycle, spreading facture(SF), code rate, power transmition, bandwidth. My question is: when using only lora(not lloraWAN) we can simply ignore most of the regulations like the duty cycle, SF/bandwidth? thanx for the explanation.
@TheAndrexso
@TheAndrexso 4 жыл бұрын
Great video! But I have a doubt, the EN pin doesn't need to be connected to any pin of the Arduino?
@wangchaichana5710
@wangchaichana5710 4 жыл бұрын
Is it possible to use two LoRa which one of them being client and another being server? Such as one of them sending the data, another receiving the data only.
@chilljlt
@chilljlt 5 жыл бұрын
great tutorial!
@ralphchen1125
@ralphchen1125 4 жыл бұрын
nice explanation
@ramimehyar481
@ramimehyar481 3 жыл бұрын
Would adapting this library work with the SX126x module?
@sayanee
@sayanee 3 жыл бұрын
I have never done that. But seems possible as indicated in the readme of arduino-lora library un the "Compatible Hardware" list: github.com/sandeepmistry/arduino-LoRa#compatible-hardware
@ramimehyar481
@ramimehyar481 3 жыл бұрын
Thank u for the vid! Question though, if i want to send only from one node and receive only from the other, do i still need the timing and delay?
@sayanee
@sayanee 3 жыл бұрын
I guess no. If one is receiving and the other is solely transmitting, then just set the transmitting to a periodic interval (or whenever your application needs to transmit). Set the receiving node to receive the packet continuously. I have the TX and RX examples: hutscape.com/tutorials/lora-tx hutscape.com/tutorials/lora-rx
@mumbaiverve2307
@mumbaiverve2307 3 жыл бұрын
Hi Sayanee, Thanks for the post. Just in case 2 nodes transmit simultaneously and there is a collision , is there an automatic re transmit with some random backoff , built into the LoRa hardware , Or is the data lost ?
@sayanee
@sayanee 3 жыл бұрын
Great question!! LoRa (which I covered in this video) in the OSI layer only covers the *Physical layer*, so I believe we can tackle the collision problem in the upper layers like the Transport Layer. LoRaWAN on the other hand covers the higher layers in the OSI model. I think the hardware only has support for the Physical Layer for the radio, so we have to incorporate our own upper layers to tackle this collision. As an analogy, TCP which is in the Transport layer of the OSI model, deals with the delivery of data from the source to the destination and it guarantees the delivery, but UDP does not guarantee the delivery of data. Ethernet or WiFi in the Physical layer does not deal with this.
@mumbaiverve2307
@mumbaiverve2307 3 жыл бұрын
@@sayanee ​ Thanks for your reply. AFAIK , in the upper layers collisions are usually detected by listening on the transmit channel while broadcasting.Since LoRa is half duplex , would this be possible ? Hope my question is not too inane (won't be the first time)
@sayanee
@sayanee 3 жыл бұрын
@@mumbaiverve2307 Interesting thought! I'm not sure about that :) It would depend on the application we are building I guess.
@azizbouslimi3655
@azizbouslimi3655 2 жыл бұрын
est ce que c'est possible de faire un réseau maille avec 4 noeud LoRa ?.... et tout les noued comunicant entre eux avec LoRa RMF 96 ?
@sayanee
@sayanee 2 жыл бұрын
Oui, je pense que c'est possible avec 4 nœuds LoRa. Je n'ai jamais essayé, mais regardez Meshtastic meshtastic.org/ Une ressource vidéo : kzbin.info/www/bejne/ioqZnmmciJ2Vrrc
@anonymousx4509
@anonymousx4509 2 жыл бұрын
I am using Ra-02 SX1278 and Arduino Uno, When I use the example sender and receiver, I have constant communication but whenever I use the codes here, I always get "Sending data..." on one node and "Error: Message length does not match length" on the other node. Why is that so? I am planning to use this to connect 4 LoRa but I can't even connect 2 of them.
@sayanee
@sayanee 2 жыл бұрын
Try this issue if you are also using arduino-lora library: github.com/sandeepmistry/arduino-LoRa/issues/351
@anonymousx4509
@anonymousx4509 2 жыл бұрын
@@sayanee Thank you so much for this. I already resolve the issue I am having. My problem right now is that the Arduino seemed to stop after several minutes (sometimes hours). I need to reopen serial monitor or reset the arduino (using the button) to make it working again. You have any idea how to fix it? Thank you so much for your response!
@sayanee
@sayanee 2 жыл бұрын
@@anonymousx4509 Uh! I wouldn't keep my serial monitor running for hours. There might be some timeout or connection dropped issues. I suggest looking into other ways of "capturing" the data if that's what you are trying to do. For example, record it on some memory on the board or send it off to a gateway to be stored in the cloud. It all depends on what you are trying to do.
@adirasalsabila28
@adirasalsabila28 3 жыл бұрын
can works in Dragino LoRa Shield 915 MHz?
@sayanee
@sayanee 3 жыл бұрын
Yes, seems like the Arduino LoRa firmware listed the Dragino LoRa as one of the compatible hardware: github.com/sandeepmistry/arduino-LoRa#compatible-hardware
@anandathalia9189
@anandathalia9189 4 жыл бұрын
thanks for the tutorial, i tried this but it just show that it sending without receiving. is it means just my receiver module that broken, or the transmiter it self? can anyone help me?
@sayanee
@sayanee 4 жыл бұрын
You should have 2 exact pairs of the same LoRa node. If you cannot receive with node A, then try swapping around E.g. Make Node A transmit and Node B receive and vice-versa.
@shwetasharma8635
@shwetasharma8635 2 жыл бұрын
hello, i unable to send and receive more than 150 character using these code
@sayanee
@sayanee 2 жыл бұрын
Probably because LoRa is a low bandwidth protocol. You need a higher-level application-based framework with LoRaWAN to help you with this. Try Meshtastic maybe: meshtastic.org/
@Sebastianltaylor
@Sebastianltaylor 4 жыл бұрын
Excellent video! I'm working on a multiple objects GPS tracking project where I track objects in movement, and I need to repeat their signals using repeaters(obviously) to finally receive them in the master device (objects -> repeaters -> Master) or well (objects -> Master). It's a really long dinstance the signals have to travel (from the master to one of the repeaters is around 33KM!!!) I think LoRa in 433mhz is my best option, what do you think? What results did you get in your project? Thank you a lot, now I'm a subscriber :)
@sayanee
@sayanee 4 жыл бұрын
Thanks for sharing! I'm working on a simple GPS LoRaWAN keychain. It was about a 500m line of sight with the antenna I showed. I haven't yet optimized anything in the firmware or the antenna to get a longer range. Regarding the frequency, isn't it mandated by the country? Hence, I have to use the 915MHz.
@farahalshammari8576
@farahalshammari8576 3 жыл бұрын
can we use something instead to loRa ?
@sayanee
@sayanee 3 жыл бұрын
Sure! If you want to use another wireless protocol, BLE, WiFi, SigFox, NFC, 4G are all possible. With all wireless protocols, there are constraints on power usage, bandwidth, and range. Which wireless we chose, in the end, will all depend on the particular application we are building for.
@farahalshammari8576
@farahalshammari8576 3 жыл бұрын
@@sayanee Thank you for answering my question 💕
@kashifshad3265
@kashifshad3265 4 жыл бұрын
Could you tell me how much distance I can cover ?
@sayanee
@sayanee 4 жыл бұрын
I tested this exact setup and it was about 500m line of sight without any optimization in the firmware or the antenna. In my latest video, with the LilyGO T-Beam, it was about 1km: kzbin.info/www/bejne/gZjbqWqgntuGm9U
@kashifshad3265
@kashifshad3265 4 жыл бұрын
@@sayanee Thank you for your reply. Can I extend this till 2kms by doing something?
@sayanee
@sayanee 4 жыл бұрын
@@kashifshad3265 Yes I'm sure you could. Optimization in the firmware or antenna or more power or higher altitude and a clear line of sight. See this video from Andreas Spiess for more ideas: kzbin.info/www/bejne/l5XLiHylYpyaqJY
@kashifshad3265
@kashifshad3265 4 жыл бұрын
@@sayanee Sorry m asking you one more question. So basically what my requirement is that I need 2 GPS location of two automobiles and basis on the difference I need to tell the car ahead to slow down or speed up. Can I use Lora shield, arduino uno, GPS module without the lora gateway? and the thing is we don't want to use internet.
@sayanee
@sayanee 4 жыл бұрын
@@kashifshad3265 Yes you can. I did exactly that - no internet, just GPS + LoRa (not LoRaWAN) and then calculate the Haversine distance. The cars need to be in a fairly open space, but you need to test them out in your preferred environment. You might just need to be aware of the accuracy of the GPS. Depending on the speed of the cars, you will need to test the response time, I guess. Check out my last video here I used 2 LoRa nodes with GPS and no Internet to calculate their distance kzbin.info/www/bejne/gZjbqWqgntuGm9U
@tm-uz7md
@tm-uz7md 2 ай бұрын
Read the chip's manual and you will recoil in terror. The most overly complex POS chip I have ever seen. The RYLR896 et al chips allow you to interface to LoRa as if it were a UART with just one byte at a time transmission and reception. No control lines to diddle or query. No timing issues. Just pure asynchronous comms.
@mohamadhabibhomeidi5634
@mohamadhabibhomeidi5634 4 жыл бұрын
What about range of connection?
@sayanee
@sayanee 4 жыл бұрын
With this exact setup and no other optimization with antenna or firmware, it was about 500m line of sight.
@amirahfakhirah3236
@amirahfakhirah3236 4 жыл бұрын
May i know how to download the code?
@sayanee
@sayanee 4 жыл бұрын
You can download the 2 examples from here: hutscape.com/tutorials/lora-duplex-a hutscape.com/tutorials/lora-duplex-b
@josephmathew5151
@josephmathew5151 3 жыл бұрын
Can you help me with email for guiding my code
@alleksandrs
@alleksandrs 5 жыл бұрын
Good tutorial, but it's a pity that you say "go ahead" all the time. E. g. 5 times during 35 seconds: ...Let's GO AHEAD and detect whether the ports are available right now. I haven't linked any of the nodes, so let me GO AHEAD and link node "A". Similarly I will GO AHEAD and plug-in the node "B". And now if I GO AHEAD and query the ports - two ports are available. So let's GO AHEAD and just copy it. ...
@sayanee
@sayanee 5 жыл бұрын
Thanks for the feedback! Bad pause filler for saying "go ahead" :)
Tuna 🍣 ​⁠@patrickzeinali ​⁠@ChefRush
00:48
albert_cancook
Рет қаралды 148 МЛН
How Strong Is Tape?
00:24
Stokes Twins
Рет қаралды 96 МЛН
The evil clown plays a prank on the angel
00:39
超人夫妇
Рет қаралды 53 МЛН
IL'HAN - Qalqam | Official Music Video
03:17
Ilhan Ihsanov
Рет қаралды 700 М.
How LoRa Modulation really works - long range communication using chirps
27:38
#337 LoRa Off-Grid Mesh Communication: Meshtastic (ESP32, BLE, GPS)
13:15
Multiple Lora clients with a Server communication
10:04
miliohm
Рет қаралды 20 М.
I built a LoRa-GPS Tracker // Range test, battery life & firmware
14:36
Using Web BLE to detect and get GATT information
19:41
Sayanee Basu
Рет қаралды 28 М.
Getting Started with LoRa & testing Range in my City
12:39
techiesms
Рет қаралды 124 М.
How to use LoRa with Arduino
12:43
learnelectronics
Рет қаралды 124 М.
Tech Note 111 - ESP32 LoRa Modules - Sending and Receiving Data
6:47
Tuna 🍣 ​⁠@patrickzeinali ​⁠@ChefRush
00:48
albert_cancook
Рет қаралды 148 МЛН