Come posso implementare MQTT su un STM32F030K6T6?


15

Il controller in questione è un STM32F030K6T6 , che ha un core ARM® Cortex® -M0 a 32 bit a bassa potenza, memoria flash da 32 kB e SRAM da 4 kB. Interfaccia un SIM808 per la connettività Internet.

Le risorse sono piuttosto limitate per quanto riguarda la memoria.

  • È possibile implementare MQTT su questo dispositivo?

  • Quali requisiti deve soddisfare un microcontrollore per poter utilizzare / eseguire MQTT?

(Non sto chiedendo un'implementazione completa dello stack di protocollo.)

Risposte:


12

È possibile implementare MQTT su questo dispositivo?

Qualsiasi dispositivo con livello TCP / IP può implementare MQTT.

Quali requisiti deve soddisfare un microcontrollore per poter utilizzare / eseguire MQTT?

È necessario porre le seguenti domande per sapere se il dispositivo esegue MQTT.

  • Il mio dispositivo ha il supporto TCP / IP o di rete?
  • È disponibile memoria e spazio su disco sul dispositivo?
  • Un client MQTT pronto all'uso può essere utilizzato sulla piattaforma del dispositivo?
  • Esiste una connettività di rete al server?

Rif: Supporto MQTT


1
Quindi la domanda si riduce a: puoi accontentarti di una memoria di codice da 32 kB.
Ghanima,

1
@Ghanima, potrei dire di no, ma sto provando a dare una visione d'insieme dell'hardware necessario per eseguire MQTT.
bravokeyl,

3
Esiste una libreria MQTT per Arduino: github.com/256dpi/arduino-mqtt che ha poca memoria
Goufalite,

Qual è la dimensione minima del mem di cui ha bisogno?
bravokeyl,

3
Il progetto Eclipse Paho ha un client C incorporato che è molto leggero ma anche abbastanza flessibile: github.com/eclipse/paho.mqtt.embedded-c . Potrebbe meritare un'occhiata.
jpwsutton,

11

La libreria mq mmqt non sembra documentare i requisiti di memoria che potrebbero essere limitanti e si può ragionevolmente supporre che siano indirizzati a questo tipo di dispositivo di dimensioni ridotte come endpoint. È possibile importare in modo abbastanza banale la libreria in una piattaforma di dispositivi simile utilizzando il compilatore online e controllare almeno l'impronta del codice.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.