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
sinczeS

sincze

@sincze
MySensors Evangelist
About
Posts
105
Topics
4
Shares
0
Groups
1
Followers
2
Following
0

Posts

Recent Best Controversial

  • What did you build today (Pictures) ?
    sinczeS sincze

    This sunday a friend of mine and I did not know what to build. So we decided to use a project designed by @Yveaux
    Source

    I received 2 new CDEByte antennas that needed a range test. As I live in a mansion.... Next to a park we figured out that walking 1 degrees outside would be an excellent time to do a range test. It was not raining so.....

    Our conclusion would be:

    • Cheap ass NRF... good enough for indoor usage.. if it can mesh.
    • Cheap ass Amplified NRF.. good enough in the house, needs a bit more space and power, but works quite well.
    • CDEByte... not cheap.. but man my hands were freezing outside due to the long range.. And according to @Yveaux we could achieve a higher range if we would have set the power to MAX... During testing this was MIN.

    0_1512323585357_cdebytetest.jpg

    General Discussion

  • What did you build today (Pictures) ?
    sinczeS sincze

    0_1510959314040_Dallas Working.jpg
    With help of @dbemowsk @sundberg84 I was able to complete my "CV All in one sensor" using the easy PCB. ;-)
    It now replaces 2 Arduino Nanos with only 1 Easy PCB. Currently the 0,1u Capacitor is missing, however as I was told by the designer it still could work. And it does.

    This node:

    • monitors the pipes of my central house heating,
    • Is able to detect if the heating unit has a leakage.
    • Switches on the light if the door is opened
    • if the humidity in the bathroom becomes to high, or somebody is cooking.. It will start the BRINKS central WTW.
    • Can reset my OTGW unit if it has a lock up.

    0_1510959911977_Vloerverwarmin.JPG

    General Discussion

  • What did you build today (Pictures) ?
    sinczeS sincze

    And so it it almost Christmas...

    Jolly jolly.. wel actually no....

    We have had wet feet from the central heating system serveral times now around Christmas or New Year.
    Causing a wet floor and other possible disasters. Yes I know.. A Central Heating Mechanism should not leak, you could try putting a bucket underneath... But that is not 'that home automation' smart that I was looking for.

    So to detect a leakage.... I came up with this some time ago.

    Pretty standard, a few wires... a Mysensors Node... and Pushover to send me urgens notifications about the leakge.

    0_1512750844649_Leakage.jpg link url))

    And ladies and gentlemen it actually works as you can see in the pushover sreenshot, it kicked off today.

    General Discussion

  • What did you build today (Pictures) ?
    sinczeS sincze

    Well as you can see, my prototyping skills are not at the level of @dbemowsk (always interested in the under side of the boards, mine look .. yeah a mess?), however I managed to create this enclosure (once closed looks nice enough).

    It should control the programmable LED lights in my livingroom (900 pieces).The board is powered 5v from the same power supply as the LED's. In addition it needs to measure the lux in the livingroom to decide if it is dark enough to turn on the lights.

    0_1513502717712_LED Controller.jpeg

    Initial tests looked okay, however after finding 56 effects in the Doll House of @Yveaux I decided to use that FX library as well. However the Arduino Mega is out of RAM to accomodate a full controll of the 900 LEDS. It will only control around 650 LEDS with that FX library.

    After being in contact with @Yveaux we decided to use an ESP solution. I have a spare NodeMCU v3 that can house the ESP gateway sketch and will have enough memory to controll the LEDs. Well now I have to look for a nice prototyping thing/case for the NodeMCU and add a level shifter as well. The LED's control line wants to be controlled by at least 3,7v.

    This is the nice thing about these kind of projects.. "There is always something to do"

    General Discussion

  • What did you build today (Pictures) ?
    sinczeS sincze

    Finally, the last day of my holiday I managed to upload the Mysensors Sketch into the NodeMCU to control my 900 LEDS. It will also read the lux intensity in the livingroom. So if it is dark the lights will switch on.

    0_1515346564306_NodeMCU Driving LED.jpg

    All is based on @Yveaux Mysensors ESP Gateway port. On a rainy saterday last year @Yveaux and I found out we did not have to modify anything on the voltag level for driving the LEDS. ;)

    The sketch includes all the Doll_House animations (around 55) that can be skipped through using an old 433mhz remote (or via interface directly ofcourse) Next stop... Installing 15 meters of LED in the livingroom. pffff ;-)

    And putting everything inside this little box @Yveaux printed for me.
    0_1515346955766_Box.jpeg

    General Discussion

  • KY015 - Humidity and Temperature 2.0.x
    sinczeS sincze

    Hi

    After starting with MySensors 2.0.x I did not find an example for my KY015 Humidity and Temperature sensor.
    (maybe have to do a new git pull first....)

    So i created one myself that does work nicely with my still 1.5.4 serial Gateway at the other end of the house.
    Example: https://github.com/sincze/mysensors-2..0.x-temperature-humidity

    Maybe somebody else is happy with it as well.
    I'll be adding a doorsensor alsol so I can measue temperature / humidity in the room as well as turn on the lights when the door is opened.

    Development

  • Monitor Alarm System state (Jablotron)
    sinczeS sincze

    I've read a lot of posts here and wanted to monitor the state of my ALARM system in Domoticz (not control it).

    With all your posts and input from @yveaux I combined it to the following.
    0_1486401836126_OASIS.png

    2 buck converters, an arduino and some wiring.

    The alarm will set 12v on PGY / PGX connectors if set and 0v if unset.

    We only need to convert that 12v into an acceptable input voltage for ARDUINO digital in.
    I used the buck converter for this purpose, 4,45v is sufficient to trigger digital 1.
    and the 0v ... digital 0.
    Don't use the internal pull up resistor of this pin ;-)

    I tried powering the Arduino from the alarm as well with the separate buck converter... however that was nu success. Could not figure out why. Pins became unresponsive.

    The arduino is now powered by separate power supply from the ISP modem...

    And the final result:
    1_1486402114270_OASIS-set.jpg

    0_1486402114270_OASIS-domoticz.jpg.

    I will post the code on my github. So everybody can have a look at it if they want.
    https://github.com/sincze/jablotron_Mysensors_2.0.1

    In addition I also added a doorsensor. Should somebody open the door I'm also notified.

    And all thanks to MySensors.

    My Project

  • Renovent HR Medium/Large - Brink Climate Systems
    sinczeS sincze

    I wanted to have my Renovent HR Large from Brink Climate Systems automated.
    Unfortunately Brink offered a € 300 solution to do this wireless within the house

    I thought.. Well it must be possible to use one of the Mysensors sketches to do so.

    By default this system comes with a 3 way switch that is connected to an rj11 plug on the Renovent.
    The RJ11 has 3 cables

    • Yellow
    • Red
    • Black

    After figuring out how the 3 way switched worked it was an easy task with one of the example sketches.

    • Yellow + Black = Switch_2
    • Red + Black = Switch_3
    • By default nothing is connected = Switch_1.

    If you would like to measure voltage you will measure aroun 13,88v on

    • yellow-black
    • red-black.

    The sketch can be found here:
    0_1500406156812_sketch_jul16a_-_Brinks_WTW.ino

    You will need 2 Relais if you want to switch Switch_2 and Switch_3.
    Please see attached the prototype... available for around €10 .
    0_1500406337706_WTW Brink - Prototype.JPG

    And then within Domoticz I can control it.
    0_1500406123667_WTW Brink.JPG
    If the humidity in the bathroom is over 58% kick on the fan ;-)

    Oh btw. don't forget to connect the ground of the Relais to the Ground of the Arduino, otherwise it will not work.

    Happy Mysensors day.

    sincze.

    My Project

  • Meetup in the Netherlands - Saturday July 30th, in Breda!
    sinczeS sincze

    @TheoL, @ericvdb I updated the presentation (at the top) with the pictures I received indeed.

    General Discussion

  • Renovent HR Medium/Large - Brink Climate Systems
    sinczeS sincze

    Just an update regarding the Renovent Climate system:
    I created the following cheat sheet:

    0_1515262533789_Renovent Cheat Sheet.jpeg

    To be able to read the 'filter' value I converted the default RJ11 to RJ12.
    Now it should be able to warn me that I need to change the filter.
    0_1515262827287_Brinks Filter.jpeg

    As I use the EasyPCB and already used all available pins on the prototype board, I had to solder an extra wire to pin 8.
    Q: How do I access A2, A3 and D8? A: They are not accesses through the PCB, so you need to directly solder to the pro mini.

    As this Pin 8 is not used with pull up resistor (I thought it was dangerous to do that because adding 3v of the Renovent would kill the input.) I needed to build some sort of pull-down resistor from keeping the input pin from floating. And hell yes it was floating like hell (resulting in a lot of messages, that even the debouncer was unable to deal with).

    Normally when the filter is 'clean' there is a 0v on P8. If the filter needs to be cleaned there is a +/- 3v on P8

    This how it was solved:
    0_1515266087589_Pull-Down.JPG

    My Project

  • What did you build today (Pictures) ?
    sinczeS sincze

    @dbemowsk while you are at it..consider :)

    The dishwasher can be added as well. My devices dishwasher / washing machine / dryer send messages to all tvs that are turned on. Identifying themselves and invite you to come and clean them :). It comes in handy and absolutely jaw dropping on your visitors.

    If you turn on the stove air circulation system in the kitchen... Why not greet the wife with automatically start the TV in the kitchen and play her favourite radio channel at her preferred volume...

    General Discussion

  • Are folks here happy with Domoticz?
    sinczeS sincze

    In the beginning I worked with DomotiGa on a raspberry. However due to all the crashes of my SD card and the long restore time (rebuilding / recompiling of DomotiGa) I had a shadow system on a separate Raspberry with Domoticz to figure out how it worked. In the end I also moved Domoticz from SD to an SSD using a Cubietruck backend. To speed Domoticz a little bit more I moved away from the standard (integrated) scripts and lua to Pass2PHP. Now all automatic controls are dealt with by PHP while still being able to use all de 'hardware' features and interface of domoticz itself. . As a result I have a fast responding system that integrates with all my domotica hardware flawless. The community is really big. And yes. Sometimes you run into a bug. But I assume that can happen anywhere.

    Domoticz

  • What did you build today (Pictures) ?
    sinczeS sincze

    I found out that the brinks solution I build some time ago could be upgraded with a nice additional feature. 'Filter detection'.

    I created a cheat sheet as my device was equiped with RJ11 connector and 3 wires. I needed to convert it to RJ12 with filter detection.

    0_1514922290404_WhatsApp Image 2018-01-02 at 20.40.46.jpeg

    A nice black conversion box Output wires are the same colour as the original RJ 1 wire. With 2 extra wires 3,3v or 5v for the digital 'one' on the arduino.

    0_1514922284342_WhatsApp Image 2018-01-02 at 20.38.14.jpeg

    General Discussion

  • Are folks here happy with Domoticz?
    sinczeS sincze

    @rmtucker I move the data directly from Domoticz into influxDB. This is as accurate as you will get it ;-) Data for example of my smartmeter every 10 seconds. If the device is updated in Domoticz (energy sensor for example) this will add data to influxDB and you will get the bet graphs. Accurate for me.

    Domoticz

  • Multiple Gateway Interference
    sinczeS sincze

    @tbowmo Aha thanks so with sigining mr neighbourman can see I switch something (a light)... however he is unable to control the light ;-)
    Big advantage over the old 433 ;-) I must say.

    I'll have to read through your sigining post to see what I can do to prevent my SmartMeter data from being sniffed :smiley: by the same neighbourman. I@Yveaux showed me a node with wireshark on a PC that could present all Mysensors traffic flying through the air.

    A bit more homework for me.
    anyway thanks for the update.

    Development

  • WaterPulseMeter: onPulse gets called on rising AND falling !?
    sinczeS sincze

    I've seen this behaviour before. Modified the whole sketch by polling.
    Still has to be converted into 2.0.0

    /*
     * Sketch to read pulses from pulse meter; 
     * Only accepts a pulse change if the signal has been stable for more than x seconds;
     * Only sends message to gateway after more than x seconds have passed since sending last message;
     * Pulses are assumed to equal 1 liter of water
     * 
     * Author  Sandor Incze & Michel Schilthuizen
     * Created 2016-05-29
     * Version 1.0
     *
     * Based on the flow reader sketch "WaterMeterPulseSensor" by 
     * Henrik Ekblad <henrik.ekblad@mysensors.org>
     * Copyright (C) 2013-2015 Sensnology AB
     * Full contributor list: https://github.com/mysensors/Arduino/graphs/contributors
     * 
     * During testing in can be handy to be able to set the values in domoticz; You can do this by using the REST request below:
     * (replace x.x.x.x and deviceid by relevant numbers
     * http://x.x.x.x:8080/json.htm?type=command&param=udevice&idx=deviceid&nvalue=0&svalue=0
     */
    
    #include <SPI.h>
    #include <MySensor.h>  
    #define IN_PIN 3                              // PIN NUMBER OF DIGITAL OUTPUT TCRT5000
    #define INTERRUPT_DEBOUNCE_DELAY 2            
    #define CHILD_ID 1                              // Id of the sensor child
    
    unsigned long SEND_FREQUENCY = 30000;           // Minimum time between send (in milliseconds). We don't want to spam the gateway.
    MySensor gw;
    MyMessage flowMsg(CHILD_ID,V_FLOW);
    MyMessage volumeMsg(CHILD_ID,V_VOLUME);
    MyMessage lastCounterMsg(CHILD_ID,V_VAR1);
    
    volatile double flow = 0;  
    boolean gw_received = false;
    boolean seeninterrupt = false;
    
    double flowSent =0;                     
    
    volatile unsigned long globalCounter  = 0;
    volatile unsigned long old_globalCounter =0;
    unsigned long lastSent =0;
    unsigned long lastPulse =0;
    
    static volatile int last_pin_value = 0;
    static volatile int stable_pin_value = 0;
    static volatile int last_stable_pin_value = 0;
    static unsigned long lastInterrupt = 0;
    volatile unsigned long gwPulseCount = 0;
    
    void incomingMessage(const MyMessage &message) {
      if (message.type==V_VAR1) {
        gwPulseCount=message.getULong();
        Serial.print("--- Variable gwPulseCount get value from gw: ");
        Serial.println(gwPulseCount);
        Serial.print("--- Variable gwPulseCount needs a correction -1 liter: ");
        gwPulseCount--;
        Serial.println(gwPulseCount);
        
        if (globalCounter != gwPulseCount) 
        {
          globalCounter += (gwPulseCount);
          Serial.print("--- Received last pulse count from gw: ");
          Serial.println(globalCounter);
          //use line below to reset your counter in domoticz; We needed it ;-)
          // globalCounter = 301093;
          gw_received = true;
          old_globalCounter = globalCounter;
        }
      }
    } 
    
    void setup() {
      gw.begin(incomingMessage); 
    
      // Send the sketch version information to the gateway and Controller
      gw.sendSketchInfo("MiSa Water Meter", "1.0");
    
      // Register this device as Waterflow sensor
      gw.present(CHILD_ID, S_WATER);       
      
      lastInterrupt = millis();
    }
    
    void loop() {
      if (!gw_received) {
          //Last Pulsecount not yet received from controller, request it again
          Serial.println("--- Requesting as nothing was received from gateway yet!");
          gw.request(CHILD_ID, V_VAR1);
          return;
      }
      else 
      {
        int pin_value = digitalRead(IN_PIN);
      
        // Calculate time passed since last interrupt
        unsigned long timedifference = millis() - lastInterrupt;
      
        // In case millis cycled to 0 (as it goes beyong max unsigned long) reset values
        if (timedifference < 0)
        {
          lastInterrupt = 0;
          timedifference = 0;
          lastSent = 0;
        }
       
        if (pin_value != last_pin_value) //if the pin changes from high to low or low to high
        {
          Serial.println("--- Pin value different!");
          lastInterrupt=millis();
          last_pin_value = pin_value;
        }
        else if ((stable_pin_value != pin_value) && (timedifference >= (INTERRUPT_DEBOUNCE_DELAY * 1000))) //if stable pin is different from the pin and more than debounce delay has passed, switch stable pin
        {
          stable_pin_value = pin_value;
          Serial.println("--- Stable pin value different!");
        }
      
        if ((stable_pin_value != last_stable_pin_value) && (stable_pin_value == HIGH))  
        {// Only raise counter if filtered pin value goes from 0 to 1
          ++globalCounter;
          seeninterrupt = true;
          Serial.print("--- Real Interrupt NOW; Global counter is now: "); //  Debug Information will show the interrupt we will count.
          Serial.println(globalCounter);
        }
    
        //reset last_stable_pin_value also when it has changed to LOW
        if (stable_pin_value != last_stable_pin_value)
        {
          last_stable_pin_value = stable_pin_value;
        }
    
        //if we have seen an interrupt and the send frequency has passed, send message to gateway; 
        //Also send a message if last message has been sent more than x seconds ago and flow is still more than 0
        if ( (gw_received) && (millis() - lastSent > SEND_FREQUENCY) 
          && (seeninterrupt || flowSent > 0))
        {
          double liters = globalCounter - old_globalCounter;
          float minutes_passed = 1.0 * (millis()- lastSent) / 60000.0;
          double liters_per_minute = 1.0 * liters / minutes_passed; 
          flowSent = liters_per_minute;
          
          Serial.print("Minutes Passed: ");
          Serial.println(minutes_passed);
          Serial.print("Aantal Liters: ");
          Serial.println(liters);
          Serial.print("Liters per Minuut: ");
          Serial.println(liters_per_minute);
      
          // gw.send(lastCounterMsg.set(globalCounter));                  // Send  globalcounter value to gw in VAR1
          gw.send(flowMsg.set(liters_per_minute, 2));                      // Send flow value to gw
          gw.send(volumeMsg.set(1.0 * globalCounter / 1000, 3));                // Send volume value to gw and convert from dm3 to m3
    
          Serial.print("--- Globalcounter is now: "); //  Debug Information will show the interrupt we will count.
          Serial.println(globalCounter);
          Serial.print("--- Globalcounter dm3 to m3: "); //  Debug Information will show the interrupt we will count.
          Serial.println(1.0 * globalCounter / 1000);
        
              
          seeninterrupt = false;
          lastSent = millis();
          old_globalCounter = globalCounter;
        }
      }
    }```
    Troubleshooting

  • Meetup in the Netherlands - Saturday July 30th, in Breda!
    sinczeS sincze

    @Yveaux No limits. can be during weekend or afer office hours

    General Discussion

  • lost serial gateway after un plug power Rpi
    sinczeS sincze

    Hi.

    I had the same issue with (original) FTDI chipset ARDUINO.
    I use FTDI chipset because that enables me to FIX the USB to stick at for example USB20 and not to a different port. Comes in handy after a reboot. Domoticz will continue to work.

    However ... I had the same issue you described.
    I replaced ARDUINO with new one for testing with CH340.
    Gateway was recognized again.
    The failing FTDI Arduino that was nog recognized works perfectly well with my Windows 10 PC however not with Raspi.

    Keep in mind the CH340 has no serial number. I was unable to fix at a certain USB position.

    From your logs I can confirm I had the same issue.
    try: dmesg | grep "ÜSB"

    It will not show you a USB1 or USBx device.

    I bought a new FTDI arduino and said bye bye to the problem. All is working again.

    Domoticz

  • Combining MySensors examples
    sinczeS sincze

    @kimot said in Combining MySensors examples:

    MockMySensors

    Haha tnx glad I learned something today. Did not know about this example ;-)

    Development

  • LM393 Light Sensor Readings
    sinczeS sincze

    @mfalkvidd , Indeed 0 - 100 not in lux as shown in Domoticz. That is why I started on a lux meter. Just to see how that works. With LM393 I just check... if value < 10 ... it must be dark enough to switch on the lights.

    Works ideally when it is very dark during the day when a thunderstorm moves over your house.

    Troubleshooting
  • Login

  • Don't have an account? Register

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