Adafruit_MQTT_Library icon indicating copy to clipboard operation
Adafruit_MQTT_Library copied to clipboard

Connectivity issue when using broker on local IP

Open peterbraden opened this issue 3 years ago • 2 comments

When using a local broker with an IP rather than a hostname, I experienced an inability to connect (error code -1). Using a different MQTT library with exactly the same connection settings and credentials worked perfectly.

Unfortunately, even when enabling the debug settings, I didn't get any more information to help diagnose - client->connect returned 0 in connectServer, but I didn't get any deeper into diagnosis.

  • Arduino board: ESP32

  • Arduino IDE version (found in Arduino -> About Arduino menu): 2.0.0

  • List the steps to reproduce the problem below (if possible attach a sketch or copy the sketch code in too):

Connect to a broker on a local IP (ie. "192.168.0.12", port "1883").

peterbraden avatar Oct 14 '22 11:10 peterbraden

I am currently running into the exact same issue. Which other MQTT library(ies) worked for you?

jeffmcfadden avatar Feb 06 '23 02:02 jeffmcfadden

@jeffmcfadden did you try passing in the IP address as in XXX.XXX.XXX.XXX (not a string!) or an actual 'servername', as in "http://XXX.XXX.XXX.XXX/"?

Edit: checked again, the Adafruit MQTT library currently does not support IP addresses (passing in XXX.XXX.XXX.XXX) as how they are defined in the Arduino ESP32. The best options are to either try passing in "http(s)//XXX.XXX.XXX.XXX/" or assignning a name to the device on your DNS server or using a different library.

Nistp avatar Feb 09 '23 04:02 Nistp