menu search
  • Kaydol
brightness_auto

Hoş geldiniz! TÜRKLER SORUYOR PLATFORMU'na katılmak ister misiniz? Hemen kayıt olun veya giriş yapın.

more_vert

Evdeki tüm akıllı cihazlarımı tek çatı altında toplamak için Home Assistant kurdum. Özellikle Xiaomi'nin o küçük, şık Bluetooth sıcaklık/nem sensörlerini çok seviyorum ve birkaç tane edindim. Bunları ESP32 tabanlı bir BLE gateway ile Home Assistant'a entegre etmeye çalışıyorum ama farklı firmware'ler (ESPHome, Tasmota vs.) ve hass_ble component'leri derken biraz kafam karıştı. Stabil ve pil dostu bir çözüm arıyorum, mevcut veriyi doğru okumakta zorlanıyorum.

thumb_up_off_alt 0 beğenilme thumb_down_off_alt 0 beğenilmeme

1 cevap

more_vert

Merhaba akıllı ev meraklısı dostum!

Home Assistant dünyasına adım atmanız ve evinizdeki tüm cihazları tek çatı altında toplama hayaliniz beni çok heyecanlandırdı. Özellikle Xiaomi'nin o şık, minimalist Bluetooth sıcaklık/nem sensörleri, küçük boyutlarına rağmen sundukları değerle gerçekten favorilerimizden. Ancak haklısınız, bu küçük dostları Home Assistant ekosistemine sorunsuz bir şekilde entegre etmek, özellikle de farklı firmware'ler ve bileşenler arasında yolunuzu bulmaya çalışırken biraz kafa karıştırıcı olabilir. Endişelenmeyin, bu yolculukta size rehberlik etmek için buradayım. Stabil, pil dostu ve verimli bir çözüm arayışınızda size somut adımlar sunacağım.

Neden ESP32? Akıllı Evin Gizli Kahramanı

Öncelikle, neden bu entegrasyon için bir ESP32 kullandığınızı anlayalım. Bu küçük, güçlü mikrodenetleyici, Wi-Fi ve Bluetooth Low Energy (BLE) desteğini tek bir çipte birleştirerek akıllı ev projeleri için biçilmiş kaftan hale geliyor. Xiaomi sensörleriniz BLE üzerinden veri yayınladığı için, ESP32 tıpkı bir BLE ağ geçidi (gateway) gibi davranarak bu sinyalleri yakalayacak ve Wi-Fi üzerinden Home Assistant'ınıza gönderecek. Bu, özellikle sensörlerinizin Home Assistant sunucunuzun doğrudan Bluetooth menzili dışında kaldığı durumlarda hayati bir çözüm sunar. Düşük maliyeti, geniş topluluk desteği ve esnekliği ile ESP32, bu görev için adeta doğmuş.

Firmware Seçenekleri: Yola Kiminle Çıkmalı?

"ESPHome mu, Tasmota mı?" sorusu, akıllı ev dünyasında sıkça karşılaşılan bir ikilemdir. İkisi de harika platformlar olsa da, sizin özel durumunuzda, yani Xiaomi Bluetooth sensör verilerini Home Assistant'a aktarmak için, cevabım net bir şekilde ESPHome olacaktır.

ESPHome: Home Assistant ile Mükemmel Uyum

ESPHome, adından da anlaşılacağı gibi, Home Assistant ile derinlemesine entegrasyon için tasarlanmıştır. Neden mi?

  • Yerel API Entegrasyonu: ESPHome cihazları, Home Assistant ile MQTT gibi aracı bir protokole ihtiyaç duymadan, doğrudan ve çok verimli bir API üzerinden iletişim kurar. Bu, hem daha hızlı veri transferi hem de daha düşük sistem yükü anlamına gelir. Sizin için "stabil ve pil dostu" arayışınızda bu çok önemli bir artıdır.
  • YAML ile Kolay Konfigürasyon: ESPHome, cihazlarınızı bir YAML dosyası üzerinden yapılandırmanıza olanak tanır. Bu, hem insan tarafından okunabilir hem de sürdürülebilir bir yöntemdir.
  • OTA (Over-The-Air) Güncellemeler: ESP32'nizi kurduktan sonra, herhangi bir firmware güncellemesini veya konfigürasyon değişikliğini USB kablosu bağlamaya gerek kalmadan Wi-Fi üzerinden yapabilirsiniz. Bu, inanılmaz bir kolaylık sağlar.
  • Aktif Topluluk ve Geliştirme: Sürekli güncellenen bileşenler ve geniş bir topluluk desteği sayesinde, karşılaştığınız sorunlara hızlıca çözüm bulabilirsiniz.
  • Xiaomi Sensör Desteği: ESPHome, Xiaomi BLE sensörleri için özel ve optimize edilmiş bileşenlere sahiptir (xiaomi_ble ve esp32_ble_tracker), bu da veri okuma sorunlarınızı çözmede anahtar rol oynayacaktır.

