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

    Pymesh updates

    Scheduled Pinned Locked Moved Firmware
    loraenhancementpymesh
    73 Posts 13 Posters 12.8k Views 18 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.
    • DanneD Offline
      Danne @catalin
      last edited by

      @catalin Thanks a lot!

      This allows my project to continue, and I look forward to check out the app!

      1 Reply Last reply Reply Quote 1
      • CAPKEC Offline
        CAPKE @catalin
        last edited by

        @catalin: I'm using the https://github.com/pycom/pymesh_apps/blob/master/custom_fw_bin/LoPy4.tar.gz on two devices (LoPy4 and FiPy) , but these both devices can not find a neighbor!
        Another 4 LoPy modules with firmware LoPy-1.20.0.rc7.tar.gz work perfectly in parallel.

        R 1 Reply Last reply Reply Quote 1
        • R Offline
          ricardolima @CAPKE
          last edited by

          @CAPKE
          Hi, it discover indirectly neighbor too? Thank you

          1 Reply Last reply Reply Quote 1
          • catalinC Offline
            catalin
            last edited by

            Hi all,

            The Pymesh docs were updated: https://docs.pycom.io/pymesh/ explaining the frozen library API, BLE RPC, the CLI and the Border Router example.
            It should work with the firmware from https://github.com/pycom/pymesh_apps/tree/master/custom_fw_bin

            @CAPKE So, you're having the corresponding firmware Fipy and Lopy from here, so the 2 devices should create a Mesh network. Probably they're not compatible with the older Mesh created by LoPy-1.20.0.rc7.tar.gz because the masterkey is different. Initially I've used some default masterkey, now it can be set here and the default one is specified here in docs.
            Anyway, you could find the masterkey with command:

            # as test, the masterkey can be printed
            >>> print("masterkey:", pymesh.cli("masterkey"))
            masterkey: 11223300000000000000000000000000
            

            Catalin,

            Have you checked out our docs for the answer? (Now with an easy search function) https://docs.pycom.io
            Check out our newly revamped device management platform, Pybytes! https://pybytes.pycom.io/

            kodarnK CAPKEC 2 Replies Last reply Reply Quote 1
            • kodarnK Offline
              kodarn @catalin
              last edited by

              @catalin Thanks for updating the documentation!

              One question: Do you consider lib/pymesh.py to be an api or an application? To my understanding, it spawn's an interactive CLI shell, right? so should it really be a part of /lib ?

              catalinC 1 Reply Last reply Reply Quote 1
              • catalinC Offline
                catalin @kodarn
                last edited by

                @kodarn good question, so it seems to be both, which is not clear design, right? Just to mention, there are also threads started for BLE-RPC part.
                One idea would be, in the configuration file to have a parameter to enable/disable CLI (also for the other application features).

                Or how would you like to use pymesh library? What would you modify?

                Catalin,

                Have you checked out our docs for the answer? (Now with an easy search function) https://docs.pycom.io
                Check out our newly revamped device management platform, Pybytes! https://pybytes.pycom.io/

                kodarnK 1 Reply Last reply Reply Quote 1
                • kodarnK Offline
                  kodarn @catalin
                  last edited by kodarn

                  @catalin Perhaps I am misunderstanding things since I was thinking of PyMesh being the Mesh Network. But PyMesh is not that. Instead, PyMesh seems to be more of a wrapper to the Mesh Network enabling BLE/Configuration/CLI stuff?

                  So if I'm interested in building applications with the Pycom Mesh Network API, and not interested in the Bluetooth & CLI stuff, I should use the mesh_interface.py api?

                  catalinC 1 Reply Last reply Reply Quote 1
                  • catalinC Offline
                    catalin @kodarn
                    last edited by

                    @kodarn Yes, you can use directly mesh_interface.py, but make sure you initialise it as in pymesh.py.
                    The idea was that the pymesh.py is the API level, but you can just use it as it fits your needs.

                    Catalin,

                    Have you checked out our docs for the answer? (Now with an easy search function) https://docs.pycom.io
                    Check out our newly revamped device management platform, Pybytes! https://pybytes.pycom.io/

                    1 Reply Last reply Reply Quote 1
                    • catalinC Offline
                      catalin @catalin
                      last edited by

                      As mentioned earlier, the official release process is in this topic.

                      Catalin,

                      Have you checked out our docs for the answer? (Now with an easy search function) https://docs.pycom.io
                      Check out our newly revamped device management platform, Pybytes! https://pybytes.pycom.io/

                      1 Reply Last reply Reply Quote 0
                      • CAPKEC Offline
                        CAPKE @catalin
                        last edited by

                        @catalin I updated my LoPy4 and FiPy with the firmware LoPy4.tar.gz and FiPy.tar.gz.
                        On both devices, I successfully tested the example https://docs.pycom.io/pymesh/simple-example/.

                        But if I try out the following code:

                        import ubinascii
                        from network import LoRa
                        
                        lora = LoRa(mode=LoRa.LORAWAN, region=LoRa.EU868)
                        masterkey = ubinascii.unhexlify("112233")
                        pymesh = lora.Pymesh(key=masterkey)
                        

                        See https://docs.pycom.io/firmwareapi/pycom/network/lora/pymesh/#class-network-lora-pymesh-key-masterkey

                        I get the error message:

                        Traceback (most recent call last):
                          File "main.py", line 19, in <module>
                        AttributeError: 'LoRa' object has no attribute 'Pymesh'
                        Pycom MicroPython 1.20.1.r1 [v1.11-7c63158e0] on 2019-10-22; FiPy with ESP32
                        

                        I'm currently not sure when to use which PyMesh-lib?

                        catalinC 1 Reply Last reply Reply Quote 1
                        • catalinC Offline
                          catalin @CAPKE
                          last edited by

                          Thanks @CAPKE for spotting that documentation problem. The subclass name is Mesh(), not Pymesh() 😕.
                          I've made a wrong replace-all in docs.

                          Catalin,

                          Have you checked out our docs for the answer? (Now with an easy search function) https://docs.pycom.io
                          Check out our newly revamped device management platform, Pybytes! https://pybytes.pycom.io/

                          catalinC 1 Reply Last reply Reply Quote 0
                          • catalinC Offline
                            catalin @catalin
                            last edited by

                            hi all,

                            Few updates:

                            1. the LoRa.Mesh() class documentation issue, was fixed here, so there's no class name Pymesh
                            2. the repository pymesh_apps was deleted as the information was redundant:
                            • releases are released thru licensing process
                            • scripts and mobile app are https://github.com/pycom/pycom-libraries/tree/master/pymesh

                            Catalin,

                            Have you checked out our docs for the answer? (Now with an easy search function) https://docs.pycom.io
                            Check out our newly revamped device management platform, Pybytes! https://pybytes.pycom.io/

                            CAPKEC 1 Reply Last reply Reply Quote 1
                            • CAPKEC Offline
                              CAPKE @catalin
                              last edited by

                              @catalin Hi Catalin,

                              I found a other issue at the https://docs.pycom.io/firmwareapi/pycom/network/lora/pymesh/#class-network-lora-pymesh-key-masterkey example:

                              The constructor class network.LoRa(id=0, …) without the params bandwidth and sf will not work correctly (no neighbors will be found).

                              Please change to:
                              lora = LoRa(mode=LoRa.LORA, region=LoRa.EU868, frequency = 863000000, bandwidth=LoRa.BW_125KHZ, sf=7)

                              catalinC 1 Reply Last reply Reply Quote 1
                              • catalinC Offline
                                catalin @CAPKE
                                last edited by

                                ok @CAPKE, thanks a lot! mode=LoRa.LORAWAN is a mistake, it should have been mode=LoRa.LORA.

                                A pre-requisite of the Pymesh is that all the nodes (that want to be part of the same mesh network) should be initialised on the same LoRa settings (band, frequency, spreading factor, bandwidth) and master key.

                                Catalin,

                                Have you checked out our docs for the answer? (Now with an easy search function) https://docs.pycom.io
                                Check out our newly revamped device management platform, Pybytes! https://pybytes.pycom.io/

                                1 Reply Last reply Reply Quote 1
                                • C Offline
                                  craigzych
                                  last edited by

                                  Curious if anyone has seen this behaviour.
                                  I have 4 fipy devices.

                                  Using the simple example modified for USA, I had all 4 nodes join last night. I left them plugged in overnight to test if they would all still be connected in the morning. Last night I had one Magenta and 3 green as I'd expect. This morning all 4 were blue meaning they had segmented into 4 separate networks.
                                  Now this morning I can occasionally get 2 to join after resets but they just want to stay separated.
                                  pymesh_config = {'ble_api': True, 'autostart': True, 'debug': 5, 'LoRa': {'sf': 7, 'region': 8, 'freq': 915000000, 'bandwidth': 2}, 'ble_name_prefix': 'PyGo ', 'Pymesh': {'key': '112233'}}

                                  Have you seen this?

                                  C 1 Reply Last reply Reply Quote 0
                                  • C Offline
                                    chrisso @craigzych
                                    last edited by

                                    @craigzych
                                    I get this in the office as well with a mixture of 2 x Fipy and 3 x Lopy4.
                                    Also found when driving around doing some range testing, it didnt always rejoin the mesh when in range as I would have expected it to do.

                                    1 Reply Last reply Reply Quote 0
                                    • J Offline
                                      jclo13 @robert-hh
                                      last edited by

                                      Hello, @catalin, I have the same error, whit the FW 1.20.2.rc11, for pymesh, have you solved it?.

                                      Thank you in advance.

                                      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
                                      • 2
                                      • 3
                                      • 4
                                      • 4 / 4
                                      • First post
                                        Last post

                                      Pycom on Twitter

                                      Pycom