diff --git a/newmodeljsonparse.py b/newmodeljsonparse.py
index 05476f773b1212cab327e7eec3e0ed8e406a066b..e6ee92629b56923ece7ec62fd20635ef2d09eb27 100644
--- a/newmodeljsonparse.py
+++ b/newmodeljsonparse.py
@@ -395,15 +395,19 @@ def main():
         print(instantiatedict)
         print("Eventsdict: ")
         print(eventsdict)
+        print("Parametersdict: ")
+        print(jsonparameters)
         generatordict = {}
         streamgendict = {}
+        savestreamvaldict = {}
         for key in list(eventsdict.keys()):
             eventlist = wf.writeevents(eventsdict[key], instantiatedict[key], {})
             generatordict.update(eventlist)
 
         for key in list(streamsdict.keys()):
-            streamlist = wf.writestreams(streamsdict[key], instantiatedict[key], {})
-            streamgendict.update(streamlist)
+            returnval = wf.writestreams(streamsdict[key], instantiatedict[key], {}, variabledict[key], jsonmeasurements, jsonparameters)
+            streamgendict.update(returnval[0])
+            savestreamvaldict.update(returnval[1])
 
         wf.writendpt1()
 
@@ -411,7 +415,7 @@ def main():
             wf.triggerevents(generatordict, eventsdict[key], instantiatedict[key], variabledict[key], jsonmeasurements, jsonparameters)
 
         for key in list(streamsdict.keys()):
-            wf.triggerstreams(streamgendict, streamsdict[key], instantiatedict[key], variabledict[key], jsonmeasurements, jsonparameters)
+            wf.triggerstreams(streamgendict, streamsdict[key], instantiatedict[key], variabledict[key], jsonmeasurements, jsonparameters, savestreamvaldict)
         wf.writendpt2()
 
 
diff --git a/writefile.py b/writefile.py
index b4e62109b331e4e3dc426bb1ae753468b7785fd1..a8db79074473a6f77143c7b183bc6278cd3db5c0 100644
--- a/writefile.py
+++ b/writefile.py
@@ -228,10 +228,11 @@ def writeevents(events, component, eventlist):
     return eventlist
 
 
-def writestreams(streams, component, streamslist):
+def writestreams(streams, component, streamslist, variablelist, jsonmeasurements, jsonparameters):
     server = open("opcua-server.py", "a")
     writeindent = "    "
     # eventelements = []
+    updatestreamdict = {}
     for stream in streams:
         # eventelements.append(event["element"])
         streamname = (stream["measurement"].lower()).replace(" ", "") + component
@@ -239,7 +240,30 @@ def writestreams(streams, component, streamslist):
         streamslist[streamname] = streamgenname
         server.write(writeindent + streamname + " = await server.create_custom_event_type(idx, \"" + str(stream["measurement"]) + "\", ua.ObjectIds.SystemEventType)\n")
         server.write(writeindent + str(streamslist[streamname]) + " = await server.get_event_generator(" + streamname + ", " + component + ")\n")
-    return streamslist
+
+        if stream["streamType"] == "update":
+            value = 0
+            print(variablelist)
+            for variable in variablelist:
+                print(variable)
+                if variable["name"] == stream["measurement"]:
+                    for measurement in jsonmeasurements:
+                        if measurement["uuid"] == variable["value"]:
+                            value = measurement["value"]
+                    for parameter in jsonparameters:
+                        if parameter["uuid"] == variable["value"]:
+                            value = parameter["value"]
+
+            savevaluename = "save" + streamname
+            writevalue = ""
+            if type(value) == str:
+                writevalue = "\"" + value + "\""
+            else:
+                writevalue = str(value)
+            server.write(writeindent + savevaluename + " = " + writevalue + "\n")
+            updatestreamdict[streamname] = savevaluename
+
+    return streamslist, updatestreamdict
 
 
 def writendpt1():
@@ -291,8 +315,7 @@ def triggerevents(generatordict, eventslist, component, variablelist, jsonmeasur
             writeindent += "    "
 
 
-
-def triggerstreams(generatordict, streamslist, component, variablelist, jsonmeasurements, jsonparameters):
+def triggerstreams(generatordict, streamslist, component, variablelist, jsonmeasurements, jsonparameters, savevaldict):
     server = open("opcua-server.py", "a")
     indent = 3
     for stream in streamslist:
@@ -312,11 +335,11 @@ def triggerstreams(generatordict, streamslist, component, variablelist, jsonmeas
         server.write(writeindent + valuename + " = await " + component + ".get_child([\"2:" + streamname + "\"])\n")
         generatorname = generatordict[(stream["measurement"].lower()).replace(" ", "") + component]
         if stream["streamType"] == "update":
-            server.write(writeindent + "save" + valuename + " = await " + valuename + ".get_value()\n")
-            server.write(writeindent + "if (await " + valuename + ".get_value()) != " + "save" + valuename + ":\n")
+            server.write(writeindent + "if (await " + valuename + ".get_value()) != " + savevaldict[(stream["measurement"].lower()).replace(" ", "") + component] + ":\n")
             writeindent += "    "
-            server.write(writeindent + "await " + generatorname + ".trigger()\n")
-            server.write(writeindent + "save" + valuename + " = await " + valuename + ".get_value()\n")
+            server.write(writeindent + "puffer = await " + valuename + ".get_value()\n")
+            server.write(writeindent + "await " + generatorname + ".trigger(message= \"value\" + str(puffer))\n")
+            server.write(writeindent + savevaldict[(stream["measurement"].lower()).replace(" ", "") + component] + " = puffer \n")
             writeindent = ""
             for i in range(indent):
                 writeindent += "    "
@@ -330,9 +353,6 @@ def triggerstreams(generatordict, streamslist, component, variablelist, jsonmeas
                 writeindent += "    "
 
 
-
-
-
 def writendpt2():
     server = open("opcua-server.py", "a")
     server.write("""