more sensor edits

blakadder 2019-11-03 23:45:36 +01:00
parent f235a7dc6f
commit 3ca1b7fdbb
28 changed files with 293 additions and 179 deletions

@ -1,4 +1,5 @@
**This feature is not included in precompiled binaries.** To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
**This feature is not included in precompiled binaries.**
To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
```
#ifndef USE_A4988_STEPPER
#define USE_A4988_STEPPER // A4988/DRV8825 stepper motor (+10k5 code)

49
AM2301.md Normal file

@ -0,0 +1,49 @@
AM2301 driver supports [AM2301 (DHT21)](https://kropochev.com/downloads/humidity/AM2301.pdf), [AM2302 (DHT22)](https://www.sparkfun.com/datasheets/Sensors/Temperature/DHT22.pdf) and [AM2321](http://akizukidenshi.com/download/ds/aosong/AM2321_e.pdf) temperature and humidity sensors.
> Introduced in Tasmota through [Sonoff AM2301](https://sonoff.tech/product/accessories/am2301) accessory for [Sonoff TH](sonoff-th).
**This driver is ONLY for **single wire** implementations of the sensor.**
## Configuration
### Wiring
| AM2301 | ESP266 |
|---|---|
|- |GND |
|OUT |GPIOx |
|+ |3.3V |
## Tasmota
In the _Configuration -> Configure Module_ page assign:
- GPIOx to `AM2301 (2)`
After a reboot the driver will display temperature and humidity measured.
![image](https://user-images.githubusercontent.com/5904370/68092438-67639700-fe8b-11e9-86df-b2acdc05f9d7.png)
Sensor sends a `tele/%topic%/SENSOR` JSON reponse:
```json
{
"Time": "2019-01-01T00:00:00",
"AM2301": {
"Temperature": 24.6,
"Humidity": 58.2
},
"TempUnit": "C"
}
```
## Wemos DHT Shield
Like the [Wemos DHT11 shield specs](https://wiki.wemos.cc/products:retired:dht_shield_v1.0.0) the DATA OUT pin of Wemos DHT22 is connected to D4 of the Wemos.
![image](https://user-images.githubusercontent.com/5904370/68092516-5bc4a000-fe8c-11e9-916c-ec10e7e781b0.png)
### Tasmota Configuration
In the Configuration -> Configure Module page, select the following:
* **D4 GPIO2** : **02 AM2301**
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/wemos_dht22_config_marked.jpg"/>
### Sensors
Read more about [differences between sensors](http://www.kandrsmith.org/RJS/Misc/Hygrometers/calib_many.html).
![image](https://user-images.githubusercontent.com/5904370/68092629-85ca9200-fe8d-11e9-842f-803f36e8064c.png)

@ -1,4 +1,5 @@
**This feature is not included in precompiled binaries.** To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
**This feature is not included in precompiled binaries.**
To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
```
#ifndef USE_APDS9960
#define USE_APDS9960 // Enable APDS9960 Proximity Sensor (+4k7 code)
@ -19,14 +20,14 @@ Broadcom APDS-9960 is a digital RGB, ambient light, proximity and gesture sensor
| INT/IRQ | not used |
### Tasmota Configuration
In the **Configuration -> Configure Module** page assign GPIOs:
In the _Configuration -> Configure Module_ page assign:
1. GPIOx to `I2C SDA (6)`
2. GPIOy to `I2C SCL (5)`
After configuring the GPIO's the driver will detect the APDS-9960 automatically.
On first boot sensor will start in gesture mode. It will not appear in the webUI but it can be observed via MQTT messages in console:
```
```json
21:34:21 MQT: tele/tasmota/RESULT = {"Gesture":"Off"}
21:34:23 MQT: tele/tasmota/RESULT = {"Gesture":"On"}
21:34:25 MQT: tele/tasmota/SENSOR = {"Time":"2019-10-31T21:34:25","APDS9960":{"None":1}}
@ -62,7 +63,7 @@ Rule on APDS9960#Proximity=250 do backlog Sensor27 1; RuleTimer1 60 endon on Rul
```
Relay ON when ambient light is below 100 lux.
```
```
Rule on APDS9960#Ambient<100 do POWER ON endon
```

