Bagaimana saya bisa mengimplementasikan MQTT pada STM32F030K6T6?

15

Pengontrol yang dimaksud adalah STM32F030K6T6 , yang memiliki inti daya rendah ARM® 32-bit Cortex® -M0, memori Flash 32 kB, dan SRAM 4 kB. Ini menghubungkan SIM808 untuk konektivitas Internet.

Sumber daya sangat terbatas mengenai memori.

  • Apakah mungkin untuk mengimplementasikan MQTT pada perangkat ini?

  • Persyaratan apa yang harus cocok dengan mikrokontroler agar dapat menggunakan / menjalankan MQTT?

(Saya tidak bertanya tentang implementasi stack protokol yang lengkap.)

Bence Kaulics
sumber

Jawaban:

12

Apakah mungkin untuk mengimplementasikan MQTT pada perangkat ini?

Perangkat apa pun yang memiliki lapisan TCP / IP dapat mengimplementasikan MQTT.

Persyaratan apa yang harus cocok dengan mikrokontroler agar dapat menggunakan / menjalankan MQTT?

Anda perlu mengajukan pertanyaan berikut untuk mengetahui apakah perangkat Anda menjalankan MQTT.

  • Apakah perangkat saya memiliki dukungan TCP / IP atau jaringan?
  • Apakah ada ruang memori dan disk yang tersedia di perangkat?
  • Apakah klien MQTT siap pakai yang dapat digunakan pada platform perangkat?
  • Apakah ada konektivitas jaringan ke server?

Ref: Dukungan MQTT

bravokeyl
sumber
1
Kemudian pertanyaannya adalah: dapatkah Anda melakukannya dengan memori kode 32 kB.
Ghanima
1
@ Ganima, saya bisa mengatakan tidak, tapi saya mencoba memberikan gambaran umum tentang perangkat keras apa yang diperlukan untuk menjalankan MQTT.
bravokeyl
3
Ada perpustakaan MQTT untuk Arduino: github.com/256dpi/arduino-mqtt yang kehabisan memori
Goufalite
Berapa ukuran minimum mem yang dibutuhkan?
bravokeyl
3
Proyek Eclipse Paho memiliki klien C tertanam yang sangat ringan tetapi juga cukup fleksibel: github.com/eclipse/paho.mqtt.embedded-c . Mungkin patut dilihat.
jpwsutton
11

Pustaka mmqt mbed tampaknya tidak mendokumentasikan persyaratan memori apa pun yang cenderung membatasi, dan dapat dianggap sebagai target pada perangkat footprint kecil ini sebagai titik akhir. Anda dapat mengimpor perpustakaan ke dalam platform perangkat yang serupa menggunakan kompiler online dan setidaknya memeriksa jejak kode.

Sean Houlihane
sumber