alexCajas / EmbeddedMqttBroker

This is a Mqtt broker for embedded devices, developed in C++, FreeRTOS to use advanced multitasking capabilities, and arduino core. Tested in an Esp32 and esp8266.
https://github.com/alexCajas/EmbeddedMqttBroker
MIT License
71 stars 14 forks source link
concurrent-programing embedded-system esp32 esp32-arduino-core esp8266 esp8266-rtos-arducore freertos-kernel iot mqtt-broker mqtt-server multithreading wifi

Esp32 Esp8266 Mqtt 3.1.1 QoS Arduino C++ FreeRTOS Release arduino-library-badge PlatformIO Registry

EmbeddedMqttBroker

This is a Mqtt broker developed for embedded devices, in c++ programming language, FreeRTOS to use advanced multitasking capabilities and arduino core. Tested in an Esp32 and esp8266 wemos D1. This project include [https://github.com/alexCajas/WrapperFreeRTOS] to implement concurrent C++ objects.

To use this library with esp8266 you have to use esp8266RTOSArduCore, it is a arduino core based on esp8266_rtos_sdk. This library is not compatible with the official NONOSDK esp8266 arduino core.

Usage examples sketches

Install

Branchs

Can't see broker activity outputs on Serial monitor?


Table of contents


1. A Little discussion about efficiency

1.1 How to listen a mqtt packet from a connected client?

1.2 How to publish a mqtt packet to all interested connected clients?

topics models like tree

1.3 Wildcards match

2. Implementacion of this project

3. Max number of open tcp sockets at the same time on esp32

4. Understanding Mqtt packets:

5. Current features and limitations

6. Features to implement in future versions of this project

7. Bibliography