Sef Yazılım Proje konuşalım

Gömülü yazılım

Ekranı olan, internete bağlanan, prizde duran cihazlar. Yazılımın kısıtlı bellekte ve kesme zamanlamasına saygı göstererek çalışması gerektiği yer.

Ne yapıyoruz

  • Cihaz yazılımı. ESP32-S3 üstünde ESP-IDF ile, PlatformIO araç zinciriyle derlenen firmware.
  • Ekran sürücüsü. HUB75 RGB matris panellerde titremesiz, kaymasız görüntü.
  • Kurulum akışı. Cihazın kendi geçici erişim noktasını açıp Wi-Fi bilgisini alması; kullanıcının kabloya ihtiyaç duymaması.
  • Eşlik uygulaması. Cihazı bulan, bağlayan ve ayarlayan Flutter uygulaması.
  • Uzaktan güncelleme. Sahadaki cihaza yeni sürüm gönderebilmek — sonradan eklenmesi en zor özellik, o yüzden başta koyuyoruz.

Bu tarafın kendine has zorluğu

Gömülüde hatalar web'deki gibi görünmez. TickerEye'da ekranda düzensiz bir kayma vardı: görüntü ara ara yatay olarak atlıyordu. Sebep koddaki bir mantık hatası değildi — RGB sürücüsünün kesme rutini, komutları harici belleğe (PSRAM) düşünce zamanlamayı tutturamıyordu.

Çözüm de kodda değil derleyici yapılandırmasındaydı: projeyi Arduino IDE'den PlatformIO + ESP-IDF'e taşıdık; komutların ve salt okunur verinin dahili bellekten çalışmasını, kesme rutininin IRAM'de kalmasını sdkconfig.defaults ile açıkça belirttik. Arduino IDE bu ayarları açtırmıyordu. Kayma bir daha görünmedi.

Bu işte semptomu kovalamak pahalıya patlıyor. Ekranı yavaşlatarak kaymayı "azaltmak" mümkündü ve iki hafta sonra geri gelecekti.
İŞLEMCİ
ESP32-S3 (Wi-Fi + BLE, PSRAM'li)
ÇATI
ESP-IDF · PlatformIO · Arduino uyumluluk katmanı
EKRAN
HUB75 RGB matris · IRAM güvenli kesme rutini
BAĞLANTI
Wi-Fi kurulum portalı · HTTPS istemcisi · NTP saat
UYGULAMA
Flutter eşlik uygulaması (iOS + Android)

Cihazın tamamı TickerEye sayfasında anlatılıyor.

Cihaz fikriniz mi var?

Prototipi elinizde olan da olur, henüz kâğıtta olan da. Önce neyin mümkün olduğunu konuşuruz.