Post by i-campbell on Ticket #96: Versions: Upgrade MQTT Client SL to the one that installs with IIoT Libraries SL 1.3.0.0 discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
Done in /branches/SP14andMQTT1020/
Last updated: 2021-08-10
Post by i-campbell on Ticket #97: Allow correct publishing of Multiple Device Data discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
So if multiple MQTT.Publisher's are published in the same cycle: The MQTT.MQTTClient publishes each publisher in the order they were first linked. By first linked, I mean, first call of MQTT.Publisher(mqttClient := validClient); This info can be used to give the correct seq numbers to all publihsers.
Last updated: 2021-08-10
Post by ferraraf on Ticket #106: AWS IoT Core Support discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
ok I tried out the GetClientCert FB but the "ProvideCertificate" Output never goes true (followed the documentation in the Lib), the other thing is i am not sure how this is utilising the Amazon Root CA 1 Certificate. I think maybe SparkplugB lib needs to be built on top of the the AWS_IOTcore client. @i-campbell are you willing to share the source software with me and i can switch out the Clients etc? this will save me time having to write the NBIRTH/.. Methods data etc. Once integrated I would return the source.
Last updated: 2021-08-10
Post by i-campbell on Ticket #80: MQTT: Not resubscribing discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
side effect: NCMD for Rebirth from server will not be acted upon.
Last updated: 2021-08-10
Post by i-campbell on Ticket #81: Comment the Example Project discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
summary: Example Project --> Comment the Example Project
Last updated: 2021-08-10
Post by i-campbell on Ticket #88: EoN / Device: RBE or time based publishing discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
"Report by Exception (RBE) or time based reporting" seems to allow it. You are right that it is not in spec for DDATA.
Last updated: 2021-08-10
Post by i-campbell on Ticket #106: AWS IoT Core Support discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
In discussion with @hermsen, we have decided that we will not support AWS IoT Core, as it is not a 3.1.1 compatible MQTT server which is required by the Sparkplug standard. Additionally, some of the key concepts of the Sparkplug standard (e.g. retained Server STATE messages) do not work. If you are stuck with AWS infrastructure, I think you would need to use for example EC2 and a Mosquitto server. Azure IoT Hub is even less compliant as a 3.1.1 server. I think Google Cloud IoT Core is 3.1.1 compliant, but will need to research further. outstanding items: @i-campbell Document that Azure IoT Hub and AWS IoT core are not supported. @i-campbell investigate 3.1.1 compliance of Google Cloud IoT Core. If any non-compliances, investigate if they effect essential concepts of the sparkplug library. Document findings, perhaps with an example project.
Last updated: 2021-08-10
Post by hermsen on Ticket #77: TLS hCert needs to be SysTypes.RTS_INVALID_HANDLE, if there is no client certificate discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
status: open --> pending
Last updated: 2021-08-10
Post by aliazzz on Ticket #18: SVN: use 'standard' cforge folder structure discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
Description has changed: Diff: --- old +++ new @@ -2,7 +2,8 @@ so folder structure should be: license.txt - STRUCTURE.MD + STRUCTURE.MD + .drone.yml branches/ tags/ trunk/
Last updated: 2021-08-10
Post by hermsen on Ticket #107: Subscribe to "STATE" of Primary Application discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
status: pending --> closed
Last updated: 2021-08-10
Post by i-campbell on Ticket #95: Versions: Downgrade to 3.5.14.0 discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
The solution is to use the latest CODESYS IDE, and a Compiler Version later than 3.5.16.10, even with the older runtimes. Also use the library version specifically mentioned in the system requirements of CODESYS IIoT Libaries SL
Last updated: 2021-08-10
Post by i-campbell on Ticket #3: Build a SparkplugB scada in CODESYS discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
I think this should read "build a sparkplug B scada Out of CODESYS". Thoughts?
Last updated: 2021-08-10
Post by i-campbell on Ticket #106: AWS IoT Core Support discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
labels: --> Example, Community Requested assigned_to: i-campbell Milestone: 9.9.9.9: Backlog --> 2.0.0.0: TLS
Last updated: 2021-08-10
Post by i-campbell on Ticket #91: Protobufs: support communicating to buggy implementations discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
Parameters and Property values are done. Dataset values are more complex, as the data type is not stored with the data value. I am not even sure if the data type is mandatory. The other idea is for the bugginess to be handled at the point of adding the data type.
Last updated: 2021-08-10
Post by hermsen on Ticket #123: PrimaryHost: Investigate suitability of FBFactory for dynamic structure discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
status: open --> closed
Last updated: 2021-08-10
Post by hermsen on Ticket #80: MQTT: Not resubscribing discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
status: open --> pending
Last updated: 2021-08-10
Post by i-campbell on Ticket #44: example project: theirPayloadDecoder.GetNextMetric.metricvalid stays false discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
solved with [r294]
Last updated: 2021-08-10
Post by i-campbell on Ticket #6: How to implement “Google Protobufs” serialization/deserialization ? discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
I did some reading today: 0. The actual google protobufs compiler is quite deep. The generated code i would say is not so much machine readable. 1. https://developers.google.com/protocol-buffers/docs/encoding describes the protobufs encoding.. in its entirity. a. The order of fields is freely configurable 2. https://github.com/eclipse/tahu/commits/master/sparkplug_b/sparkplug_b.proto describes the sparkplug_b protobuf in its entirity. 3. So I think we need an IEC function block called Payload which has .blob, all the fields of sparkplug_b.proto, and .xEncode and .xDecode. What do you think? 4. I see a posibility of putting a generic protobufs library in the future, but the first implementation should be only sparkplug.
Last updated: 2021-08-10
Post by i-campbell on Ticket #34: Implement basic metrics for now discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
status: accepted --> closed
Last updated: 2021-08-10
Post by hermsen on Ticket #100: EoN state machine should return to offline when an MQTT error occurs discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
Sounds simple but will probably prove to be difficult as many of the simple sounding problems do
Last updated: 2021-08-10
Post by aliazzz on Ticket #24: FB_MQTT_PubSub discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
Description has changed: Diff: --- old +++ new @@ -1,15 +1,17 @@ ~~~ -FB_MQTT_PubSub +FB_MQTT_PubSub IMPLEMENTS CMBL.ILConC FB_Init() Initialise() Connect() - Connected() + IsConnected() Disconnected() Publish() Received() Subscribe() Unsubscribe() - CredentialsSet() + Credentials() WillSet TlsSet() ~~~ + +The FB shall implement common behaviour model : level controlled continuous behaviour
Last updated: 2021-08-10
Post by aliazzz on Ticket #39: FB_SparkplugB_SimpleEncoder discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
Description has changed: Diff: --- old +++ new @@ -25,7 +25,7 @@ * [x] Encoded // Is encoding finished? * [x] EncoderBusy // Is the encoder busy? * [x] EncoderError // An error occured -* [ ] InitEncoderBeforeAddingMetrics( Timestamp, SeqNr) // Initialize the Encoder before adding Metrics +* [x] InitEncoderBeforeAddingMetrics( Timestamp, SeqNr) // Initialize the Encoder before adding Metrics * [x] GetBDSeqNum * [x] GetSeqNum
Last updated: 2021-08-10
Post by i-campbell on Ticket #95: Versions: Downgrade to 3.5.14.0 discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
Started in /branches/SP14andMQTT1020/ It works, but there are a lot of precompile errors due to bugs in 3.5.14.0. Also the TO_STRING of the enums wasn't working, so I changed all your logs to just print the UINT value of the enum, for compiler versions before 3.5.16.0. More work is required to remove the precompile errors and fix the logging, should we want to move this feature into the trunk. NOTE: the precompile errors can be ignored.
Last updated: 2021-08-10
Post by hermsen on Ticket #16: Implement SparkPlugB Device discussion
co⚡e: Sparkplug™ MQTT edge and host
tickets
(Post)
Description has changed: Diff: --- old +++ new @@ -1,9 +1,13 @@ -Advantages of Devices: -* Can tell when a device online/go offline, -* Helps logically sort data on client and server side, -* Application nodes can look only at devices they are interested in (for example a HMI node that only wants data for the page it is on) +Advantages of Devices + + - Can tell when a device online/go offline, + - Helps logically sort data on client and server side, + - Application nodes can look only at devices they are interested in (for example a HMI node that only wants data for the page it is on) FB_Device + - Based on List Element, - shares the connection with the EoN i.e. there is only one connection, - - The user ties an arbitrary number of Devices to the EoN. + - The user ties an arbitrary number of Devices to the EoN, + - Implements the same dynamic arrays of Sparkplug values as EoN, + - The EoN can iterate through the connected FB_Devices via a list and sends all relevant Data to Primary SCADA
Last updated: 2021-08-10