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. Troubleshooting
  3. ESP8266 gateway and sensor node not talking - noobie

ESP8266 gateway and sensor node not talking - noobie

Scheduled Pinned Locked Moved Troubleshooting
megadht11esp8266
37 Posts 6 Posters 16.9k Views 4 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.
  • M Offline
    M Offline
    Mersing
    wrote on last edited by
    #6

    Hello,

    I received addition log on the GW:

    ESP8266 MySensors Gateway
    Connecting to WRT54G
    .......Connected!
    IP: 192.168.1.25
    0;0;3;0;9;gateway started, id=0, parent=0, distance=0
    0;0;3;0;9;Inclusion started by button.
    0;0;3;0;5;1
    0;0;3;0;9;Inclusion started by button.
    0;0;3;0;9;Inclusion started by button.
    0;0;3;0;9;Inclusion started by button.
    0;0;3;0;9;Inclusion started by button.
    0;0;3;0;9;Inclusion started by button.
    0;0;3;0;9;Inclusion started by button.
    0;0;3;0;9;Inclusion started by button.
    0;0;3;0;9;Inclusion started by button.
    0;0;3;0;9;Inclusion started by button.
    0;0;3;0;5;0
    

    "Inclusion started by button." are coming randomly (not triggered by node reboot ).

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

      Guys, would be great if you used the development branch instead.
      Really need more testers of that code... also and any fixes for ESP8266/RF69 would be done in the dev-branch.

      1 Reply Last reply
      0
      • M Offline
        M Offline
        Mersing
        wrote on last edited by
        #8

        Hello,

        I'm now testing with 1.6, on GW and Node.

        I'm trying to get familiar with the 1.6 changes.
        On the node how can I setup the NODE ID ? ( it seems that gw.begin( NULL, 5) can't be used anymore).
        On the Node side, I'm using DallasTemperatureSensor.ino.
        Should I add presentation() call from Setup () ?

        void setup()   { 
          // Startup up the OneWire library
          sensors.begin();
          // requestTemperatures() will not block current thread
          sensors.setWaitForConversion(false);
          presentation();
        }
        

        I've setup the communication with RF24, as a first test.
        From the GW

        0;0;3;0;9;read: 5-5-0 s=255,c=0,t=17,pt=0,l=10,sg=0:1.6.0-beta
        0;0;3;0;9;read: 5-5-0 s=255,c=3,t=6,pt=1,l=1,sg=0:0
        0;0;3;0;9;read: 5-5-0 s=255,c=3,t=11,pt=0,l=18,sg=0:Temperature Senso
        0;0;3;0;9;read: 5-5-0 s=255,c=3,t=12,pt=0,l=3,sg=0:1.1
        0;0;3;0;9;read: 5-5-0 s=255,c=3,t=11,pt=0,l=18,sg=0:Temperature Senso
        0;0;3;0;9;read: 5-5-0 s=255,c=3,t=12,pt=0,l=3,sg=0:1.1
        0;0;3;0;9;read: 5-5-0 s=0,c=0,t=6,pt=0,l=0,sg=0:
        0;0;3;0;9;read: 5-5-0 s=0,c=1,t=0,pt=7,l=5,sg=0:23.6
        0;0;3;0;9;read: 5-5-0 s=0,c=1,t=0,pt=7,l=5,sg=0:23.7
        
        

        Everything is working fine. (Seems the Node ID is coming from previous 1.5 upload, I've setup it to 5)

        I've then replaced the radio by RF69 ones.
        Below the changes in GatewayESP8266.ino

        #define MY_RADIO_RFM69
        #define MY_RF69_IRQ_PIN 4
        

        Node ouput

        Starting...
        send: 5-5-0-0 s=255,c=0,t=17,pt=0,l=10,sg=0,st=fail:1.6.0-beta
        send: 5-5-0-0 s=255,c=3,t=6,pt=1,l=1,sg=0,st=fail:0
        send: 5-5-0-0 s=255,c=3,t=11,pt=0,l=18,sg=0,st=fail:Temperature Sensor
        send: 5-5-0-0 s=255,c=3,t=12,pt=0,l=3,sg=0,st=fail:1.1
        sensor started, id=5, parent=0, distance=1
        send: 5-5-0-0 s=255,c=3,t=11,pt=0,l=18,sg=0,st=fail:Temperature Sensor
        send: 5-5-0-0 s=255,c=3,t=12,pt=0,l=3,sg=0,st=fail:1.1
        find parent
        send: 5-5-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0,st=bc:
        send: 5-5-0-0 s=0,c=0,t=6,pt=0,l=0,sg=0,st=fail:
        send: 5-5-0-0 s=0,c=1,t=0,pt=7,l=5,sg=0,st=fail:22.5
        send: 5-5-0-0 s=0,c=1,t=0,pt=7,l=5,sg=0,st=fail:22.6
        

        GW Output

        0;0;3;0;9;Starting...
        scandone
        f 0, ....scandone
        .add 0
        aid 7
        pm open phy_2,type:2 0 0
        cnt 
        
        connected with WRT54G, channel 6
        dhcp client start...
        .ip:192.168.1.25,mask:255.255.255.0,gw:192.168.1.1
        .IP: 192.168.1.25
        0;0;3;0;9;gateway started, id=0, parent=0, distance=0
        
        ESP8266 MySensors Gateway
        Connecting to WRT54G
        sl
        f -240, ....scandone
        usl
        sul 7 0
        reconnect
        rm 0
        pm close 7 0 0/3399505
        f 0, ....scandone
        .add 0
        aid 7
        pm open phy_2,type:2 0 0
        cnt 
        
        connected with WRT54G, channel 6
        dhcp client start...
        ..ip:192.168.1.25,mask:255.255.255.0,gw:192.168.1.1
        .Connected!
        IP: 192.168.1.25
        
        

        Nothing more on the GW side.

        Any idea ? Where (lib) can I start troubleshooting ?

        Regards.

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

          Set static id with:

          #define MY_NODE_ID xx

          My guess is something goes wrong here:
          https://github.com/mysensors/Arduino/blob/development/libraries/MySensors/drivers/RFM69/RFM69.cpp#L47

          1 Reply Last reply
          0
          • M Offline
            M Offline
            Mersing
            wrote on last edited by
            #10

            Hello,
            I had a look at RFM69.cpp, bool RFM69::initialize function.
            It a bit far away from my current skill to debug.
            I've tried to display registers to check if they have been properly initialized.

              Serial.println( "bool RFM69::initialize" );
              Serial.println( "Read Registers" );
              Serial.print( "RegOpMode Read 0x01 : " );
              Serial.println( readReg( 0x01) );
              Serial.print( "RegDataModul Read 0x02 : " );
              Serial.println( readReg( 0x02) );
              Serial.print( "RegVersion Read 0x10 : " );
              Serial.println( readReg( 0x10) );
              Serial.print( "RegRssiValue Read 0x24) : " );
              Serial.println( readReg( 0x24) );
              Serial.println( "" );
            

            Output is

            0;0;3;0;9;Starting...
            bool RFM69::initialize
            Read Registers
            RegOpMode Read 0x01 : 4
            RegDataModul Read 0x02 : 0
            RegVersion Read 0x10 : 36
            RegRssiValue Read 0x24) : 56
            
            scandone
            f 0, ....scandone
            .add 0
            aid 7
            pm open phy_2,type:2 0 0
            cnt 
            

            Seems the registers are OK. However I can't go a step further.

            I'm please to help for testing any new enhancement.

            Regards,
            Mersing.

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

              Hmm... I should really order a few RFM69 radios myself.

              I only have a couple of Moteions. Doesn't help much if I would help out debugging ESP8266 with RFM69.

              1 Reply Last reply
              0
              • M Offline
                M Offline
                Mersing
                wrote on last edited by
                #12

                You could maybe hack / re-use the radio from the Motino :smiley:

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

                  Na... just have to wait for the china slow boat. Should be here before christmas :zzz:

                  1 Reply Last reply
                  0
                  • F Offline
                    F Offline
                    Fabien
                    wrote on last edited by
                    #14

                    I have same bug : http://forum.mysensors.org/topic/2538/esp8266-and-rfm69w-loop-reboot

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

                      Are you getting the same error in dev branch?

                      1 Reply Last reply
                      0
                      • F Offline
                        F Offline
                        Fabien
                        wrote on last edited by
                        #16

                        With the last git developpement it works. except when a node start presentation, gateway reboot. And sometimes it reboots randomless.
                        node is a sensebender with MySensors 1.6 and gateway with 1.6 too.
                        Important : You have to define MY_RF69_IRQ_NUM = MY_RF26_IRQ_PIN on ESP8266

                        #define MY_RADIO_RFM69
                        #define MY_RFM69_FREQUENCY   RF69_868MHZ
                        #define MY_RF69_IRQ_PIN 15
                        #define MY_RF69_SPI_CS 2
                        #define MY_RF69_IRQ_NUM 15
                        

                        Result is

                        connected with PandoraBox_1BB657, channel 1
                        dhcp client start...
                        .ip:192.168.2.165,mask:255.255.255.0,gw:192.168.2.1
                        .IP: 192.168.2.165
                        0;0;3;0;9;Init complete, id=0, parent=0, distance=0
                        chg_B:-120
                        
                        Soft WDT reset
                        
                        ctx: cont 
                        sp: 3ffef9a0 end: 3ffefc60 offset: 01b0
                        
                        >>>stack>>>
                        3ffefb50:  00000001 3ffefd00 3ffeff68 00000001  
                        3ffefb60:  00000024 3ffefd00 3ffeff68 402022f2  
                        3ffefb70:  3ffe8496 00000000 3ffefd00 40202378  
                        3ffefb80:  3ffe8496 00000000 3ffefd00 40202563  
                        3ffefb90:  3ffefd1e 00000001 3ffefd00 40202a43  
                        3ffefba0:  3fffdc20 00000000 3ffeec28 3ffefcd8  
                        3ffefbb0:  3fffdc20 3ffefd1d 3ffefd00 40202e0c  
                        3ffefbc0:  40209c8d 00000000 3ffeec28 40203ed1  
                        3ffefbd0:  00000000 00000002 3ffefe58 402039d0  
                        3ffefbe0:  00000000 3ffefd00 3ffeff68 40202338  
                        3ffefbf0:  40101500 402059d6 3ffeff50 3ffefc20  
                        3ffefc00:  3ffefc10 00000004 3ffefcf9 40202358  
                        3ffefc10:  3fffdc20 00000000 00000000 3ffeec30  
                        3ffefc20:  3fffdc20 00000000 3ffeec28 3ffeec30  
                        3ffefc30:  3fffdc20 00000000 3ffeec28 40203aee  
                        3ffefc40:  00000000 00000000 3ffeec28 402041a0  
                        3ffefc50:  00000000 00000000 3ffeec40 40100114  
                        <<<stack<<<
                        �!�L�<1���0;0;3;0;9;Starting gateway (RRNGE-, 1.6.0-beta)
                        0;0;3;0;9;Radio init successful.
                        scandone
                        state: 0 -> 2 (b0)
                        .state: 2 -> 3 (0)
                        state: 3 -> 5 (10)
                        add 0
                        aid 3
                        pm open phy_2,type:2 0 0
                        cnt 
                        chg_B:-60
                        
                        connected with PandoraBox_1BB657, channel 1
                        dhcp client start...
                        .ip:192.168.2.165,mask:255.255.255.0,gw:192.168.2.1
                        .IP: 192.168.2.165
                        0;0;3;0;9;Init complete, id=0, parent=0, distance=0
                        chg_B:-120
                        0;0;3;0;9;read: 1-1-0 s=1,c=1,t=0,pt=7,l=5,sg=0:24.6
                        0;0;3;0;9;read: 1-1-0 s=2,c=1,t=1,pt=2,l=2,sg=0:51
                        0;0;3;0;9;read: 1-1-0 s=1,c=1,t=0,pt=7,l=5,sg=0:24.4
                        

                        And something strange, I only recieve Humidity one time. (sensebender defaut sketch with FORCE_TRANSMIT_INTERVAL 0 )

                        1 Reply Last reply
                        0
                        • F Offline
                          F Offline
                          Fabien
                          wrote on last edited by Fabien
                          #17

                          @hek you are right it works fine with

                          #define TIME_OUT 500
                          

                          in https://github.com/mysensors/Arduino/blob/development/libraries/MySensors/drivers/RFM69/RFM69.cpp#L47

                          0�~?�4�!�{�OAa�0;0;3;0;9;Starting gateway (RRNGE-, 1.6.0-beta)
                          0;0;3;0;9;Radio init successful.
                          scandone
                          state: 0 -> 2 (b0)
                          .state: 2 -> 3 (0)
                          state: 3 -> 5 (10)
                          add 0
                          aid 3
                          pm open phy_2,type:2 0 0
                          cnt 
                          chg_B:-60
                          
                          connected with PandoraBox_1BB657, channel 1
                          dhcp client start...
                          .ip:192.168.2.165,mask:255.255.255.0,gw:192.168.2.1
                          .IP: 192.168.2.165
                          0;0;3;0;9;Init complete, id=0, parent=0, distance=0
                          chg_B:-120
                          0;0;3;0;9;read: 1-1-0 s=1,c=1,t=0,pt=7,l=5,sg=0:24.8
                          0;0;3;0;9;read: 1-1-0 s=2,c=1,t=1,pt=2,l=2,sg=0:54
                          0;0;3;0;9;read: 1-1-0 s=255,c=0,t=17,pt=0,l=10,sg=0:1.6.0-beta
                          0;0;3;0;9;read: 1-1-0 s=255,c=4,t=0,pt=6,l=10,sg=0:FFFFFFFFFFFFFFFF0300
                          0;0;3;0;9;read: 1-1-0 s=255,c=3,t=11,pt=0,l=17,sg=0:Sensebender Micro
                          0;0;3;0;9;read: 1-1-0 s=255,c=3,t=12,pt=0,l=3,sg=0:1.4
                          0;0;3;0;9;read: 1-1-0 s=2,c=0,t=7,pt=0,l=0,sg=0:
                          0;0;3;0;9;read: 1-1-0 s=2,c=1,t=1,pt=2,l=2,sg=0:54
                          0;0;3;0;9;read: 1-1-0 s=1,c=1,t=0,pt=7,l=5,sg=0:24.7
                          0;0;3;0;9;read: 1-1-0 s=2,c=1,t=1,pt=2,l=2,sg=0:50
                          0;0;3;0;9;read: 1-1-0 s=1,c=1,t=0,pt=7,l=5,sg=0:24.7
                          0;0;3;0;9;read: 1-1-0 s=2,c=1,t=1,pt=2,l=2,sg=0:51
                          0;0;3;0;9;Client 0 connected
                          0;0;3;0;9;read: 1-1-0 s=1,c=1,t=0,pt=7,l=5,sg=0:24.5
                          0;0;3;0;9;read: 1-1-0 s=2,c=1,t=1,pt=2,l=2,sg=0:50
                          

                          I don't try with other timeout values.

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

                            Ok, great. We need to increase timeout then.

                            YveauxY 1 Reply Last reply
                            0
                            • F Offline
                              F Offline
                              Fabien
                              wrote on last edited by
                              #19

                              @hek Yes and perhaps a feature to set MY_RF69_IRQ_NUM = MY_RF26_IRQ_PIN when using ESP8266. Do You want to test other timeout values ? Is it critical ?

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

                                @Fabien said:

                                MY_RF26_IRQ_PIN

                                I cannot find this defined anywhere...

                                1 Reply Last reply
                                0
                                • F Offline
                                  F Offline
                                  Fabien
                                  wrote on last edited by
                                  #21

                                  sorry MY_RF69_IRQ_PIN ...

                                  1 Reply Last reply
                                  0
                                  • F Offline
                                    F Offline
                                    Fabien
                                    wrote on last edited by
                                    #22

                                    Work with 51ms timeout with my config. I set 60ms to be "secure"

                                    1 Reply Last reply
                                    0
                                    • hekH hek

                                      Ok, great. We need to increase timeout then.

                                      YveauxY Offline
                                      YveauxY Offline
                                      Yveaux
                                      Mod
                                      wrote on last edited by Yveaux
                                      #23

                                      @hek said:

                                      Ok, great. We need to increase timeout then.

                                      Better add a yield() call in those blocking wait loops.
                                      When quiclkly looking over the code of the RF69 driver, the RFM69::initialize call could in theory block for 1.5 sec...
                                      That's a watchdog reset waiting to happen!

                                      http://yveaux.blogspot.nl

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

                                        Yep,

                                        https://github.com/mysensors/Arduino/pull/287

                                        YveauxY 1 Reply Last reply
                                        0
                                        • hekH hek

                                          Yep,

                                          https://github.com/mysensors/Arduino/pull/287

                                          YveauxY Offline
                                          YveauxY Offline
                                          Yveaux
                                          Mod
                                          wrote on last edited by
                                          #25

                                          @hek :+1:

                                          http://yveaux.blogspot.nl

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


                                          21

                                          Online

                                          11.7k

                                          Users

                                          11.2k

                                          Topics

                                          113.1k

                                          Posts


                                          Copyright 2025 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