--- a/mqtt/mqtt_template.c Mon Jul 22 16:09:12 2024 +0200
+++ b/mqtt/mqtt_template.c Mon Jul 22 16:13:27 2024 +0200
@@ -233,11 +233,20 @@
while((rc = pthread_mutex_lock(&MQTT_mutex)) == 0 && !MQTT_stop_thread){{
pthread_cond_wait(&MQTT_new_data, &MQTT_mutex);
- if(MQTT_any_pub_var_changed && MQTTClient_isConnected(client)){{
+ int is_connected = MQTTClient_isConnected(client); + if(MQTT_any_pub_var_changed && is_connected){{ /* publish changes, and reset variable's state to UNCHANGED */
- MQTT_any_pub_var_changed = 0;
+ MQTT_any_pub_var_changed = 0; + }} else if(!is_connected){{ + if (rc != MQTTCLIENT_SUCCESS) {{ + LogError("MQTT Reconnect Failed, return code %d\n", rc); pthread_mutex_unlock(&MQTT_mutex);