ESP32 nixie saati masaüstü uygulamaları

Gerçek IN-14 tüplerinin OLED panellerde sıcak turuncu parıltısını taklit eden ve saatin yanında hava durumunu gösteren ESP32 Nixie tarzı saat, üretici forumlarında dolaşmaya devam ediyor. Geçen ay XDA’daki bir proje, her şeyin tezgahta otuz dolardan az bir maliyetle nasıl inşa edilebileceğini gösterdi. Bir ESP32 Nixie masaüstü saati oluşturmak için en iyi uygulamalar, ESP32 araç zincirinin karmaşıklığını gizleyenler ve bize görüntü kodu üzerinde odaklanma imkanı verenlerdir.

Sekiz masaüstü uygulamasını bir araya getirdik; bu uygulamalar yazılım yüklemeyi, kablolama şemalarını, OTA güncellemelerini ve tüm projeyi bir araya getiren hava durumu-API birleştirmesini kapsar. Her biri Windows, macOS ve Linux’ta çalışır (bazıları yalnızca Linux’ta), ve her birinin çalışan ücretsiz bir yolu vardır.

Bir ESP32 oluşturma uygulamasında ne arayacağını

Bir ESP32 saat projesi birkaç ayrı işe ayrılır: yazılımı yazma, USB veya OTA üzerinden yanıp sönme, ekranı kablolama, bir hava durumu API’si entegre etme ve canlı olduktan sonra cihazı izleme. Uygulamalar seçerken biz şunları dikkate alıyoruz:

Hızlı karşılaştırma

Uygulama En iyi Ücretsiz plan Platformlar
ESPHome Yapılandırmaya dayalı yazılım Ücretsiz, açık kaynak Windows, macOS, Linux
Arduino IDE Başlangıç dostça yazılım Ücretsiz Windows, macOS, Linux
PlatformIO Power-user yazılımı IDE Ücretsiz, ücretli katman Windows, macOS, Linux
VS Code PlatformIO için ana bilgisayar Ücretsiz Windows, macOS, Linux
Home Assistant Çalışma zamanı entegrasyonu Ücretsiz, açık kaynak Windows, macOS, Linux
Fritzing Kablolama şemaları Ücretli Windows, macOS, Linux
MQTT Explorer İleti düzeyinde hata ayıklama Ücretsiz Windows, macOS, Linux
OpenWeatherMap Hava durumu API ve pano Ücretsiz katman Web (çapraz platform)

1. ESPHome, yapılandırmaya dayalı yazılım için en iyi

ESPHome, C++ yazmak amaç değilse bir ESP32 Nixie saatini çalıştırmanın en hızlı yoludur. YAML dosyasında tüm cihazı yapılandırın (ekran sürücüsü, RTC, hava durumu sensörü, OTA hedefi) ve ESP32 Nixie saat oluşturmaları için ESPHome derleme ve yükleme adımını ele alır. Ayrıca otomatik olarak bir Home Assistant cihazı oluşturur.

Başarısız olduğu yer: Özel ekran efektleri (animasyonlu tüp geçişleri, kararma eğrileri) bazen C++ kaçış deliği gerektirir. lambda bloğu eklemek işe yarar ancak yalnızca YAML idealini kırar.

Fiyatlandırma:

Sonuç: Saat bir Home Assistant kurulumunun içinde yaşayacaksa en iyi seçim. Buradan başlayın.

İndir: ESPHome | GitHub

2. Arduino IDE, başlangıç dostça için en iyi

Arduino IDE, ESP32 geliştirmeye giden klasik bir yoldur. Arduino IDE, Nixie saat projeleri için işe yarar, çünkü çoğu öğretici ve topluluk örneği bunu hedefler ve kütüphane yöneticisi sürüm 2.0’dan beri ESP32 kurulu varyantlarını temiz şekilde ele alır.

Başarısız olduğu yer: Editör temeldir. Birkaçtan fazla kaynak dosyayı yönetmek hantal hale gelir ve seri monitör filtrelemeyi unutur.

