Event-driven-firmware

  • Published on
    Komunikasi (WiFi, MQTT, OTA) sering menjadi sumber coupling dan ketidakstabilan pada firmware ESP32. Callback yang langsung mengubah relay, reconnect logic yang tersebar, serta state implisit yang tidak terdokumentasi membuat sistem sulit diprediksi. Artikel ini membahas komunikasi sebagai domain terpisah yang memiliki state machine eksplisit. Kita membangun mental model event-driven, memisahkan transport dari business logic, dan memahami bagaimana reconnect serta network latency dapat memengaruhi kontrol sensor–relay. Tujuannya adalah membentuk pola pikir stateful sebelum masuk ke disiplin komunikasi yang lebih ketat pada tahap produksi.
  • Published on
    Modul 5 memperkenalkan mekanisme interrupt sebagai langkah transisi dari firmware yang bersifat sinkron dan polling-based menuju sistem yang mampu menangani event asinkron secara real-time. Berlandaskan arsitektur ComponentBase dari Modul 4, modul ini menunjukkan bagaimana input fisik (tombol) diintegrasikan tanpa merusak modularitas dan keterbacaan kode. Fokus utama terletak pada penulisan ISR yang aman dan ringkas, penggunaan volatile dan static secara tepat, serta pemisahan tegas antara ISR dan logika aplikasi. Hasilnya adalah firmware non-blocking yang responsif, stabil, dan siap diskalakan untuk sensor, actuator, serta sistem IoT yang lebih kompleks.