micropython-lib icon indicating copy to clipboard operation
micropython-lib copied to clipboard

umqtt (with tls): check_msg() / wait_msg() - how to know connection is gone? timeout?

Open mirko opened this issue 6 years ago • 3 comments

I'm using the umqtt module - on conjunction with ussl_mbedtls - within the UNIX port with mbedtls. When I re-route the traffic originally going to my MQTT broker to /dev/null (e.g. 127.0.0.1), check_msg() as well as wait_msg() continue behaving as before. No different return value, no exception thrown. From the umqtt.robust implementation I figure that should be the case though. I also thought this might be due to an overly long timeout, so I called settimeout(X) on the underlying socket, but then wait_msg() throws an exception right after X seconds - no matter what - which I also appears weird to me.

What's the way to go to catch network issues and potentially reconnect automatically when using umqtt.{simple,robust} with TLS?

mirko avatar Mar 15 '19 01:03 mirko

Hi. Is this still an issue with the latest MicroPython and mqtt.simple/mqtt.robust versions?

jonnor avatar Aug 25 '24 11:08 jonnor

It's been more than 5 years, I honestly have no idea :)

mirko avatar Aug 25 '24 21:08 mirko

hi @mirko , @jonnor I have submitted a fix here. https://github.com/micropython/micropython-lib/pull/890/files

prabhu-yu avatar Nov 01 '24 20:11 prabhu-yu