Fiyatlandırma:

Sonuç: İlk ESP32 saat oluşturması için mükemmel. Taslak tek bir dosyayı aştığında PlatformIO’ya geçin.

İndir: arduino.cc

3. PlatformIO, power-user yazılımı IDE için en iyi

PlatformIO, VS Code’un içinde çalışır ve bize uygun çoklu dosya proje yönetimi, birim testleri ve bağımlılık kilitleme sağlar. ESP32 Nixie saat oluşturmaları için PlatformIO, proje birden fazla ekran veya durum makinesi olduğunda değiştirdiğimiz şeydir.

Başarısız olduğu yer: Öğrenme eğrisi Arduino IDE’den daha diktir. Topluluk örnekleri daha sık Arduino IDE’yi hedefler, bu nedenle portlar bazen gereklidir.

Fiyatlandırma:

Sonuç: Ciddi bir yapı için doğru araç. VS Code ile eşleştirin.

İndir: platformio.org

4. VS Code, PlatformIO için en iyi ana bilgisayar

VS Code, PlatformIO’nun, ESPHome editör eklentisinin ve Fritzing diyagram ihracatının birleştiği yerdir. ESP32 saat geliştirme için VS Code, bağımsız bir araç olarak değil, entegre bir ev olarak önemlidir.

Başarısız olduğu yer: Uzantı pazarı gürültülüdür. Temiz bir kurulum elde etmek, düşündüğünüz ihtiyaç duyduğunuz uzantıları kapatmak anlamına gelir.

Fiyatlandırma:

Sonuç: PlatformIO yüklüyse, VS Code zaten orada.

İndir: code.visualstudio.com | vscodium.com

5. Home Assistant, çalışma zamanı entegrasyonu için en iyi

Home Assistant, saatin daha geniş bir kurulumun parçası haline geldiği yerdir: tüpler oda ışıkları kapandığında kararır, hava durumu paneli internet yerine yerel bir sensörden güncellenir. ESP32 saat entegrasyonu için Home Assistant işe yarar çünkü ESPHome tarafından oluşturulan cihazlar otomatik olarak birinci sınıf varlıklar olarak görünür.

Başarısız olduğu yer: Saat bağımsızsa ve amaç sadece bir görüntü ise fazla. Kurulum maliyeti tam bir ev otomasyon sunucusudur.

Fiyatlandırma:

Sonuç: Evin birkaç DIY cihazından biri ise kurmaya değer.

İndir: home-assistant.io

6. Fritzing, kablolama şemaları için en iyi

Fritzing, breadboard taslağını gelecekteki biz (veya projeyi yeniden oluşturan bir arkadaş) tarafından gerçekten takip edilebilecek paylaşılabilir bir diyagrama dönüştürür. ESP32 saat kablolama belgeleri için Fritzing pin atamalarını temiz şekilde belgeleyerek ve bir oluşturma günlüğü için SVG ihraç eder.

Başarısız olduğu yer: Tek ödeme indirmesi 2019’da uygulamanın eski “ücretsiz ikili” kuralını çiğnedi. Bazı eski öğreticiler çalışmayan ücretsiz yükleyicilere bağlanır.

Fiyatlandırma:

Platformlar: Windows, macOS, Linux (kaynak oluşturmaları), Debian ve Ubuntu (paketler)

Sonuç: Bir akşam kazandıran kablolama diyagramı için küçük bir ücret. Bir kez değerdi.

İndir: fritzing.org

7. MQTT Explorer, ileti düzeyinde hata ayıklama için en iyi

MQTT Explorer, Home Assistant ile eşlendiğinde saatin yayınladığı ve tükettiği her saklanmış konuyu gösterir. ESP32 hata ayıklaması için MQTT Explorer, hava durumu paneli boş kalıp makine gerçekten güncellemeleri alıp almadığını bilmek için açtığımız şeydir.