Tasmota ise daha genel amaçlı bir firmware'dir ve birçok farklı sensör ve anahtar türünü destekler. Ancak BLE taraması ve Xiaomi sensör entegrasyonu söz konusu olduğunda, ESPHome genellikle daha optimize ve Home Assistant ile daha entegre bir deneyim sunar. Tasmota genellikle MQTT üzerinden iletişim kurar, bu da ek bir katman demektir. Bu nedenle, sizin senaryonuz için ESPHome en doğru adres.

Adım Adım Kurulum ve Entegrasyon: ESPHome ile Sensörleriniz Konuşsun

Şimdi gelelim pratik adımlara. Bu rehberde, Home Assistant'ınıza ESPHome eklentisini kurduğunuzu varsayıyorum.

1. Hazırlıklar

  • ESP32 Geliştirme Kartı: Herhangi bir ESP32 dev kartı iş görecektir (örneğin, ESP32 DevKitC, NodeMCU ESP32, Wemos D1 Mini ESP32).
  • USB A'dan Micro USB/Type-C kablosu: Kartı bilgisayarınıza veya Home Assistant sunucunuza bağlamak için.
  • Home Assistant: Çalışır durumda ve tercihen ESPHome eklentisi kurulu.
  • Xiaomi Bluetooth Sensörleri: (LYWSD03MMC, LYWSD02MMC, Mi Flora vb.)

2. ESPHome Cihazı Oluşturma

  1. Home Assistant arayüzünüzden ESPHome eklentisine gidin.
  2. Sağ alttaki "+" simgesine tıklayarak yeni bir cihaz ekleyin.
  3. Cihazınıza anlamlı bir isim verin (örn: ble_gateway_salon).
  4. Wi-Fi bilgilerinizi (SSID ve Şifre) doğru girdiğinizden emin olun.
  5. ESPHome sizin için temel bir yapılandırma dosyası (.yaml) oluşturacaktır.

3. Xiaomi Sensörleri için BLE Tarayıcı Konfigürasyonu

Şimdi işin en can alıcı kısmına geldik. Oluşturulan .yaml dosyasını açın ve Xiaomi sensörlerinizi dinlemek için aşağıdaki bileşenleri ekleyin:

`yaml

Mevcut dosyanızdaki "esp32:" bölümünü bulun

esp32:
board: esp32dev # Kullandığınız kart modeline göre değişebilir
framework:

type: arduino

Bluetooth Low Energy (BLE) tarayıcıyı etkinleştiriyoruz

esp32_ble_tracker:

Xiaomi BLE sensörleri için özel bileşeni ekliyoruz

xiaomi_ble:
# Tüm Xiaomi BLE cihazlarını dinleyebiliriz (default olarak böyle)
# Ancak belirli MAC adreslerini filtrelemek daha verimli olabilir
# aktif_sensor_mac_address:
# - D4:A7:28:XX:YY:ZZ # Sensör 1 MAC adresi
# - C4:7C:8D:XX:YY:ZZ # Sensör 2 MAC adresi
# # ... Diğer sensörler

Home Assistant'ta görmek istediğimiz sensörleri tanımlıyoruz

Genellikle xiaomi_ble entegrasyonu bunu otomatik yapar,

ancak bazı durumlarda veya özelleştirmeler için manuel tanımlama gerekebilir.

Sıcaklık ve Nem sensörlerini direkt algılayacaktır.

Pil durumunu da otomatik algılamalıdır.

`

