FarmBot / farmbot-mqtt-py

An MQTT wrapper for FarmBot written in Python
MIT License
42 stars 23 forks source link

MQTT blocking error #17

Closed kulbir-ahluwalia closed 1 year ago

kulbir-ahluwalia commented 1 year ago

Hi Gabriel,

We hope you are doing well!

We keep getting the error that the MQTT access is blocked: "MQTT ACCESS DENIED Device is rate limited device_16232".

Could you please help us increase the MQTT limit for our project?

Is there some other solution to this?

Please let us know. Thank you so much.

Best regards, Kulbir and Michael

gabrielburnworth commented 1 year ago

The Device is rate limited log is indicative of connecting to the MQTT broker too often, rather than sending or receiving too many messages.

Running this will trigger the rate limit because it creates a new connection for each message it sends:

for i in range(25):
    publish.single(channel, payload, **connection_args)

While running this will not since it uses a single connection for multiple messages:

client.connect(host)
for i in range(25):
    client.publish(channel, payload)

I hope that helps guide the code design for your project!