Skip to content
  • 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
ร

รอเรือ

@รอเรือ
  • Getting Started
  • Controller
  • Build
  • Hardware
  • Download/API
  • Forum
  • Store
About
Posts
82
Topics
16
Shares
0
Groups
0
Followers
0
Following
0

Posts

Recent Best Controversial

  • Moisture penetrates my outdoor enclosures...
    ร รอเรือ

    @FredC said in Moisture penetrates my outdoor enclosures...:

    @รอเร-อ 2 thoughts here....

    How is the box attached to the timber?

    Did you use the seal provided with the box?

    From what I recall these boxes are cheap chinese with a string of rubber like sealant that goes into the groove around the cover and base. There 'should' 4 holes that allow you to attach the box to the timber that sit outside the seal. If however you've drilled through the back of the box to screw into the timber, the chances are that moisture has got in that way.

    Looking at your picture the plastic seems to be degrading so the chances are the seals have too.

    I've recently seem a product on sale in electrical suppliers that is a waterproof gel (a bit like silicon) that is poured or injected into outdoor electrical junction boxes. It's called "Electical Waterproof Gel". I don't know whether it's got any RF implications, but it supposed to be IP68 rated and safe up to 1000v. Might be worth investigating.

    You are right about that, the box I used was of low quality and I should have put greater effort finding a more suitable and rated outdoor enclosure in the first place. Trying to improve it with silicone and other stuff won't last long so what happened was actually quite expected.

    I have ordered (will arrive today) some electric cast resin. I'll give it a try and I'll pay better attention to shield my outdoor enclosures in the future. Doing that needs some studying, it's not trivial.

    Cheers!

    General Discussion enclosure

  • Moisture penetrates my outdoor enclosures...
    ร รอเรือ

    I have managed to bring life to my old node after replacing the cables and the connectors. Now I'm planning to bake all the electronics into Bekateq Epoxy Resin... That includes the RF24 radio as well and I'm actually a little worried about how that will work. Radio modules are kind of sensitive but I will give it a try. Maybe someone tried that already?

    Cheers!

    General Discussion enclosure

  • Moisture penetrates my outdoor enclosures...
    ร รอเรือ

    @Jodaille said in Moisture penetrates my outdoor enclosures...:

    Hello @รอเร-อ

    I have never managed to build a box 100% waterproof.

    Water always find a path :)

    Maybe you could try to make a small hole at the bottom to let the condensation leaving.

    But then some spiders can go inside and shortcut some wires :)

    GreatScott has done some video about waterproofing, like this one:
    https://www.youtube.com/watch?v=h8ycmroFQSs

    Thanks @Jodaille I'll have a look at that.

    General Discussion enclosure

  • Moisture penetrates my outdoor enclosures...
    ร รอเรือ

    Hi there! I have a few moisture safe enclosures for outdoor sensor. At least, that's what I thought but inspecting one of them today due to failure (see attached image below) made me aware that they are not moisture safe at all. They even seem to suck moisture from the outside and store it inside the box.

    I guess that the plastic that the box is made of isn't moisture proof.

    If some of you guys have experience to share with me on this topic I'd appreciate it a lot. I'd like to rebuild this repeater node using an enclosure that does not allow moisture to enter it and eventually destroy the electronics. Stability of operation and an enclosure that resists the environmental challenges that it will face has a much higher priority than the cost of the enclosure.

    62caf6c3-0a95-4524-83dc-db853ac6009f-image.png

    Cheers!

    General Discussion enclosure

  • Detecting a sudden change
    ร รอเรือ

    @Yveaux Thanks!

    Nice graph. I will do something similar in Grafana. I think my MySensors device should also report every minute, perhaps using the highest sampled value. All values are sent to MQTT by my gateway and my Home Automation will store the time value pairs in influxdb. Right now I'm waiting for the hardware to arrive... :grinning:

    Development

  • Detecting a sudden change
    ร รอเรือ

    Hello all!

    I'm building a PM2.5 particle matter sensor and I'm trying to figure out how I would go about to detect sudden changes of measured particles occurs.

    I expect that there is a background level of particle matters that vary very slowly maybe between 0 and 20 µg/m3. I'd want to be alerted if that level rises all off a sudden. That happens frequently here when the flue gases from my neighbors chimney flows towards the ground level and enters my mechanical ventilation intake. I'd like the alert to be active until "normal" levels have been reached and a new alert if it happens again after that.

    I'm putting my question here in hope that you might happen to know a "software design pattern" some reusable solution for a similar problem. I have seen a Lua Script for Humidity control that does a similar thing but a c++ code snippet to be inspired by would make things easier.

    Do you have any idea about how this should be done clean and beautifully?

    Thanks in advance. Cheers!

    Development

  • SPI conflict: nRF24L01+ wants the same pins as my MAX7219 LED dot matrix display
    ร รอเรือ

    @mfalkvidd Thanks a lot!

    I just made some tests and it looks promising. :grin: :grin: :grin:

    General Discussion

  • SPI conflict: nRF24L01+ wants the same pins as my MAX7219 LED dot matrix display
    ร รอเรือ

    Hello there!

    My MAX7219 LED dot matrix display is working great using hardware SPI using pin 11 for MOSI and pin 13 for SCK on a Arduino NANO.
    Now, I'd like to use a nRF24L01+ radio as well which also claims using the same ports 11 and 13 for MOSI and SCK.

    MAX7219 can use software SPI instead so that I can use any digital pins of the Arduino. The problem is that when using software SPI it turns out to be slower and it doesn't look well on my double height display (2x8 matrixes). The upper part of the double height display lags. Therefore I'd like to use pin 11 and pin 13 for the MAX7219 LED dot matrix display but AFAIK the radio must use the same pins.

    Any ideas how that can be solved?!

    Capture.PNG

    General Discussion

  • EV Charger (type 2) with RESTful API and Wifi recommendations?
    ร รอเรือ

    @rmh said in EV Charger (type 2) with RESTful API and Wifi recommendations?:

    @รอเร-อ btw Normal single phase type 2 charging on an EV is 32a = 7 Kw. If your ev can charge at 22Kw, then it will need a 3 phase supply. OpenEVSE can do this but you will need to put a 3 phase contactor in it.
    R

    Thanks a lot. That seems to be exactly what I'm looking for. I didn't order the kit though. I ordered the EmonEVSE WiFi Connected EV Charging Station IEC 60947-5 (Type-2)

    I'm very excited to get started. Ohh... I'll need an EV too... ha ha

    General Discussion

  • EV Charger (type 2) with RESTful API and Wifi recommendations?
    ร รอเรือ

    Hi there!

    Time for me to invest in a EV Charger (type 2).

    Of course I'd like it to have a RESTful API and Wifi. Even better if it could connect to my MQTT server as well. 22 kW would be fine.

    I can't just install any "smart" charger that measures the used grid power because it can't determine the direction of the current. I export solar energy daytime which makes power flow outwards to the grid. I'd like to be able to set the max power depending on how much solar power I produce and how much I can import. If I can control when charging occurs I can also select the cheapest hours.

    BTW, I prefer to buy my EV charger in Europe.

    Cheers!

    General Discussion

  • CDEBYTE's new NRF24 modules are great! (and cheap)
    ร รอเรือ

    @yveaux

    I've managed to replace the SMD resistors according to your suggested hack described above. It wasn't easy though. Anyway, it seems to work well. Thanks!!!

    General Discussion

  • CDEBYTE's new NRF24 modules are great! (and cheap)
    ร รอเรือ

    @yveaux said in CDEBYTE's new NRF24 modules are great! (and cheap):

    This patch makes both regular and amplified nRF24 modules work correctly!

    Dear @Yveaux

    Thanks for all the work you've put into investigating this issue.

    I have a different brand of the Nano IO Shield but the quality is equally very low. I guess I'll need to inspect them carefully before I use them. I guess I have 10 of them and I will try to apply the HW patch you've suggested but I'm not sure I'll be able to make it, I don't have any SMD resistors and they are to small to work with for me. I'll need to give it a try anyway.

    Thanks again and merry christmas btw :santa:

    General Discussion

  • CDEBYTE's new NRF24 modules are great! (and cheap)
    ร รอเรือ

    @skywatch said in CDEBYTE's new NRF24 modules are great! (and cheap):

    What current rating is the power source you are using?

    I intend to run them on power level RF24_PA_MAX. I have tried other power levels in my efforts without any success.

    @yveaux said in CDEBYTE's new NRF24 modules are great! (and cheap):

    recently received the same Nano IO shields and discovered the IO lines to the nRF are fed through a voltage divider; levels are halved w.r.t. direct connection.
    According to Nordic's datasheet this should be ok (minimum HIGH level input voltage is 0.7 * VDD, so 0.7 * 3.3V = 2.31V) as long as your Arduino is fed with 5V this should just work, but it is tricky IMHO.
    You could measure the VCC of the Nano to see if it is below 5V, or try powering the board through the power jack and see if things improve.

    That's interesting. I'm powering it with USB only but i have tried to connect an additional power source as well but it made no difference, I will do some more tests and measure the voltage levels.

    @yveaux said in CDEBYTE's new NRF24 modules are great! (and cheap):

    Did you also try the shielded module with #define MY_RF24_PA_LEVEL RF24_PA_MIN ?

    From what I recall, I have tried RF24_PA_LOW. I will test RF24_PA_MIN too.

    @yveaux said in CDEBYTE's new NRF24 modules are great! (and cheap):

    Currently I'm out of Nanos, but as soon as the new batch comes in I can replicate your setup.

    I'd be happy to send you one from my batch. Please send me a PM if you'd like that.

    @alowhum said in CDEBYTE's new NRF24 modules are great! (and cheap):

    Since moving to these boards all my connection troubles have stopped. I'm very happy with them.

    Sounds very promising :grinning:

    General Discussion

  • CDEBYTE's new NRF24 modules are great! (and cheap)
    ร รอเรือ

    @yveaux

    I have spent 2 days trying to solve my various NRF24 related problems at my home.

    What I'd like to achieve is to make my serial gateway using a NRF24-transciever with an external antenna to extends it's range.

    CDEBYTE's new NRF24-transciever (the unshielded one) works in my serial gateway (built with a Nano IO Shield) and fed with USB power only. I can attach a separate power source if I want to but it seems to work well without it.

    However, CDEBYTE's new shielded NRF24-transciever (Shielded nRF24L01 PA+LNA) refuses to work. I get only NACKs in the log even if I attach a separate power source. I've also tried just connecting my Nano board directly to the radio with cables (without the IO shield) just like in the Build a serial gateway demo. (I've tried all kind of power settings) I also tried to power the radio with a battery. Those NACKs are resilient indeed. Of course I've tried all kind of decouple capacitors and several combinations of electrolytic and ceramic ones... No way.

    BUT, there is always a but isn't there? ... I have managed to get the CDEBYTE Shielded nRF24L01 PA+LNA to work stable on a battery powered node, a Pro Mini ATmega 328 (1.8V 1 MHz). I can't tell why that works while not working with the Nano.

    My current working solution is using the "old" unshielded nRF24L01 PA+LNA mounted on the Nano IO Shield fed with usb power only. #define MY_RF24_PA_LEVEL RF24_PA_MAX While this seems to work (at least for the moment) I can not just switch to using the shielded radio.

    So if someone succeeds using the CDEBYTE Shielded nRF24L01 PA+LNA connected to a Nano board I'm interested to hear how you made it work.

    The thing is that everything that I have tried gives so random results that it's driving me crazy. Whatever seems to work one minute stops to work the next minute.

    General Discussion

  • CDEBYTE's new NRF24 modules are great! (and cheap)
    ร รอเรือ

    @yveaux I'll investigate further today and report here afterwards. Thanks.

    General Discussion

  • CDEBYTE's new NRF24 modules are great! (and cheap)
    ร รอเรือ

    @alowhum said in CDEBYTE's new NRF24 modules are great! (and cheap):

    I've also ordered a shielded version that I'm still waiting for.

    Today, I've tried the unshielded one and the few that I've tried seem to work.

    However, I haven't been able to make the shielded one work on a IO Shield for Arduino Nano. I've used antennas from older traditional NRF24L01+PA+LNA Antenna version. No way. I will try different decoupling-Capacitors tomorrow.

    I feel I'm stuck in the NRF24-hell...

    General Discussion

  • Interrupted sleep
    ร รอเรือ

    @mfalkvidd Thanks a lot for your suggestion. I will think this through during the day. It might still be problems due to the dynamic nature of the rain.

    It would be hard for me to define a reasonable good value for MAX_NUMBER_OF_TRIPS_WITHOUT_SENSOR_REPORT when rain in the interval ranging from 11 mm per hour up to maybe as much as 240 mm per hour (extreme but not impossible) would disrupt the readings of other sensors.

    I also have a doubt that my sketch will work well in a case where the Arduino is already awake (handling other sensors) when the rain bucket tips. It's just a guess but I believe that the tipping will not be counted at all in such a scenario.

    What do you think? If so my sketch is badly designed (only myself to blame) and maybe I should consider giving the rain gauge it's own Arduino board. It would make things much cleaner. What do you think?

    @Yveaux, you are right.

    Development

  • Interrupted sleep
    ร รอเรือ

    Hi guys.

    I have a sketch for a battery powered node that sleeps a certain amount of time, let's say 2 minutes. unsigned long SLEEP_TIME = 120000; // Wait time between reads (in milliseconds) When it wakes up, it will check a few sensors and report new values (if any) to the gateway. So far so good.

    However (there's always a but, isn't there?), the 2 minute sleep is allowed to be interrupted by the change of a pin. That pin is connected to a rain meter. Measuring the rain must be done instantly.

    Every time that the loop() function runs, other sensors are checked.

    That's OK if it rains normally but sometimes it rains like h*ll. I'm concerned that the rain meter will be tripped so frequently that there is no time to check other sensors and report them to the gateway.

    I'm useless when it comes to explain things. But I'd like the rain sensor to report whenever the rain sensor is tripped. I would like the other sensors to report at the 2 minutes interval regardless of the rain sensor. As it is now, every time the rain sensor interrupts the sleep, all sensors gets checked. I would like it to report the rain and go back to sleep the REMAINING SLEEP TIME. I understand if my explanation is beyond what ca be understood (it's worse than Kurt Olsson) so I add the source below:

    /**
     * WeatherStation
     * 
     * DESCRIPTION
     * Arduino BH1750FVI Light sensor
     * communicate using I2C Protocol
     * this library enable 2 slave device addresses
     * Main address  0x23
     * secondary address 0x5C
     * connect the sensor as follows :
     *
     *   VCC  >>> 5V
     *   Gnd  >>> Gnd
     *   ADDR >>> NC or GND  
     *   SCL  >>> A5
     *   SDA  >>> A4
     * http://www.mysensors.org/build/light
    
    
    https://forum.mysensors.org/topic/9359/soft-wdt-reset-on-esp8266-rfm69-gateway-after-find-parent/20
    Connecting the BME280 Sensor:
    Sensor              ->  Board
    -----------------------------
    Vin (Voltage In)    ->  3.3V
    Gnd (Ground)        ->  Gnd
    SDA (Serial Data)   ->  A4
    SCK (Serial Clock)  ->  A5
    
    
    For temperature measurements we've selected the standard Dallas DS18B20.
    
    */
    
    #define MY_NODE_ID 15
    #define SKETCH_NAME "Weather Station"
    #define SKETCH_VERSION "1.1"
    #define DWELL_TIME 200  // this allows for radio to come back to power after a transmission, ideally 0
    
    // Enable debug Serial.prints to serial monitor
    //#define MY_DEBUG 
    
    #if defined MY_DEBUG
    
    #define Sprintln(a) (Serial.println(a))
    #define Sprint(a) (Serial.print(a))
    #else 
    #define Sprintln(a)
    #define Sprint(a)
    #endif
    
    // Enable and select radio type attached
    #define MY_RADIO_NRF24
    //#define MY_RADIO_RFM69
    
    #include <SPI.h>                                  // A communication backbone, the Serial Peripheral Interface.
    #include <MySensors.h>                            // The MySensors library.
    #include <Wire.h>                                 // Enables the Wire communication protocol.
    #include <DallasTemperature.h>
    #include <OneWire.h>
    #include <BH1750.h>
    //#include <BME280I2C.h> // From Library Manager
    #include <Adafruit_Sensor.h>
    #include <Adafruit_BME280.h>
    #undef BME280_ADDRESS         // Undef BME280_ADDRESS from the BME280 library to easily override I2C address
    #define BME280_ADDRESS (0x76) // Low = 0x76 , High = 0x77 (default on adafruit and sparkfun BME280 modules, default for library)
    
    uint8_t tipSensorPin = 3; // Pin the tipping bucket is connected to. Must be interrupt capable pin
    
    #define CHILD_ID_LIGHT 0
    #define CHILD_ID_TEMP_1 1
    #define CHILD_ID_TEMP_2 2 // Dallas DS18B20
    #define CHILD_ID_HUM 3
    #define CHILD_ID_BARO 4
    #define CHILD_ID_RAIN 5
    
    unsigned long SLEEP_TIME = 120000; // Wait time between reads (in milliseconds)
    #define FORCE_TRANSMIT_CYCLE 30
    uint8_t cycleCountLux = 0;
    uint8_t cycleCountPressure = 0;
    uint8_t cycleCountTemp2 = 0;
    uint8_t cycleCountHum = 0;
    
    int8_t interruptedBy = -1;
    
    Adafruit_BME280 bme; // I2C
    BH1750 lightSensor;
    
    #define ONE_WIRE_BUS 5 // Digital pin where dallas sensor is connected 
    OneWire oneWire(ONE_WIRE_BUS); // Setup a oneWire instance to communicate with any OneWire devices (not just Maxim/Dallas temperature ICs)
    DallasTemperature DS18B20sensor(&oneWire); // Pass the oneWire reference to Dallas Temperature. 
    
    uint16_t lastLux;
    float lastPressure;
    //float lastTemp1; // Temp from the BME280 Temp Hum Bar Sensor
    float lastTemp2; // Dallas DS18B20. Temp
    float lastHum;
    
    float tempThreshold = 0.2;                        // How big a temperature difference has to minimally  be before an update is sent. Makes the sensor less precise, but also less jittery, and can save battery.
    uint8_t humThreshold = 1;                         // How big a humidity difference has to minimally be before an update is sent. Makes the sensor less precise, but also less jittery, and can save battery.
    uint8_t presThreshold = 1;
    uint8_t luxThreshold = 1;
    
    MyMessage msgLight(CHILD_ID_LIGHT, V_LEVEL);  
    MyMessage msgTemp1(CHILD_ID_TEMP_1, V_TEMP);
    MyMessage msgTemp2(CHILD_ID_TEMP_2, V_TEMP);
    MyMessage msgHum(CHILD_ID_HUM, V_HUM);
    MyMessage msgPressure(CHILD_ID_BARO, V_PRESSURE);
    MyMessage msgRain(CHILD_ID_RAIN, V_TRIPPED);
    
    void setup()  
    {
      Wire.begin(); // Wire.begin(sda, scl) // starts the wire communication protocol, used to chat with the BME280 sensor.
      Sprint(SKETCH_NAME);
      Sprint(F(" version "));
      Sprint(SKETCH_VERSION);
      Sprint(F(" (using MY_NODE_ID: "));
      Sprint(MY_NODE_ID);
      Sprintln(F(") says hello!"));
      delay(500);// just in case
      Sprintln(F("Running bme.begin()"));
      if (!bme.begin())
       {
        Serial.println("BME init failed!");
       }
      else Sprintln("BME init success!");
      Sprintln(F("Running lightSensor.begin()"));
      lightSensor.begin();
      Sprintln(F("Running DS18B20sensor.begin()"));
      DS18B20sensor.begin(); // Startup up the OneWire library used for Dallas DS18B20 Temp
      DS18B20sensor.setWaitForConversion(false); // requestTemperatures() will not block current thread
      pinMode(tipSensorPin, INPUT); // sets the rain sensor digital pin as input
    }
    
    void presentation()  {
      // Send the sketch version information to the gateway and Controller
      sendSketchInfo(SKETCH_NAME, SKETCH_VERSION);
      wait(DWELL_TIME);
      // Register all sensors to gateway (they will be created as child devices)
      present(CHILD_ID_LIGHT, S_LIGHT_LEVEL);
      wait(DWELL_TIME);
      //present(CHILD_ID_TEMP_1, S_TEMP); //  Temp sensor on the BME280 multi sensor
      //wait(DWELL_TIME);
      present(CHILD_ID_TEMP_2, S_TEMP); // Dallas DS18B20. Temp
      wait(DWELL_TIME);
      present(CHILD_ID_HUM, S_HUM);
      wait(DWELL_TIME);
      present(CHILD_ID_BARO, S_BARO);
      wait(DWELL_TIME);
      present(CHILD_ID_RAIN, S_MOTION);
      wait(DWELL_TIME);
    }
    
    void loop()      
    {
      bool rainBucketTripped = (interruptedBy == digitalPinToInterrupt(tipSensorPin));
    
      wait(500); // Give radio some time to warm up
    
      cycleCountLux++;
      cycleCountPressure++;
      cycleCountTemp2++;
      cycleCountHum++;
    
      if (rainBucketTripped) {
        Sprintln("Tipping bucket rain sensor was tripped");
        send(msgRain.set(1));  // Send tripped value to gw
        wait(DWELL_TIME);
      }
    
      // Fetch temperature from Dallas DS18B20 Temp sensor
      DS18B20sensor.requestTemperatures();
    
      // query conversion time and sleep until conversion completed
      int16_t conversionTime = DS18B20sensor.millisToWaitForConversion(DS18B20sensor.getResolution());
      // sleep() call can be replaced by wait() call if node need to process incoming messages (or if node is repeater)
      sleep(conversionTime);
      // Fetch and round temperature to one decimal
      float temp2 = static_cast<float>(static_cast<int>((getControllerConfig().isMetric?DS18B20sensor.getTempCByIndex(0):DS18B20sensor.getTempFByIndex(0)) * 10.)) / 10.;
      if (isnan(temp2)) {
        Sprintln("Failed reading temp2");
      } else if (((abs(temp2 - lastTemp2) >= tempThreshold) or (cycleCountTemp2 >= FORCE_TRANSMIT_CYCLE)) && temp2 != -127.00 && temp2 != 85.00) {
        // Only send temp2 if it changed since the last measurement
        lastTemp2 = temp2;
        cycleCountTemp2 = 0;
        Sprint("Temperature: ");
        Sprint(temp2);
        Sprintln("°C");
        send(msgTemp2.set(temp2 ,1));
        wait(DWELL_TIME);
      }
    
      uint16_t lux = lightSensor.readLightLevel();// Get Lux value
      if (isnan(lux)) {
        Sprintln("Failed reading lux");
      } else if ((abs(lux - lastLux) >= luxThreshold) or  (cycleCountLux >= FORCE_TRANSMIT_CYCLE)){
        // Only send Lux if it changed since the last measurement
        lastLux = lux;
        cycleCountLux = 0;
        Sprint("Light: ");
        Sprint(lux);
        Sprintln(" Lux");
        send(msgLight.set(lux));
        wait(DWELL_TIME);
      }
    
      double pres, hum;
      pres=bme.readPressure()/100.0;
      hum=bme.readHumidity();
    
      if (isnan(hum)) {
        Sprintln("Failed reading humidity");
      } else {
        hum = round(hum);
        if ((abs(hum - lastHum) >= humThreshold) or (cycleCountHum >= FORCE_TRANSMIT_CYCLE)){
          // Only send humidity if it changed since the last measurement
          lastHum = hum;
          cycleCountHum = 0;
          Sprint("Humidity: ");
          Sprint(hum);
          Sprintln("% RH");
          send(msgHum.set(hum, 0));
          wait(DWELL_TIME);
        }
      }
    
      if (isnan(pres)) {
        Sprintln("Failed reading pressure");
      } else {
        pres = round(pres);
        if ((abs(pres - lastPressure) >= presThreshold) or (cycleCountPressure >= FORCE_TRANSMIT_CYCLE)) {
          // Only send pressure if it changed since the last measurement
          lastPressure = pres;
          cycleCountPressure = 0;
          Sprint("Pressure: ");
          Sprint(pres);
          Sprintln(" hPa");
          send(msgPressure.set(pres, 0));
          wait(DWELL_TIME);
        }
      }
    
      // Sleep until interrupt comes in on rain tip bucket sensor. Send update every SLEEP_TIME.
      Sprintln(F("Waiting ")); Sprint(SLEEP_TIME /1000); Sprintln(F(" seconds before next reading."));
      interruptedBy = sleep(digitalPinToInterrupt(tipSensorPin), CHANGE, SLEEP_TIME);
    }
    

    Another try to explain: When it rains heavily, I don't want to check and report humidity and temp. Humidity and temp should be reported in the interval that I've set in SLEEP_TIME.

    alt text

    Can it be done?

    Development

  • Misol rain gauge tipping bucket rain amount
    ร รอเรือ

    @hek

    I let 1126-202 grams water slowly flow into the 55 cm2 gauge and it generated 475 tips.

    That gives me 0.3537 mm/tip. I'll go with that. :relaxed:

    Hardware

  • Misol rain gauge tipping bucket rain amount
    ร รอเรือ

    @hek Thanks! I just saw that while editing my first post. It sounds a little bit low.

    Hardware
  • Login

  • Don't have an account? Register

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