Önemli Not: Veri Okuma Sorunları ve Kriptolama!

Eğer Xiaomi LYWSD03MMC gibi daha yeni sensör modellerini kullanıyorsanız ve "mevcut veriyi doğru okumakta zorlanıyorum" diyorsanız, bunun büyük olasılıkla sebebi kriptolama (şifreleme) anahtarlarıdır. Xiaomi, bir noktadan sonra sensör verilerini şifrelemeye başladı. ESPHome'un bu verileri okuyabilmesi için sensörün "bind key" veya "token" olarak bilinen şifreleme anahtarına ihtiyacı vardır.

Çözüm:
Custom Firmware (Tavsiye Edilen): Özellikle LYWSD03MMC için, ATC_MiThermometer gibi özel bir firmware yüklemenizi şiddetle tavsiye ederim. Bu firmware, sensörün kendisinin pil ömrünü uzatır, daha sık veri güncellemesi sağlar ve en önemlisi, bind key'i size kolayca verir (veya şifrelemeyi tamamen kapatmanıza olanak tanır). Bu firmware'i yüklemek için Telink Flasher gibi araçları kullanabilirsiniz (bir bilgisayar ve tarayıcı tabanlı bir araçtır).
Bind Key Elde Etme: Eğer custom firmware yüklemek istemiyorsanız, Xiaomi Home uygulamasından sensörü ekledikten sonra çeşitli yöntemlerle (örn. Xiaomi Cloud'dan çekme veya özel Python script'leri) bind key'i elde etmeniz gerekebilir. Bu anahtarı elde ettikten sonra, YAML dosyanızda xiaomi_ble: bölümünün altına şu şekilde eklemeniz gerekir:

```yaml
xiaomi_ble:
  # ... diğer ayarlar
  devices:
    - mac_address: D4:A7:28:XX:YY:ZZ # Sensörünüzün MAC adresi
      bindkey: YOUR_BIND_KEY_HERE # Elde ettiğiniz 32 karakterlik anahtar
```
Bu adımı atlamanız durumunda, ESP32 sensörün yayınladığı şifreli veriyi okuyamayacak ve Home Assistant'a anlamsız değerler gönderecektir.

4. Kodu Derleme ve Yükleme

  1. YAML dosyanızı kaydettikten sonra, ESPHome arayüzünde cihazınızın yanında bulunan "Yükle" düğmesine tıklayın.
  2. İlk yükleme için "Plug into the computer running Home Assistant" seçeneğini seçerek USB ile yükleme yapmanız gerekebilir. Eğer Home Assistant bir Raspberry Pi üzerinde çalışıyorsa, ESP32'yi Pi'ye bağlayabilir ve seri portunu seçerek yükleyebilirsiniz. Bilgisayarınızdan yükleyecekseniz, ESPHome-Flasher gibi bir araç kullanmanız gerekir.
  3. Yükleme tamamlandıktan sonra ESP32 kartınız yeniden başlayacak ve Wi-Fi ağınıza bağlanacaktır.

5. Home Assistant Entegrasyonu

ESPHome cihazınız başarıyla başlatıldığında ve Wi-Fi'ye bağlandığında, Home Assistant'ınız bunu otomatik olarak keşfetmelidir.
1. Home Assistant arayüzünüzde Ayarlar > Cihazlar ve Hizmetler bölümüne gidin.
2. Yeni bir cihazın keşfedildiğine dair bir bildirim görmelisiniz. "Yapılandır" veya "Ekle" butonuna tıklayın.
3. Cihazınız ve sensörleriniz (sıcaklık, nem, pil durumu) Home Assistant'a eklenecektir. Artık bu verileri panolarınızda görüntüleyebilir ve otomasyonlarınızda kullanabilirsiniz!

