Greengrass IoT / Home Assistant / Ring-Mqtt dying with "Quota Exceeded" error #840
Replies: 2 comments 4 replies
-
I feel like the error message is quite clear, you are exceeding the quota for some service on the MQTT broker. I'm not sure what is driving you to use such an unusual configuration, but I would suggest just using something more common for your MQTT broker rather than trying to use a cloud based MQTT server with many default quota limits that is likely completely untested with Home Assistant or ring-mqtt. Home Assistant itself is quite picky for the MQTT broker (for example ActiveMQ and RabbitMQ are both explicitly unsupported). Nobody here is going to be able to help you troubleshoot problems with such a setup so you'll be left to your own efforts, but here's a link to various documented quota limits for AWS IoT Core: https://docs.aws.amazon.com/general/latest/gr/iot-core.html#message-broker-limits If I were to look at that list, I'd assume the fairly low subscribe per second might be the limit being hit (100 per second seems really low to me). As Home Assistant subscribes for each topic for each device, If you have a reasonable number of devices, it doesn't take many devices to have 100's of subscriptions and those will happen in 100s of milliseconds. |
Beta Was this translation helpful? Give feedback.
-
Thanks for taking a look! This has been killing me for weeks now. Yes, I agree the error message "seems" clear; however, if I disable the auto-discovery by changing the HA discovery prefix, I see all the ring (and other mqtt messages by subscribing to "#" on the test clients on both sides (AWS and HA) -- and the HA MQTT connection doesn't drop, and we don't get a quota problem). So, that leads me to the assumption that the problem appears only to occur when HA is discovering the ring devices (and why that happens is I think the mystery I am trying to solve) -- it feels like some sort of loop occurs when discovery is happening and that it what overruns the quota. If I can figure out how to prevent that loop I think I'd be in business. As to why this setup -- this is an AWS published configuration for Greengrass IoT managed devices: |
Beta Was this translation helpful? Give feedback.
-
I cannot keep the MQTT-service connected on my Home Assistant when the "ring-mqtt" service is turned on. The connection dies with this message:
The
ring-mqtt
configuration (config.json is:When I set the HA MQTT to use
homeassistant
as the discovery prefix, then I see the ring devices being discovered but then the connection closes and everything shows up as "unavailable" in HA. The connection reopens, discovery happens again, and then the connection dies again. This repeats continuously.If I stop the
ring-mqtt
container, the discovery logs continue with all the ring devices, so it seems something is cached somewhere and it keeps replaying all the discovery messages. This will continue for quite some time (days) before the log messages finally stop and the MQTT service stays connected on HA.If I change the Home Assistant MQTT discovery prefix, then none of this happens. None of the ring devices are discovered, and the MQTT connection stays active; if I go to the HA MQTT config page and "Listen to a topic" and subscribe to "#" then I see all the
ring
MQTT messages going by (along with everything else. In the Greengrass IoT AWS console in the "MQTT test client" I also see all the messages if a subscribe to "#".I have attached the logs from Home Assistant, which show a complete cycle from the MQTT connection, discovery, the Quota Exceeded message, and the disconnection.
ha-mqtt.log
My environment:
AWS MQTT Bridge config:
Beta Was this translation helpful? Give feedback.
All reactions