Navigation

    • Register
    • Login
    • OpenHardware.io
    • Categories
    • Recent
    • Tags
    • Popular
    1. Home
    2. archiijs
    3. Posts
    • Profile
    • Following
    • Followers
    • Topics
    • Posts
    • Best
    • Groups

    Posts made by archiijs

    • RE: Question about MySensors features

      When I started this was my intent as well. Not exactly 15 but 6-10 for some nodes. It starts to get hard and messy really fast. I was abble to get some basic stuff combined but nothing more. But that's because I am not so good with programming.
      So for me I ended up going mostly to esphome and tasmota as almost all my sensors are powered by mains and that matches my knowledge more. But that all depends on your skills mostly.

      posted in My Project
      archiijs
      archiijs
    • RE: MySensor on Hass.io - can't get it work

      @maty said in MySensor on Hass.io - can't get it work:

      /config/mysensor

      Default path seems to be generic and not really useful, at the beginning I had problems with understanding this as well. Take a look at the full location where your home assistant configuration files are located, this could be a good location. and add "mysensors.json" at the end (this file will be created and you can name it anything.yson).
      like mine is "/root/.homeassistant/mysensors.json"

      posted in Home Assistant
      archiijs
      archiijs
    • RE: MySensor on Hass.io - can't get it work

      @maty said in MySensor on Hass.io - can't get it work:

      e code isn't mine (made by my friend), I've been using it with Domoticz for almost a year, and it worked perfectly. But recently i decided to give a try to Hass.io, and I really like it. But I still have a problem with lights connected via MySensors (Arduino Mega conected to Rpi via USB), can't get it work with Hass.io. Config part in configuration.yaml look

      Hi @MaTy
      I have no experience with hass.io, but some comments arise.

      1. Your configuration.yaml file path seems to be incorrect. You have to edit this to real path, something like "/user/.homeassistant/mysensors.json" or whatever. The path should exist, file there will be created if it is correct and writeable.
      2. You should check if your USB port is really /dev/ttyUSB0 usually command "lsusb" is used, but I'm not sure how to do this in hass.io
      3. Also, check if USB port speed is the same as in mysensors gateway and your configuration. 38400 seems different than the standard what usually is 115200 if I'm not mistaken.
        EDIT: Ok, baud seems to match, so that should not be an issue.
      posted in Home Assistant
      archiijs
      archiijs
    • RE: Idiot newbie question

      @Steve-Hadley said in Idiot newbie question:

      f I build a node using another nodemcu

      Hi @Steve-Hadley as @gohan said In your case (when using esp8266 based boards) your gateways are the nodes at the same time because they connect to the controller by themselves. Just edit your code to accommodate your sensor and you got easily deployable node anywhere where in your wi-fi coverage zone without additional gateways.

      posted in General Discussion
      archiijs
      archiijs
    • RE: mysensors.json file structure

      Thanks for your help, could not wait and already downloaded portabble verssion on my work pc to test this thing out, seems to work as expected, thanks again for your recomendation.
      0_1510905202811_atom.PNG

      posted in Home Assistant
      archiijs
      archiijs
    • RE: mysensors.json file structure

      Sorry, I meant to say ftp/sftp... Its early morning for me 😕
      I will definitely check atom after work, seems to be an answer to a lot of my problems, thanks for mentioning it.

      posted in Home Assistant
      archiijs
      archiijs
    • RE: mysensors.json file structure

      Hi all.
      @maghac Can you please share what plugin do You use? I already use np++ but have not thought of that, thanks.

      @martinhjelmare Can atom editor can connect to my home assistant files through ssh without using samba shares as np++ can with plugins? If so, I should check that.

      Otherwise, no worries about rushing this implementation and thanks for your work.

      posted in Home Assistant
      archiijs
      archiijs
    • RE: mysensors.json file structure

      Hi @sindrome73 by instructions here https://home-assistant.io/components/mysensors/ you chose path to .json file (and it is automatically created after that) by adding path to it to your configuration.yaml

      posted in Home Assistant
      archiijs
      archiijs
    • RE: mysensors.json file structure

      Well, my 10" laptop also makes hard to work with lengthy text. I guess that in normal size monitor this is not as much a problem. 😬
      Let's see what @martinhjelmare has to say.

      posted in Home Assistant
      archiijs
      archiijs
    • RE: mysensors.json file structure

      @Richard-van-der-Plas said in mysensors.json file structure:

      Isn't it possible to structure the file with newlines idents etc ?
      You can do it manually, but i assume when a new node is added the structure is gone again.

      Agreed. Needed to edit couple times and messed up once or twice. I usually copy the file contents to online .json file checker that formats file to more understandable and then I can figure out where to make changes.

      posted in Home Assistant
      archiijs
      archiijs
    • RE: 230V AC to digital interface

      Hi, I am interested in this as well, I got the old wood boiler and all its smarts is by 220v and thermostats and relays. I would like to interface those signals with Arduino for displaying some of the boilers states and then maybe automate some things afterward.

      Til now I thought about a lot of 5v chargers, but this module seems to be more compact.

      posted in Hardware
      archiijs
      archiijs
    • RE: PIzeroW + RFM69HW + arduino node connection problem

      The modules to me look like HW variants, so this is no problem (and You have already verified this with your sketch), sadly I can not help with RPI ZW.

      posted in Troubleshooting
      archiijs
      archiijs
    • RE: PIzeroW + RFM69HW + arduino node connection problem

      @gohan said in PIzeroW + RFM69HW + arduino node connection problem:

      they most likely are hw. If want to be sure you need to check the marking on the chip

      A picture of module should settle if it is W or HW

      posted in Troubleshooting
      archiijs
      archiijs
    • RE: Arudino Mega hangs when serial GW is down

      @Boots33 said in Arudino Mega hangs when serial GW is down:

      de should still attempt to connect even after it has moved on.

      I have similar experience, only restart allows connecting the node to the gateway. I have not done any testing, but I found it out after my wife unplugged gateway couple of times as it is still powered by AC USB charger in power strip.

      posted in Development
      archiijs
      archiijs
    • RE: Relay on when starting up

      @rejoe2 said in Relay on when starting up:

      really open up a new one, you will never know whether you can reach all of your nodes reliably.

      Thanks for ideas, I will start to tackle them when I get some free time. Thanks all for input.

      posted in General Discussion
      archiijs
      archiijs
    • RE: Relay on when starting up

      @rejoe2 said in Relay on when starting up:

      he change only assures it is done when there is no controller

      Interesting thought.
      Yes, this is not the cause of the problem, but I think that it is better to move the code for turning the relay off to the beginning to improve overall experience. You know, every small change sums up.
      And my router take time to boot up

      posted in General Discussion
      archiijs
      archiijs
    • RE: Relay on when starting up

      Thanks for your input and this is also a valid point. I recently discovered this when I started to power some small sensors from arduinos gpio. and found that indeed Sensors stays off until the connection is made.
      I should check and implement this to all my nodes.

      posted in General Discussion
      archiijs
      archiijs
    • RE: Relay on when starting up

      @petewill said in Relay on when starting up:

      a picture of the wiring? My relays have two ways to connect- one ke

      Sorry for my long delay and thanks for your answer, seems like this should be the problem, I did not think about that.

      Right now, if I remember correctly lights are connected with relays normally closed contacts, and to be honest, I do not remember why I did that... It should be because of software before mysensors and some problems with that.

      As I get a lot of power cuts in this time of year nodes reboots often, so if this happens when I'm at work they stay at "ON" until I come home and switch them off.

      posted in General Discussion
      archiijs
      archiijs
    • Relay on when starting up

      Hi there.
      First of all sorry for this topick as I think there already is something similar, but I just can not find one.

      The problem is that two of three of my ESP nodes starts up with a relay in ON position so lights go on as, let's say, power appears. This is starting to be problem because now winter is coming and quite often I go home from work and those two lights are (and have been for the majority of the day) ON.

      I do have this in my "setup"

         // Then set relay pins in output mode
        pinMode(RELAY_PIN, OUTPUT);
        // Make sure relays and LED are off when starting up
        digitalWrite(RELAY_PIN, RELAY_OFF);
      

      but it does not change anything. The difference from light that is not on is that those two lights have relays with turns on with LOW signal so I have this at start

      #define RELAY_ON                    0
      #define RELAY_OFF                   1
      

      The Home Assistant and openhab correctly reports ON and OFF states and all else is good.
      Thanks in advance.

      posted in General Discussion
      archiijs
      archiijs
    • RE: RFM69CW Gateway and Nodes are not working with Api newer then 2.0.0

      Hi, not sure if @Floca get his nodes working, but for me, the problem got fixed with this

      #define MY_RF69_IRQ_NUM MY_RF69_IRQ_PIN
      

      as mentioned by @mfalkvidd Thanks!

      posted in Bug Reports
      archiijs
      archiijs
    • RE: RFM69CW Gateway and Nodes are not working with Api newer then 2.0.0

      Yes, sorry for this, I will stand back til @Floca gets his problem (and maybe mine) figured out and then jump in to avoid confusion, sorry again.

      posted in Bug Reports
      archiijs
      archiijs
    • RE: RFM69CW Gateway and Nodes are not working with Api newer then 2.0.0

      Hi, I will look closely this, because I would really like to get RFM network going for my outide, not with NRF reachable sensors.

      In my definition, I added

      #define MY_RFM69_FREQUENCY RF69_433MHZ // Define for frequency setting. Needed if you're radio module isn't 868Mhz (868Mhz is default in lib)
      

      and

      #define MY_IS_RFM69HW // Mandatory if you radio module is the high power version (RFM69HW and RFM69HCW), Comment it if it's not the case
      

      cause my radio was like 4th from left in the picture below. I was using antenna bundled with radios (173mm) stranded but changed to solid but with the same length.

      alt text

      posted in Bug Reports
      archiijs
      archiijs
    • RE: RFM69CW Gateway and Nodes are not working with Api newer then 2.0.0

      Well, that would explain why some time back I could not get RFM network to work. After a week of reading and changing sketches, and trying to figure it out I give up (got the same "No Replay").
      Not tried with an older version, but got one instance when gateway found the node and then immediately hanged, after that nothing.
      I guess that I should check again with an older version then.

      posted in Bug Reports
      archiijs
      archiijs
    • RE: [SOLVED] Too frequent updates form DHT

      Hi @mfalkvidd and others.

      Yesterday after work I tried to get my head around code suggestions but somehow I cold not make them work so I did some google search and after some time I find something that I implemented in my nodes for testing.
      Interestingly it works as expected for two of my nodes, but one still keeps jumping around, not that often, but that's still strange, I will compare code to other two to see what I've done wrong there.
      So I used Hysteresis approach by doing this.

      #define HYSTERISIS    0.5        // Hysteresis for sensor 
      
      ...
      
        float temperature = dht.getTemperature();
        if (isnan(temperature)) {
          Serial.println("Failed reading temperature from DHT!");
        } else if (abs(temperature - lastTemp ) > HYSTERISIS) {
          // Only send temperature if it changed since the last measurement or if we didn't send an update for n times
          lastTemp = temperature;
          if (!metric) {
            temperature = dht.toFahrenheit(temperature);
          }
      
      

      And the same for humidity.

      Still not sure that this will work as expected in long run, but will see.
      But now it is way better than before. Thanks.

      posted in General Discussion
      archiijs
      archiijs
    • RE: [SOLVED] Too frequent updates form DHT

      @mfalkvidd Superb, I will study your suggestions and report back. Thanks again for your patience with me.

      posted in General Discussion
      archiijs
      archiijs
    • RE: [SOLVED] Too frequent updates form DHT

      @mfalkvidd That sounds about right. But sadly I can not find any examples of such sensors and I'm not sure if I could figure this out by myself 😕

      posted in General Discussion
      archiijs
      archiijs
    • RE: [SOLVED] Too frequent updates form DHT

      @mfalkvidd Thanks again for your response.
      I just changed else if functions as you suggested and uncommented wait/sleep(update_interval);
      Actually, I think that I had code like this couple days before...

      The result is kind of what is needed, I get new values as they change, BUT they change all the time. Like my temperature just changes true 21.7 to 21.6 to 21.7 to 21.8 an ower and ower again nonstop, same with humidity.

      EDIT: Just switched out DHT sensor for anorther and nothing has changed.

      posted in General Discussion
      archiijs
      archiijs
    • RE: [SOLVED] Too frequent updates form DHT

      @mfalkvidd
      Hi again.
      I got small problem that emerged after this change. When I try to use my wall switches nothing happens, I still can turn on/off all lights from controller without problems, only localy attached switches do not work and that is not an option.

      so the problem lies in this line, if I understand correctly

        // Sleep for a while to save energy
        sleep(UPDATE_INTERVAL); 
      

      if I change sleep to wait, so I'm back to the beginning now. Is there any way to fix this?

      posted in General Discussion
      archiijs
      archiijs
    • RE: [SOLVED] Too frequent updates form DHT

      @mfalkvidd said in Too frequent updates form DHT:

      wait

      That was easier than expected, thanks for your advice, seems to do the trick. Will apply this to all my nodes now and test.

      Thanks for your fast replays.

      posted in General Discussion
      archiijs
      archiijs
    • RE: [SOLVED] Too frequent updates form DHT

      @mfalkvidd said in Too frequent updates form DHT:

      because sleep is not supported on esp8266. Try using wait instead.

      Hi, and thanks for the response.
      Well, I'm not really interested in sleep, all my nodes are AC powered. Can you guide me to some example using wait, thanks in advance.

      posted in General Discussion
      archiijs
      archiijs
    • [SOLVED] Too frequent updates form DHT

      Hi.
      I just managed to convert one of my ESP nodes to mysensors, but I got some interesting problems- Temp sensor sends updates very quickly, in my controllers I can see temperature changing back and forth all the time.

      Here is my sketch. It is combination from humidity sensor example from Mysensors examples and relays with switches from Openhardware.io

      My code (you probably will notice right away that I'm no good with this, so any advice is appreciated)

      #include <ArduinoOTA.h>
      
      // Enable debug prints to serial monitor
      //#define MY_DEBUG
      
      // Use a bit lower baudrate for serial prints on ESP8266 than default in MyConfig.h
      #define MY_BAUD_RATE 9600
      
      #define MY_GATEWAY_ESP8266
      
      #define MY_ESP8266_SSID "Paltes"
      #define MY_ESP8266_PASSWORD "virus.exe"
      
      // Enable MY_IP_ADDRESS here if you want a static ip address (no DHCP)
      #define MY_IP_ADDRESS 192,168,1,53
      
      // If using static ip you need to define Gateway and Subnet address as well
      #define MY_IP_GATEWAY_ADDRESS 192,168,1,1
      #define MY_IP_SUBNET_ADDRESS 255,255,255,0
      
      // The port to keep open on node server mode
      #define MY_PORT 5003
      
      // How many clients should be able to connect to this gateway (default 1)
      #define MY_GATEWAY_MAX_CLIENTS 3
      
      #if defined(MY_USE_UDP)
      #include <WiFiUDP.h>
      #else
      #include <ESP8266WiFi.h>
      #endif
      
      #include <DHT.h>
      #include <MySensors.h>
      #include <Bounce2.h>
      
      #define MY_NODE_ID                  3
      #define MY_TRANSPORT_WAIT_READY_MS  200
      
      #define RELAY_PIN1    D1  // Arduino Digital I/O pin number for relay K1
      #define RELAY_PIN2    D2  // Arduino Digital I/O pin number for relay K2
      //#define RELAY_PIN3   // Arduino Digital I/O pin number for relay K3
      
      #define BUTTON_PIN1   D3  // Arduino Digital I/O pin for temp sensor
      #define BUTTON_PIN2   D5  // Arduino Digital I/O pin number for button relay K3
      //#define BUTTON_PIN3   // Arduino Digital I/O pin for PIR
      
      #define DHT_PIN       D4
      
      #define CHILD_ID1     5   // Id of the sensor child
      #define CHILD_ID2     6   // Id of the sensor child
      //#define CHILD_ID3   3   // Id of the sensor child
      #define CHILD_ID_TEMP 7
      #define CHILD_ID_HUM  8
      
      #define RELAY_ON      1
      #define RELAY_OFF     0
      
      #define SENSOR_TEMP_OFFSET 0
      static const uint64_t UPDATE_INTERVAL = 60000;
      static const uint8_t FORCE_UPDATE_N_READS = 100;
      
      float lastTemp;
      float lastHum;
      uint8_t nNoUpdatesTemp;
      uint8_t nNoUpdatesHum;
      boolean metric = true; 
      
      Bounce debouncer1 = Bounce();
      Bounce debouncer2 = Bounce();
      //Bounce debouncer3 = Bounce();
      
      int oldValue1 = 0;
      int oldValue2 = 0;
      //int oldValue3 = 0;
      
      int state;
      bool initial_state_sent;
      
      MyMessage msg1(CHILD_ID1, V_STATUS);
      MyMessage msg2(CHILD_ID2, V_STATUS);
      //MyMessage msg3(CHILD_ID3, V_STATUS);
      MyMessage msgHum(CHILD_ID_HUM, V_HUM);
      MyMessage msgTemp(CHILD_ID_TEMP, V_TEMP);
      DHT dht;
      
      void changeState(int chiled, int newState) {
        //state = newState;
        //digitalWrite(pin, newState);
      
        saveState(chiled, newState);
        switch(chiled){
          case CHILD_ID1:
            digitalWrite(RELAY_PIN1, newState);
            send(msg1.set(newState));
            break;
          case CHILD_ID2:
            digitalWrite(RELAY_PIN2, newState);
            send(msg2.set(newState));
            break; /*
          case CHILD_ID3:
            digitalWrite(RELAY_PIN3, newState);
            send(msg3.set(newState));
            break;*/
          default:
            break;
        }
        
      }
      
      void before() {
        // Setup the button
        pinMode(BUTTON_PIN1, INPUT_PULLUP);
        pinMode(BUTTON_PIN2, INPUT_PULLUP);
        //pinMode(BUTTON_PIN3, INPUT_PULLUP);
        // Activate internal pull-up
        digitalWrite(BUTTON_PIN1, HIGH);
        digitalWrite(BUTTON_PIN2, HIGH);
        //digitalWrite(BUTTON_PIN3, HIGH);
      
        // After setting up the button, setup debouncer
        debouncer1.attach(BUTTON_PIN1);
        debouncer1.interval(5);
        debouncer2.attach(BUTTON_PIN2);
        debouncer2.interval(5);
        //debouncer3.attach(BUTTON_PIN3);
        //debouncer3.interval(5);
      
        // Make sure relays are off when starting up
        digitalWrite(RELAY_PIN1, RELAY_OFF);
        // Then set relay pins in output mode
        pinMode(RELAY_PIN1, OUTPUT);
        // Make sure relays are off when starting up
        digitalWrite(RELAY_PIN2, RELAY_OFF);
        // Then set relay pins in output mode
        pinMode(RELAY_PIN2, OUTPUT);
         // Make sure relays are off when starting up
        //digitalWrite(RELAY_PIN3, RELAY_OFF);
        // Then set relay pins in output mode
        //pinMode(RELAY_PIN3, OUTPUT);
        
        // digitalWrite(LED_PIN, RELAY_OFF);
        // // Then set relay pins in output mode
        // pinMode(LED_PIN, OUTPUT);
      }
      
      void setup()  {
        
        ArduinoOTA.onStart([]() {
          Serial.println("ArduinoOTA start");
        });
        ArduinoOTA.onEnd([]() {
          Serial.println("\nArduinoOTA end");
        });
        ArduinoOTA.onProgress([](unsigned int progress, unsigned int total) {
          Serial.printf("OTA Progress: %u%%\r", (progress / (total / 100)));
        });
        ArduinoOTA.onError([](ota_error_t error) {
          Serial.printf("Error[%u]: ", error);
          if (error == OTA_AUTH_ERROR) {
            Serial.println("Auth Failed");
          } else if (error == OTA_BEGIN_ERROR) {
            Serial.println("Begin Failed");
          } else if (error == OTA_CONNECT_ERROR) {
            Serial.println("Connect Failed");
          } else if (error == OTA_RECEIVE_ERROR) {
            Serial.println("Receive Failed");
          } else if (error == OTA_END_ERROR) {
            Serial.println("End Failed");
          }
        });
        ArduinoOTA.begin();
        Serial.println("Ready");
        Serial.print("IP address: ");
        Serial.println(WiFi.localIP());
      
        dht.setup(DHT_PIN);
        if (UPDATE_INTERVAL <= dht.getMinimumSamplingPeriod()) {
          Serial.println("Warning: UPDATE_INTERVAL is smaller than supported by the sensor!");
        }
        // Sleep for the time of the minimum sampling period to give the sensor time to power up
        // (otherwise, timeout errors might occure for the first reading)
        sleep(dht.getMinimumSamplingPeriod()); 
          
        // Set relay to last known state (using eeprom storage) 
        int newState = loadState(CHILD_ID1);
        if (newState == 0Xff) {//if eeprom is empty
          newState = RELAY_OFF;
        }
        changeState(CHILD_ID1, newState);
        
        newState = loadState(CHILD_ID2);
        if (newState == 0Xff) {//if eeprom is empty
          newState = RELAY_OFF;
        }
        changeState(CHILD_ID2, newState);
      
        //newState = loadState(CHILD_ID3);
        //if (newState == 0Xff) {//if eeprom is empty
        //  newState = RELAY_OFF;
        //}
        //changeState(CHILD_ID3, newState);
      }
      
      void presentation()  {
        // Send the sketch version information to the gateway and Controller
        sendSketchInfo("Koridors", "2.0");
      
        // Register all sensors to gw (they will be created as child devices)
        present(CHILD_ID1, S_BINARY);
        present(CHILD_ID2, S_BINARY);
        //present(CHILD_ID3, S_BINARY);
        present(CHILD_ID_HUM, S_HUM);
        present(CHILD_ID_TEMP, S_TEMP);
      
        metric = getControllerConfig().isMetric;
      }
      
      void loop() {
      
        ArduinoOTA.handle();
        
        if (!initial_state_sent) {
          Serial.println("Sending initial value");
          send(msg1.set(loadState(CHILD_ID1) ? true : false));
          send(msg2.set(loadState(CHILD_ID2) ? true : false));
          //send(msg3.set(loadState(CHILD_ID3) ? true : false));
          
          initial_state_sent = true;
        }
      
        debouncer1.update();
        // Get the update value
        int value = debouncer1.read();
        if (value != oldValue1 && value==0) {
      	  //toggle switch state
      	  changeState(CHILD_ID1, loadState(CHILD_ID1) ? RELAY_OFF : RELAY_ON);
            //digitalWrite(RELAY_PIN, state ? RELAY_OFF : RELAY_ON);
            //send(msg.set(state?false:true)); // Send new state and request ack back
        }
        oldValue1 = value;
      
        debouncer2.update();
        // Get the update value
        value = debouncer2.read();
        if (value != oldValue2 && value==0) {
      	  //toggle switch state
      	  changeState(CHILD_ID2, loadState(CHILD_ID2) ? RELAY_OFF : RELAY_ON);
            //digitalWrite(RELAY_PIN, state ? RELAY_OFF : RELAY_ON);
            //send(msg.set(state?false:true)); // Send new state and request ack back
        }
        oldValue2 = value;
      /*
        debouncer3.update();
        // Get the update value
        value = debouncer3.read();
        if (value != oldValue3 && value==0) {
      	  //toggle switch state
      	  changeState(CHILD_ID3, loadState(CHILD_ID3) ? RELAY_OFF : RELAY_ON);
          //state = loadState(CHILD_ID3);
          //digitalWrite(RELAY_PIN3, state ? RELAY_OFF : RELAY_ON);
          //send(msg.set(state?false:true)); // Send new state and request ack back
        }
        oldValue3 = value; */
        
        // Force reading sensor, so it works also after sleep()
        dht.readSensor(true);
      
        // Fetch temperatures from DHT sensor
        float temperature = dht.getTemperature();
        if (isnan(temperature)) {
            Serial.println("Failed reading temperature from DHT");
        } else if (temperature != lastTemp || nNoUpdatesTemp == FORCE_UPDATE_N_READS) {
          // Only send temperature if it changed since the last measurement or if we didn't send an update for n times
          lastTemp = temperature;
          if (!metric) {
            temperature = dht.toFahrenheit(temperature);
          }
          // Reset no updates counter
          nNoUpdatesTemp = 0;
          temperature += SENSOR_TEMP_OFFSET;
          send(msgTemp.set(temperature, 1));
          
          #ifdef MY_DEBUG
          Serial.print("T: ");
          Serial.println(temperature);
          #endif
        } else {
          // Increase no update counter if the temperature stayed the same
          nNoUpdatesTemp++;
        }
      
         // Fetch humidity from DHT sensor
        float humidity = dht.getHumidity();
        if (isnan(humidity)) {
            Serial.println("Failed reading humidity from DHT");
        } else if (humidity != lastHum || nNoUpdatesHum == FORCE_UPDATE_N_READS) {
            // Only send humidity if it changed since the last measurement or if we didn't send an update for n times
            lastHum = humidity;
            // Reset no updates counter
            nNoUpdatesHum = 0;
            send(msgHum.set(humidity, 1));
            
            #ifdef MY_DEBUG
            Serial.print("H: ");
            Serial.println(humidity);
            #endif
        }   else {
          // Increase no update counter if the humidity stayed the same
          nNoUpdatesHum++;
        }
          // Sleep for a while to save energy
          sleep(UPDATE_INTERVAL); 
      } 
      
      void receive(const MyMessage &message) {
        // We only expect one type of message from controller. But we better check anyway.
        if (message.isAck()) {
      #ifdef MY_DEBUG
           Serial.println("This is an ack from gateway");
      #endif
        }
      
        if (message.type == V_LIGHT) {
      #ifdef MY_DEBUG
          Serial.print("Incoming change for sensor:");
          Serial.print(message.sensor);
          Serial.print(", New status: ");
          Serial.println(message.getBool());
      #endif
          // chnage the state of the related sensor
          changeState(message.sensor, message.getBool() ? RELAY_ON : RELAY_OFF);
         
           // Write some debug info
          
          
         } 
      }
      

      Here is a link to galery with some screensoots and videos thats kind of describe problem Google photos, hope you can see galery

      posted in General Discussion
      archiijs
      archiijs
    • RE: Multiple gateways with HASS?

      Hi, well issue resolved and unsurprisingly it was me 😄

      So the first I got home and took a look at logs again and saw that node two has rejected connection and indeed, it not responded from any UI and even from the light switch, restart fixed it, but now I wonder if it will happen again.

      After that, I used light switches on the third node manualy and they imidietly appeared in HA, but still nothing from DHT sensor. So I took a look at my code and found my error
      I got mixed some things around. I got code like this before

      #define CHILD_TEMP         2   // Id of sensor dht
      #define CHILD_HUM          3   // Id of sensor dht
      
      MyMessage msgHum(CHILD_TEMP, V_HUM);
      MyMessage msgTemp(CHILD_HUM, V_TEMP);
      
      

      So I fixed this like this

      #define CHILD_TEMP         2   // Id of sensor dht
      #define CHILD_HUM          3   // Id of sensor dht
      
      MyMessage msgHum(CHILD_HUM, V_HUM);
      MyMessage msgTemp(CHILD_TEMP, V_TEMP);
      

      After that, all started to work as expected. Thanks for your input.
      0_1499406896616_HA.png

      posted in Home Assistant
      archiijs
      archiijs
    • RE: Multiple gateways with HASS?

      Sadly no entities from that node at all in HA states. Also, 5 and 6 were used so they should send their state, but I will check again when I got home.

      posted in Home Assistant
      archiijs
      archiijs
    • RE: Multiple gateways with HASS?

      @martinhjelmare said in Multiple gateways with HASS?:

      Each gateway should have its own slot in the list of gateways in the mysensors section in the home assistant config. You also need to configure separate radio channels for each gateway if the gateway has a radio. Eg:

      Sorry, I should add my config from beginning.
      This is how it looks in configuration.yaml

      mysensors:
        gateways:
          - device: '192.168.1.50'
            persistence_file: '/root/.homeassistant/mysensors1.json'
            tcp_port: 5003
          - device: '192.168.1.52'
            persistence_file: '/root/.homeassistant/mysensors2.json'
            tcp_port: 5003
          - device: '192.168.1.53'
            persistence_file: '/root/.homeassistant/mysensors3.json'
            tcp_port: 5003
        optimistic: false
        persistence: true
        retain: true
        version: 2.0
      

      First node is my NRF gateway, secound is working ESP gateway node and third one is one with problems mentioned before.

      This it what HA is writing to mysensors3.json

      {"0": {"sketch_name": "Koridors", "type": 17, "sketch_version": "2.0", "sensor_id": 0, "protocol_version": "2.1.1", "_battery_level": 0, "children": {"8": {"description": "", "id": 8, "values": {"0": "19.9"}, "type": 7}, "5": {"description": "", "id": 5, "values": {}, "type": 3}, "6": {"description": "", "id": 6, "values": {}, "type": 3}, "7": {"description": "", "id": 7, "values": {"1": "45.3"}, "type": 6}}}}
      

      But I can not see anything from this sensor in "states" tab in HA
      I do not have any radios attached to secound and third node.
      Thanks for your time.

      posted in Home Assistant
      archiijs
      archiijs
    • RE: Multiple gateways with HASS?

      Hi, This topic seems to be similar to what I need, so I will continue in this one.

      I got couple Mysensors NRF nodes and one esp gateway node working fine for some time in now in Openhab, but because I want to make problems for myself I decided to Mysensorize couple of my old nodes and and same time try Home Assistant as well.

      So got my first 2 nodes up and running relatively easy, but after I Mysensorizing the second one with esp problems starts.
      So the problem is that Both ESP nodes call them selfs as "node 0" and at first I got errors like

      2017-07-06 11:44:02 WARNING (Thread-23) [mysensors] child_id 1 already exists in children of node 0, cannot add child
      2017-07-06 11:44:02 WARNING (Thread-23) [mysensors] child_id 2 already exists in children of node 0, cannot add child
      2017-07-06 11:44:02 WARNING (Thread-23) [mysensors] child_id 3 already exists in children of node 0, cannot add child
      2017-07-06 11:44:02 WARNING (Thread-23) [mysensors] child_id 4 already exists in children of node 0, cannot add child
      

      So I taught, well, let's edit second nodes child IDs to start from 5, maybe it will then work out, but now I get error

      2017-07-06 11:44:02 WARNING (Thread-24) [mysensors] child_id 5 already exists in children of node 0, cannot add child
      2017-07-06 11:44:02 WARNING (Thread-24) [mysensors] child_id 6 already exists in children of node 0, cannot add child
      2017-07-06 11:44:02 WARNING (Thread-24) [mysensors] child_id 8 already exists in children of node 0, cannot add child
      2017-07-06 11:44:02 WARNING (Thread-24) [mysensors] child_id 7 already exists in children of node 0, cannot add child
      

      So what's the correct way to get multiple ESPgateway nodes to work with HA? All working fine with Openhab.

      Sorry, using ethernet gateway skeches.

      posted in Home Assistant
      archiijs
      archiijs
    • RE: Browser-based firmware generator

      Hi, I can give a quick look from my (noob) perspective.
      I'm no programmer, just tinkering around, new to Mysensors, but already managed to get something working and starting to learn how this stuff works so I can expand my installation.
      Im wery interested in this firmware generator because of my lack of knowledge and understand that people with more knowledge probably will not use this tool for their installation as they are more comfortable with programming and Mysensors.

      Intro aside I do not have any problems with using additional application, I already use Windows GUI/Controller for MySensors made by @tekka and Android application to debug and develop my installation.
      Best part would be that code generation and debugging could be in one application, but that's not necessary.

      Keep up the good work.

      posted in Development
      archiijs
      archiijs
    • RE: MySensors 2.x pulse power meter with OpenHAB2

      Hi, sadly I have not got any further, life got in the way, but I hope to start investigating this when I got more free time, not sure about @Dirtbag

      posted in OpenHAB
      archiijs
      archiijs
    • RE: switch is not working when gateway is unavailable

      Hi, I experienced the same problems, but after some search, it turns out we are not alone
      https://forum.mysensors.org/topic/5921/a-basic-domestic-240v-light-and-switch/7
      https://forum.mysensors.org/topic/5884/most-reliable-light-switch/4

      I ended up using an example from @Boots33 works good for me.

      Mysensors is more aimed at Internet of things than home automation so I guess that's why it's not the default operation.

      posted in Hardware
      archiijs
      archiijs
    • RE: Monitoring a wood boiler heating system

      Hi, all this is awesome, about the same what I would like to make as I'm heating the house with wood boiler (actually wood gasification boiler to be correct), and accumulation tank. Still working on hot water boiler, but that's not far.

      For now, I got working Individually DS18b20 node (still with automatic addressing) and one node that reads the temperature in my boilers second burning chamber with a k-type thermocouple but still struggling to get them bout working with one node.
      It would be very helpful for some guidance or example for this.

      So my goal is to get 2x thermocouples (additional for smoke temperatures) and some 18b20s in one node + some standard stuff what I am not still sure about.

      But for now big thanks to mysensors team and community for this.
      alt text

      posted in My Project
      archiijs
      archiijs
    • RE: MySensors 2.x pulse power meter with OpenHAB2

      Hi, I'm new to Mysensors and relatively new with Openhab and Arduinos/esp's , after only two days (yes, this is a good rating for me) of frustration I finally started to get openhab2 ethernet binding working with Mysensors ESp8266 gateway and am interested in adding power meter too. Have not had time to look closer, but after some searching around find couple of topics about this, mainly-
      https://forum.mysensors.org/topic/3088/pulse-power-meter-with-openhab
      https://forum.mysensors.org/topic/716/energy-pulse-meter-strange-behaviour

      So if I understand correctly the problem is to get pulse count from Openhab to Mysensors node on startup.

      I would like to try @joseraj solution BUT firstly I have to learn more about how to attach mysensors .things with .items file in Openhab, so reading here I guess and then here because I'm still not sure about that V_VAR1and V_VAR2 differs and so one.
      If someone could help with some guidance, please, let me now.

      posted in OpenHAB
      archiijs
      archiijs