Menu Zavřeno
Před vytvořením příspěvku musíte být přihlášeni.

SHT3X Teplotní a vlhkostní senzor ESPHome

Chtěl bych napsat malinký navod na přidaní tohoto čidla jelikož jsem se s tím docela natrápil a řešení jsem hledal docela dlouho tak by to mohlo někomu pomoc.

Původně jsem chtěl BME280 ale špatně jsem objednal od čiňana svoji neopatrností 😀

Náhled sensoruKod do ESPHome.  Zapojení  SCL na pin D1 a SDA na pin D2. VIN a GND je jasné. Ja jsem použil desku NodeMcu V3.

i2c:
sda: 4
scl: 5
scan: True

sensor:
- platform: sht3xd
temperature:
name: "Teplota"
humidity:
name: "Vlhkost"
address: 0x44
update_interval: 60s

Když máte kod zkompilovaný je potřeba přejit do složky config\esphome\NAZEVVASEHOESPPROJEKTU\src\esphome\components\i2c nejlépe asi přes Sambu.

Měli by jste tam najit dva soubory: i2c.cpp a i2c.h u obou souboru je potřeba upravit kod. POZOR po každem zkompilovaní se vaše uprava smaže a je to potřeba udělat znova.

do i2c.cpp je potřeba nakopírovat tuto část kodu a nahradit starou.

void I2CComponent::setup() {
this->wire_->begin(this->sda_pin_, this->scl_pin_);
if (this->frequency_.has_value()) {
this->wire_->setClock(*this->frequency_);
}
this->wire_->setClock(this->frequency_);
}
void I2CComponent::dump_config() {
ESP_LOGCONFIG(TAG, "I2C Bus:");
ESP_LOGCONFIG(TAG, " SDA Pin: GPIO%u", this->sda_pin_);
ESP_LOGCONFIG(TAG, " SCL Pin: GPIO%u", this->scl_pin_);
if (this->frequency_.has_value()) {
ESP_LOGCONFIG(TAG, " Frequency: %u Hz", *this->frequency_);
}
ESP_LOGCONFIG(TAG, " Frequency: %u Hz", this->frequency_);
if (this->scan_) {
ESP_LOGI(TAG, "Scanning i2c bus for active devices...");
uint8_t found = 0;

a do i2c.h

uint8_t sda_pin_;
uint8_t scl_pin_;
bool scan_;
optional<uint32_t> frequency_{};
uint32_t frequency_{50000};
};

#ifdef ARDUINO_ARCH_ESP32

Kdyby si někdo nevěděl rady tak jsem upravené soubory nahrál a stačí nahradit ty vaše ve vaší složce. Tím by měl být váš sensor plně funkční.

Stažení Tu: https://uloz.to/file/oaZFTjch1z0F/sht3x-zip