1 puan yazan GN⁺ 2023-08-17 | 1 yorum | WhatsApp'ta paylaş
  • Buluta bağımlı akıllı kapı zillerinden kaçınmak isteyen kullanıcılar için ESP32-CAM ve ESPHome ile Home Assistant’a yerel olarak entegre edilen bir DIY kapı zili yapım projesi
  • Temel kurulum Home Assistant, ESPHome eklentisi ve mobil Home Assistant companion app’ten oluşuyor; düğme girişi tetikleyici olarak kullanılarak kamera anlık görüntüsü telefon bildirimine gönderiliyor
  • Donanım; ESP32-CAM, anlık basmalı düğme, isteğe bağlı 8 RGB LED halka, 10 m Micro USB kablo ve 3D baskı muhafazadan oluşuyor; dahili LED flaş yerine kullanılabiliyor
  • ESP32-CAM varyantına göre pin dizilimi ve pulldown davranışı değişebileceği için, GPIO14 düğme girişi için GND arasına 10kΩ pulldown direnci eklenen bir kablolama gerekiyor
  • PLA muhafaza örnek baskıda kullanılmış olsa da suya dayanıklılık için PETG veya ABS daha uygun; kamera deliği nedeniyle yağmurdan korunabilecek bir montaj konumu gerekiyor

Yerel kapı zili kurulumu ve gerekenler

  • Bu akıllı kapı zili gizlilik dostu bir kurulum hedefliyor ve ESPHome üzerinden Home Assistant ile entegre oluyor
  • Başlamak için şu kurulum gerekiyor
    • Çalışan bir Home Assistant örneği
    • ESPHome eklentisi
    • Düğmeye basılma bildirimlerini alacak mobil Home Assistant companion app
  • Örnek yapıda 8 RGB LED halka ışık kullanılmış, ancak daha basit bir kurulum istenirse bu atlanabilir ve ESP32-CAM’in dahili LED’i flaş olarak kullanılabilir
  • ESP32-CAM AI-Thinker sürümünde, normal bir ESP32’deki tüm pull-up ve pull-down dirençleri bulunmayabilir
    • GPIO14 üzerinde ESPHome’un INPUT_PULLDOWN özelliği denenmiş ancak çalışmamış
    • Çok sayıda Çin menşeli ESP32-CAM varyantı olduğu için karttan karta farklılık olabilir

Parçalar ve açık dosyalar

  • Başlıca parçalar şunlar
    • ESP32-CAM
      • İlk ESPHome flash işlemini kolaylaştırmak için flash/download/io0 düğmesi olan kart öneriliyor
      • Bu düğme olmayan kartların FTDI adaptörüyle flashlanması gerekiyor
    • Anlık basmalı düğme
    • 8 RGB LED halka ışık
    • 10 m Micro USB kablo
  • 3D baskı dosyaları ve yapılandırma dosyaları açık olarak paylaşılmış

Muhafazanın basılması ve montaj

  • Muhafaza üç parça olarak basılıyor
    • Ana gövde
    • ESP32-CAM sabitleme plakası
    • Arka plaka ve duvar montajı
  • Ön ve arka muhafaza destek kullanılarak basılmalı
  • Örnek baskıda PLA kullanılmış olsa da suya dayanıklılık için %20–30 dolulukla PETG veya ABS filament öneriliyor
  • Baskıdan sonra iki adet M2.5 vida inserti ekleniyor
    • ESP32-CAM sabitleme braketinin vidalanabilmesi için ön kapağa yerleştiriliyor
    • Yüz plakasının 10 mm M2.5 vida ile sabitlenebilmesi için arka plakanın alt kısmına yerleştiriliyor

ESP32-CAM’i ESPHome ile flashlamak

  • ESP32-CAM’i flash modunda başlatmak için flash/download/io0 düğmesine basılı tutarken Micro USB kabloyla bilgisayara bağlanıyor
  • Home Assistant içinde ESPHome eklentisi açılarak yeni bir cihaz oluşturuluyor
    • Yol: Settings -> Add-ons -> ESPHome -> Open Web UI
    • Yeni cihaz adı örneğin Doorbell olarak verilebilir
    • Cihaz türü olarak ESP32 seçiliyor ve use recommended settings işaretleniyor
  • Oluşturulan YAML yapılandırmasında captive_portal: altına GitHub deposundaki yapılandırma kodu yapıştırılıyor
  • Save ve Install tıklandıktan sonra Plug into this computer seçiliyor
  • Ürün yazılımı tarayıcıda ESPHome Web üzerinden flashlanıyor
    • Google Chrome, ESP32-CAM ürün yazılımı flashlama için en kararlı tarayıcı olarak kullanılıyor
    • Ürün yazılımı derlendikten sonra Download Project tıklanabiliyor ve bu işlem birkaç dakika sürebiliyor
  • Yeni ürün yazılımı flashlandıktan sonra Home Assistant yeni cihazı algılıyor ve istenen entity’ler panele eklenebiliyor

