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. OTA FW on Repeater Nodes???

OTA FW on Repeater Nodes???

Scheduled Pinned Locked Moved Troubleshooting
18 Posts 3 Posters 5.5k Views 5 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.
  • rvendrameR Offline
    rvendrameR Offline
    rvendrame
    Hero Member
    wrote on last edited by
    #3

    @Oitzu , sure,

    It started like that:

    10/27/2015 14:31:18 INFO FW "myMultiSensor" assigned to node 9
    10/27/2015 14:31:21 TX 9;0;3;0;13;0
    10/27/2015 14:31:21 RX 0;0;3;0;9;send: 0-0-9-9 s=0,c=3,t=13,pt=0,l=1,sg=0,st=ok:0
    10/27/2015 14:31:21 RX 0;0;3;0;9;read: 9-9-0 s=255,c=0,t=18,pt=0,l=3,sg=0:1.5
    10/27/2015 14:31:21 CHILD New child discovered, node id=9, child id=internal

    ... and then gets into the endless loop:

    10/27/2015 14:31:22 DEBUG Update child id=255, type=ARDUINO_RELAY
    10/27/2015 14:31:22 RX 9;255;0;0;18;1.5
    10/27/2015 14:31:22 RX 0;0;3;0;9;read: 9-9-0 s=255,c=0,t=18,pt=0,l=3,sg=0:1.5
    10/27/2015 14:31:22 DEBUG Update child id=255, type=ARDUINO_RELAY
    10/27/2015 14:31:22 RX 9;255;0;0;18;1.5
    10/27/2015 14:31:22 RX 0;0;3;0;9;read: 9-9-0 s=255,c=0,t=18,pt=0,l=3,sg=0:1.5
    10/27/2015 14:31:22 DEBUG Update child id=255, type=ARDUINO_RELAY

    And here's my sketch (the one current in node is a bit different, but not significant):

    #include <MySensor.h>
    #include <SPI.h>
    #include <DHT.h>
    #include <IRLib.h>
     
    //  IO PINS
    #define MOTION 4  // The digital input you attached your motion sensor. 
    #define IR_LED 3  // Infrared LED output 
    #define DHT11  2  // Temp/Hum sensor 
    #define LDR    A0 // LDR (Light sensor) - Pull-down of 10K to GND
    
    //  Interval between reads (Temp/Hum/Light) 
    #define INTERVAL  720000  // 720s = 12min 
    
    MySensor gw;
    DHT dht ;
    IRsend ir;
    
    // Initialize messages
    MyMessage msg_motion( 1, V_TRIPPED );
    MyMessage msg_Hum( 2, V_HUM );
    MyMessage msg_Temp( 3, V_TEMP) ;
    MyMessage msg_light( 5, V_LIGHT_LEVEL ); 
     
    boolean metric = true;
    boolean lastMotion = false;
    float   temp , hum ; 
    int     lightLevel ; 
    
    unsigned long lastRun ; 
    
    void setup()
    {
      Serial.begin(115200);
      Serial.println("Device Init..."); 
      
      // Init sensors  
      pinMode( MOTION , INPUT );
      dht.setup( DHT11 ); 
    
      // Init mySensors
      Serial.println("mySensor start..."); 
      gw.begin( incomingMessage );  //  , AUTO , true );  // Repeater mode  
      
      // Send the Sketch Version Information to the Gateway
      gw.sendSketchInfo("myMultiSensor", "1.2");
    
      // Register all sensors to gw (they will be created as child devices)
      gw.present( 1 , S_MOTION ); 
      gw.present( 2 , S_HUM );
      gw.present( 3 , S_TEMP );
      gw.present( 4 , S_SCENE_CONTROLLER ); 
      gw.present( 5 , S_LIGHT_LEVEL ); 
    
      metric = gw.getConfig().isMetric;
      lastRun = 0;
      
    }
    
    void loop()
    {
    
      // mySensors Radio handling
      gw.process(); 
      
      // Temp/Hum
      if ( lastRun == 0 || ( millis() - lastRun ) > INTERVAL )  { 
    
        ////// Check Temperature
        delay(dht.getMinimumSamplingPeriod());
    
        temp = dht.getTemperature();
        
        if (!metric) temp = dht.toFahrenheit(temp);
        
        gw.send(msg_Temp.set( temp , 0 ) , true );
        Serial.print("T: ");
        Serial.println( temp , 0 );
        
        ////// Check Humidty 
        delay(dht.getMinimumSamplingPeriod());
    
        hum  = dht.getHumidity();
        
        gw.send(msg_Hum.set( hum , 0 ) , true );
        Serial.print("H: ");
        Serial.println( hum , 1 );
      
        if (isnan( temp ) || isnan( hum ) ) 
        {
           Serial.println("Failed to read from DHT");
        } 
    
        ////// Check Light Level 
        lightLevel = map( analogRead( LDR ) , 0 , 1023 , 0, 100 ) ; 
        gw.send( msg_light.set( lightLevel ) , true ); 
        Serial.print("L: "); 
        Serial.println( lightLevel ); 
        
        lastRun = millis();
    
      }
    
      /////     Motion
      if ( digitalRead( MOTION ) != lastMotion ) { 
        gw.send(msg_motion.set( lastMotion? "0" : "1" ) , true ); // Send tripped value to gw
        Serial.print("M: "); 
        Serial.println( lastMotion? "0" : "1" );  
        lastMotion = !lastMotion; 
      } 
    
    
    }
    
    ///////////// Scene controller (IR) 
    void incomingMessage( const MyMessage &message) {
      
      // SCENE ON   (Note: SCENE OFF is not supported by compactwall) 
      if ( message.type == V_SCENE_ON ) {
        
        //  Retrieve the scene number
        int scene = atoi( message.data );  
     
        Serial.print( "Scene " );
        Serial.print( scene ); 
        Serial.println( " ON" ) ; 
        
        // Send comand to scenario compactwall module via Infrared LED
        long ir_command = 0x1380 + scene; 
        ir.send( RC5 , ir_command , 32 );
     
        }
        
        
    }
    
    

    Thanks a lot!

    Home Assistant / Vera Plus UI7
    ESP8266 GW + mySensors 2.3.2
    Alexa / Google Home

    1 Reply Last reply
    0
    • OitzuO Offline
      OitzuO Offline
      Oitzu
      wrote on last edited by
      #4

      I really can not see why the node keeps rebooting over and over.
      Maybe enable Serial debug directly on the node?

      1 Reply Last reply
      0
      • rvendrameR Offline
        rvendrameR Offline
        rvendrame
        Hero Member
        wrote on last edited by
        #5

        @Oitzu said:

        I really can not see why the node keeps rebooting over and over.
        Maybe enable Serial debug directly on the node?

        That will be my last try, after I return from a trip (in two weeks). Thanks anyway!

        Home Assistant / Vera Plus UI7
        ESP8266 GW + mySensors 2.3.2
        Alexa / Google Home

        1 Reply Last reply
        0
        • OitzuO Offline
          OitzuO Offline
          Oitzu
          wrote on last edited by
          #6

          After reading the code i maybe have an theorie about your issue.
          The reboot is done with a watchdog timer. The watchdog timer will not unset itself, but is unset after the reboot.
          Using OTA and Relay will probably that much startup time that the watchdog timer will trigger again before it is unset.

          1 Reply Last reply
          0
          • OitzuO Offline
            OitzuO Offline
            Oitzu
            wrote on last edited by
            #7

            If you still have access to the node you could try to add wdt_reset(); in the beginning of the setup function.

            rvendrameR 1 Reply Last reply
            0
            • OitzuO Oitzu

              If you still have access to the node you could try to add wdt_reset(); in the beginning of the setup function.

              rvendrameR Offline
              rvendrameR Offline
              rvendrame
              Hero Member
              wrote on last edited by
              #8

              @Oitzu , sure I will try it, but only in two weeks. Thanks for the hint!

              Home Assistant / Vera Plus UI7
              ESP8266 GW + mySensors 2.3.2
              Alexa / Google Home

              1 Reply Last reply
              0
              • rvendrameR rvendrame

                Hello everyone,

                I recently enabled repeater function in one of my nodes, and now when I try to update its firmware OTA with MYSController, instead the regular FW update messages, I get thousands of this:

                Captura de tela 2015-10-27 14.02.02.png

                Captura de tela 2015-10-27 14.05.58.png

                The GW is on latest 1.5 master branch version.

                The repeater node is also on 1.5, but a bit lower (I installed it ~4 month ago I think)
                Captura de tela 2015-10-27 14.07.14.png

                I'm using latest 0.1.2.282 MYSController.

                Any ideia about what can be wrong? I rebooted the node after 20k+ messages, it started normally and is responding fine, tough it still not up-to-date.

                I'm sure I was able to OTA-update it before switching repeater ON...

                Help!

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

                @rvendrame said:

                Hello everyone,

                I recently enabled repeater function in one of my nodes, and now when I try to update its firmware OTA with MYSController, instead the regular FW update messages, I get thousands of this:

                Which board / bootloader? Sensebender or regular Arduino with MYSBootloader?

                rvendrameR 1 Reply Last reply
                0
                • tekkaT tekka

                  @rvendrame said:

                  Hello everyone,

                  I recently enabled repeater function in one of my nodes, and now when I try to update its firmware OTA with MYSController, instead the regular FW update messages, I get thousands of this:

                  Which board / bootloader? Sensebender or regular Arduino with MYSBootloader?

                  rvendrameR Offline
                  rvendrameR Offline
                  rvendrame
                  Hero Member
                  wrote on last edited by
                  #10

                  @tekka , regular Arduino (pro-mini clone) with MYSBootloader.

                  Home Assistant / Vera Plus UI7
                  ESP8266 GW + mySensors 2.3.2
                  Alexa / Google Home

                  tekkaT 1 Reply Last reply
                  0
                  • rvendrameR rvendrame

                    @tekka , regular Arduino (pro-mini clone) with MYSBootloader.

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

                    @rvendrame can you upload the MYSController log?

                    rvendrameR 1 Reply Last reply
                    0
                    • tekkaT tekka

                      @rvendrame can you upload the MYSController log?

                      rvendrameR Offline
                      rvendrameR Offline
                      rvendrame
                      Hero Member
                      wrote on last edited by rvendrame
                      #12

                      @tekka , the begin of log is like that:

                      10/27/2015 14:31:18 INFO FW "myMultiSensor" assigned to node 9
                      10/27/2015 14:31:21 TX 9;0;3;0;13;0
                      10/27/2015 14:31:21 RX 0;0;3;0;9;send: 0-0-9-9 s=0,c=3,t=13,pt=0,l=1,sg=0,st=ok:0
                      10/27/2015 14:31:21 RX 0;0;3;0;9;read: 9-9-0 s=255,c=0,t=18,pt=0,l=3,sg=0:1.5
                      10/27/2015 14:31:21 CHILD New child discovered, node id=9, child id=internal
                      10/27/2015 14:31:22 DEBUG Update child id=255, type=ARDUINO_RELAY
                      10/27/2015 14:31:22 RX 9;255;0;0;18;1.5
                      10/27/2015 14:31:22 RX 0;0;3;0;9;read: 9-9-0 s=255,c=0,t=18,pt=0,l=3,sg=0:1.5

                      ... and from here on, thousands of repetitions of same messages. It only stops by turning off the power of the node.

                      10/27/2015 14:31:22 DEBUG Update child id=255, type=ARDUINO_RELAY
                      10/27/2015 14:31:22 RX 9;255;0;0;18;1.5
                      10/27/2015 14:31:22 RX 0;0;3;0;9;read: 9-9-0 s=255,c=0,t=18,pt=0,l=3,sg=0:1.5
                      10/27/2015 14:31:22 DEBUG Update child id=255, type=ARDUINO_RELAY
                      10/27/2015 14:31:18 INFO FW "myMultiSensor" assigned to node 9
                      10/27/2015 14:31:21 TX 9;0;3;0;13;0
                      10/27/2015 14:31:21 RX 0;0;3;0;9;send: 0-0-9-9 s=0,c=3,t=13,pt=0,l=1,sg=0,st=ok:0
                      10/27/2015 14:31:21 RX 0;0;3;0;9;read: 9-9-0 s=255,c=0,t=18,pt=0,l=3,sg=0:1.5
                      10/27/2015 14:31:21 CHILD New child discovered, node id=9, child id=internal
                      10/27/2015 14:31:22 DEBUG Update child id=255, type=ARDUINO_RELAY
                      10/27/2015 14:31:22 RX 9;255;0;0;18;1.5
                      10/27/2015 14:31:22 RX 0;0;3;0;9;read: 9-9-0 s=255,c=0,t=18,pt=0,l=3,sg=0:1.5
                      10/27/2015 14:31:22 DEBUG Update child id=255, type=ARDUINO_RELAY
                      10/27/2015 14:31:22 RX 9;255;0;0;18;1.5
                      10/27/2015 14:31:22 RX 0;0;3;0;9;read: 9-9-0 s=255,c=0,t=18,pt=0,l=3,sg=0:1.5
                      10/27/2015 14:31:22 DEBUG Update child id=255, type=ARDUINO_RELAY

                      Home Assistant / Vera Plus UI7
                      ESP8266 GW + mySensors 2.3.2
                      Alexa / Google Home

                      tekkaT 1 Reply Last reply
                      0
                      • rvendrameR rvendrame

                        @tekka , the begin of log is like that:

                        10/27/2015 14:31:18 INFO FW "myMultiSensor" assigned to node 9
                        10/27/2015 14:31:21 TX 9;0;3;0;13;0
                        10/27/2015 14:31:21 RX 0;0;3;0;9;send: 0-0-9-9 s=0,c=3,t=13,pt=0,l=1,sg=0,st=ok:0
                        10/27/2015 14:31:21 RX 0;0;3;0;9;read: 9-9-0 s=255,c=0,t=18,pt=0,l=3,sg=0:1.5
                        10/27/2015 14:31:21 CHILD New child discovered, node id=9, child id=internal
                        10/27/2015 14:31:22 DEBUG Update child id=255, type=ARDUINO_RELAY
                        10/27/2015 14:31:22 RX 9;255;0;0;18;1.5
                        10/27/2015 14:31:22 RX 0;0;3;0;9;read: 9-9-0 s=255,c=0,t=18,pt=0,l=3,sg=0:1.5

                        ... and from here on, thousands of repetitions of same messages. It only stops by turning off the power of the node.

                        10/27/2015 14:31:22 DEBUG Update child id=255, type=ARDUINO_RELAY
                        10/27/2015 14:31:22 RX 9;255;0;0;18;1.5
                        10/27/2015 14:31:22 RX 0;0;3;0;9;read: 9-9-0 s=255,c=0,t=18,pt=0,l=3,sg=0:1.5
                        10/27/2015 14:31:22 DEBUG Update child id=255, type=ARDUINO_RELAY
                        10/27/2015 14:31:18 INFO FW "myMultiSensor" assigned to node 9
                        10/27/2015 14:31:21 TX 9;0;3;0;13;0
                        10/27/2015 14:31:21 RX 0;0;3;0;9;send: 0-0-9-9 s=0,c=3,t=13,pt=0,l=1,sg=0,st=ok:0
                        10/27/2015 14:31:21 RX 0;0;3;0;9;read: 9-9-0 s=255,c=0,t=18,pt=0,l=3,sg=0:1.5
                        10/27/2015 14:31:21 CHILD New child discovered, node id=9, child id=internal
                        10/27/2015 14:31:22 DEBUG Update child id=255, type=ARDUINO_RELAY
                        10/27/2015 14:31:22 RX 9;255;0;0;18;1.5
                        10/27/2015 14:31:22 RX 0;0;3;0;9;read: 9-9-0 s=255,c=0,t=18,pt=0,l=3,sg=0:1.5
                        10/27/2015 14:31:22 DEBUG Update child id=255, type=ARDUINO_RELAY
                        10/27/2015 14:31:22 RX 9;255;0;0;18;1.5
                        10/27/2015 14:31:22 RX 0;0;3;0;9;read: 9-9-0 s=255,c=0,t=18,pt=0,l=3,sg=0:1.5
                        10/27/2015 14:31:22 DEBUG Update child id=255, type=ARDUINO_RELAY

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

                        @rvendrame the node does not seem to reboot upon initiation of the OTA update (bootloader signal is missing). Can you post the rx log when you power-cycle the node?

                        1 Reply Last reply
                        0
                        • rvendrameR Offline
                          rvendrameR Offline
                          rvendrame
                          Hero Member
                          wrote on last edited by
                          #14

                          @tekka , I'm currently traveling so only in two weeks from now. I posted the 'Info' from the node at first post, maybe it helps some how? Bootloader is 'N/A' there, could be something in there?

                          Captura de tela 2015-10-27 14.07.14.png

                          Home Assistant / Vera Plus UI7
                          ESP8266 GW + mySensors 2.3.2
                          Alexa / Google Home

                          tekkaT 1 Reply Last reply
                          0
                          • rvendrameR rvendrame

                            @tekka , I'm currently traveling so only in two weeks from now. I posted the 'Info' from the node at first post, maybe it helps some how? Bootloader is 'N/A' there, could be something in there?

                            Captura de tela 2015-10-27 14.07.14.png

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

                            @rvendrame ok, let's wait until your return.

                            1 Reply Last reply
                            0
                            • rvendrameR Offline
                              rvendrameR Offline
                              rvendrame
                              Hero Member
                              wrote on last edited by
                              #16

                              @tekka , @Oitzu , I finally managed to have some time for this.

                              This is the serial monitor output from the node, as soon as I request the FW update via MYSController (it is a endless loop):

                              read: 0-0-9 s=0,c=3,t=13,pt=0,l=1,sg=0:0
                              Device Init...
                              ��Sensor start...
                              send: 9-9-0-0 s=255,c=0,t=18,pt=0,l=3,sg=0,st=ok:1.5
                              Device Init...
                              ��Sensor start...
                              send: 9-9-0-0 s=255,c=0,t=18,pt=0,l=3,sg=0,st=ok:1.5
                              Device Init...
                              

                              And I tried to upload the new FW via FTDI adapter (in order to test with the repeater function off), however I got an error from avrdude (maybe my pro mini is broken somehow?)

                              avrdude: Version 6.0.1, compiled on Apr 14 2015 at 16:30:25
                                       Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
                                       Copyright (c) 2007-2009 Joerg Wunsch
                              
                                       System wide configuration file is "/Applications/Arduino.app/Contents/Java/hardware/tools/avr/etc/avrdude.conf"
                                       User configuration file is "/Users/i007897/.avrduderc"
                                       User configuration file does not exist or is not a regular file, skipping
                              
                                       Using Port                    : /dev/cu.usbserial-A50285BI
                                       Using Programmer              : arduino
                                       Overriding Baud Rate          : 57600
                              avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0xbe
                              avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0xbe
                              avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0xf2
                              avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0xe6
                              avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x52
                              avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x9f
                              avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0xe5
                              avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0xd2
                              avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x43
                              avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0xd7
                              
                              avrdude done.  Thank you.
                              

                              Thanks!

                              Home Assistant / Vera Plus UI7
                              ESP8266 GW + mySensors 2.3.2
                              Alexa / Google Home

                              tekkaT 1 Reply Last reply
                              0
                              • OitzuO Offline
                                OitzuO Offline
                                Oitzu
                                wrote on last edited by
                                #17

                                @rvendrame the mysbootloader doesn't support serial upload.
                                Use an ISP to upload a new sketch.

                                1 Reply Last reply
                                0
                                • rvendrameR rvendrame

                                  @tekka , @Oitzu , I finally managed to have some time for this.

                                  This is the serial monitor output from the node, as soon as I request the FW update via MYSController (it is a endless loop):

                                  read: 0-0-9 s=0,c=3,t=13,pt=0,l=1,sg=0:0
                                  Device Init...
                                  ��Sensor start...
                                  send: 9-9-0-0 s=255,c=0,t=18,pt=0,l=3,sg=0,st=ok:1.5
                                  Device Init...
                                  ��Sensor start...
                                  send: 9-9-0-0 s=255,c=0,t=18,pt=0,l=3,sg=0,st=ok:1.5
                                  Device Init...
                                  

                                  And I tried to upload the new FW via FTDI adapter (in order to test with the repeater function off), however I got an error from avrdude (maybe my pro mini is broken somehow?)

                                  avrdude: Version 6.0.1, compiled on Apr 14 2015 at 16:30:25
                                           Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
                                           Copyright (c) 2007-2009 Joerg Wunsch
                                  
                                           System wide configuration file is "/Applications/Arduino.app/Contents/Java/hardware/tools/avr/etc/avrdude.conf"
                                           User configuration file is "/Users/i007897/.avrduderc"
                                           User configuration file does not exist or is not a regular file, skipping
                                  
                                           Using Port                    : /dev/cu.usbserial-A50285BI
                                           Using Programmer              : arduino
                                           Overriding Baud Rate          : 57600
                                  avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0xbe
                                  avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0xbe
                                  avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0xf2
                                  avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0xe6
                                  avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x52
                                  avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x9f
                                  avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0xe5
                                  avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0xd2
                                  avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x43
                                  avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0xd7
                                  
                                  avrdude done.  Thank you.
                                  

                                  Thanks!

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

                                  @rvendrame This issue does not seem to be related to MYSBootloader since the log does not show bootloader messages. However, your node seems re-initializing (but not rebooting) over and over. Try changing the hardware (MCU & nRF) and update to the latest (non-dev branch) framework for further testing.

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


                                  27

                                  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