diff --git a/CHANGELOG.md b/CHANGELOG.md index feab9f1fbc5b..8de867664633 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ All notable changes to this project will be documented in this file. ## [13.4.1.1] ### Added - HASPmota `dropdown_list` and fixes (#21208) +- Support for SPL06_007 pressure and temperature sensor (#21185) ### Breaking Changed diff --git a/CODE_OWNERS.md b/CODE_OWNERS.md index b71fd38fc41c..98bb523aa885 100644 --- a/CODE_OWNERS.md +++ b/CODE_OWNERS.md @@ -136,7 +136,7 @@ In addition to @arendst the following code is mainly owned by: | xsns_22_sr04 | Nuno Ferreira, @arendst | xsns_23_me007 | Mathias Buder | xsns_24_si1145 | -| xsns_25_spl06-007_sensor | @rai68 +| xsns_25_spl06-007_sensor | @rai68 | xsns_26_lm75ad | Andre Thomas | xsns_27_apds9960 | Shawn Hymel | xsns_28 | diff --git a/I2CDEVICES.md b/I2CDEVICES.md index acc51435d83a..afd853929cb1 100644 --- a/I2CDEVICES.md +++ b/I2CDEVICES.md @@ -125,5 +125,5 @@ Index | Define | Driver | Device | Address(es) | Bus2 | Descrip 85 | USE_ENS210 | xsns_112 | ENS210 | 0x43 - 0x44 | | Temperature and humidity sensor 86 | USE_AMSX915 | xsns_114 | AMS5915 | 0x28 | | Pressure (absolute/differential) and temperature sensor 86 | USE_AMSX915 | xsns_114 | AMS6915 | 0x28 | | Pressure (absolute/differential) and temperature sensor - 95 | USE_SPL06_007 | xsns_126 | SPL06-007 | 0x76 | | Pressure and temperature sensor + 87 | USE_SPL06_007 | xsns_25 | SPL06-007 | 0x76 | | Pressure and temperature sensor NOTE: Bus2 supported on ESP32 only. diff --git a/RELEASENOTES.md b/RELEASENOTES.md index d3834954b53c..eddcb8b99ffa 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -124,6 +124,7 @@ The latter links can be used for OTA upgrades too like ``OtaUrl https://ota.tasm - Support Azure iothub direct method [#21013](https://github.com/arendst/Tasmota/issues/21013) - Support for Domoticz non-persistent ``DzIdx5`` to ``DzIdx32`` and disabling DOMOTICZ_OUT_TOPIC subscribe using command ``DzIdx0 0`` [#21019](https://github.com/arendst/Tasmota/issues/21019) - Support SPI GPIO configuration for Universal Touch Screen [#21025](https://github.com/arendst/Tasmota/issues/21025) +- Support for SPL06_007 pressure and temperature sensor [#21185](https://github.com/arendst/Tasmota/issues/21185) - Zigbee support for attributes of type `uint48` used by energy monitoring [#20992](https://github.com/arendst/Tasmota/issues/20992) - QMC5883l check for overflow and scale reading [#20643](https://github.com/arendst/Tasmota/issues/20643) - Berry explicit error log when memory allocation fails [#20807](https://github.com/arendst/Tasmota/issues/20807) diff --git a/tasmota/include/tasmota_configurations.h b/tasmota/include/tasmota_configurations.h index 61c805bfb801..2fa4f554b1e5 100644 --- a/tasmota/include/tasmota_configurations.h +++ b/tasmota/include/tasmota_configurations.h @@ -168,6 +168,11 @@ //#define USE_LUXV30B // [I2CDriver70] Enable RFRobot SEN0390 LuxV30b ambient light sensor (I2C address 0x4A) (+0k5 code) //#define USE_PMSA003I // [I2cDriver78] Enable PMSA003I Air Quality Sensor (I2C address 0x12) (+1k8 code) //#define USE_GDK101 // [I2cDriver79] Enable GDK101 sensor (I2C addresses 0x18 - 0x1B) (+1k2 code) +//#define USE_TC74 // [I2cDriver80] Enable TC74 sensor (I2C addresses 0x48 - 0x4F) (+1k code) +//#define USE_PCA9557 // [I2cDriver81] Enable PCA9557 8-bit I/O Expander (I2C addresses 0x18 - 0x1F) (+2k5 code) +//#define USE_MAX17043 // [I2cDriver83] Enable MAX17043 fuel-gauge systems Lipo batteries sensor (I2C address 0x36) (+0k9 code) +//#define USE_AMSX915 // [I2CDriver86] Enable AMS5915/AMS6915 pressure/temperature sensor (+1k2 code) +//#define USE_SPL06_007 // [I2cDriver87] Enable SPL06_007 pressure and temperature sensor (I2C addresses 0x76) (+2k5 code) //#define USE_RTC_CHIPS // Enable RTC chip support and NTP server - Select only one // #define USE_DS3231 // [I2cDriver26] Enable DS3231 RTC (I2C address 0x68) (+1k2 code) @@ -258,7 +263,6 @@ #define USE_LOX_O2 // Add support for LuminOx LOX O2 Sensor (+0k8 code) #undef DEBUG_THEO // Disable debug code #undef USE_DEBUG_DRIVER // Disable debug code -//#define USE_SPL06_007 // Adds support for SPL06_007 (+10k2 code) #endif // FIRMWARE_SENSORS /*********************************************************************************************\ diff --git a/tasmota/my_user_config.h b/tasmota/my_user_config.h index 387486b92780..c46d3038a9ad 100644 --- a/tasmota/my_user_config.h +++ b/tasmota/my_user_config.h @@ -750,6 +750,7 @@ An online tool to calculate TLS fingerprints is available here at:\n\ // #define USE_MAX17043 // [I2cDriver83] Enable MAX17043 fuel-gauge systems Lipo batteries sensor (I2C address 0x36) (+0k9 code) // #define MAX17043_ALERT_THRESHOLD 32 // [I2cDriver83] Define the alert threshold for low battery level percentage 1-32 // #define USE_AMSX915 // [I2CDriver86] Enable AMS5915/AMS6915 pressure/temperature sensor (+1k2 code) +// #define USE_SPL06_007 // [I2cDriver87] Enable SPL06_007 pressure and temperature sensor (I2C addresses 0x76) (+2k5 code) // #define USE_RTC_CHIPS // Enable RTC chip support and NTP server - Select only one // #define USE_DS3231 // [I2cDriver26] Enable DS3231 RTC (I2C address 0x68) (+1k2 code) diff --git a/tasmota/tasmota_xsns_sensor/xsns_25_spl06-007_sensor.ino b/tasmota/tasmota_xsns_sensor/xsns_25_spl06-007_sensor.ino index 5d2fe0b75c7c..1eb63ea81f8e 100644 --- a/tasmota/tasmota_xsns_sensor/xsns_25_spl06-007_sensor.ino +++ b/tasmota/tasmota_xsns_sensor/xsns_25_spl06-007_sensor.ino @@ -29,7 +29,7 @@ \*********************************************************************************************/ #define XSNS_25 25 -#define XI2C_95 95 // See I2CDEVICES.md +#define XI2C_87 87 // See I2CDEVICES.md #include "SPL06-007.h" @@ -50,7 +50,7 @@ void spl007Detect(void) { SPL_init(); if (get_spl_id() != 16) { - AddLog(LOG_LEVEL_ERROR, PSTR("SPL06-007:@%02X not found error!"), SPL007_ADDRESS); +// AddLog(LOG_LEVEL_ERROR, PSTR("SPL: @%02X not found error!"), SPL007_ADDRESS); return; } spl007_s.valid = true; @@ -105,7 +105,7 @@ void spl007Show(bool json) bool Xsns25(uint32_t function) { - if (!I2cEnabled(XI2C_95)) { return false; } + if (!I2cEnabled(XI2C_87)) { return false; } bool result = false; if (FUNC_INIT == function) {