Düğme bildirimi otomasyonu

  • Kapı zili düğmesine basıldığında kamera anlık görüntüsü alıp telefona gönderen bir otomasyon kuruluyor
  • Home Assistant içinde yeni bir otomasyon oluşturuluyor
    • Yol: Settings -> Automations -> + Create Automation
    • Yeni otomasyon sıfırdan oluşturuluyor ve sağ üst menüden Edit in YAML seçiliyor
  • GitHub deposundaki otomasyon YAML’ı yapıştırıldıktan sonra mobil telefon gibi cihazların entity adı ortama göre düzenleniyor
  • Kaydedip Home Assistant yeniden başlatıldığında yeni otomasyon etkinleşiyor

Kablolama ve kurulum kısıtları

  • ESP32-CAM kartının birçok varyantı olduğundan gerçek karttaki pin dizilimi kontrol edilmeli
  • Kablolama, Micro USB portunun bulunduğu alt PCB’nin arka yüzüne lehimleme yapılarak kuruluyor
  • GPIO14 ile GND arasına 10kΩ pulldown direnci ekleniyor
    • Bu direnç olmadan GPIO14’ün sık sık high durumda yüzdüğü gözlemlenmiş
    • Direncin ısıyla daralan makaronla kaplanması öneriliyor
  • Dahili kamera deliği nedeniyle yapı tamamen su geçirmez değil; yağmurdan korunan bir yere monte edilmeli
  • Güç, parça listesinde yer alan 10 m Micro USB kablo üzerinden sağlanıyor

