Saya baru saja mulai melihat ke protokol MQTT.
Situasi
Dalam proyek kuliah saya, saat ini, saya menggunakan Arduino sebagai MCU utama dan melakukan setiap pekerjaan di dalamnya dan menggunakan Serial Comm. untuk mengirim perintah AT ke esp8266 (untuk permintaan HTTP, untuk menjalankan skrip di server dll). Saya pada dasarnya perlu mendorong beberapa data (dari Arduino) pada halaman web (di-host oleh server lokal). Saya mencari dan menemukan tentang protokol MQTT yang memungkinkan untuk mempublikasikan dan berlangganan data pada klien (Tepat seperti yang saya inginkan). Tetapi sebagian besar tutorial yang saya temukan sepenuhnya pada Arduino (dengan wifi shield) atau seluruhnya pada esp8266.
Yang ingin saya ketahui adalah apakah ada cara yang memungkinkan untuk menggunakan MQTT seperti konfigurasi saya saat ini? Artinya, menggunakan Arduino untuk melakukan semua pekerjaan dan dengan menggunakan comm serial-nya. Menerbitkan data hanya dengan perintah AT pada MQTT.
Informasi tambahan tentang proyek saya disebutkan di sini: Bingung tentang teknologi mana yang akan digunakan dalam Sistem Rumah Pintar
Jawaban:
Saya akhirnya menemukan tutorial oleh Sony Arouje . Ternyata saya harus benar-benar meninggalkan pengiriman manual dari perintah esp dan harus menggunakan perpustakaan (WiFiEsp.h). Petunjuk ... Lebih baik!
Meskipun pada awalnya tidak bekerja dengan esp8266 saya karena memiliki firmware yang lebih lama dan melaporkan kesalahan "firmware tidak didukung". Saya harus menginstal Firmware yang lebih baru (berfungsi dengan versi 1.54 dalam kasus saya). Siapa pun yang memiliki masalah dengan mem-flash firmware dapat menemukan bantuan untuk merujuk topik ini: Tidak dapat mem-flash firmware ESP8266 terbaru, mengatakan "Kesalahan Fast Flashing" dan "Head of packet (')) yang tidak valid"
Juga, saya telah menyimpan salinan semua alat unduhan dan halaman tutorial itu sendiri, jadi jika di masa depan, pos dihapus atau jika ada yang tidak menemukan alat untuk flash. Dapatkan saya di komentar atau sesuatu (tidak memposting di sini karena saya tidak tahu apakah boleh memposting konten orang lain)
sumber