Welcome to the Pycom forum Forum
    • \[\[global:header.categories\]\]
    • \[\[global:header.recent\]\]
    • \[\[global:header.tags\]\]
    • \[\[global:header.popular\]\]
    • Login

    Explore Pybytes | Official Documentation | Report a Firmware Bug/Issue | GitHub

    Send Lora message to non pycom device

    Scheduled Pinned Locked Moved LoPy
    channelfrequencylora
    16 Posts 4 Posters 4.1k Views 4 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • J Offline
      jmarcelino @Xykon
      last edited by

      Yes, the LPRS easyRadio system is based on the TI CC430F5137 and uses FSK not LoRa.

      1 Reply Last reply Reply Quote 1
      • P Offline
        pkilcoyne
        last edited by

        Thanks all,
        so the EasyRadio modules not being LoRa I wasn't testing like with like...got it.

        Many thanks,

        Paul

        1 Reply Last reply Reply Quote 0
        • P Offline
          pkilcoyne
          last edited by

          @xykon said in Send Lora message to non pycom device:

          aybe I'm missing something but I can't see any mention of that thing using LoRa.

          I found this, which mentions LoRa, on their website:

          http://www.lprs.co.uk/products/easyradio-ism-modules/era-lora-through-hole-modules.html

          Curious...

          X 1 Reply Last reply Reply Quote 0
          • X Offline
            Xykon administrators @pkilcoyne
            last edited by

            @pkilcoyne That is not the same module you linked in your initial post.

            Can you please confirm which module you're trying to use?

            Christian Ehlers

            P 1 Reply Last reply Reply Quote 0
            • P Offline
              pkilcoyne @Xykon
              last edited by

              @xykon said in Send Lora message to non pycom device:

              Can you please confirm which module you're trying to use?

              Yes sorry about my first post, the latter module is the one I'm actually using, the ERA-LORA.

              For the ERA-LORA there is a companion software where you can select the following attributes:

              Radio power level: P9 - the highest
              Channel: 0 ( 0-31)
              bandwidth: 500kHz
              band plan: b0 - 869.85MHz
              Spreading Factor: SF10

              I just don't know how to match the above with the LoPy modules so they can communicate.

              Regards,

              Paul

              1 Reply Last reply Reply Quote 0
              • P Offline
                pkilcoyne @jcaron
                last edited by

                @jcaron

                os.uname()
                (sysname='LoPy', nodename='LoPy', release='1.10.1.b1', version='v1.8.6-839-g536c958c on 2017-11-15', machine='LoPy with ESP32', lorawan='1.0.0')

                Antenna attached.

                I don't know how to match band plan / channel to the frequency I'm sending on :(

                Do you mean UART data rates or rates at which I send over the air? Not sure how to adjust these.

                Thanks,

                Paul

                J 1 Reply Last reply Reply Quote 0
                • J Offline
                  jmarcelino @pkilcoyne
                  last edited by jmarcelino

                  @pkilcoyne
                  All the information you need how to set the module and what frequencies their “channels” really mean is in their datasheet.
                  http://www.lprs.co.uk/assets/files/eRA_LoRa_FCC_V1.22.pdf

                  You just need to come with with a common set of values for both modules and in the LoPy case set those when initializing the LoRa class

                  P 2 Replies Last reply Reply Quote 1
                  • P Offline
                    pkilcoyne @jmarcelino
                    last edited by

                    @jmarcelino said in Send Lora message to non pycom device:

                    set

                    Hi again,
                    thanks for the link, I've looked through it and I've matched relevant parameters. Also, I've contacted the manufacturer and they said I also need to match the "group ID", default is 1234, but I cannot see any reference to this parameter in the Pycom documentation.

                    Any ideas?

                    Thanks,

                    Paul

                    J 1 Reply Last reply Reply Quote 0
                    • J Offline
                      jmarcelino @pkilcoyne
                      last edited by

                      @pkilcoyne
                      Group ID is not a LoRa radio parameter so I'd guess it's just some data that gets sent - like a number prefix.

                      Once you match the two unit's radio parameters try to see if you receive any data on the LoPy if you try to send from your device... maybe the Group ID will show up there.

                      I guess you can also ask the manufacturer to explain what Group ID is.

                      P 1 Reply Last reply Reply Quote 0
                      • P Offline
                        pkilcoyne @jmarcelino
                        last edited by

                        @jmarcelino Hi again,
                        so what I've done since is send messages between two LPRS devices sucessfully. The LoPy does not seem to receive these messages nor does it's programmed TX messages be received by either LPRS device.

                        Right now I have two parallel "lora" networks, one of two LPRS devices sending and receiving messages and one of two LoPy devices.

                        Maybe they just aren't meant to work together.

                        Paul

                        J 1 Reply Last reply Reply Quote 0
                        • J Offline
                          jmarcelino @pkilcoyne
                          last edited by jmarcelino

                          @pkilcoyne
                          What does your LoRa initialisation look like? Are you setting LoRa.BW_500KHZ etc?

                          You may have to play with the public and rx_iq settings. Sorry I don’t know what your other device expects for those.

                          P 1 Reply Last reply Reply Quote 0
                          • P Offline
                            pkilcoyne @jmarcelino
                            last edited by jmarcelino

                            @jmarcelino Hello again,
                            thanks for your reply, below is my current script on the LoPy:

                            from network import LoRa
                            import socket
                            import machine
                            import time
                            # initialize LoRa in LORA mode
                            # more params can also be given, like frequency, tx power and spreading factor
                            lora = LoRa(mode=LoRa.LORA, frequency=869850000, sf=10, bandwidth=LoRa.BW_250KHZ, public=True)
                            # create a raw LoRa socket
                            s = socket.socket(socket.AF_LORA, socket.SOCK_RAW)
                            
                            counter = 0
                            while True:
                                # send some data
                                s.setblocking(True)
                                s.send('Hello_from_LoPy')
                                print('Hello_from_LoPy...{}'.format(counter))
                                counter += 1
                            
                                # get any data received...
                                s.setblocking(False)
                                data = s.recv(64)
                                print(data)
                                if counter >= 100:  # reset counter at 100
                                    counter = 1
                                time.sleep(1)
                                # wait a random amount of time
                                time.sleep(5)
                                #time.sleep(machine.rng() & 0x0F)
                            
                            1 Reply Last reply Reply Quote 0
                            • P Offline
                              pkilcoyne @jmarcelino
                              last edited by pkilcoyne

                              @jmarcelino said in Send Lora message to non pycom device:

                              You just need to come with with a common set of values for both modules and in the LoPy case set those when initializing the LoRa class

                              Hi again, sorry for the delay in the update. So below is what I've set my LOPY to:

                              lora = LoRa(mode=LoRa.LORA, region=LoRa.EU868, sf=12, frequency=869850000, bandwidth=LoRa.BW_125KHZ, public=True)
                              s = socket.socket(socket.AF_LORA, socket.SOCK_RAW)

                              Seems fairly standard, but what does the "public" parameter do?

                              On the ERA-LORA side via the companion GUI software I have the following st:

                              Bandplan (frequency): 869.85MHz
                              Bandwidth: 125KHz
                              Channel: 0
                              Spreading Factor: 12

                              This seems to be a match on both sides though I still cannot get them to communicate :(

                              Does the LOPY use any encryption by default?

                              Any other defaults I need to be aware of?

                              Thanks,

                              Paul

                              1 Reply Last reply Reply Quote 0

                              Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                              Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                              With your input, this post could be even better 💗

                              Register Login
                              • 1 / 1
                              • First post
                                Last post

                              Pycom on Twitter

                              Pycom