1 yorum

 
GN⁺ 2023-08-17
Hacker News yorumları
  • Güzelmiş. Aydınlatmayı da sevdim
    Aptal bir kapı zilinin zilini çaldıran manyetik bobinin yakınına bir reed anahtar (normal kapı açılma/kapanma sensörü gibi) takıp bilgiyi Home Assistant’a göndermek de mümkün
    0,50 dolarlık bir reed anahtarı mevcut kapı ziline bağladım ve kapı zili bobiniyle aynı güç kaynağından beslenen ESP’nin dijital giriş/çıkış portuna çıkardım. Kapı ziline basılınca yalnızca yerelde çalışan giriş kamerasından e-posta ile anlık görüntü gönderiyor ve üst kattaki stereodan kapı zili çanı kaydını çalıyor. Başta analog girişle bobin voltajını izlemeyi denemiştim ama çok kararsızdı; daha basit olan reed anahtar yöntemi akım algılamada çok kararlı

    • kapı zili bobiniyle aynı güç kaynağı fikri harika. Ev içinde kullanılabilecek başka ne gibi belirsiz voltaj kaynakları vardır merak ediyorum. HVAC ana ünitesi, analog telefon hattı gibi şeyler
      POTS (Plain Old Telephone Service) telefon hattında, tüm telefonlar ahize kapalı durumdayken yaklaşık 48V DC olmalı. Aynı hattaki bir telefon ahize açık duruma geçince 3–9V aralığına düşer. Ahize açık bir telefon normal çalışmada genellikle yaklaşık 20mA DC akım çeker ve DC direnci yaklaşık 180Ω’dur. Kalan voltaj düşüşü bakır kablo yolu ve telefon şirketinin devresinde oluşur; genellikle kısa devre koruması ve ses devresini ayırmak için 200–400Ω seri direnç bulunur
      https://www.jkaudio.com/article_03.htm
    • Ben de tam olarak aynı yöntemi kullandım; içinde reed anahtar olan Aqara Zigbee kontak sensörünü gerçek kapı zilinin içine koydum. Bobinin üstünde tam düz bir yer vardı, gayet iyi çalışıyor
    • Reed anahtarın yapışıp kalması gibi bir sorun oluyor mu? Bu kullanım için Hall sensörü bende çok iyi sonuç verdi; belki de sadece düşük kaliteli reed anahtarlar görmüşümdür
    • Reed anahtarlar böyle kullanımlar için harika
      Benzer şekilde, rölenin üst muhafazasına yapıştırıp kontrol devresine ya da yük devresine doğrudan dokunmadan bobine enerji gelip gelmediğini algılamak için kullanmıştım
  • Bu tür IoT cihazlarında tek istediğim şey bulut bağımlılığının olmaması ve PoE kullanması. Sürekli ölen aptal pillerle uğraşacağıma milyarlarca kablo çekmeyi tercih ederim. Pil fiyatları da giderek fazla pahalılaşıyor

    • DIY IoT için PoE ESP32 referansı
      Yalıtımsız: https://www.olimex.com/Products/IoT/ESP32/ESP32-POE/open-sou...
      Yalıtımlı: https://www.olimex.com/Products/IoT/ESP32/ESP32-POE-ISO/open...
    • Aynen. Bir kere kablo çekmek büyük zahmet, ama en kötü ihtimalle doğrusal artar. Cihaz sayısı arttıkça daha fazla kablo gerekir; mevcut bağlantı kutusundan dal alınabildiği için belki logaritmik artışa bile daha yakın olabilir
      Yılda bir pil değiştirmek küçük bir zahmettir ama onlarca cihaza çıkınca hızla birikir ve düzenli olarak tekrarlandığı için doğrusal artıştan daha iyi sayılmaz
    • Bu tür kullanım için Zigbee’nin harika bir protokol olduğunu düşünüyorum. Yerelde çalışıyor, Wi‑Fi’ye de çıkmıyor; sensörler tek bir düğme pille yıllarca gidiyor
    • Güneş enerjisiyle besleme isterim. Kapı ziline belki 5 günde bir basılıyordur, değil mi? Kasayı güneş paneliyle kaplayıp gece gücü için süperkapasitör koymak yeter
    • O piller gerçekten can sıkıcı. Pilli cihazlar da kararsız olma eğiliminde. Her hafta bir şeyi yeniden eşleştirmek ya da pil değiştirmek gerekiyor
      Kendi evim olursa KNX’e geçmeyi düşünüyorum
  • Konudan biraz sapacak ama eşimde oldukça ağır ADD var, bu yüzden eşyalarını sık sık kaybediyor. Tile yalnızca belli bir mesafe içindeki eşyaları bulabiliyor ve sık bozuluyor gibi
    Olasılığı düşük ama ev içinde Bluetooth düşük enerji beacon’larıyla nesneleri 3D uzayda birkaç cm hata payıyla bulabilen bir iç mekân konum takip sistemi yapmış olan var mı merak ediyorum
    Asıl konuya daha yakın söylemek gerekirse, ESP32 oldukça müthiş. Ancak MicroPython veya CircuitPython ile Wi‑Fi bağlantısını kararlı tutamadım; yine de mümkün olanların kapsamı şaşırtıcı. Benim kartım epey eski, yeni bir kart alsam fark edebilir belki

    • DIY AirTags: https://github.com/seemoo-lab/openhaystack
    • ESP32 devkit kartına MicroPython kurup Wi‑Fi ve MQTT’ye bağlı halde sensör değerlerini 7/24 yayımlatıyorum; haftalardır sorunsuz çalışıyor
    • Gereksinimlere tamamen uymuyor ama https://www.room-assistant.io/ denediniz mi?
    • MicroPython ya da CircuitPython ise ne beklenirdi ki diye düşünüyorum. Güvenilirlik gereken gömülü sistemler için neredeyse yasak seviyesinde
  • Dünyanın bazı yerlerinde kapı zilinin varlığının, onu “akıllı” hâle getirmeyi gerektirecek kadar önemli olması ilginç. Akıllı kapı zili ürünlerinin başarısı bu talebi iyi gösteriyor
    Benim kapı zilim yok. Bir ziyaretçi bana ya da evdeki başka birine nasıl ulaşacağını bilmiyorsa, muhtemelen en başta oraya gelmesi için pek bir neden yoktur
    Bu sadece bana özgü de değil. Geçen hafta yürüyüş yaparken yaptığım son derece bilim dışı gözleme göre sokağımızın çoğu benzerdi; muhtemelen şehrimin çoğu da öyledir

    • Kulağa epey soğuk geliyor. Evi satın alıp taşındığımda komşular selam vermeye geldi, bazıları hoş geldin hediyesi bile getirdi. Kendimi böyle mahalle toplumundan koparmak istemem
    • Akıllı kapı zili talebinin bir kısmı bilinmeyen ziyaretçiler sorunuyla başa çıkmak için gibi görünüyor. Ev sahibi evde değilken bile kapının önünde kimin olduğunu bildirebilir ve evin boş olduğu gerçeğini gizleyebilir
    • Birleşik Krallık’taki evler o kadar küçük ki genelde kapıyı çalmak yeterli oluyor
      Kapı zili anakronik geliyor. Bizim sokakta neredeyse kimsede yok
    • İnternetten hiç kargo siparişi vermiyor musunuz? Vergi dairesinden hiç taahhütlü posta almadınız mı? Özellikle akıllı kapı zillerinin yaygınlaşmasının nedeni, evin dışında zaten bulunan elektriğe kolayca bağlanabilecek bir konumda olmaları
    • İnsanların gerçekten kapı zilini “akıllı” yapmak istemesinden ziyade, tüketici elektroniğindeki gelişmeler sayesinde çoğu evde zaten mükemmel bir konuma kadar kablolanmış yaklaşık 20V’luk güç kaynağı kullanılarak güvenlik/gözetim kamerasının giriş gibi yüksek öncelikli bir noktaya kolayca kurulabilir hâle gelmesi söz konusu
  • Gördüğüm incelemelere göre Reolink kapı zili kamerası, yazarın gereksinimlerine uyan tek ticari seçenek gibi görünüyor. Yerel olarak çalışıyor ve Home Assistant’a entegre edilebiliyor
    Ancak interkom için ayrı bir uygulama gerekiyor. Yazarın kendi yaptığı çözüm sesli iletişim sunmuyor gibi; en azından yalnızca kamera protokolüyle Home Assistant’ta doğrudan çift yönlü ses kullanmanın da bir yolu yok gibi görünüyor

    • UniFi Doorbell nasıl? Bulut bağlantısı gerektirmiyor, yerelde kalıyor ve HomeAssistant / Scrypted / Homebridge ile entegre edilebiliyor
    • Amcrest de yalnızca yerel kullanımı destekleyen ve Home Assistant ile entegre olan ürünler üretiyor
  • ESP32 gerçekten insanı içine çeken derin bir tavşan deliği gibi. Zaten ESP32 kullanan ya da geliştirme aşamasında olan çok sayıda proje var; şimdi akılda tutulacak bir şey daha çıktı

    • Neler yapıyorsunuz?
  • Harika bir proje. ESP32 kamera görüntü kalitesi açısından oldukça kötü olabiliyor. Blogda kapı zilinden çekilmiş tam çözünürlüklü bir fotoğraf olsa faydalı olurdu

  • Mükemmel bir proje. Maker’ların ortaya çıkardığı çeşitli ESP32 kapı zillerini görmek güzel
    Örnek video veya fotoğraf olsa iyi olurdu. Daha önce ESP32 Cam kullandım; kendi başına etkileyici olsa da kişisel olarak istediğim kalite değildi. Elbette benim akıllı kapı zili kullanımım basitçe “kim var”dan çok güvenlik tarafına daha yakın

  • Şu anda maliyeti düşürmek için AS-IS durumda satın aldığım oldukça pahalı bir PoE kapı zili kullanıyorum. Axis Communications ürünü
    ONVIF olaylarını alabilme özelliğini gerçekten seviyorum. Olayları tüketebiliyorsanız, aslında istediğiniz şeyi yapabilirsiniz; bu da bu tür ürünlerin esnekliğini artırıyor. Örneğin birinin eliyle kamera merceğini kapatması gibi özel olaylar oluşturmanın da bir yolu var
    Home Assistant’ın ONVIF desteği harika. Yerel ONVIF olaylarını elde etmek için betiklerin (kapı açık/kapalı boolean’ı gibi) etrafında bir tür sarmalayıcı oluşturmak istiyorum

  • Bu sitedeki yorumlardan biri ESP32 performans sorununa değinmiş. IoT cihazlarıyla ya da bu tür kartlarla hiç uğraşmadım ama nispeten ucuz oldukları için kurcalamak istiyordum; araştırınca ESP32’nin 40nm üretim süreciyle üretildiğini öğrendim
    Daha gelişmiş bir süreçte üretilen ve benzer güç bütçesiyle daha yüksek performans veren daha yeni bir sürümü olup olmadığını merak ediyorum

    • 240MHz’lik iki RISC çekirdeği oldukça güçlü. 40nm bir mikrodenetleyici için fena değil. Örneğin rakip ürünlerden Nordic’in nRF52 serisi 55nm süreçle üretiliyor
    • Pek yok. Çipin daha yeni sürümleri var; RISC-V veya Zigbee/Thread sürümleri de buna dahil, ancak performans/güç tarafında dramatik iyileşmeler görmek zor. Bu pazar segmentinde performans kısıtları yaygın ve kabul edilen ödünleşim de bu
      Daha iyi ödünleşimler sunan SoC aileleri de var, ancak ESP32 kadar hobi geliştiricilerine dost olan pek fazla seçenek yok. Nordic olabilir ya da Pi Zero gibi küçük tek kart bilgisayarlara yönelmek mümkün
      Yine de ESP32, çoğu ev otomasyonu cihazının ihtiyaç duyduğundan çok daha güçlü. Video akışı ya da makine öğrenimi gibi daha ağır birkaç işte sınırlara çarpmaya başlıyor. O zaman bile akıllıca davranılırsa epey fazla iş yapılabilir