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. relay actuator fails to presenting itself

relay actuator fails to presenting itself

Scheduled Pinned Locked Moved Troubleshooting
12 Posts 2 Posters 3.3k Views 1 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
    #2

    You seem to have had-coded parent to 5. Is that really correct?

    1 Reply Last reply
    0
    • Y Offline
      Y Offline
      yury
      wrote on last edited by
      #3

      Yes. I use switch as parent with ID ==5

      like this :

      #include <MySensor.h>
      #include <SPI.h>
      #include <Bounce2.h>
      
      #define CHILD_ID 55
      #define BUTTON_PIN  5  // Arduino Digital I/O pin for button/reed switch
      
      MySensor gw;
      Bounce debouncer = Bounce(); 
      int oldValue=-1;
      
      // Change to V_LIGHT if you use S_LIGHT in presentation below
      MyMessage msg(CHILD_ID,V_LIGHT);
      
      void setup()  
      {  
        #define NodeID 5
      
        // Initialize library and add callback for incoming messages
        gw.begin(NULL, NodeID, false);
      
      
      
      //  gw.begin();
      
       // Setup the button
        pinMode(BUTTON_PIN,INPUT);
        // Activate internal pull-up
        digitalWrite(BUTTON_PIN,HIGH);
        
        // After setting up the button, setup debouncer
        debouncer.attach(BUTTON_PIN);
        debouncer.interval(5);
        
        // Register binary input sensor to gw (they will be created as child devices)
        // You can use S_DOOR, S_MOTION or S_LIGHT here depending on your usage. 
        // If S_LIGHT is used, remember to update variable type you send in. See "msg" above.
        gw.present(CHILD_ID, S_LIGHT);  
      }
      
      
      1 Reply Last reply
      0
      • hekH Offline
        hekH Offline
        hek
        Admin
        wrote on last edited by hek
        #4

        And what does the repeater (5) log look like?

        As you can see (ack fail) the node is having problem communicating with repeater.

        Also.. are you calling gw.process() in the loop-function on your repeater?

        1 Reply Last reply
        0
        • Y Offline
          Y Offline
          yury
          wrote on last edited by yury
          #5

          re:
          And what does the repeater (5) log look like?

          I do not use repeater. 5 is sample code for switch with hard coded ID == 5

          switch monitor log

          send: 5-5-0-0 s=255,c=0,t=17,pt=0,l=3,sg=0,st=ok:1.5
          send: 5-5-0-0 s=255,c=3,t=6,pt=1,l=1,sg=0,st=ok:0
          sensor started, id=5, parent=0, distance=1
          send: 5-5-0-0 s=55,c=0,t=3,pt=0,l=0,sg=0,st=ok:
          send: 5-5-0-0 s=55,c=1,t=2,pt=2,l=2,sg=0,st=ok:1
          send: 5-5-0-0 s=55,c=1,t=2,pt=2,l=2,sg=0,st=ok:0
          send: 5-5-0-0 s=55,c=1,t=2,pt=2,l=2,sg=0,st=ok:1

          re:
          As you can see (ack fail) the node is having problem communicating with repeater.

          do I need to switch off somewhere repeater mode? I do not need repeater.
          I use
          gw.begin(incomingMessage, NodeID, false,5); in actuator code
          gw.begin(NULL, NodeID, false); in switch code.

          re:
          Also.. are you calling gw.process() in the loop-function on your repeater?

          I added now...

          //  Check if digital input has changed and send in new value
          void loop() 
          {
          
            debouncer.update();
            // Get the update value
            int value = debouncer.read();
           
            if (value != oldValue) {
               // Send in the new value
               gw.send(msg.set(value==HIGH ? 1 : 0));
               oldValue = value;
            }
           gw.process();
          }
          
          

          After I added gw.process(); log looks good but still no traeces of actuator in serial gateway.

          Actuator log:
          send: 55-55-5-0 s=255,c=0,t=17,pt=0,l=3,sg=0,st=ok:1.5
          send: 55-55-5-0 s=255,c=3,t=6,pt=1,l=1,sg=0,st=ok:5
          sensor started, id=55, parent=5, distance=1
          send: 55-55-5-0 s=255,c=3,t=11,pt=0,l=5,sg=0,st=ok:Relay
          send: 55-55-5-0 s=255,c=3,t=12,pt=0,l=3,sg=0,st=ok:1.0
          send: 55-55-5-0 s=55,c=0,t=3,pt=0,l=0,sg=0,st=ok:

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

            @yury said:

            gw.begin(NULL, NodeID, false); <--

            You must enable repeater mode (3:rd argument) of your repeater, otherwise it won't relay message from your node 55 to your gateway.

            gw(0) <-- Repeater(5) <---- Node (55)

            1 Reply Last reply
            0
            • Y Offline
              Y Offline
              yury
              wrote on last edited by
              #7

              added as repeater node 5, but still no traces of the actuator 55 in the gateway.

              send: 5-5-0-0 s=255,c=0,t=18,pt=0,l=3,sg=0,st=ok:1.5
              send: 5-5-0-0 s=255,c=3,t=6,pt=1,l=1,sg=0,st=ok:0
              repeater started, id=5, parent=0, distance=1
              send: 5-5-0-0 s=55,c=0,t=3,pt=0,l=0,sg=0,st=ok:
              send: 5-5-0-0 s=55,c=1,t=2,pt=2,l=2,sg=0,st=ok:1

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

                Ok, What does the Node(55) log look like now then?

                1 Reply Last reply
                0
                • Y Offline
                  Y Offline
                  yury
                  wrote on last edited by
                  #9

                  55 log looks llike this:

                  send: 55-55-5-0 s=255,c=0,t=17,pt=0,l=3,sg=0,st=ok:1.5
                  send: 55-55-5-0 s=255,c=3,t=6,pt=1,l=1,sg=0,st=ok:5
                  sensor started, id=55, parent=5, distance=1
                  send: 55-55-5-0 s=255,c=3,t=11,pt=0,l=5,sg=0,st=ok:Relay
                  send: 55-55-5-0 s=255,c=3,t=12,pt=0,l=3,sg=0,st=ok:1.0
                  send: 55-55-5-0 s=55,c=0,t=3,pt=0,l=0,sg=0,st=ok:

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

                    Ok. Are you sure the repeater log above is correct? We can we that node 55 successfully sends its messages to it.

                    1 Reply Last reply
                    0
                    • Y Offline
                      Y Offline
                      yury
                      wrote on last edited by yury
                      #11

                      Hek, you are the best!

                      I plug all three things into my laptop to be able to see all logs and actuator (55) appeared in the serial gateway log

                      0;0;3;0;9;gateway started, id=0, parent=0, distance=0
                      0;0;3;0;14;Gateway startup complete.
                      0;0;3;0;9;read: 5-5-0 s=255,c=0,t=18,pt=0,l=3,sg=0:1.5
                      5;255;0;0;18;1.5
                      0;0;3;0;9;read: 5-5-0 s=255,c=3,t=6,pt=1,l=1,sg=0:0
                      5;255;3;0;6;0
                      0;0;3;0;9;read: 55-5-0 s=255,c=0,t=17,pt=0,l=3,sg=0:1.5
                      55;255;0;0;17;1.5
                      0;0;3;0;9;read: 55-5-0 s=255,c=3,t=6,pt=1,l=1,sg=0:5
                      55;255;3;0;6;5
                      0;0;3;0;9;read: 5-5-0 s=55,c=0,t=3,pt=0,l=0,sg=0:
                      5;55;0;0;3;
                      0;0;3;0;9;read: 5-5-0 s=55,c=1,t=2,pt=2,l=2,sg=0:1
                      5;55;1;0;2;1
                      0;0;3;0;9;read: 55-5-0 s=255,c=3,t=11,pt=0,l=5,sg=0:Relay
                      55;255;3;0;11;Relay
                      0;0;3;0;9;read: 55-5-0 s=255,c=3,t=12,pt=0,l=3,sg=0:1.0
                      55;255;3;0;12;1.0
                      0;0;3;0;9;read: 55-5-0 s=55,c=0,t=3,pt=0,l=0,sg=0:
                      55;55;0;0;3;

                      repeater (5) log also showing it
                      send: 5-5-0-0 s=255,c=0,t=18,pt=0,l=3,sg=0,st=ok:1.5
                      send: 5-5-0-0 s=255,c=3,t=6,pt=1,l=1,sg=0,st=ok:0
                      repeater started, id=5, parent=0, distance=1
                      send: 5-5-0-0 s=55,c=0,t=3,pt=0,l=0,sg=0,st=ok:
                      send: 5-5-0-0 s=55,c=1,t=2,pt=2,l=2,sg=0,st=ok:1
                      read: 55-55-0 s=255,c=0,t=17,pt=0,l=3,sg=0:1.5
                      send: 55-5-0-0 s=255,c=0,t=17,pt=0,l=3,sg=0,st=ok:1.5
                      read: 55-55-0 s=255,c=3,t=6,pt=1,l=1,sg=0:5
                      send: 55-5-0-0 s=255,c=3,t=6,pt=1,l=1,sg=0,st=ok:5
                      read: 55-55-0 s=255,c=3,t=11,pt=0,l=5,sg=0:Relay
                      send: 55-5-0-0 s=255,c=3,t=11,pt=0,l=5,sg=0,st=ok:Relay
                      read: 55-55-0 s=255,c=3,t=12,pt=0,l=3,sg=0:1.0
                      send: 55-5-0-0 s=255,c=3,t=12,pt=0,l=3,sg=0,st=ok:1.0
                      read: 55-55-0 s=55,c=0,t=3,pt=0,l=0,sg=0:
                      send: 55-5-0-0 s=55,c=0,t=3,pt=0,l=0,sg=0,st=ok:
                      send: 5-5-0-0 s=55,c=1,t=2,pt=2,l=2,sg=0,st=ok:0
                      send: 5-5-0-0 s=55,c=1,t=2,pt=2,l=2,sg=0,st=ok:1

                      understand something wrong was with external power supply.

                      the only thing left, actuator(55) not receiving from repeater(5) which is the switch sensor, messages. These two entries

                      send: 5-5-0-0 s=55,c=1,t=2,pt=2,l=2,sg=0,st=ok:0
                      send: 5-5-0-0 s=55,c=1,t=2,pt=2,l=2,sg=0,st=ok:1

                      not getting to actuator...

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

                        There was a bug fix a couple of days ago fixing problem when routing from repeater to a node. Please make sure that you run the latest library code.

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


                        20

                        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