Skip to content
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
  1. Home
  2. Development
  3. Porting MySensors to work with the RadioHead library

Porting MySensors to work with the RadioHead library

Scheduled Pinned Locked Moved Development
portingradiohead
288 Posts 24 Posters 187.4k Views 12 Watching
  • 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.
  • hekH Offline
    hekH Offline
    hek
    Admin
    wrote on last edited by
    #254

    Ah.. doh..

    Moved parts of the low-power library into MyHwATMega328 and forgot the ISR-thingie.

    https://github.com/mysensors/Arduino/blob/master/libraries/MySensors/utility/LowPower.cpp#L850

    Good catch.

    1 Reply Last reply
    0
    • K Offline
      K Offline
      kolaf
      Hero Member
      wrote on last edited by
      #255

      Glad I could help :-). I guess my prize will be that you patch this so that I do not have to create a pull request ;)

      1 Reply Last reply
      0
      • K Offline
        K Offline
        kolaf
        Hero Member
        wrote on last edited by
        #256

        I might as well continue while I'm at it :-)

        Another weird issue I'm having is that every node requests a new ID whenever it starts, but it does not switch to the new ID it receives. It just continues with the old ID it already had.

        When I wipe the ROM it requests a new ID as expected, and this time it is saved and used for subsequent communication. Why is it requesting a new ID when it boots, when it already has one?

        hekH 1 Reply Last reply
        0
        • K kolaf

          I might as well continue while I'm at it :-)

          Another weird issue I'm having is that every node requests a new ID whenever it starts, but it does not switch to the new ID it receives. It just continues with the old ID it already had.

          When I wipe the ROM it requests a new ID as expected, and this time it is saved and used for subsequent communication. Why is it requesting a new ID when it boots, when it already has one?

          hekH Offline
          hekH Offline
          hek
          Admin
          wrote on last edited by
          #257

          @kolaf

          Should not happen. Will look at it later tonight.

          1 Reply Last reply
          0
          • hekH Offline
            hekH Offline
            hek
            Admin
            wrote on last edited by
            #258

            Ok, finally got the thumbs out and actually tested the RFM69 code using a couple of Moteinos. They seem to communicate just fine. :)

            Tested with SerialGateway<->RelayActuator-Example.

            K 1 Reply Last reply
            0
            • R Offline
              R Offline
              reddy11
              wrote on last edited by
              #259

              I can also report success and things look pretty good. Had to change the line:

              //MyTransportRFM69 transport;
              MyTransportRFM69 transport(RFM69_FREQUENCY, RFM69_NETWORKID, RF69_SPI_CS, RF69_IRQ_PIN, true, RF69_IRQ_NUM);
              
              

              So that the rfm69HW could be supported.

              Now, on to see if I can get the MQTT working.

              K 1 Reply Last reply
              0
              • R reddy11

                I can also report success and things look pretty good. Had to change the line:

                //MyTransportRFM69 transport;
                MyTransportRFM69 transport(RFM69_FREQUENCY, RFM69_NETWORKID, RF69_SPI_CS, RF69_IRQ_PIN, true, RF69_IRQ_NUM);
                
                

                So that the rfm69HW could be supported.

                Now, on to see if I can get the MQTT working.

                K Offline
                K Offline
                kolaf
                Hero Member
                wrote on last edited by
                #260

                @reddy11 I had to do the same, although I did the change in the default parameters for the function definition since all my radios are HW :-).

                I'm not using the MQTT gateway, I'm using the serial gateway together with a Perl script someone here made which functions as a MQTT gateway, and which I modified to handle node ID assignments.

                R 1 Reply Last reply
                0
                • hekH hek

                  Ok, finally got the thumbs out and actually tested the RFM69 code using a couple of Moteinos. They seem to communicate just fine. :)

                  Tested with SerialGateway<->RelayActuator-Example.

                  K Offline
                  K Offline
                  kolaf
                  Hero Member
                  wrote on last edited by
                  #261

                  @hek You didn't see any extra node ID requests when the sensor booted?

                  tekkaT 1 Reply Last reply
                  0
                  • K kolaf

                    @hek You didn't see any extra node ID requests when the sensor booted?

                    tekkaT Offline
                    tekkaT Offline
                    tekka
                    Admin
                    wrote on last edited by
                    #262

                    @kolaf are you using the OTA bootloader?

                    K 1 Reply Last reply
                    0
                    • tekkaT tekka

                      @kolaf are you using the OTA bootloader?

                      K Offline
                      K Offline
                      kolaf
                      Hero Member
                      wrote on last edited by
                      #263

                      @tekka said:

                      @kolaf are you using the OTA bootloader?

                      No, I haven't figured out that part yet. I'm not even sure if I have available flash memory for this, nor if this is expected to work with the rf69 radios.

                      tekkaT 1 Reply Last reply
                      0
                      • K kolaf

                        @tekka said:

                        @kolaf are you using the OTA bootloader?

                        No, I haven't figured out that part yet. I'm not even sure if I have available flash memory for this, nor if this is expected to work with the rf69 radios.

                        tekkaT Offline
                        tekkaT Offline
                        tekka
                        Admin
                        wrote on last edited by
                        #264

                        @kolaf ok, i was asking because there is an issue wIth the ID assignment and the OTA bl in the dev branch resulting in the scenario you described.

                        1 Reply Last reply
                        0
                        • ? Offline
                          ? Offline
                          A Former User
                          wrote on last edited by
                          #265

                          Thanks everybody for the nice work! My initial tests also work out of the box with a serial gateway and humidity node. I will let it run over the weekend to see if there are any issues coming up.

                          1 Reply Last reply
                          0
                          • L Offline
                            L Offline
                            lafleur
                            wrote on last edited by
                            #266

                            I have serial gateway running on a MoteinoMega and a node running on a Moteino with RFM69HW radios... Using the 2April2015 build of the development arm... with the addition of the :

                            //MyTransportRFM69 transport;
                            MyTransportRFM69 transport(RFM69_FREQUENCY, RFM69_NETWORKID, RF69_SPI_CS, RF69_IRQ_PIN, true, RF69_IRQ_NUM);

                            and the correct pin-out for the radios and LED for these boards...

                            I needed to mod the MsTimer2.cpp file to add 'AVR_ATmega1284P ' to each of the #ifdef line to support the Mega

                            As I do not yet have a controller running, I see the gateway output as below when the node TX's:

                            0;0;3;0;9;read: 255-255-0 s=255,c=3,t=3,pt=0,l=0,sg=0:255;255;3;0;3;

                            1 Reply Last reply
                            0
                            • L Offline
                              L Offline
                              lafleur
                              wrote on last edited by
                              #267

                              I need a simple controller that can plot data that can be viewed on a web server... Mac/Pi or ??
                              want hr/day/week/mo/yr plots..

                              what do you recommend??

                              1 Reply Last reply
                              0
                              • K kolaf

                                @reddy11 I had to do the same, although I did the change in the default parameters for the function definition since all my radios are HW :-).

                                I'm not using the MQTT gateway, I'm using the serial gateway together with a Perl script someone here made which functions as a MQTT gateway, and which I modified to handle node ID assignments.

                                R Offline
                                R Offline
                                reddy11
                                wrote on last edited by
                                #268

                                @kolaf I gave up on getting the MQTT gateway working. I just dont think there is enough memory in my moteino to use the rf69 and the uipethernet library. I was able to get it to work, but it would crash after a few min. When I updated to the latest UIPEthernet library for the 1.5 series, It was too large to upload. So....anyway...can you elaborate on, or point me to the serial-mqtt script you were referring to?
                                Thanks!

                                K 1 Reply Last reply
                                0
                                • R reddy11

                                  @kolaf I gave up on getting the MQTT gateway working. I just dont think there is enough memory in my moteino to use the rf69 and the uipethernet library. I was able to get it to work, but it would crash after a few min. When I updated to the latest UIPEthernet library for the 1.5 series, It was too large to upload. So....anyway...can you elaborate on, or point me to the serial-mqtt script you were referring to?
                                  Thanks!

                                  K Offline
                                  K Offline
                                  kolaf
                                  Hero Member
                                  wrote on last edited by
                                  #269

                                  @reddy11 Sure, you can find it here: https://github.com/Yveaux/MySensors_MQTTGateway

                                  You will want to use version 2 of the script.

                                  It does simple note ID assignments by keeping a list of all ids it has seen and choosing the first ID not in this list when receiving an ID request.

                                  There are some dependencies, but you will notice that as you start the script :-)

                                  1 Reply Last reply
                                  0
                                  • N Offline
                                    N Offline
                                    nikorun
                                    wrote on last edited by
                                    #270

                                    Hi,

                                    i've tried to scroll back many of the pages of this thread, to find out how to use the Radiohead version of mysensors but with no success, considering that i don"t understand many of those things said here ... :-(

                                    Is there someone that can help me a little and give me a minimalist modop ? i've used Radiohead on its own with 3 moteinos but mooving to MySensors seem to be the best way to integrate them in a standard domotix architecture ... i currently use Jeedom for a year now.

                                    Of course, you'll have my feedbacks ...

                                    Nicolas

                                    1 Reply Last reply
                                    0
                                    • hekH Offline
                                      hekH Offline
                                      hek
                                      Admin
                                      wrote on last edited by
                                      #271

                                      Use the development branch (https://github.com/mysensors/Arduino/tree/development/libraries/MySensors)
                                      and enable MyTransportRFM69 transport layer in gateway and sensor.

                                      Uncomment this line for gateway (and use the same setup for sensor):
                                      https://github.com/mysensors/Arduino/blob/development/libraries/MySensors/examples/SerialGateway/SerialGateway.ino#L63

                                      1 Reply Last reply
                                      0
                                      • N Offline
                                        N Offline
                                        nikorun
                                        wrote on last edited by
                                        #272

                                        Hello Hek,

                                        Thanks for your answer, I will try this as soon as I'll be back home.

                                        When you say* "uncomment this line ..."* , do I have to comment the previous one (MyTransportNRF24 transport(RF24_CE_PIN, RF24_CS_PIN, RF24_PA_LEVEL_GW);) ?
                                        Furthermore, as described in your exemple, the line to be uncommented has no argument but in a previous post reddy11 has to add several ones:
                                        MyTransportRFM69 transport(RFM69_FREQUENCY, RFM69_NETWORKID, RF69_SPI_CS, RF69_IRQ_PIN, true, RF69_IRQ_NUM);

                                        Is it only due to the "H" version of the module ?

                                        Again, thanks for your time. I really think Radiohead is a impressive library as well as MySensor si very smart , the both should be terrible !!!

                                        Nicolas

                                        1 Reply Last reply
                                        0
                                        • hekH Offline
                                          hekH Offline
                                          hek
                                          Admin
                                          wrote on last edited by
                                          #273

                                          Yes, disable or remove the MyTransportNRF24 transport line.

                                          If you write

                                          MyTransportRFM69 transport;
                                          

                                          It will use default constructor arguments defined here:
                                          https://github.com/mysensors/Arduino/blob/development/libraries/MySensors/MyTransportRFM69.h#L33
                                          and here:
                                          https://github.com/mysensors/Arduino/blob/development/libraries/MySensors/MyConfig.h#L129-L133

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          12

                                          Online

                                          11.7k

                                          Users

                                          11.2k

                                          Topics

                                          113.0k

                                          Posts


                                          Copyright 2019 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • MySensors
                                          • OpenHardware.io
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular