--- a/project/sparkplug™_mqtt_edge_and_host-stack_b9741afd/function_blocks_8ad6e219/fb_primaryhost_ec6863e3/fb_primaryhost_948b5570/initialise_04a2bfd3/04a2bfd357654beba7bc47367202099c.object
+++ b/project/sparkplug™_mqtt_edge_and_host-stack_b9741afd/function_blocks_8ad6e219/fb_primaryhost_ec6863e3/fb_primaryhost_948b5570/initialise_04a2bfd3/04a2bfd357654beba7bc47367202099c.object
@@ -1 +1 @@
-{"payload":{"meta":{"Graph":{"@Type":"81297157","@Value":{"Guid":"(Guid)04a2bfd3-5765-4beb-a7bc-47367202099c","ParentGuid":"(Guid)948b5570-7cc5-435c-9690-793c65eb192c","Name":"(string)Initialise","Properties":{"@Type":"2c41fa04:IDictionary","@Value":{}},"TypeGuid":"(Guid)f8a58466-d7f6-439f-bbb8-d4600e41d099","EmbeddedTypeGuids":{"@Type":"[Guid]","@Value":["(Guid)a9ed5b7e-75c5-4651-af16-d2c27e98cb94","(Guid)3b83b776-fb25-43b8-99f2-3c507c9143fc"]}}},"TypeInfos":{"2c41fa04":"{2c41fa04-1834-41c1-816e-303c7aa2c05b}","81297157":"{81297157-7ec9-45ce-845e-84cab2b88ade}","Guid":"System.Guid","string":"System.String"}},"object":{"Graph":{"@Type":"f8a58466","@Value":{"Implementation":{"@Type":"3b83b776","@Value":{"TextDocument":{"@Type":"f3878285","@Value":{"TextLines":{"@Type":"[a5de0b0b]","@Value":[{"@Type":"a5de0b0b","@Value":{"Id":"(long)445","Tag":null,"Text":"(string)// Only use the corrected names throughout PrimaryHost!"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)446","Tag":null,"Text":"(string)_cPrimaryHostID := ReplaceIllegalCharsWithUnderscore( PrimaryHostID );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)448","Tag":null,"Text":"(string)_TopicProvider.setTopics( SparkplugNamespace := GC_sparkplug.SPARKPLUGB,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)449","Tag":null,"Text":"(string)                          PrimaryHostId := _cPrimaryHostID );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)452","Tag":null,"Text":"(string)sPrimaryHostID := WSTRING_TO_STRING( _cPrimaryHostID );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)454","Tag":null,"Text":"(string)sClientID := sPrimaryHostID;"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)455","Tag":null,"Text":"(string)MakeValidClientID( sClientID );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)456","Tag":null,"Text":"(string)WriteDeviceLog( gc_sparkplug.CMP_HOST,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)501","Tag":null,"Text":"(string)                CmpLog.LogClass.LOG_DEBUG,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)457","Tag":null,"Text":"(string)                'PrimaryHost ID: %s',"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)458","Tag":null,"Text":"(string)                sPrimaryHostID );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)460","Tag":null,"Text":"(string)// Setup the MQTT client connection"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)461","Tag":null,"Text":"(string)_MQTT.SetBroker( sUrl := ServerUrl,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)462","Tag":null,"Text":"(string)                 uiPort := ServerPort,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)463","Tag":null,"Text":"(string)                 uiKeepAlive := KeepAlive );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)465","Tag":null,"Text":"(string)WriteDeviceLog( gc_sparkplug.CMP_HOST,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)502","Tag":null,"Text":"(string)                CmpLog.LogClass.LOG_INFO,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)466","Tag":null,"Text":"(string)                'PrimaryHost CleanSession: %s',"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)467","Tag":null,"Text":"(string)                BOOL_TO_STRING( CleanSession ) );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)469","Tag":null,"Text":"(string)WriteDeviceLog( gc_sparkplug.CMP_HOST,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)503","Tag":null,"Text":"(string)                CmpLog.LogClass.LOG_INFO,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)470","Tag":null,"Text":"(string)                'PrimaryHost User: %s',"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)507","Tag":null,"Text":"(string)                WSTRING_TO_STRING( Username ) );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)473","Tag":null,"Text":"(string)WriteDeviceLog( gc_sparkplug.CMP_HOST,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)504","Tag":null,"Text":"(string)                CmpLog.LogClass.LOG_INFO,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)474","Tag":null,"Text":"(string)                'PrimaryHost Pass: %s',"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)475","Tag":null,"Text":"(string)                '****************' );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)508","Tag":null,"Text":"(string)// Session Credentials"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)478","Tag":null,"Text":"(string)_MQTT.SetSessionCredentials( xCleanSession := CleanSession,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)479","Tag":null,"Text":"(string)                             sClientID := sClientID,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)480","Tag":null,"Text":"(string)                             wsUser := Username,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)481","Tag":null,"Text":"(string)                             wsPass := Password );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)483","Tag":null,"Text":"(string)// Session TLS"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)484","Tag":null,"Text":"(string)_MQTT.SetSessionTLS( xUseTLS := UseTLS,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)485","Tag":null,"Text":"(string)                     hCert := hCert );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)487","Tag":null,"Text":"(string)WriteDeviceLog( gc_sparkplug.CMP_HOST,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)505","Tag":null,"Text":"(string)                CmpLog.LogClass.LOG_INFO,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)488","Tag":null,"Text":"(string)                'PrimaryHost TLS Certificate Handle: %s',"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)489","Tag":null,"Text":"(string)                SEL( UseTLS, 'None', TO_STRING( hCert ) ) );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)493","Tag":null,"Text":"(string)WriteDeviceLog( gc_sparkplug.CMP_HOST,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)506","Tag":null,"Text":"(string)                CmpLog.LogClass.LOG_INFO,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)494","Tag":null,"Text":"(string)                'PrimaryHost TLS : %s',"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)495","Tag":null,"Text":"(string)                SEL( UseTLS, 'Disabled', 'Enabled' ) );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)499","Tag":null,"Text":"(string)// Session Lastwill"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)500","Tag":null,"Text":"(string)LastWillSet := SetLastWillAndTestament();"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)48","Tag":null,"Text":"(string)Initialise  := LastWillSet;"}}]}}}}},"Interface":{"@Type":"a9ed5b7e","@Value":{"TextDocument":{"@Type":"f3878285","@Value":{"TextLines":{"@Type":"[a5de0b0b]","@Value":[{"@Type":"a5de0b0b","@Value":{"Id":"(long)439","Tag":null,"Text":"(string)METHOD Initialise : BOOL"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)440","Tag":null,"Text":"(string)VAR"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)441","Tag":null,"Text":"(string)    sPrimaryHostID : STRING;"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)442","Tag":null,"Text":"(string)    sClientID : STRING;"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)443","Tag":null,"Text":"(string)    ComposeError : Error;"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)444","Tag":null,"Text":"(string)    LastWillSet : BOOL;"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)1","Tag":null,"Text":"(string)END_VAR"}}]}}}}}}},"TypeInfos":{"3b83b776":"{3b83b776-fb25-43b8-99f2-3c507c9143fc}","a5de0b0b":"{a5de0b0b-1cb5-4913-ac21-9d70293ec00d}","a9ed5b7e":"{a9ed5b7e-75c5-4651-af16-d2c27e98cb94}","f3878285":"{f3878285-8e4f-490b-bb1b-9acbb7eb04db}","f8a58466":"{f8a58466-d7f6-439f-bbb8-d4600e41d099}","long":"System.Int64","string":"System.String"}}},"FormatVersion":"1.0"}
\ No newline at end of file
+{"payload":{"meta":{"Graph":{"@Type":"81297157","@Value":{"Guid":"(Guid)04a2bfd3-5765-4beb-a7bc-47367202099c","ParentGuid":"(Guid)948b5570-7cc5-435c-9690-793c65eb192c","Name":"(string)Initialise","Properties":{"@Type":"2c41fa04:IDictionary","@Value":{}},"TypeGuid":"(Guid)f8a58466-d7f6-439f-bbb8-d4600e41d099","EmbeddedTypeGuids":{"@Type":"[Guid]","@Value":["(Guid)a9ed5b7e-75c5-4651-af16-d2c27e98cb94","(Guid)3b83b776-fb25-43b8-99f2-3c507c9143fc"]}}},"TypeInfos":{"2c41fa04":"{2c41fa04-1834-41c1-816e-303c7aa2c05b}","81297157":"{81297157-7ec9-45ce-845e-84cab2b88ade}","Guid":"System.Guid","string":"System.String"}},"object":{"Graph":{"@Type":"f8a58466","@Value":{"Implementation":{"@Type":"3b83b776","@Value":{"TextDocument":{"@Type":"f3878285","@Value":{"TextLines":{"@Type":"[a5de0b0b]","@Value":[{"@Type":"a5de0b0b","@Value":{"Id":"(long)509","Tag":null,"Text":"(string)// Only use the corrected names throughout PrimaryHost!"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)510","Tag":null,"Text":"(string)_cPrimaryHostID := ReplaceIllegalCharsWithUnderscore( PrimaryHostID );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)511","Tag":null,"Text":"(string)_TopicProvider.setTopics( SparkplugNamespace := GC_sparkplug.SPARKPLUGB,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)512","Tag":null,"Text":"(string)                          PrimaryHostId := _cPrimaryHostID );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)513","Tag":null,"Text":"(string)sPrimaryHostID := WSTRING_TO_STRING( _cPrimaryHostID );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)514","Tag":null,"Text":"(string)sClientID := sPrimaryHostID;"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)515","Tag":null,"Text":"(string)MakeValidClientID( sClientID );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)516","Tag":null,"Text":"(string)WriteStackLog( gc_sparkplug.CMP_HOST,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)517","Tag":null,"Text":"(string)                CmpLog.LogClass.LOG_DEBUG,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)518","Tag":null,"Text":"(string)                'PrimaryHost ID: %s',"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)519","Tag":null,"Text":"(string)                sPrimaryHostID );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)520","Tag":null,"Text":"(string)// Setup the MQTT client connection"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)521","Tag":null,"Text":"(string)_MQTT.SetBroker( sUrl := ServerUrl,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)522","Tag":null,"Text":"(string)                 uiPort := ServerPort,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)523","Tag":null,"Text":"(string)                 uiKeepAlive := KeepAlive );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)524","Tag":null,"Text":"(string)WriteStackLog( gc_sparkplug.CMP_HOST,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)525","Tag":null,"Text":"(string)                CmpLog.LogClass.LOG_INFO,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)526","Tag":null,"Text":"(string)                'PrimaryHost CleanSession: %s',"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)527","Tag":null,"Text":"(string)                BOOL_TO_STRING( CleanSession ) );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)528","Tag":null,"Text":"(string)WriteStackLog( gc_sparkplug.CMP_HOST,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)529","Tag":null,"Text":"(string)                CmpLog.LogClass.LOG_INFO,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)530","Tag":null,"Text":"(string)                'PrimaryHost User: %s',"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)531","Tag":null,"Text":"(string)                WSTRING_TO_STRING( Username ) );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)532","Tag":null,"Text":"(string)WriteStackLog( gc_sparkplug.CMP_HOST,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)533","Tag":null,"Text":"(string)                CmpLog.LogClass.LOG_INFO,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)534","Tag":null,"Text":"(string)                'PrimaryHost Pass: %s',"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)535","Tag":null,"Text":"(string)                '****************' );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)536","Tag":null,"Text":"(string)// Session Credentials"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)537","Tag":null,"Text":"(string)_MQTT.SetSessionCredentials( xCleanSession := CleanSession,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)538","Tag":null,"Text":"(string)                             sClientID := sClientID,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)539","Tag":null,"Text":"(string)                             wsUser := Username,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)540","Tag":null,"Text":"(string)                             wsPass := Password );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)541","Tag":null,"Text":"(string)// Session TLS"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)542","Tag":null,"Text":"(string)_MQTT.SetSessionTLS( xUseTLS := UseTLS,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)543","Tag":null,"Text":"(string)                     hCert := hCert );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)544","Tag":null,"Text":"(string)WriteStackLog( gc_sparkplug.CMP_HOST,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)545","Tag":null,"Text":"(string)                CmpLog.LogClass.LOG_INFO,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)546","Tag":null,"Text":"(string)                'PrimaryHost TLS Certificate Handle: %s',"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)547","Tag":null,"Text":"(string)                SEL( UseTLS, 'None', TO_STRING( hCert ) ) );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)548","Tag":null,"Text":"(string)WriteStackLog( gc_sparkplug.CMP_HOST,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)549","Tag":null,"Text":"(string)                CmpLog.LogClass.LOG_INFO,"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)550","Tag":null,"Text":"(string)                'PrimaryHost TLS : %s',"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)551","Tag":null,"Text":"(string)                SEL( UseTLS, 'Disabled', 'Enabled' ) );"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)552","Tag":null,"Text":"(string)// Session Lastwill"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)553","Tag":null,"Text":"(string)LastWillSet := SetLastWillAndTestament();"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)48","Tag":null,"Text":"(string)Initialise  := LastWillSet;"}}]}}}}},"Interface":{"@Type":"a9ed5b7e","@Value":{"TextDocument":{"@Type":"f3878285","@Value":{"TextLines":{"@Type":"[a5de0b0b]","@Value":[{"@Type":"a5de0b0b","@Value":{"Id":"(long)439","Tag":null,"Text":"(string)METHOD Initialise : BOOL"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)440","Tag":null,"Text":"(string)VAR"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)441","Tag":null,"Text":"(string)    sPrimaryHostID : STRING;"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)442","Tag":null,"Text":"(string)    sClientID : STRING;"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)443","Tag":null,"Text":"(string)    ComposeError : Error;"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)444","Tag":null,"Text":"(string)    LastWillSet : BOOL;"}},{"@Type":"a5de0b0b","@Value":{"Id":"(long)1","Tag":null,"Text":"(string)END_VAR"}}]}}}}}}},"TypeInfos":{"3b83b776":"{3b83b776-fb25-43b8-99f2-3c507c9143fc}","a5de0b0b":"{a5de0b0b-1cb5-4913-ac21-9d70293ec00d}","a9ed5b7e":"{a9ed5b7e-75c5-4651-af16-d2c27e98cb94}","f3878285":"{f3878285-8e4f-490b-bb1b-9acbb7eb04db}","f8a58466":"{f8a58466-d7f6-439f-bbb8-d4600e41d099}","long":"System.Int64","string":"System.String"}}},"FormatVersion":"1.0"}
\ No newline at end of file