aiomqttc - Asynchronous MQTT Client #17309
Replies: 3 comments 12 replies
-
That could be very nice. I do mqtt stuff for both my raspberry pi and also on various mp boards such as the Pico and ESP32, though as my amateur programming efforts are rather spaced out time-wise I usually have to look back at some previous code efforts to remind myself of the difference between the mosquito and the async mp for mqtt, so a similar async for both may be right up my garden path. Thanks for sharing the library and I will be having a test with something I'm working on for my rpi5 shortly. |
Beta Was this translation helpful? Give feedback.
-
I haven't had time to review this in detail, but I think there is a bug if a I'm also doubtful about the limited use of the Does the code perform retransmissions if a Have you tested this under conditions where WiFi connectivity is unreliable? One minor point: the |
Beta Was this translation helpful? Give feedback.
-
To add some general comments. An asynchronous MQTT client portable between CPython and MicroPython, and between wired and wireless connection, is a worthwhile task. mqtt_as is unlikely to support these objectives: MicroPython WiFi handling is deeply "baked in". MQTT is designed to provide reliable connection over an unreliable link: one where messages may be lost, but if a message is received it will be correct with no message corruption. WiFi on a microcontroller provides such a link. The entire purpose of When the broker is expected to send an ack, the client should wait for a period, then assume its outgoing message was lost, and retransmit. Note that if the link is down the retransmit should be postponed until the outage is over. Retransmissions may occur more than once. Bear in mind that acks may themselves be lost. If the client sends an ack to a With an asynchronous client it is necessary to consider unexpected application behaviour, and unexpected behaviour by other clients. An application may send a set of |
Beta Was this translation helpful? Give feedback.
-
Welcome to aiomqttc 🚀
This is my first time sharing a public Python library, and I’m excited to contribute to the community!
aiomqttc is a lightweight, fully asynchronous MQTT client designed for both standard Python and MicroPython, with a special focus on ESP32 platforms.
Whether you’re building IoT solutions, home automation systems, or experimenting with MQTT on constrained devices, I hope this project helps speed up your development and simplifies your MQTT integration.
Feedback, suggestions, and contributions are very welcome!
👉 Check out the repo here
Beta Was this translation helpful? Give feedback.
All reactions