File tree 3 files changed +26
-1
lines changed
3 files changed +26
-1
lines changed Original file line number Diff line number Diff line change 1562
1562
#ifndef MY_MQTT_ETH_INIT_DELAY
1563
1563
#define MY_MQTT_ETH_INIT_DELAY 1000
1564
1564
#endif
1565
+ /**
1566
+ * @def MY_MQTT_ETH_CLIENT_CONNECTION_TIMEOUT
1567
+ * @brief Set a MQTT broker socket connection timeout time.
1568
+ *
1569
+ * This define is useful if you want to change default MQTT TCP/IP broker
1570
+ * connection timeout. By default, it is 1000ms.
1571
+ *
1572
+ * Note that this is not supported in ESP8266 and ESP32 platforms, sorry.
1573
+ *
1574
+ * Example: @code #define MY_MQTT_ETH_CLIENT_CONNECTION_TIMEOUT 1000 @endcode
1575
+ */
1576
+ #ifndef MY_MQTT_ETH_CLIENT_CONNECTION_TIMEOUT
1577
+ #define MY_MQTT_ETH_CLIENT_CONNECTION_TIMEOUT 1000
1578
+ #endif
1579
+
1565
1580
/**
1566
1581
* @def MY_IP_ADDRESS
1567
1582
* @brief Static ip address of gateway. If not defined, DHCP will be used.
2335
2350
#define MY_MQTT_CLIENT_CERT
2336
2351
#define MY_MQTT_CLIENT_KEY
2337
2352
#define MY_MQTT_ETH_INIT_DELAY
2353
+ #define MY_MQTT_ETH_CLIENT_CONNECTION_TIMEOUT
2338
2354
#define MY_SIGNAL_REPORT_ENABLED
2339
2355
// general
2340
2356
#define MY_WITH_LEDS_BLINKING_INVERSE
Original file line number Diff line number Diff line change @@ -159,7 +159,11 @@ bool reconnectMQTT(void)
159
159
160
160
return true ;
161
161
}
162
+ #if defined(MY_GATEWAY_ESP8266) || defined(MY_GATEWAY_ESP32)
162
163
delay (1000 );
164
+ #else
165
+ delay (MY_MQTT_ETH_CLIENT_CONNECTION_TIMEOUT);
166
+ #endif
163
167
GATEWAY_DEBUG (PSTR (" !GWT:RMQ:FAIL\n " ));
164
168
return false ;
165
169
}
@@ -247,7 +251,10 @@ bool gatewayTransportInit(void)
247
251
#else
248
252
_MQTT_client.setServer (MY_CONTROLLER_URL_ADDRESS, MY_PORT);
249
253
#endif /* End of MY_CONTROLLER_IP_ADDRESS */
250
-
254
+ // ESP platform doesn't support connection timeout
255
+ #if !defined(MY_GATEWAY_ESP8266) && !defined(MY_GATEWAY_ESP32)
256
+ _MQTT_ethClient.setConnectionTimeout (MY_MQTT_ETH_CLIENT_CONNECTION_TIMEOUT);
257
+ #endif
251
258
_MQTT_client.setCallback (incomingMQTT);
252
259
253
260
#if defined(MY_GATEWAY_ESP8266) || defined(MY_GATEWAY_ESP32)
Original file line number Diff line number Diff line change @@ -258,6 +258,8 @@ MY_MQTT_PASSWORD LITERAL1
258
258
MY_MQTT_PUBLISH_TOPIC_PREFIX LITERAL1
259
259
MY_MQTT_SUBSCRIBE_TOPIC_PREFIX LITERAL1
260
260
MY_MQTT_USER LITERAL1
261
+ MY_MQTT_ETH_CLIENT_CONNECTION_TIMEOUT LITERAL1
262
+ MY_MQTT_ETH_INIT_DELAY LITERAL1
261
263
MY_W5100_SPI_EN LITERAL1
262
264
MY_WIFI_SSID LITERAL1
263
265
MY_WIFI_BSSID LITERAL1
You can’t perform that action at this time.
0 commit comments