connectors/ERPC/__init__.py
changeset 3885 22a009561502
parent 3884 34da877021d5
child 3887 2df45e4bd500
--- a/connectors/ERPC/__init__.py	Wed Jan 17 22:09:32 2024 +0100
+++ b/connectors/ERPC/__init__.py	Fri Jan 19 19:58:44 2024 +0100
@@ -17,7 +17,7 @@
 # eRPC service code
 from erpc_interface.erpc_PLCObject.interface import IBeremizPLCObjectService
 from erpc_interface.erpc_PLCObject.client import BeremizPLCObjectServiceClient
-from erpc_interface.erpc_PLCObject.common import trace_order, extra_file, PLCstatus_enum
+from erpc_interface.erpc_PLCObject.common import trace_order, extra_file, PLCstatus_enum, IECtype_enum
 
 import PSKManagement as PSK
 from connectors.ERPC.PSK_Adapter import SSLPSKClientTransport
@@ -55,10 +55,12 @@
         lambda res:(enum_to_PLCstatus[res.PLCstatus], res.logcounts)),
     "GetTraceVariables":TranslatedReturnAsLastOutput(
         lambda res:(enum_to_PLCstatus[res.PLCstatus],
-                    [(sample.tick, sample.TraceBuffer) for sample in res.traces])),
+                    [(sample.tick, bytes(sample.TraceBuffer)) for sample in res.traces])),
     "MatchMD5":ReturnAsLastOutput,
     "NewPLC":ReturnAsLastOutput,
     "SeedBlob":ReturnAsLastOutput,
+    "SetTraceVariablesList": ReturnAsLastOutput,
+    "StopPLC":ReturnAsLastOutput,
 }
 
 ArgsWrappers = {
@@ -66,7 +68,9 @@
         lambda md5sum, plcObjectBlobID, extrafiles: (
             md5sum, plcObjectBlobID, [extra_file(*f) for f in extrafiles]),
     "SetTraceVariablesList": 
-        lambda orders : ([trace_order(*order) for order in orders],)
+        lambda orders : ([
+            trace_order(idx, getattr(IECtype_enum, iectype), b"" if force is None else force) 
+            for idx, iectype, force in orders],)
 }
 
 def ERPC_connector_factory(uri, confnodesroot):