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
HeinzH

Heinz

@Heinz
Hero Member
About
Posts
125
Topics
14
Shares
0
Groups
1
Followers
2
Following
0

Posts

Recent Best Controversial

  • Sensor for Vallox DigitSE RS485 ventilation system with integration into FHEM.
    HeinzH Heinz

    Note that you can make use of any MAX485 module that is suitable for the arduino (5V). Basically they are all the same except for a few minor tweaks like LEDs or other non relevant stuff.

    My Project rs485 vallox fhem

  • Sensor for Vallox DigitSE RS485 ventilation system with integration into FHEM.
    HeinzH Heinz

    Well basically the part list is very simple

    1x Arduino Mega 2560
    1x NRF24L01+
    1x Pushbutton
    2x MAX485 Module TTL Switch Module (one for sender, one for receiver)
    (e.g. https://protosupplies.com/product/max485-ttl-to-rs-485-interface-module/)

    The 1x Resistor 120Ohms is only neccessary if not already mounted on the MAX485 Module. It depends on what module
    you bought. So have a look at the layout and check if there is a 120Ohms resistor mounted between pins A and B.
    The module (https://protosupplies.com/product/max485-ttl-to-rs-485-interface-module/) already contains that resistor.

    Optionally you can add a capacitor between + and - to stabilize the voltage level if your power supply is a weak one.
    Anyone will do like 10uF, 100uF...

    My Project rs485 vallox fhem

  • Sensor for Vallox DigitSE RS485 ventilation system with integration into FHEM.
    HeinzH Heinz

    Ok ... after my holidays.

    My Project rs485 vallox fhem

  • Sensor for Vallox DigitSE RS485 ventilation system with integration into FHEM.
    HeinzH Heinz

    Hi @captaindork
    sorry for delay,.... the position of the damper (which is the bypass) is indicated through a single bit of the multi purpose IO-Port 2. The library defines that as property 38 DamperMotorPositionProperty.
    In the mysensors example it is published as
    const uint8_t DAMPER_MOTOR_POSITION = 42;
    The value is either 1 or 0.

    I mapped it in FHEM as follows

    attr MYSENSOR_Vallox mapReading_DamperMotorPosition 42 value1
    
    define MYSENSOR_Vallox_DamperMotorPosition dummy
    attr MYSENSOR_Vallox_DamperMotorPosition alias WRG-Bypass
    attr MYSENSOR_Vallox_DamperMotorPosition devStateIcon 1:rc_GREEN 0:rc_BLANK
    attr MYSENSOR_Vallox_DamperMotorPosition event-on-update-reading state
    attr MYSENSOR_Vallox_DamperMotorPosition group Status
    attr MYSENSOR_Vallox_DamperMotorPosition icon vent_bypass
    attr MYSENSOR_Vallox_DamperMotorPosition room Lüftung
    attr MYSENSOR_Vallox_DamperMotorPosition sortby 3
    define MYSENSOR_Vallox_DamperMotorPosition_Notify notify MYSENSOR_Vallox:DamperMotorPosition:.* { my $d = sprintf ("%.0f", ReadingsVal("MYSENSOR_Vallox","DamperMotorPosition", 0));; fhem("set MYSENSOR_Vallox_DamperMotorPosition $d");;}
    define MYSENSOR_Vallox_DamperMotorPosition_Notify2 at +*00:01:00 { my $d = sprintf "%.0f", ReadingsVal("MYSENSOR_Vallox","DamperMotorPosition", 0);; fhem("set MYSENSOR_Vallox_DamperMotorPosition $d");;}
    
    
    My Project rs485 vallox fhem

  • Bosch BME680 Sensor
    HeinzH Heinz

    @sm_ali
    You can have a look at this lib here
    https://raw.githubusercontent.com/DFRobot/DFRobot_BME680/master/bme680.c

    there is code that handles the calib thing

    My Project

  • Air quality node
    HeinzH Heinz

    @neverdie yes that is the plan

    General Discussion

  • Air quality node
    HeinzH Heinz

    @neverdie same with me. I gave up using the BME680 for the same reasons you have. It is cheap and offers 4 readings in one chip but can not be really used with a small microcontroller like arduino nano or the sensebender micro as Bosch does all the drift compensation using software that requires large memory.
    I believe theis chip was meant to be used in smartphones instead of homeautomation sensors.
    I will order a SGP30 today. Thanks for pointing into that direction...
    Gr Heinz

    General Discussion

  • Bosch BME680 Sensor
    HeinzH Heinz

    @alexsh1
    No I am not using the BSEC library. I read the raw values of the resistance and calculate the first derivative for triggering the ventilation system. The ventilation system is turned on, when
    (delta resistance)/minute > threshold

    Sometimes the ventilation is also triggered when I open my fridge. Then the smell of food coming out of the fridge also fires the trigger.

    It is said that the sensor is very sensitive to any kind of silicone which is basically everywhere in the air when you have dishes created from silicone in your kitchen. Silicone poisens/blinds the sensor immediately for several hours.
    So be careful when making experiments with it.

    My Project

  • Bosch BME680 Sensor
    HeinzH Heinz

    I like the BME680 sensor as it has a very low power consumption. But it has also some disadvantages that have impact on the application and the environment it should be used.
    As far as I know the sensor was developed to be used in mobile phones or smart watches. Those devices are exposed to "fresh air" almost every day which makes it possible to estimate the air quality from the resistante of the sensor. The resistance of the sensor increases over the weeks and months as the internal chemical layer is exhausted or used up depending on the environment it is exposed to. The fading of the resistance can be compensated through smart algorithms that work on historical data (see post above). When the sensor is exposed to "fresh air" once a day, the algorithm can use this value as a kind of reference value to estimate the air quality index.
    But if you want to use this sensor for indoor applications, where the environment is very constant or changing very slowly, then I doubt that the algorithm is able to calculate an exact value for the air quality index.
    Knowing this means that you can use the sensor resistance also without the BSEC library and with your own simplified algorithm when "recalibration with fresh air" is done sometimes on your own. Another useful application could also be an outdoor weather station where the sensor is exposed to fresh air most of the time.
    All in all it is a cool product as it offers other measurements, too which spares hardware and minimizes the costs. In addition to that you can change the meaurement parameters of the sensor on your own as a good user manual of the sensor is also available.

    I am using the sensor in my kitchen to detect when someone is cooking. In this case I am not interested in the absolute resistance, but in the change over time. If the air quality gets worse in a very short time (resistance change per minute), then I can activate the ventilation system. The same could be done on the toilet :)

    best regards Heinz

    My Project

  • [Solved] Help: gateway is sometimes receiving wrong values
    HeinzH Heinz

    Studying the log files of the night I found one damaged value

    2017-11-04_23:02:43 MYSENSOR_BME680_R 33597 Ohm
    2017-11-04_23:02:53 MYSENSOR_BME680_R 33760 Ohm
    2017-11-04_23:03:04 MYSENSOR_BME680_R 33814 Ohm
    2017-11-04_23:03:25 MYSENSOR_BME680_R 33705 Ohm
    2017-11-04_23:03:25 MYSENSOR_BME680_R 2164818857 Ohm
    2017-11-04_23:03:36 MYSENSOR_BME680_R 33814 Ohm
    2017-11-04_23:03:46 MYSENSOR_BME680_R 33869 Ohm
    2017-11-04_23:04:07 MYSENSOR_BME680_R 33624 Ohm
    2017-11-04_23:04:49 MYSENSOR_BME680_R 33924 Ohm

    Well, exchanging the radio improved the situation significantly, but unfortunately the problem might be still there....

    Bug Reports

  • [Solved] Help: gateway is sometimes receiving wrong values
    HeinzH Heinz

    Ok, it seems that I found the cause of the problem: after changing the radio everything works as expected:

    Here the green line with sporadic wrong values:
    0_1509743234795_BME680.png

    And here the result with a new radio:
    0_1509743267882_BME680-2.png

    --> SOLVED

    Bug Reports

  • [Solved] Help: gateway is sometimes receiving wrong values
    HeinzH Heinz

    I am not using the beta but the standard 2.0.0 release

    Bug Reports

  • [Solved] Help: gateway is sometimes receiving wrong values
    HeinzH Heinz

    Arduino uno with Ethernet
    https://forum.mysensors.org/uploads/upload-2ceff83a-1538-4fd4-816d-d3cfef6e0c06.JPG

    mysensors 2.0

    Bug Reports

  • [Solved] Help: gateway is sometimes receiving wrong values
    HeinzH Heinz

    Then I will exchange the radio...

    Bug Reports

  • [Solved] Help: gateway is sometimes receiving wrong values
    HeinzH Heinz

    Yes the left one is printed directly from the sensor node.
    Why does it look corrupted from the start???

    The value to be transmitted is an uint32_t which represents a resistance in Ohm.
    On the left side the values are ok, but the value received from the gateway is sometimes a very large one.
    This occurs sporadically 1-3 times per hour. The value should be transfered every 10 seconds.

    All other nodes here in my home work very well. Only this one makes problems.
    Adruino Uno, NRF, BME680 breakoutboard from watterott (http://www.watterott.com/de/BME680-Breakout) via I2C.

    The strange thing is that not only the value is damaged, but also the type.
    Sketch can be found here:
    https://github.com/windkh/mysensors/tree/master/BME680Sensor

    Bug Reports

  • [Solved] Help: gateway is sometimes receiving wrong values
    HeinzH Heinz

    Nobody who can explain the jammed data on 16:21:30?
    What happens if two sensors send data at the same time?

    Bug Reports

  • [Solved] Help: gateway is sometimes receiving wrong values
    HeinzH Heinz

    Hi maybe someone can help me with a strange problem.
    I noticed that one of my sensors sent wrong values (very high ones).
    So I added some serial prints in the sketch and connected the MysController to log the values received from the gateway.

    Here is a picture where you can see the comparision between the output of the sensor 103 and the received values:
    0_1509637032587_2017-11-02 16_21_59-BME680Sensor-2.png

    The red rectangles show the inconsistent values, while the blue value can not be found at all.
    The green rectangle seems to be an unexpected type: S_TEMP was received, but S_AIR_QUALITY was expected.

    The following screenshot is the raw data from the sam scenario:
    0_1509637144681_2017-11-02 16_23_09-MYSController 1.0.0beta (build 3314).png

    The value I am sending is of type uint32_t:
    MyMessage resistanceMsg(CHILD_ID_RESISTANCE, V_LEVEL);
    present(CHILD_ID_RESISTANCE, S_AIR_QUALITY);
    send(resistanceMsg.set(lastResistance)

    Any suggestions what went wrong here???

    Bug Reports

  • Bosch BME680 Sensor
    HeinzH Heinz

    I just created a sketch for controlling a BME680 sensor via I2C.
    For the ones who are interested in it, the sketch can be downloaded at:
    https://github.com/windkh/mysensors/tree/master/BME680Sensor

    Right now only the gas resistance value is transmitted as the air quality value (IAQ) can only be calculated when you make use of the closed source library from Bosch (which is by the way only available for ARM, X86, ...)

    The pressure is, like on the BME280 ,an absolute value. The sketch calculates the sealevel pressure from it.

    I am using the breakout board from watterott which can be found here:
    https://github.com/watterott/BME680-Breakout

    Right now you have to download this library in order to be able to compiile the sketch:
    https://github.com/windkh/BME680_Breakout
    This fork replaces the original I2C read and write routines from https://github.com/vicatcu/BME680_Breakout.

    Wiring:
    I am using a standard Arduino Uno with Radio attached to the standard pins with the mysensors 2.0 lib.
    To connect the breakout-board you need 4 wires:

    Breakout --> Arduino
    GND - GND
    NC
    VCC - 3.3V
    SCL - A5
    SDA - A4
    SDO
    CS

    The chip supports SPI and I2C. I used SCL and SDA for I2C and left SDO and CS disconnected.

    The next steps will be making the air quality values useful by finding an appropriate algorithm... stay tuned.

    My Project

  • 💬 Atmospheric Pressure Sensor
    HeinzH Heinz

    Which altitude did you enter, or at which sealevel do you live (in meters)?

    const float ALTITUDE = 688; // <-- adapt this value to your own location's altitude.
    

    The pressure of 728 hPa is a bit strange as it should be around 1000 hPa. In my eyes you threw out the code to correct the pressure depending on the sealevel of your home. See the code from my sketch:

    float pressure = bmp.seaLevelForAltitude(SEALEVEL, absolutePressure);
    

    Here you can download the sketch I am using:
    https://github.com/windkh/mysensors/blob/master/WeatherStationSensor/WeatherStationSensor.ino

    The forecast will be unknown for at least 30minutes, because the sensor needs that time to detect a weather trend.

    Announcements pressure bmp085

  • Sensor for Vallox DigitSE RS485 ventilation system with integration into FHEM.
    HeinzH Heinz

    The "no reply" message is from the mysensors library, but I don't know what it means.
    The line "started cyclic update timer" indicates that the sensor initialized successfully, but it is missing in your output.

    My latest code is online at
    https://github.com/windkh/valloxserial/blob/master/examples/mysensors/ValloxSensor.ino

    My Project rs485 vallox fhem
  • Login

  • Don't have an account? Register

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