@ -12,13 +12,20 @@ Ambient Light Sensor IC](http://cpre.kmutnb.ac.th/esl/learning/bh1750-light-sens
|SCL | GPIOy
### Tasmota
In the **Configuration -> Configure Module** page assign GPIOs:
In the _Configuration -> Configure Module_ page assign:
1. GPIOx to `I2C SDA (6)`
2. GPIOy to `I2C SCL (5)`
After a reboot the driver will detect BH1750 automatically and display BH1750 Illuminance.
After a reboot the driver will detect BH1750 automatically and display Illuminance.
![image](https://user-images.githubusercontent.com/5904370/68090979-9ae9f580-fe7a-11e9-92b3-2fbcbcc71748.png)
Sensor sends a `tele/%topic%/SENSOR` JSON reponse:
```json
{"Time":"2019-11-03T20:45:37","BH1750":{"Illuminance":79}}
```
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/wemos_bh1750_main_marked.jpg" width=300>
## Breakout Boards
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/bh1750-light-intensity-sensor-front.jpg" width=225>

@ -24,7 +24,7 @@ After a reboot the driver will detect BME280 automatically and display temperatu
![](https://user-images.githubusercontent.com/5904370/68090360-337c7780-fe73-11e9-95a0-1ec84fae8090.png)
Also sends an `tele/%topic%/SENSOR` JSON reponse:
Sensor sends a `tele/%topic%/SENSOR` JSON reponse:
```json
{

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

@ -1,4 +1,6 @@
**This feature is not included in precompiled binaries.** To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
**This feature is included only in tasmota-sensors.bin**
Otherwise you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
```
#ifndef USE_BME680
#define USE_BME680 // Enable support for BME680 sensor using Bosch BME680 library (+4k code)
@ -11,6 +13,7 @@ _The BME680 takes those sensors to the next step in that it contains a small MOX
See [BME680 - Temperature, Humidity, Pressure and Gas Sensor](https://www.adafruit.com/product/3660) for more information.
## Configuration
### Wiring
@ -22,27 +25,27 @@ See [BME680 - Temperature, Humidity, Pressure and Gas Sensor](https://www.adafru
|SCL |GPIOy
### Tasmota
In the **Configuration -> Configure Module** page assign GPIOs:
1. GPIOx to `I2C SDA (6)`
2. GPIOy to `I2C SCL (5)`
In the _Configuration -> Configure Module_ page assign:
- GPIOx to `I2C SDA (6)`
- GPIOy to `I2C SCL (5)`
After a reboot the driver will detect BME680 automatically and display temperature, humidity, pressure and gas measured by the BME680.
After a reboot the driver will detect BME680 automatically and display temperature, humidity, pressure and gas resistance measured.
![](https://raw.githubusercontent.com/arendst/arendst.github.io/master/media/wemos/wemos-bme680-main-marked.jpg)
![image](https://user-images.githubusercontent.com/5904370/68091496-c96acf00-fe80-11e9-9669-8cc0b0111aa2.png)
Also sends an `tele/%topic%/SENSOR` JSON reponse:
Sensor sends a `tele/%topic%/SENSOR` JSON reponse:
```json
{
"Time": "2019-09-05T20:14:27",
"BME680": {
"Temperature": 28.0,
"Humidity": 38.8,
"Pressure": 1022.5,
"Gas": 5.08
},
"PressureUnit": "hPa",
"TempUnit": "C"
"Time": "2019-11-03T21:25:53",
"BME680": {
"Temperature": 27.7,
"Humidity": 65.2,
"Pressure": 989,
"Gas": 346.24
},
"PressureUnit": "hPa",
"TempUnit": "C"
}
```
## Breakout Boards

@ -1,4 +1,5 @@
**This feature is not included in precompiled binaries.** To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
**This feature is not included in precompiled binaries.**
To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
```
#ifndef USE_SHUTTER
#define USE_SHUTTER // Add Shutter support (+6k code)

@ -56,7 +56,7 @@ esptool.py --port COM3 erase_flash
Flash Tasmota.
### Step 9
Select the correct configuration under **Configuration -> Configure Module**
Select the correct configuration under _Configuration -> Configure Module_
### As an alternative for steps 2 to 5:
The following programming adapter could be an option, which requires no soldering or significant disassembly on the SHP-6.

@ -1,24 +1,64 @@
## DHT11 Shield Humidity & Temperature (single pin - retired)
DHT11 is a basic, ultra low-cost digital temperature and humidity sensor. It is very inaccurate and surpassed by others (AM2301, BME280, ...) thus not recommended by us.
## Configuration
### Wiring
| DHT11 | ESP266 |
|---|---|
|- |GND |
|OUT |GPIOx |
|+ |3.3V |
### Tasmota
In the _Configuration -> Configure Module_ page assign:
- GPIOx to `DHT11 (1)`
After reboot of the device the temperature and humidity are displayed.
### Wemos DHT11 Shield
_Note: this is ONLY for v1.0.0 of the DHT11 shield, since v2.0.0 uses I<sup>2</sup>C and pinned differently._
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/wemos_dth11_shield.jpg" align="right" width=300>
From the [Wemos DHT11 shield specs](https://wiki.wemos.cc/products:retired:dht_shield_v1.0.0) the DATA OUT pin is connected to D4 of the Wemos.
_Note: this is ONLY for v1.0.0 of the DHT11 shield, since v2.0.0 uses I<sup>2</sup>C and pinned differently._
### Tasmota Configuration
In the Configuration -> Configure Module page, select the following:
* **D4 GPIO2** : **01 DHT11**
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/wemos_dht11_config_marked.jpg"/>
### Tasmota Main
After reboot of the device the temperature and humidity are displayed.
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/wemos_dht11_main_marked.jpg"/>
_Note: Having the shield compact on top of the processor increases the temperature. In normal Mode this can be up to 6°C. So you should add sleep mode. Adding normal "Sleep 100" and putting the sensor vertically reduces the temperature difference to 2°C_
### OpenHab configuration
### Sonoff Basic specific
To wire a DHT11 up to a Sonoff Basic, I first soldered a pin header to the main pin header row. For the location see [GPIO Locations](GPIO-Locations#sonoff-basic).
I decided to use regular 2.54mm connectors (often referred to as Dupont connectors), so that I can switch sensors if I have to. In order to fit the dupont cables within the enclosure, I had to bend the 2.54mm pin headers by about 45°.
As the DHT11 requires a pullup (depending on the cable length), and I didn't want to design a PCB just to connect 3 wires and a resistor, I came up with the solution described below.
![](https://pbs.twimg.com/media/Dfutw9EW4AAB6IY.jpg)
First, I slipped ferrules over the DHT11 pins and inserted the wires. This makes it a lot easier to hold the cables and the DHT11 pins in place.
I left a bit more wire exposed so that I have a place to apply solder without burning the wire insulation. I applied heat to the ferrule, not the wire, and applied solder directly at the end of the ferrule.
Solder will then flow into the ferrule.
![](https://pbs.twimg.com/media/DfuuNi0XkAEYSyv.jpg)
I also added a small solder blob (visible on the top ferrule) so that I can solder an 0805 resistor in place. Thanks to the ferrule, the wires won't become detached when heated again. Keep in mind that the ferrule has quite some heat capacity, so wait for the solder to cool down prior moving the wires or the sensor.
![](https://pbs.twimg.com/media/DfuuvQKXUAAYaZx.jpg)
I then did shrink the 2:1 green heatshrink tubes so that the contacts don't touch each other.
Also, it is *so* very handy to have 4:1 shrinking tube. An 8mm 4:1 tube fits perfectly over the pins, and fully encloses the 3 wires.
Get 4:1 heatshrink tube. It's so worth it.
Here's how the finished project looks like:
![](https://pbs.twimg.com/media/Dfuz8TuWkAEfmTJ.jpg)
### OpenHab
sonoff.items:
```

@ -1,8 +1,10 @@
**This feature is not included in precompiled binaries.** To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
**This feature is not included in precompiled binaries.**
To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
```
#ifndef USE_DS3231
#define USE_DS3231 // Enable DS3231 external RTC in case no Wifi is avaliable. See docs in the source file (+1k2 code)
// #define USE_RTC_ADDR 0x68 // Default I2C address 0x68#endif
#define USE_DS3231 // DS3231 external RTC (+1k2 code)
// #define USE_RTC_ADDR 0x68 // Default I2C address 0x68
#endif
```
If you use a DS3231 with a different I<sup>2</sup>C address, uncomment and change to your address:
```
@ -22,9 +24,8 @@ Tasmota requires that its time be set in order to use timers. Usually, when the
|SDA | GPIOx
|SCL | GPIOy
### Tasmota Configuration
### Tasmota
In the **Configuration -> Configure Module** page assign GPIOs:
In the _Configuration -> Configure Module_ page assign:
1. GPIOx to `I2C SDA (6)`
2. GPIOy to `I2C SCL (5)`

@ -1,4 +1,5 @@
**This feature is not included in precompiled binaries.** To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
**This feature is not included in precompiled binaries.**
To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
## \#define directives

@ -1,6 +1,7 @@
# Please use this exact paragraph (formatting and links) at the beginning of an article for a feature that is not included in precompiled builds
**This feature is not included in precompiled binaries.** To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
**This feature is not included in precompiled binaries.**
To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
```
#ifndef USE_SHUTTER
#define USE_SHUTTER // Add Shutter support (+6k code)

@ -1,4 +1,5 @@
**This feature is not included in precompiled binaries.** To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
**This feature is not included in precompiled binaries.**
To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
```
#ifndef USE_CHIRP
#define USE_CHIRP

@ -8,7 +8,7 @@ The transistor makes sure that the RxD signal is converted and inverted to 3.3v
### Tasmota Configuration
In the **Configuration -> Configure Module** page, select module `**Generic (18)**`
In the _Configuration -> Configure Module_ page, select module `**Generic (18)**`
From the web console set the serial delimiter to 10 (newline). This makes Tasmota publish each line of the telegram separately to mqtt.

@ -1,4 +1,5 @@
**This feature is not included in precompiled binaries.** To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
**This feature is not included in precompiled binaries.**
To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
```
#ifndef USE_PAJ7620
#define USE_PAJ7620 // PAJ7620 gesture sensor (I2C address 0x73) (+2.5k code)

@ -6,6 +6,7 @@ More about [general configuration](Sensor-Configuration).
*Some of the articles were written originally for D1 mini but the information still applies except the wiring instructions*
- [**ADC**](ADC) - Analog input over A0 pin
- **ADS1x15** - A/D Converter (I<sup>2</sup>C)
- [**AM2301 (DHT21), AM2302 (DHT22), AM2321)**](AM2301) - Temperature and Humidity Sensor
- [**AM312**](PIR-Motion-Sensors#AM312) - PIR Motion Sensor<img src="https://i.postimg.cc/qRLyPy1n/APDS-9960-1-720x533.jpg" align=right>
- [**APDS-9960**](APDS-9960) - Ambient Light, RGB Color and Proximity Sensor with Gesture Detection
- [**AZ-7798**](Wemos-D1-Mini-and-AZ-Instrument-7798-CO2-Meter-Datalogger) - CO<sub>2</sub> Meter Datalogger
@ -17,9 +18,7 @@ More about [general configuration](Sensor-Configuration).
- [**CC2530**](Zigbee) - Zigbee Adapter (Serial)
- **CCS811** - Gas and Air Quality sensor (I<sup>2</sup>C)
- [**Chirp! Soil Moisture Sensor**](Moisture-Sensor-and-Chirp!-Sensor) - Moisture Sensor (I<sup>2</sup>C)
- [**DHT11**](Wemos-D1-Mini-and-DHT11-Shield-Humidity-&-Temperature) - Humidity & Temperature Sensor<img src="https://user-images.githubusercontent.com/5904370/53279561-cfb18480-3711-11e9-9889-76ab1d6eafcb.png" width="200" align="right">
- [Sonoff Basic wiring](DHT11-Wiring---Sonoff-Basic)
- [**DHT22 (DHT21, AM2301, AM2302, AM2321)**](Wemos-D1-Mini-and-DHT22-(DHT21,-AM2301,-AM2302,-AM2321)-Shield-Humidity-&-Temperature) - Humidity & Temperature Sensor
- [**DHT11**](DHT11) - Temperature and Humidity Sensor<img src="https://user-images.githubusercontent.com/5904370/53279561-cfb18480-3711-11e9-9889-76ab1d6eafcb.png" width="200" align="right">
- **DS18x20** - Temperature sensor (GPIO)
- [**DS3231**](DS3231) - Real-Time-Clock (I<sup>2</sup>C)
- [**HM16/HM17**](iBeacon-driver) - Bluetooth iBeacon reader (Serial)
@ -50,7 +49,7 @@ More about [general configuration](Sensor-Configuration).
- [**PN532**](PN532) - NFC/RFID controller
- [**PZEM-0XX**](PZEM-0XX) - Energy Monitor (Serial)<img src="https://user-images.githubusercontent.com/5904370/53279642-7433c680-3712-11e9-9aa2-7fd1adce3def.png" width="200" align="right" />
- [**RCWL-0516**](RCWL-0516) - Microwave Radar Presence detection
- [**RDM6300**](Wemos-D1-Mini-and-RDM6300) - 125Khz RFID Module
- [**RDM6300**](RDM6300) - 125Khz RFID Module
- **RX-4M50RR30SF / RX-AM8SF** - RF Sensor receiver (GPIO)
- **SCD30** - CO<sub>2</sub> sensor (I<sup>2</sup>C)
- **SDM120** - Modbus Energy Meter (Serial)
@ -66,9 +65,9 @@ More about [general configuration](Sensor-Configuration).
- **SPS30** - Particulate Matter (PM) - sensor (I<sup>2</sup>C)
- [**A4988 Stepper Motor Controller**](A4988-Stepper-Motor-Controller) -
- **TM1638** - 8 Switch, LED and 7 Segment Unit sensor (GPIO)
- [**TSL2561**](Wemos-D1-Mini-and-TSL2561-Luminosity-Sensor) - Luminosity Sensor
- [**TSL2561**](TSL2561) - Luminosity Sensor
- **TX20** - La Crosse Wind (Anemometer) - sensor (GPIO)
- [**VEML6070**](Wemos-D1-Mini-and-VEML6070-UV-Sensor) - UV Sensor
- [**VEML6070**](VEML6070) - UV Sensor
- **VL53L0x** - Time of flight sensor (I<sup>2</sup>C)
- [**WS2812B**](WS2812B-RGB-Shield) - RGB Shield
- [**WS2812B/WS2813B**](WS2812B-and-WS2813) - LED Strip

@ -13,7 +13,8 @@ RCWL-0516 microwave radar motion sensor module uses a “microwave Doppler radar
|OUT | GPIOx |
### Tasmota Configuration
In _Configuration -> Configure Module_ menu change an available GPIO to `Switch1`.
In the _Configuration -> Configure Module_ page assign:
- GPIOx to `Switch1 (9)`
<img src="https://raw.githubusercontent.com/arendst/arendst.github.io/master/media/wemos/wemos-rcwl0516-config-marked.jpg" width=350>

38
RDM6300.md Normal file

@ -0,0 +1,38 @@
[RDM6300](https://www.itead.cc/wiki/RDM6300) 125KHz cardreader mini-module is designed for reading code from 125KHz card compatible read-only tags and read/write card.
## Configuration
Sensor uses serial interface for communication.
### Wiring
| RDM6300 | ESP8266 |
|---|---|
|TX |GPIOx
|RX |GPIOy
|Pin3 | unused
|GND |GND
|VCC |5V
### Tasmota
In the _Configuration -> Configure Module_ page assign:
1. GPIOx to `SerBr Tx (71)`
2. GPIOy to `SerBr Rx (72)`
If the RFID Tag is held in front of the Antenna the reader starts sending the Tag ID. The Tag Id is prefaced with a 0x02 and the end is delimited with a 0x03. If the reader reads the tag multiple times you would get one line with multiple times the Tag ID. For this to seperate you can add a SerialDelimiter of 0x03. This will split the result from the serial into serveral single mqtt messages. But (probably) all the messages wil be prepended with a binary 0x02.
Set [SerialDelimiter](commands#serialdelimiter) to 3
```
SerialDelimiter 3
```
### OpenHab
sonoff-rfid.items:
```
// tele/sonoff-rfid-1/RESULT {"SSerialReceived":"01020304FAFA"}
String RFID_1 "RFID [%s]"
{mqtt="<[broker:tele/sonoff-rfid-1/RESULT:state:JSONPATH($.SSerialReceived)]"}
```
## Breakout Boards
![](https://www.itead.cc/wiki/images/thumb/5/5a/RDM6300.jpg/400px-RDM6300.jpg)

@ -1,6 +1,7 @@
# Please use this exact paragraph (formatting and links) at the beginning of an article for a feature that is not included in precompiled builds
**This feature is not included in precompiled binaries.** To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
**This feature is not included in precompiled binaries.**
To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
```
#ifndef USE_SCRIPT
#define USE_SCRIPT # adds about 17k flash size, variable ram size

@ -1,4 +1,5 @@
**This feature is not included in precompiled binaries.** To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
**This feature is not included in precompiled binaries.**
To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
```
#ifndef USE_SCRIPT
#define USE_SCRIPT # adds about 17k flash size, variable ram size

@ -1,5 +1,6 @@
**This feature is not included in precompiled binaries.** To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
**This feature is not included in precompiled binaries.**
To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
```
#ifndef USE_DEEPSLEEP

@ -10,9 +10,9 @@
- [**BME680**](BME680) Temperature, Humidity, Pressure and Gas Sensor
- [**CC2530**](Zigbee) Zigbee Adapter (Serial)
- **CCS811** Gas and Air Quality sensor (I<sup>2</sup>C)
- [**DHT11**](Wemos-D1-Mini-and-DHT11-Shield-Humidity-&-Temperature) Humidity & Temperature Sensor
- [**DHT11**](DHT11) Humidity & Temperature Sensor
- [Sonoff Basic wiring](DHT11-Wiring---Sonoff-Basic)
- [**DHT22 (DHT21, AM2301, AM2302, AM2321)**](Wemos-D1-Mini-and-DHT22-(DHT21,-AM2301,-AM2302,-AM2321)-Shield-Humidity-&-Temperature) Humidity & Temperature Sensor<img src="https://user-images.githubusercontent.com/5904370/53279561-cfb18480-3711-11e9-9889-76ab1d6eafcb.png" width="250" align="right" />
- [**DHT22 (DHT21, AM2301, AM2302, AM2321)**](AM2301) Humidity & Temperature Sensor<img src="https://user-images.githubusercontent.com/5904370/53279561-cfb18480-3711-11e9-9889-76ab1d6eafcb.png" width="250" align="right" />
- **DS18x20** Temperature sensor (GPIO)
- [**DS3231**](DS3231) Real-Time-Clock (I<sup>2</sup>C)
- [**HM16/HM17**](iBeacon-driver) Bluetooth iBeacon reader (Serial)
@ -42,7 +42,7 @@
- [**PN532**](PN532) NFC/RFID controller
- [**PZEM-0XX**](PZEM-0XX) Energy Monitor (Serial)<img src="https://user-images.githubusercontent.com/5904370/53279642-7433c680-3712-11e9-9aa2-7fd1adce3def.png" width="250" align="right" />
- [**RCWL-0516**](RCWL-0516) Microwave Radar Presence detection
- [**RDM6300**](Wemos-D1-Mini-and-RDM6300) 125Khz RFID Module
- [**RDM6300**](RDM6300) 125Khz RFID Module
- **RX-4M50RR30SF / RX-AM8SF** RF Sensor receiver (GPIO)
- **SCD30** CO<sub>2</sub> sensor (I<sup>2</sup>C)
- **SDM120** Modbus Energy Meter (Serial)
@ -58,9 +58,9 @@
- **SPS30** Particulate Matter (PM) sensor (I<sup>2</sup>C)
- [**Stepper Motor Controller**](A4988-Stepper-Motor-Controller)
- **TM1638** 8 Switch, LED and 7 Segment Unit sensor (GPIO)
- [**TSL2561**](Wemos-D1-Mini-and-TSL2561-Luminosity-Sensor) Luminosity Sensor
- [**TSL2561**](TSL2561) Luminosity Sensor
- **TX20** La Crosse Wind (Anemometer) sensor (GPIO)
- [**VEML6070**](Wemos-D1-Mini-and-VEML6070-UV-Sensor) UV Sensor
- [**VEML6070**](VEML6070) UV Sensor
- **VL53L0x** Time of flight sensor (I<sup>2</sup>C)
- [**WS2812B**](WS2812B-RGB-Shield) RGB Shield
- [**WS2812B/WS2813B**](WS2812B-and-WS2813) LED Strip

43
TSL2561.md Normal file

@ -0,0 +1,43 @@
**This feature is included only in tasmota-sensors.bin**
Otherwise you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
```
#ifndef USE_VEML6070
#define USE_TSL2561 // Enable TSL2561 sensor (I2C address 0x29, 0x39 or 0x49) (+2k3 code)
#endif
```
----
The [TSL2561 luminosity sensor](https://learn.adafruit.com/tsl2561/overview) is an advanced digital light sensor, ideal for use in a wide range of light situations.
## Configuration
### Wiring
| TSL2561 | ESP8266 |
|---|---|
|GND | GND |
|VCC | 3.3V
| SCL | GPIOy |
| SDA | GPIOx |
| INT | not used |
### Tasmota Configuration
In the _Configuration -> Configure Module_ page assign:
1. GPIOx to `I2C SDA (6)`
2. GPIOy to `I2C SCL (5)`
### Tasmota
After a reboot the driver will detect TSL2561 automatically and display Illuminance.
![image](https://user-images.githubusercontent.com/5904370/68091267-c1f5f680-fe7d-11e9-8914-474d1e2cf1a7.png)
Sensor sends a `tele/%topic%/SENSOR` JSON reponse:
```json
{"Time":"2019-11-03T21:04:05","TSL2561":{"Illuminance":21.180}}```
## Breakout Boards
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/tsl2561-adafruit-lux-sensor.jpg" align="right" width="225" />
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/tsl2561-lux-sensor-front.jpeg" align="right" width="225" />
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/tsl2561-lux-sensor-back.jpg" align="right" width="225" />

39
VEML6070.md Normal file

@ -0,0 +1,39 @@
**This feature is included only in tasmota-sensors.bin**
Otherwise you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
```
#ifndef USE_VEML6070
#define USE_VEML6070 // Add I2C code for VEML6070 sensor (+0k5 code)
#endif
```
----
This little sensor is a great way to add UV light sensing to any microcontroller project. The VEML6070 from Vishay has a true UV A light sensor and an I<sup>2</sup>C-controlled ADC that will take readings and integrate them for you over ~60ms to 500ms." See [VEML6070 UV Sensor](https://learn.adafruit.com/adafruit-veml6070-uv-light-sensor-breakout/overview) for more information.
## Configuration
### Wiring
| VEML6070 | ESP8266 |
|---|---|
|GND |GND |
|VCC |3.3V
|SDA | GPIOx
|SCL | GPIOy
### Tasmota
In the _Configuration -> Configure Module_ page assign:
1. GPIOx to `I2C SDA (6)`
2. GPIOy to `I2C SCL (5)`
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/wemos_veml6070_config_marked.jpg" width=300>
### Tasmota Main
After a reboot the driver will detect VEML6070 automatically and display UV light intensity.
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/wemos_veml6070_main_marked.jpg" width=300>
## Breakout Boards
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/veml6070-adafruit-uv-sensor.jpg" width=225>
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/veml6070-uv-sensor.jpg" align=right width=225>

@ -1,17 +0,0 @@
## DHT22 (DHT21, AM2301, AM2302, AM2321) Shield Humidity & Temperature (single pin)
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/wemos_dth22_shield.jpg" align="right" width=300>
Like the [Wemos DHT11 shield specs](https://wiki.wemos.cc/products:retired:dht_shield_v1.0.0) the DATA OUT pin of Wemos DHT22 is connected to D4 of the Wemos.
_Note: this is ONLY for v1.0.0 of the DHT11 shield, since v2.0.0 uses I<sup>2</sup>C and pinned differently._
### Tasmota Configuration
In the Configuration -> Configure Module page, select the following:
* **D4 GPIO2** : **02 AM2301**
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/wemos_dht22_config_marked.jpg"/>
### Tasmota Main
After reboot of the device the temperature and humidity are displayed.
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/wemos_dht22_main_marked.jpg"/>

@ -1,31 +0,0 @@
# Connecting an RDM6300
From the [Wemos SHT30 shield specs](https://wiki.wemos.cc/products:d1_mini_shields:protoboard_shield) use pins D4,5V,GND and connect to RDM6300 Board. The TX pin(J1 Pin1) of the RDM6300 is connected to the shield D2. In addition attach GND and 5V.
### Tasmota Configuration
In the Configuration -> Configure Module page, select the following:
* **D3 GPIO0** : **71 SerBr Tx**
* **D4 GPIO2** : **72 SerBr Rx**
If the RFID Tag is held in front of the Antenna the reader starts sending the Tag ID The Tag Id is prefaced with a 0x02 and the end is delimited with a 0x03. If the reader reads the tag multiple times you would get one line with multiple times the Tag ID. For this to seperate you can add a SerialDelimiter of 0x03. This will split the result from the serial into serveral single mqtt messages. But (probably) all the messages wil be prepended with a binary 0x02.
Set SerialDelimiter to 3
```
SerialDelimiter 3
```
This can be done with one of
- over serial (via USB) with the command "SerialDelimiter 3"
- over mqtt with publish(broker,cmnd/sonoff-RDM-1/
- curl "http://192.168.0.xxx/cm?cmnd=SerialDelimiter 3"
- Browser at http://192.168.0.xx/cs and enter Command "SerialDelimiter 3"
### Configuration OpenHab
sonoff-rfid.items:
```
// tele/sonoff-rfid-1/RESULT {"SSerialReceived":"01020304FAFA"}
String RFID_1 "RFID [%s]"
{mqtt="<[broker:tele/sonoff-rfid-1/RESULT:state:JSONPATH($.SSerialReceived)]"}
```

@ -1,34 +0,0 @@
## TSL2561 Luminosity Sensor (I<sup>2</sup>C)
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/tsl2561-adafruit-lux-sensor.jpg" align="right" width="225" />
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/tsl2561-lux-sensor-front.jpeg" align="right" width="225" />
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/tsl2561-lux-sensor-back.jpg" align="right" width="225" />
The [TSL2561 luminosity sensor](https://learn.adafruit.com/tsl2561/overview) is an advanced digital light sensor, ideal for use in a wide range of light situations.
Note: To use the TSL2561 with Tasmota you have to enable sensors (e.g., use [sonoff-sensors.bin](http://thehackbox.org/tasmota/sonoff-sensors.bin)).
<BR><BR><BR>
### Connecting the TSL2561 to a Wemos Mini D1
| Wemos | TSL2561 |
|---|---|
|GND |GND |
|3.3V |VCC |
|D2 (gpio04) |SDA |
|D1 (gpio05) |SCL |
### Tasmota Configuration
In the Configuration -> Configure Module page, select the following:
1. **Module Type : 18 Generic**
2. **D2 GPIO04 : 06 I<sup>2</sup>C SDA**
3. **D1 GPIO05 : 05 I<sup>2</sup>C SCL**
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/wemos_tsl2561_config_marked.jpg" width=300>
### Tasmota Main
After the device reboots, the home page will display the TSL2561 Illuminance.
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/wemos_tsl2561_main_marked.jpg" width=300>
_**Note:** If you wish to eliminate `Analog0` from the home page and `A0` from the telemetry messages, create a [template](Templates) for your device set the `ADC0` component to `None (0)` in the [template](Templates) setup._

@ -1,34 +0,0 @@
## VEML6070 UV Sensor (I<sup>2</sup>C)
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/veml6070-adafruit-uv-sensor.jpg" align=right width=225>
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/veml6070-uv-sensor.jpg" align=right width=225>
"This little sensor is a great way to add UV light sensing to any microcontroller project. The VEML6070 from Vishay has a true UV A light sensor and an I<sup>2</sup>C-controlled ADC that will take readings and integrate them for you over ~60ms to 500ms." See [VEML6070 UV Sensor](https://learn.adafruit.com/adafruit-veml6070-uv-light-sensor-breakout/overview) for more information.
_Note: before the VEML6070 can be used with Tasmota, make sure it's enabled. To enable it, remove the forward slashes before this line before you compile and upload tasmota to your Wemos device._
```
#define USE_VEML6070 // Add I2C code for VEML6070 sensor (+0k5 code)
```
### Connecting the VEML6070 to a Wemos Mini D1
| Wemos | VEML6070 |
|---|---|
|GND |GND |
|3.3V |VCC |
|D3 (gpio0) |SDA |
|D4 (gpio2) |SCL |
### Tasmota Configuration
In the Configuration -> Configure Module page, select the following:
1. **Module Type : 18 Generic**
2. **D3 GPIO0 : 06 I<sup>2</sup>C SDA**
3. **D4 GPIO2 : 05 I<sup>2</sup>C SCL**
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/wemos_veml6070_config_marked.jpg" width=300>
### Tasmota Main
After reboot of the device the displays the VEML6070 UV light intensity.
<img src="https://github.com/arendst/arendst.github.io/blob/master/media/wemos/wemos_veml6070_main_marked.jpg" width=300>