mirror of
https://github.com/arendst/Tasmota.git
synced 2025-07-28 13:16:32 +00:00
Merge pull request #6939 from kristi5/dev2
JSN-SR04T add support for Mode 2 and Mode 3
This commit is contained in:
commit
70b3fc6e0b
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -552,8 +552,8 @@
|
|||||||
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
#define D_SENSOR_HPMA_TX "HPMA Tx"
|
||||||
#define D_SENSOR_SBR_RX "SerBr Rx"
|
#define D_SENSOR_SBR_RX "SerBr Rx"
|
||||||
#define D_SENSOR_SBR_TX "SerBr Tx"
|
#define D_SENSOR_SBR_TX "SerBr Tx"
|
||||||
#define D_SENSOR_SR04_TRIG "SR04 Tri"
|
#define D_SENSOR_SR04_TRIG "SR04 Tri/TX"
|
||||||
#define D_SENSOR_SR04_ECHO "SR04 Ech"
|
#define D_SENSOR_SR04_ECHO "SR04 Ech/RX"
|
||||||
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
#define D_SENSOR_SDM120_TX "SDMx20 Tx"
|
||||||
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
#define D_SENSOR_SDM120_RX "SDMx20 Rx"
|
||||||
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
#define D_SENSOR_SDM630_TX "SDM630 Tx"
|
||||||
|
@ -97,8 +97,8 @@ enum UserSelectablePins {
|
|||||||
GPIO_SDS0X1_RX, // Nova Fitness SDS011 Serial interface
|
GPIO_SDS0X1_RX, // Nova Fitness SDS011 Serial interface
|
||||||
GPIO_SBR_TX, // Serial Bridge Serial interface
|
GPIO_SBR_TX, // Serial Bridge Serial interface
|
||||||
GPIO_SBR_RX, // Serial Bridge Serial interface
|
GPIO_SBR_RX, // Serial Bridge Serial interface
|
||||||
GPIO_SR04_TRIG, // SR04 Trigger pin
|
GPIO_SR04_TRIG, // SR04 Trigger/TX pin
|
||||||
GPIO_SR04_ECHO, // SR04 Echo pin
|
GPIO_SR04_ECHO, // SR04 Echo/RX pin
|
||||||
GPIO_SDM120_TX, // SDM120 Serial interface
|
GPIO_SDM120_TX, // SDM120 Serial interface
|
||||||
GPIO_SDM120_RX, // SDM120 Serial interface
|
GPIO_SDM120_RX, // SDM120 Serial interface
|
||||||
GPIO_SDM630_TX, // SDM630 Serial interface
|
GPIO_SDM630_TX, // SDM630 Serial interface
|
||||||
@ -603,8 +603,8 @@ const uint8_t kGpioNiceList[] PROGMEM = {
|
|||||||
GPIO_RF_SENSOR, // Rf receiver with sensor decoding
|
GPIO_RF_SENSOR, // Rf receiver with sensor decoding
|
||||||
#endif
|
#endif
|
||||||
#ifdef USE_SR04
|
#ifdef USE_SR04
|
||||||
GPIO_SR04_TRIG, // SR04 Trigger pin
|
GPIO_SR04_TRIG, // SR04 Tri/TXgger pin
|
||||||
GPIO_SR04_ECHO, // SR04 Echo pin
|
GPIO_SR04_ECHO, // SR04 Ech/RXo pin
|
||||||
#endif
|
#endif
|
||||||
#ifdef USE_TM1638
|
#ifdef USE_TM1638
|
||||||
GPIO_TM16CLK, // TM1638 Clock
|
GPIO_TM16CLK, // TM1638 Clock
|
||||||
|
@ -20,6 +20,7 @@
|
|||||||
#ifdef USE_SR04
|
#ifdef USE_SR04
|
||||||
|
|
||||||
#include <NewPing.h>
|
#include <NewPing.h>
|
||||||
|
#include <TasmotaSerial.h>
|
||||||
/*********************************************************************************************\
|
/*********************************************************************************************\
|
||||||
* HC-SR04, HC-SR04+, JSN-SR04T - Ultrasonic distance sensor
|
* HC-SR04, HC-SR04+, JSN-SR04T - Ultrasonic distance sensor
|
||||||
*
|
*
|
||||||
@ -30,17 +31,129 @@
|
|||||||
|
|
||||||
#define XSNS_22 22
|
#define XSNS_22 22
|
||||||
|
|
||||||
uint8_t sr04_echo_pin = 0;
|
uint8_t sr04_type = 1;
|
||||||
uint8_t sr04_trig_pin = 0;
|
int sr04_echo_pin = 0;
|
||||||
|
int sr04_trig_pin = 0;
|
||||||
real64_t distance;
|
real64_t distance;
|
||||||
|
|
||||||
NewPing* sonar = nullptr;
|
NewPing* sonar = nullptr;
|
||||||
|
TasmotaSerial* sonar_serial = nullptr;
|
||||||
|
|
||||||
void Sr04Init(void)
|
|
||||||
|
|
||||||
|
uint8_t Sr04TModeDetect(void)
|
||||||
{
|
{
|
||||||
|
sr04_type = 0;
|
||||||
|
if (pin[GPIO_SR04_ECHO]>=99) return sr04_type;
|
||||||
|
|
||||||
sr04_echo_pin = pin[GPIO_SR04_ECHO];
|
sr04_echo_pin = pin[GPIO_SR04_ECHO];
|
||||||
sr04_trig_pin = pin[GPIO_SR04_TRIG];
|
sr04_trig_pin = (pin[GPIO_SR04_TRIG] < 99) ? pin[GPIO_SR04_TRIG] : -1;
|
||||||
sonar = new NewPing(sr04_trig_pin, sr04_echo_pin, 300);
|
sonar_serial = new TasmotaSerial(sr04_echo_pin, sr04_trig_pin, 1);
|
||||||
|
|
||||||
|
if (sonar_serial->begin(9600,1)) {
|
||||||
|
DEBUG_SENSOR_LOG(PSTR("SR04: Detect mode"));
|
||||||
|
|
||||||
|
if (sr04_trig_pin!=-1) {
|
||||||
|
sr04_type = (Sr04TMiddleValue(Sr04TMode3Distance(),Sr04TMode3Distance(),Sr04TMode3Distance())!=NO_ECHO)?3:1;
|
||||||
|
} else {
|
||||||
|
sr04_type = 2;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
sr04_type = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (sr04_type < 2) {
|
||||||
|
delete sonar_serial;
|
||||||
|
sonar_serial = nullptr;
|
||||||
|
sonar = new NewPing(sr04_trig_pin, sr04_echo_pin, 300);
|
||||||
|
} else {
|
||||||
|
if (sonar_serial->hardwareSerial()) {
|
||||||
|
ClaimSerial();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
AddLog_P2(LOG_LEVEL_INFO,PSTR("SR04: Mode %d"), sr04_type);
|
||||||
|
return sr04_type;
|
||||||
|
}
|
||||||
|
|
||||||
|
uint16_t Sr04TMiddleValue(uint16_t first, uint16_t second, uint16_t third)
|
||||||
|
{
|
||||||
|
uint16_t ret = first;
|
||||||
|
if (first > second) {
|
||||||
|
first = second;
|
||||||
|
second = ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (third < first) {
|
||||||
|
return first;
|
||||||
|
} else if (third > second) {
|
||||||
|
return second;
|
||||||
|
} else {
|
||||||
|
return third;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
uint16_t Sr04TMode3Distance() {
|
||||||
|
|
||||||
|
sonar_serial->write(0x55);
|
||||||
|
sonar_serial->flush();
|
||||||
|
|
||||||
|
return Sr04TMode2Distance();
|
||||||
|
}
|
||||||
|
|
||||||
|
uint16_t Sr04TMode2Distance(void)
|
||||||
|
{
|
||||||
|
sonar_serial->setTimeout(300);
|
||||||
|
const char startByte = 0xff;
|
||||||
|
|
||||||
|
if (!sonar_serial->find(startByte)) {
|
||||||
|
//DEBUG_SENSOR_LOG(PSTR("SR04: No start byte"));
|
||||||
|
return NO_ECHO;
|
||||||
|
}
|
||||||
|
|
||||||
|
delay(5);
|
||||||
|
|
||||||
|
uint8_t crc = sonar_serial->read();
|
||||||
|
//read high byte
|
||||||
|
uint16_t distance = ((uint16_t)crc) << 8;
|
||||||
|
|
||||||
|
//read low byte
|
||||||
|
distance += sonar_serial->read();
|
||||||
|
crc += distance & 0x00ff;
|
||||||
|
crc += 0x00FF;
|
||||||
|
|
||||||
|
//check crc sum
|
||||||
|
if (crc != sonar_serial->read()) {
|
||||||
|
AddLog_P2(LOG_LEVEL_ERROR,PSTR("SR04: Reading CRC error."));
|
||||||
|
return NO_ECHO;
|
||||||
|
}
|
||||||
|
//DEBUG_SENSOR_LOG(PSTR("SR04: Distance: %d"), distance);
|
||||||
|
return distance;
|
||||||
|
}
|
||||||
|
|
||||||
|
void Sr04TReading(void) {
|
||||||
|
|
||||||
|
if (sonar_serial==nullptr && sonar==nullptr) {
|
||||||
|
Sr04TModeDetect();
|
||||||
|
}
|
||||||
|
|
||||||
|
switch (sr04_type) {
|
||||||
|
case 3:
|
||||||
|
distance = (real64_t)(Sr04TMiddleValue(Sr04TMode3Distance(),Sr04TMode3Distance(),Sr04TMode3Distance()))/ 10; //convert to cm
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
//empty input buffer first
|
||||||
|
while(sonar_serial->available()) sonar_serial->read();
|
||||||
|
distance = (real64_t)(Sr04TMiddleValue(Sr04TMode2Distance(),Sr04TMode2Distance(),Sr04TMode2Distance()))/10;
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
distance = (real64_t)(sonar->ping_median(5))/ US_ROUNDTRIP_CM;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
distance = NO_ECHO;
|
||||||
|
}
|
||||||
|
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef USE_WEBSERVER
|
#ifdef USE_WEBSERVER
|
||||||
@ -50,7 +163,6 @@ const char HTTP_SNS_DISTANCE[] PROGMEM =
|
|||||||
|
|
||||||
void Sr04Show(bool json)
|
void Sr04Show(bool json)
|
||||||
{
|
{
|
||||||
distance = (real64_t)(sonar->ping_median(5))/ US_ROUNDTRIP_CM;
|
|
||||||
|
|
||||||
if (distance != 0) { // Check if read failed
|
if (distance != 0) { // Check if read failed
|
||||||
char distance_chr[33];
|
char distance_chr[33];
|
||||||
@ -79,10 +191,14 @@ bool Xsns22(uint8_t function)
|
|||||||
{
|
{
|
||||||
bool result = false;
|
bool result = false;
|
||||||
|
|
||||||
if ((pin[GPIO_SR04_ECHO] < 99) && (pin[GPIO_SR04_TRIG] < 99)) {
|
if (sr04_type) {
|
||||||
switch (function) {
|
switch (function) {
|
||||||
case FUNC_INIT:
|
case FUNC_INIT:
|
||||||
Sr04Init();
|
result = (pin[GPIO_SR04_ECHO]<99);
|
||||||
|
break;
|
||||||
|
case FUNC_EVERY_SECOND:
|
||||||
|
Sr04TReading();
|
||||||
|
result = true;
|
||||||
break;
|
break;
|
||||||
case FUNC_JSON_APPEND:
|
case FUNC_JSON_APPEND:
|
||||||
Sr04Show(1);
|
Sr04Show(1);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user