Merge pull request #6132 from esphome/bump-2023.12.9

2023.12.9
This commit is contained in:
Keith Burzinski 2024-01-22 19:54:22 -06:00 committed by GitHub
commit ec3162282c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 10 additions and 6 deletions

View file

@ -217,8 +217,12 @@ bool HOT IRAM_ATTR DHT::read_sensor_(float *temperature, float *humidity, bool r
uint16_t raw_humidity = (uint16_t(data[0] & 0xFF) << 8) | (data[1] & 0xFF); uint16_t raw_humidity = (uint16_t(data[0] & 0xFF) << 8) | (data[1] & 0xFF);
uint16_t raw_temperature = (uint16_t(data[2] & 0xFF) << 8) | (data[3] & 0xFF); uint16_t raw_temperature = (uint16_t(data[2] & 0xFF) << 8) | (data[3] & 0xFF);
if (this->model_ != DHT_MODEL_DHT22_TYPE2 && (raw_temperature & 0x8000) != 0) if (raw_temperature & 0x8000) {
if (!(raw_temperature & 0x4000))
raw_temperature = ~(raw_temperature & 0x7FFF); raw_temperature = ~(raw_temperature & 0x7FFF);
} else if (raw_temperature & 0x800) {
raw_temperature |= 0xf000;
}
if (raw_temperature == 1 && raw_humidity == 10) { if (raw_temperature == 1 && raw_humidity == 10) {
if (report_errors) { if (report_errors) {

View file

@ -195,7 +195,7 @@ void PMSX003Component::send_command_(uint8_t cmd, uint16_t data) {
void PMSX003Component::parse_data_() { void PMSX003Component::parse_data_() {
switch (this->type_) { switch (this->type_) {
case PMSX003_TYPE_5003ST: { case PMSX003_TYPE_5003ST: {
float temperature = this->get_16_bit_uint_(30) / 10.0f; float temperature = (int16_t) this->get_16_bit_uint_(30) / 10.0f;
float humidity = this->get_16_bit_uint_(32) / 10.0f; float humidity = this->get_16_bit_uint_(32) / 10.0f;
ESP_LOGD(TAG, "Got Temperature: %.1f°C, Humidity: %.1f%%", temperature, humidity); ESP_LOGD(TAG, "Got Temperature: %.1f°C, Humidity: %.1f%%", temperature, humidity);
@ -279,7 +279,7 @@ void PMSX003Component::parse_data_() {
// Note the pm particles 50um & 100um are not returned, // Note the pm particles 50um & 100um are not returned,
// as PMS5003T uses those data values for temperature and humidity. // as PMS5003T uses those data values for temperature and humidity.
float temperature = this->get_16_bit_uint_(24) / 10.0f; float temperature = (int16_t) this->get_16_bit_uint_(24) / 10.0f;
float humidity = this->get_16_bit_uint_(26) / 10.0f; float humidity = this->get_16_bit_uint_(26) / 10.0f;
ESP_LOGD(TAG, ESP_LOGD(TAG,

View file

@ -352,7 +352,7 @@ void SEN5XComponent::update() {
float humidity = measurements[4] / 100.0; float humidity = measurements[4] / 100.0;
if (measurements[4] == 0xFFFF) if (measurements[4] == 0xFFFF)
humidity = NAN; humidity = NAN;
float temperature = measurements[5] / 200.0; float temperature = (int16_t) measurements[5] / 200.0;
if (measurements[5] == 0xFFFF) if (measurements[5] == 0xFFFF)
temperature = NAN; temperature = NAN;
float voc = measurements[6] / 10.0; float voc = measurements[6] / 10.0;

View file

@ -1,6 +1,6 @@
"""Constants used by esphome.""" """Constants used by esphome."""
__version__ = "2023.12.8" __version__ = "2023.12.9"
ALLOWED_NAME_CHARS = "abcdefghijklmnopqrstuvwxyz0123456789-_" ALLOWED_NAME_CHARS = "abcdefghijklmnopqrstuvwxyz0123456789-_"
VALID_SUBSTITUTIONS_CHARACTERS = ( VALID_SUBSTITUTIONS_CHARACTERS = (