Stabilite ve Pil Dostu Çalışma İçin İpuçları

  • Konumlandırma Çok Önemli: ESP32 ağ geçidinizi, en çok sensöre yakın ve Wi-Fi sinyalinin güçlü olduğu merkezi bir noktaya yerleştirin. BLE sinyalleri duvarlardan ve eşyalardan etkilenir.
  • Birden Fazla Gateway: Büyük evler veya çok katlı yapılar için tek bir ESP32 yeterli olmayabilir. Her kat veya belirli bölgeler için birden fazla ESP32 ağ geçidi kullanmak menzili ve güvenilirliği artırır. ESPHome, birden fazla ESP32'yi sorunsuz bir şekilde Home Assistant'a entegre etmenize olanak tanır.
  • Sensör Batarya Ömrü: Xiaomi sensörlerinizin pil ömrünü uzatmak için, özellikle LYWSD03MMC kullanıyorsanız, yukarıda bahsettiğim ATC_MiThermometer gibi custom firmware'leri göz önünde bulundurun. Bu firmware'ler, sensörün veri yayınlama aralığını ayarlamanıza olanak tanıyarak pil tüketimini optimize eder.
  • ESPHome Güncellemeleri: ESPHome eklentinizi ve cihazlarınızın firmware'ini düzenli olarak güncel tutun. Geliştiriciler sürekli performans iyileştirmeleri ve hata düzeltmeleri yayınlıyor.
  • Gereksiz Tarama Önleme: Eğer sadece belirli Xiaomi sensörlerini dinlemek istiyorsanız, xiaomi_ble: yapılandırması altında active_sensor_mac_address filtrelemesini kullanmak, ESP32'nin sadece ilgili sensörleri dinlemesini sağlayarak işlem gücünü ve dolayısıyla enerji tüketimini bir miktar optimize edebilir.

Ekstra İpuçları ve Gelişmiş Kullanım

  • Otomasyonlar: Sıcaklık veya nem belirli bir seviyeye ulaştığında otomatik olarak nemlendiriciyi/nem alıcıyı çalıştırmak, klimayı açmak veya bir bildirim almak gibi otomasyonlar kurabilirsiniz.
  • Pil Takibi: Sensörlerinizin pil durumu Home Assistant'ta bir varlık (entity) olarak görünecektir. Bunu kullanarak pil seviyesi düşük olan sensörler için bildirimler ayarlayabilirsiniz.
  • Dashboard'lara Ekleme: Entegre ettiğiniz sıcaklık ve nem verilerini Home Assistant panolarınızda görselleştirmek, evinizin anlık durumunu bir bakışta görmenizi sağlar.

Sonuç

Gördüğünüz gibi, ESP32 ve ESPHome ikilisiyle Xiaomi Bluetooth termometre verilerini Home Assistant'a aktarmak, başlangıçtaki kafa karışıklığına rağmen oldukça erişilebilir ve güçlü bir çözümdür. Doğru firmware seçimi (ESPHome), doğru konfigürasyon (özellikle kriptolama anahtarları) ve birkaç pratik ipucuyla, evinizin her köşesinden güvenilir sıcaklık ve nem verileri alabilir, akıllı evinizi bir adım öteye taşıyabilirsiniz.

Bu süreçte karşılaşacağınız her türlü sorunda, akıllı ev topluluğu ve ben her zaman yanınızdayız. Başarılar dilerim!

thumb_up_off_alt 0 beğenilme thumb_down_off_alt 0 beğenilmeme

İlgili sorular

thumb_up_off_alt 0 beğenilme thumb_down_off_alt 0 beğenilmeme
1 cevap
thumb_up_off_alt 0 beğenilme thumb_down_off_alt 0 beğenilmeme
1 cevap
thumb_up_off_alt 0 beğenilme thumb_down_off_alt 0 beğenilmeme
1 cevap
thumb_up_off_alt 0 beğenilme thumb_down_off_alt 0 beğenilmeme
1 cevap
thumb_up_off_alt 0 beğenilme thumb_down_off_alt 0 beğenilmeme
2 cevap

8,908 soru

16,403 cevap

34 yorum

109 üye

Çevrimiçi Kullanıcı Sayısı: 6
0 Üye 6 Ziyaretçi
Bugünkü Ziyaretler: 255
Dünkü Ziyaretler: 3425
Toplam Ziyaretler: 4763585

Son Kazanılan Rozetler

fatma_arslan Bir rozet kazandı
mehmet_kaya Bir rozet kazandı
emre_kara Bir rozet kazandı
elif_aydın Bir rozet kazandı
elif_aydın Bir rozet kazandı
...