Başarısız olduğu yer: Orijinal projenin korunan çatalı, son güncellemelerin iniş yaptığı yerdir. Bazı indirmeler yine de eski bakımsız versiyona işaret eder.

Fiyatlandırma:

Platformlar: Windows, macOS, Linux

Sonuç: İhtiyacımız olana kadar ihtiyacımız olmadığını bildiğimiz hata ayıklama aracı. Önceden kurun.

İndir: mqtt-explorer.com | GitHub

8. OpenWeatherMap, hava durumu API’si için en iyi

OpenWeatherMap, çoğu ESP32 saat projesinin hedef aldığı ücretsiz seviye hava durumu kaynağıdır. ESP32 saat hava durumu panelleri için OpenWeatherMap güvenli varsayılandır: geniş kapsama, cömert ücretsiz seviye ve topluluk tarafından korunan ESP32 kütüphaneleri ve yerel ESPHome entegrasyonunun her ikisi.

Başarısız olduğu yer: Ücretsiz seviyenin istek sınırı dakikada 60 çağrı ve günde 1.000’dir, bu bir saat için iyidir ancak bir proje çok agresif şekilde yoklarsa hızla patlar.

Fiyatlandırma:

Sonuç: Ücretsiz seviye makul herhangi bir saat kullanımını kapsar. Çağrı sınırını izleyin.

İndir: openweathermap.org

Doğruyu nasıl seçeceğiniz

Bu ilk yapı ve Home Assistant zaten çalışıyorsa: başından sonuna kadar ESPHome.

Bu ilk yapı ve Home Assistant resimde değilse: çalışan bir taslak için Arduino IDE, ardından kod yapı gerektirdiğinde PlatformIO olarak geçin.

Kablolama belgeleri önemli ise (bir yapı günlüğü, bir Hackaday yazısı): Fritzing erken, sonunda değil.

Hava durumu paneli dağıtımdan sonra kötü davranırsa: cihazın gerçekten yayınladığını görmek için MQTT Explorer.

Ciddi bir yapının uygun yapı izolasyonu ve CI gerekiyorsa: VS Code ile PlatformIO.

FAQ

ESPHome veya Arduino IDE ikisine de ihtiyacımız var mı? Yazılım için birini seçin. Saat bir Home Assistant cihazı olacaksa ESPHome daha hızlıdır. YAML soyutlaması olmadan özel C++ kodu yazmak ve yinelemek istiyorsanız Arduino IDE daha hızlıdır.

Fritzing gerçekten ödeme yapmaya değer mi? Tek seferlik bir saat oluşturması için, muhtemelen hayır. Yapıyı çevrimiçi yayınlıyor veya kablolama beş ay sonra referans yapmayı planlıyorsanız, diyagram sekiz dolara değer.

Hangi hava durumu API’si ESP32’de en iyi çalışır? OpenWeatherMap en geniş topluluğa ve en temiz ESP32 örneklerine sahiptir. Tomorrow.io ve WeatherAPI her ikisi de çalışır ancak daha ince ESP32 öğretici kapsamına sahiptir.

Diğer ESP32 projeleri için aynı kurulumu kullanabilir miyiz? Evet. ESPHome, PlatformIO ve Home Assistant araç zincirini değiştirmeden bir saattan düzine sensöre ölçeklendirilir.

Bu uygulamalar Linux’ta çalışır mı? Tümü. ESPHome Python paketi olarak çalışır, Arduino IDE ve PlatformIO yerel Linux yapılarını gönderir ve Home Assistant Linux’ta Docker altında en temiz çalışır.

Saatin çalışması için ESP32’nin çevrimiçi olması gerekli mi? Saat çevrimdışı bir RTC modülü tarafından tutulabilir. Hava durumu paneli güncellemeleri almak için ağ bağlantısı gerektirir. Wi-Fi düştüğünde ekranın asla boş olmayacağı şekilde bir önbellek ve “son güncelleme” geri dönüşü ayarlayın.