@@ -260,50 +260,62 @@ mqtt_connect()
260260
261261 // e.g to set current to 13A: <base-topic>/rapi/in/$SC 13
262262 mqttclient.subscribe (mqtt_sub_topic);
263+ yield ();
263264
264265 // subscribe to solar PV / grid_ie MQTT feeds
265266 if (config_divert_enabled ())
266267 {
267268 if (mqtt_solar != " " ) {
268269 mqttclient.subscribe (mqtt_solar);
270+ yield ();
269271 }
270272 if (mqtt_grid_ie != " " ) {
271273 mqttclient.subscribe (mqtt_grid_ie);
274+ yield ();
272275 }
273276 }
274277 // subscribe to current shaper MQTT feeds
275278 if (config_current_shaper_enabled ())
276279 {
277280 if (mqtt_live_pwr != " " ) {
278281 mqttclient.subscribe (mqtt_live_pwr);
282+ yield ();
279283 }
280284 }
281285 // subscribe to vehicle information from MQTT if we are configured for it
282286 if (mqtt_vehicle_soc != " " ) {
283287 mqttclient.subscribe (mqtt_vehicle_soc);
288+ yield ();
284289 }
285290 if (mqtt_vehicle_range != " " ) {
286291 mqttclient.subscribe (mqtt_vehicle_range);
292+ yield ();
287293 }
288294 if (mqtt_vehicle_eta != " " ) {
289295 mqttclient.subscribe (mqtt_vehicle_eta);
296+ yield ();
290297 }
291298
292299 if (mqtt_vrms!=" " ) {
293300 mqttclient.subscribe (mqtt_vrms);
301+ yield ();
294302 }
295303 // settable mqtt topics
296304 mqtt_sub_topic = mqtt_topic + " /divertmode/set" ;
297305 mqttclient.subscribe (mqtt_sub_topic);
306+ yield ();
298307
299308 mqtt_sub_topic = mqtt_topic + " /shaper/set" ;
300309 mqttclient.subscribe (mqtt_sub_topic);
310+ yield ();
301311
302312 mqtt_sub_topic = mqtt_topic + " /override/set" ;
303313 mqttclient.subscribe (mqtt_sub_topic);
314+ yield ();
304315
305316 mqtt_sub_topic = mqtt_topic + " /claim/set" ;
306317 mqttclient.subscribe (mqtt_sub_topic);
318+ yield ();
307319
308320 connecting = false ;
309321 });
0 commit comments