Foogadgets
Wireless Multi-sensor Mk2
Manual
Rev.2
Temperature/Humidity sensor input
DS1820, DS18B20, DS18S20, DS1822
The Wireless Multi-sensor Mk2 (from now on WMS) use the 433MHz frequency band to transmit sensor readings over the air. The WMS is compatible with Tellstick DUO, Tellstick NET and RFXtrx433(E) transceivers.
It is a true multi-sensor in the sense that it is possible to connect multiple sensors to one single WMS. The WMS will query all connected sensors once a minute, and transmit each reading, one by one over the air. At the receiving end this will be seen as several separate sensors.
The WMS have 3(+1) input. Each input will be explained in more detail below, but first a short summary of the inputs,
At power-on, the sensor will send a burst of ON/OFF(1)-event packages to help verify that the WMS is detected by your transceiver (Tellstick DUO, Tellstick NET or RFXtrx433(E)). The WMS will be identified as a Nexa LMST-606 door switch and as a Viking Temperature/Humidity sensor.
Rev.2
This is a general event input that can be used with whatever sensor that is capable of outputting some kind of on/off signal (0V to 5V), or capable of acting as a on/off switch. When the signal goes high, there will be a ON packet sent. When the signal goes low there will be an OFF package sent.
The same input is used for the CO2-sensor, S8 from SenseAir. The input need to be configured first so that it can read the sensors 1kHz PWM output signal (cf. CO2 Input).
A Nexa package similar to the one sent from the LMST-606. The package sent will alternate between on and off.
To be able to decode the package the AC protocol need to be Enabled on the RFXtrx433(E)
When the WMS is powered on it will send a ON package within a few seconds after start up.
The Sensor Identification code can be altered by changing EEPROM address 0x03.
The Event input can be configured as a 1kHz PWM input. Any sensor that outputs a 1kHz PWM signal can be connected to the CO2 Input (also Event input). First the Event input need to be changed to CO2 sensor input
The mode is conserved after a power outage. To alter the mode to an Event input, repeat the steps from 1.
When the WMS is powered on it will send an OFF package within a few seconds after start up to indicate that it is in CO2 mode.
NOTE! The CO2-sensor consumes relatively much power. 300mA peak and 30 mA average. This shortens the battery lifetime considerably and it is thus recommended to use a USB mobile charger or similar if a CO2 sensor is being used. |
Fineoffset temperature/humidity sensor
The Sensor Identification code can be altered by changing EEPROM address 0x05.
This input is specifically designed to be used for the DHT22 sensor. The sensor comes in different packages and have different names. AM2302 is a wired version of the DHT22. RHT03 is another name of the DHT22. This sensor can be connected with a cable up to 100m.
Fineoffset temperature/humidity sensor
The sensorID is by default a random number, but WMS individually connected number that will be conserved even after a power outage.
The sensorID can be altered by changing EEPROM address 0x04.
1-Wire is a very commonly used bus that have the strenght of only needing one signal wire to do all the communication between the 1-Wire devices. Another strength is that the cable connecting all the sensors can be very long.
The total length of a 1-Wire network can be 100 - 200 meter long. Maxim Integrated have a good guide of how to dimension the 1-Wire network, Guidelines for reliable long line 1-Wire networks
The WMS has been tested with ~75m cable and 30 1-Wire devices connected at the same time.
NOTE! Parasite mode is not supported. |
If you find a sensor that is based on any of those devices it is very likely that it is compatible with the WMS Mk2 1-Wire bus.
Presented as a Fineoffset temperature sensor.
The sensorID is automatically generated and conserved after a power outage.
Communication between the sensor and the WMS Mk2 is validated with a checksum.
Presented as a Fineoffset temperature sensor.
The sensorID is automatically generated and conserved after a power outage.
There will be 4 consecutive sensorID:s generated to present each Analog-Digital channel output.
Fineoffset temperature sensor.
The sensorID is automatically generated and conserved after a power outage.
Communication between the sensor and the WMS Mk2 is validated with a checksum.
Since the maximum possible temperature is 204.7°C for the fineoffset protocol, the temperature has been devided by a factor of 10. A read value of 10.2°C thus corresponds to a actual temperature of 102°C
Voltage: Min 2.5V Max 5.5V (Sensor dependent)
Input connectors: Micro USB, Screw terminals, soldering pads for (DHT22)
Frequency: 433MHz, OOK
Protocol: Improved Fineoffset including CRC-protected data and Nexa
Supported transceivers: Tellstick DUO, Tellstick NET and RFXtrx433(E)
RF power: 13dBmW@2.4V, 15dBmW@3V, 20dBmW@5V
20dBmW is equal to 100mW
Sensor | Min Voltage | Max Voltage |
DHT22 / AM2302 / RHT03 | 3.3V | 5.5V |
S8 (CO2-sensor) | 4.5V | 5.25V |
DS18X20,DS1822,DS1820 | 3V | 5V |
MAX31855 | 3.3V | 5V |
Box from Hammond (Part.no.1551GBK) is a perfect fit for the WMS.
In this chapter it is described how the software in the WMS can be updated or tweaked to better fit the existing home automation system.
Prerequisites
NOTE! Disconnect any sensor(s) connected to the Event input or the 1-Wire input while changing/updating the WMS Software. |
Make sure you can connect the Pickit2/3 to the WMS Mk2 in a electrically robust way. The pinout of the Pickit is compatible with the WMS Mk2 programming interface U1. The dot on the WMS Mk2 marks pin number 1.
U1 is located on the bottom and opposite side of the micro USB port.
The following parameters can be changed
EEPROM Addr | Parameter | Default value |
0x0 | Reserved (DO NOT CHANGE) | 0 |
0x1 | Version (DO NOT CHANGE) | Not applicable |
0x2 | Variant (DO NOT CHANGE) | Not applicable |
0x3 | Event sensor ID | 0 This will generate a random number but consistent between battery change. |
0x4 | DHT sensor ID | 1 (0x01) |
0x5 | CO2 sensor ID | 2 (0x02) |
0x6 | Packet re-sends | 1 (0x01) |
0x7 | Time between the transmissions | 24 (0x18) The amount of ~2.5s periods to sleep between transmissions 24x2.5s=60s. Max allowed 255 (0xff) => 255*2.5s = 637s |
0x8 | Enable CO2 sensor | 0 Is by default configured as an Event input. Setting this to 1 (0x1) will enable 1kHz PWM input. See also CO2 Input |
To update any of the parameters above.
Connect the Pickit2/3 to the WMS Mk2.
The Progress/Status window will change to a green background if the update was successful.
It is possible to update the firmware.
Connect the Pickit2/3 to the WMS Mk2.
The Progress/Status window will change to a green background if the update was successful.
In some cases the OSCCAL value get corrupted. It can easily be re-generated with the Pickit2/3. Connect the Pickit2/3 to the WMS and choose option 1 and then 2.
After a few seconds the OSCCAL value has been re-generated and it will be possible to program the WMS again.
Wireless Multi-sensor Mk2 Rev.2