diff --git a/BUILDS.md b/BUILDS.md index d817ad3f7..ca97f2514 100644 --- a/BUILDS.md +++ b/BUILDS.md @@ -145,6 +145,7 @@ Note: `minimal` variant is not listed as it shouldn't be used outside of the [up | USE_PAJ7620 | - | - / - | - | - | - | - | | USE_PCF8574 | - | - / - | - | - | - | - | | USE_PMSA003I | - | - / - | - | - | - | - | +| USE_LOX_O2 | - | - / x | - | x | - | - | | | | | | | | | | Feature or Sensor | l | t | k | s | i | d | Remarks | USE_HIH6 | - | - / x | - | x | - | - | diff --git a/CODE_OWNERS.md b/CODE_OWNERS.md index 40f7acc39..7d16b2b3b 100644 --- a/CODE_OWNERS.md +++ b/CODE_OWNERS.md @@ -203,6 +203,7 @@ In addition to @arendst the following code is mainly owned by: | xsns_102_ld2410 | @arendst | xsns_103_sen5x | @tyeth | xsns_104_pmsa003i | Jean-Pierre Deschamps +| xsns_105_lox_o2 | @ACE1046 | | | Libraries | | | diff --git a/tasmota/include/tasmota_configurations.h b/tasmota/include/tasmota_configurations.h index d04f6ade5..559a7e236 100644 --- a/tasmota/include/tasmota_configurations.h +++ b/tasmota/include/tasmota_configurations.h @@ -250,6 +250,7 @@ #define USE_HRE // Add support for Badger HR-E Water Meter (+1k4 code) //#define USE_A4988_STEPPER // Add support for A4988/DRV8825 stepper-motor-driver-circuit (+10k5 code) //#define USE_THERMOSTAT // Add support for Thermostat +#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 #endif // FIRMWARE_SENSORS @@ -485,6 +486,7 @@ #undef USE_OPENTHERM // Disable support for OpenTherm (+15k code) #undef USE_MIEL_HVAC // Disable support for Mitsubishi Electric HVAC serial interface (+5k code) #undef USE_PROJECTOR_CTRL // Disable support for LCD/DLP Projector serial control interface +#undef USE_LOX_O2 // Disable support for LuminOx LOX O2 Sensor #undef USE_DHT // Disable support for DHT11, AM2301 (DHT21, DHT22, AM2302, AM2321) and SI7021 Temperature and Humidity sensor #undef USE_MAX31855 // Disable MAX31855 K-Type thermocouple sensor using softSPI @@ -618,6 +620,7 @@ #undef USE_OPENTHERM // Disable support for OpenTherm (+15k code) #undef USE_MIEL_HVAC // Disable support for Mitsubishi Electric HVAC serial interface (+5k code) #undef USE_PROJECTOR_CTRL // Disable support for LCD/DLP Projector serial control interface +#undef USE_LOX_O2 // Disable support for LuminOx LOX O2 Sensor #undef USE_ENERGY_SENSOR // Disable energy sensors #undef USE_ADE7880 // Disable ADE7880 Energy monitor as used on Shelly 3EM (I2C address 0x38) (+3k8) @@ -774,6 +777,7 @@ #undef USE_TFMINIPLUS // Disable support for TFmini Plus (TFmini, TFmini-S) LiDAR modules via UART interface (+0k8) #undef USE_HRG15 // Disable support for Hydreon RG-15 Solid State Rain sensor (+1k5 code) #undef USE_VINDRIKTNING // Disable support for IKEA VINDRIKTNING particle concentration sensor (+1k code) +#undef USE_LOX_O2 // Disable support for LuminOx LOX O2 Sensor #undef USE_ENERGY_SENSOR // Disable energy sensors #undef USE_PZEM004T // Disable PZEM004T energy sensor @@ -931,6 +935,7 @@ #undef USE_TFMINIPLUS // Disable support for TFmini Plus (TFmini, TFmini-S) LiDAR modules via UART interface (+0k8) #undef USE_HRG15 // Disable support for Hydreon RG-15 Solid State Rain sensor (+1k5 code) #undef USE_VINDRIKTNING // Disable support for IKEA VINDRIKTNING particle concentration sensor (+0k6 code) +#undef USE_LOX_O2 // Disable support for LuminOx LOX O2 Sensor #undef USE_ENERGY_SENSOR // Disable energy sensors diff --git a/tasmota/include/tasmota_configurations_ESP32.h b/tasmota/include/tasmota_configurations_ESP32.h index 0ca277ffe..6accee7fc 100644 --- a/tasmota/include/tasmota_configurations_ESP32.h +++ b/tasmota/include/tasmota_configurations_ESP32.h @@ -138,6 +138,7 @@ #undef USE_TFMINIPLUS // Disable support for TFmini Plus (TFmini, TFmini-S) LiDAR modules via UART interface (+0k8) #undef USE_HRG15 // Disable support for Hydreon RG-15 Solid State Rain sensor (+1k5 code) #undef USE_VINDRIKTNING // Disable support for IKEA VINDRIKTNING particle concentration sensor (+0k6 code) +#undef USE_LOX_O2 // Disable support for LuminOx LOX O2 Sensor #undef USE_ENERGY_SENSOR // Disable energy sensors @@ -763,6 +764,7 @@ #define USE_BP1658CJ // Add support for BP1658CJ 5 channel led controller as used in Orein OS0100411267 Bulb #define USE_ETHERNET // Add support for ethernet (+20k code) #define USE_DISPLAY_TM1621_SONOFF // Add support for TM1621 display driver used by Sonoff POWR3xxD and THR3xxD +#define USE_LOX_O2 // Add support for LuminOx LOX O2 Sensor (+0k8 code) #ifndef USE_KNX #define USE_KNX // Enable KNX IP Protocol Support (+23k code, +3k3 mem) diff --git a/tasmota/include/tasmota_template.h b/tasmota/include/tasmota_template.h index a85369d05..53570e3c9 100644 --- a/tasmota/include/tasmota_template.h +++ b/tasmota/include/tasmota_template.h @@ -208,6 +208,7 @@ enum UserSelectablePins { GPIO_BIOPDU_PZEM0XX_TX, GPIO_BIOPDU_PZEM016_RX, GPIO_BIOPDU_BIT, // Biomine BioPDU 625x12 GPIO_MCP23XXX_INT, GPIO_MCP23SXX_CS, // MCP23xxx Int and SPI Chip select GPIO_PCF8574_INT, // PCF8574 interrupt + GPIO_LOX_O2_RX, // LOX-O2 RX GPIO_SENSOR_END }; // Error as warning to rethink GPIO usage with max 2045 @@ -463,6 +464,7 @@ const char kSensorNames[] PROGMEM = D_SENSOR_BIOPDU_PZEM0XX_TX "|" D_SENSOR_BIOPDU_PZEM016_RX "|" D_SENSOR_BIOPDU_BIT "|" D_SENSOR_MCP23XXX_INT "|" D_SENSOR_MCP23SXX_CS "|" D_SENSOR_PCF8574_INT "|" + D_SENSOR_LOX_O2_RX "|" ; const char kSensorNamesFixed[] PROGMEM = @@ -1026,6 +1028,9 @@ const uint16_t kGpioNiceList[] PROGMEM = { AGPIO(GPIO_LD2410_TX), // HLK-LD2410 Serial interface AGPIO(GPIO_LD2410_RX), // HLK-LD2410 Serial interface #endif +#ifdef USE_LOX_O2 // xsns_105_lox_o2.ino + AGPIO(GPIO_LOX_O2_RX), // LuminOx Oxygen Sensor LOX-O2 Serial interface +#endif /*-------------------------------------------------------------------------------------------*\ * Other sensors diff --git a/tasmota/language/af_AF.h b/tasmota/language/af_AF.h index d43a80bf6..f588998c4 100644 --- a/tasmota/language/af_AF.h +++ b/tasmota/language/af_AF.h @@ -928,6 +928,7 @@ #define D_SENSOR_BIOPDU_PZEM0XX_TX "BioPDU PZEM0XX Tx" #define D_SENSOR_BIOPDU_PZEM016_RX "BioPDU PZEM016 Rx" #define D_SENSOR_BIOPDU_BIT "BioPDU Bit" +#define D_SENSOR_LOX_O2_RX "LoxO2 RX" // Units #define D_UNIT_AMPERE "A" diff --git a/tasmota/language/bg_BG.h b/tasmota/language/bg_BG.h index 97b7542a1..6aecade5e 100644 --- a/tasmota/language/bg_BG.h +++ b/tasmota/language/bg_BG.h @@ -928,6 +928,7 @@ #define D_SENSOR_BIOPDU_PZEM0XX_TX "BioPDU PZEM0XX Tx" #define D_SENSOR_BIOPDU_PZEM016_RX "BioPDU PZEM016 Rx" #define D_SENSOR_BIOPDU_BIT "BioPDU Bit" +#define D_SENSOR_LOX_O2_RX "LoxO2 RX" // Units #define D_UNIT_AMPERE "А" diff --git a/tasmota/language/ca_AD.h b/tasmota/language/ca_AD.h index 5191a364b..386d81141 100644 --- a/tasmota/language/ca_AD.h +++ b/tasmota/language/ca_AD.h @@ -928,6 +928,7 @@ #define D_SENSOR_BIOPDU_PZEM0XX_TX "BioPDU PZEM0XX Tx" #define D_SENSOR_BIOPDU_PZEM016_RX "BioPDU PZEM016 Rx" #define D_SENSOR_BIOPDU_BIT "BioPDU Bit" +#define D_SENSOR_LOX_O2_RX "LoxO2 RX" // Units #define D_UNIT_AMPERE "A" diff --git a/tasmota/language/cs_CZ.h b/tasmota/language/cs_CZ.h index a5ac51a55..4a9adf845 100644 --- a/tasmota/language/cs_CZ.h +++ b/tasmota/language/cs_CZ.h @@ -928,6 +928,7 @@ #define D_SENSOR_BIOPDU_PZEM0XX_TX "BioPDU PZEM0XX Tx" #define D_SENSOR_BIOPDU_PZEM016_RX "BioPDU PZEM016 Rx" #define D_SENSOR_BIOPDU_BIT "BioPDU Bit" +#define D_SENSOR_LOX_O2_RX "LoxO2 RX" // Units #define D_UNIT_AMPERE "A" diff --git a/tasmota/language/de_DE.h b/tasmota/language/de_DE.h index 6b635d872..5c57c51c1 100644 --- a/tasmota/language/de_DE.h +++ b/tasmota/language/de_DE.h @@ -928,6 +928,7 @@ #define D_SENSOR_BIOPDU_PZEM0XX_TX "BioPDU PZEM0XX Tx" #define D_SENSOR_BIOPDU_PZEM016_RX "BioPDU PZEM016 Rx" #define D_SENSOR_BIOPDU_BIT "BioPDU Bit" +#define D_SENSOR_LOX_O2_RX "LoxO2 RX" // Units #define D_UNIT_AMPERE "A" diff --git a/tasmota/language/el_GR.h b/tasmota/language/el_GR.h index 1b3cfc492..d4faa63d7 100644 --- a/tasmota/language/el_GR.h +++ b/tasmota/language/el_GR.h @@ -928,6 +928,7 @@ #define D_SENSOR_BIOPDU_PZEM0XX_TX "BioPDU PZEM0XX Tx" #define D_SENSOR_BIOPDU_PZEM016_RX "BioPDU PZEM016 Rx" #define D_SENSOR_BIOPDU_BIT "BioPDU Bit" +#define D_SENSOR_LOX_O2_RX "LoxO2 RX" // Units #define D_UNIT_AMPERE "A" diff --git a/tasmota/language/en_GB.h b/tasmota/language/en_GB.h index 8c54a340f..d603de544 100644 --- a/tasmota/language/en_GB.h +++ b/tasmota/language/en_GB.h @@ -928,6 +928,7 @@ #define D_SENSOR_BIOPDU_PZEM0XX_TX "BioPDU PZEM0XX Tx" #define D_SENSOR_BIOPDU_PZEM016_RX "BioPDU PZEM016 Rx" #define D_SENSOR_BIOPDU_BIT "BioPDU Bit" +#define D_SENSOR_LOX_O2_RX "LoxO2 RX" // Units #define D_UNIT_AMPERE "A" diff --git a/tasmota/language/es_ES.h b/tasmota/language/es_ES.h index 2948c9f05..6ca71b901 100644 --- a/tasmota/language/es_ES.h +++ b/tasmota/language/es_ES.h @@ -928,6 +928,7 @@ #define D_SENSOR_BIOPDU_PZEM0XX_TX "BioPDU PZEM0XX Tx" #define D_SENSOR_BIOPDU_PZEM016_RX "BioPDU PZEM016 Rx" #define D_SENSOR_BIOPDU_BIT "BioPDU Bit" +#define D_SENSOR_LOX_O2_RX "LoxO2 RX" // Units #define D_UNIT_AMPERE "A" diff --git a/tasmota/language/fr_FR.h b/tasmota/language/fr_FR.h index 7e1363747..58751d164 100644 --- a/tasmota/language/fr_FR.h +++ b/tasmota/language/fr_FR.h @@ -928,6 +928,7 @@ #define D_SENSOR_BIOPDU_PZEM0XX_TX "BioPDU PZEM0XX Tx" #define D_SENSOR_BIOPDU_PZEM016_RX "BioPDU PZEM016 Rx" #define D_SENSOR_BIOPDU_BIT "BioPDU Bit" +#define D_SENSOR_LOX_O2_RX "LoxO2 RX" // Units diff --git a/tasmota/language/fy_NL.h b/tasmota/language/fy_NL.h index 6eb6e6c24..55a7c39d1 100644 --- a/tasmota/language/fy_NL.h +++ b/tasmota/language/fy_NL.h @@ -928,6 +928,7 @@ #define D_SENSOR_BIOPDU_PZEM0XX_TX "BioPDU PZEM0XX Tx" #define D_SENSOR_BIOPDU_PZEM016_RX "BioPDU PZEM016 Rx" #define D_SENSOR_BIOPDU_BIT "BioPDU Bit" +#define D_SENSOR_LOX_O2_RX "LoxO2 RX" // Units #define D_UNIT_AMPERE "A" diff --git a/tasmota/language/he_HE.h b/tasmota/language/he_HE.h index edf429bf6..07caf4f39 100644 --- a/tasmota/language/he_HE.h +++ b/tasmota/language/he_HE.h @@ -928,6 +928,7 @@ #define D_SENSOR_BIOPDU_PZEM0XX_TX "BioPDU PZEM0XX Tx" #define D_SENSOR_BIOPDU_PZEM016_RX "BioPDU PZEM016 Rx" #define D_SENSOR_BIOPDU_BIT "BioPDU Bit" +#define D_SENSOR_LOX_O2_RX "LoxO2 RX" // Units