# Unable to get reflected changes in the node-red debug window for subsequent changes in the tia portal

**URL:** <https://discourse.nodered.org/t/unable-to-get-reflected-changes-in-the-node-red-debug-window-for-subsequent-changes-in-the-tia-portal/79541>\
**Category:** General\
**Tags:** opcua\
**Created:** [2 July 2023 11:05 UTC](https://discourse.nodered.org/t/unable-to-get-reflected-changes-in-the-node-red-debug-window-for-subsequent-changes-in-the-tia-portal/79541 "2023-07-02T11:05:34Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![shubhamnodered](https://avatars.discourse-cdn.com/v4/letter/s/e8c25b/32.png) [@shubhamnodered](https://discourse.nodered.org/u/shubhamnodered)\
**Post date:** [2 July 2023 11:05 UTC](https://discourse.nodered.org/t/unable-to-get-reflected-changes-in-the-node-red-debug-window-for-subsequent-changes-in-the-tia-portal/79541/1 "2023-07-02T11:05:34Z")

</div>

In my Node-red flow, i am taking data from Siemens PLC through OPC-UA node in node-red. I'm getting data perfectly for some-time(meaning whatever changes i make in Tia portal program is also shows in node-red debug window.[Refer to screenshot -1]).

But after certain time(2-3 minutes), whatever changes i made at Tia portal program does not reflected back in node-red debug window[Refer to screenshot -2]. I don't know why?

Also, OPCUA node status is also changing from "'Active subscribing' to 'keep-alive' to 'active subscribing'.........."

I am using

- Tia portal[Siemens V16]
- PLC sim advanced V2.0
- Node-red(windows 11)
- OPCUA contrib node(but not IIOT OPCUA node)

Those who need my-node-red flow, i have pasted it here.

```auto
[
    {
        "id": "b5d2b5d70adc9eec",
        "type": "tab",
        "label": "Flow 4",
        "disabled": false,
        "info": "",
        "env": []
    },
    {
        "id": "06942aed7746321a",
        "type": "function",
        "z": "b5d2b5d70adc9eec",
        "name": "NodeId Array (Static variables)",
        "func": "// Tested with Prosys static variables\nmsg.topic = \"multiple\";\nmsg.payload = [];\nmsg.payload.push({ nodeId: 'ns=3;s=\\\"SQL\".\"Excel_log_bit\"'});\nmsg.payload.push({ nodeId: 'ns=3;s=\\\"SQL\".\"H_CoExtRunTime\"'});\nmsg.payload.push({ nodeId: 'ns=3;s=\\\"SQL\".\"H_TotDefDrum\"' });\nmsg.payload.push({ nodeId: 'ns=3;s=\\\"SQL\".\"H_TotProdDrum\"'});\nmsg.payload.push({ nodeId: 'ns=3;s=\\\"SQL\".\"H_Act_Length\"'});\nmsg.payload.push({ nodeId: 'ns=3;s=\\\"SQL\".\"AvgSpeed\"' });\nmsg.payload.push({ nodeId: 'ns=3;s=\\\"SQL\".\"H_AWGrm/Mtr\"'});\nmsg.payload.push({ nodeId: 'ns=3;s=\\\"SQL\".\"H_CoExtScrapAct\"'});\nmsg.payload.push({ nodeId: 'ns=3;s=\\\"SQL\".\"H_Defects\"'});\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "initialize": "",
        "finalize": "",
        "libs": [],
        "x": 490,
        "y": 280,
        "wires": [
            [
                "70152a7ad43e3a4c"
            ]
        ]
    },
    {
        "id": "4842bce434c17963",
        "type": "inject",
        "z": "b5d2b5d70adc9eec",
        "name": "Subscribe multiple",
        "props": [
            {
                "p": "topic",
                "vt": "str"
            }
        ],
        "repeat": "1",
        "crontab": "",
        "once": false,
        "onceDelay": 0.1,
        "topic": "multiple",
        "x": 210,
        "y": 280,
        "wires": [
            [
                "06942aed7746321a"
            ]
        ]
    },
    {
        "id": "67c900801f738564",
        "type": "function",
        "z": "b5d2b5d70adc9eec",
        "name": "Just value",
        "func": "if (msg.payload && msg.payload.value) {\n var value = msg.payload.value.value;\n msg.payload = value;\n return msg;\n}\n",
        "outputs": 1,
        "noerr": 0,
        "initialize": "",
        "finalize": "",
        "libs": [],
        "x": 920,
        "y": 280,
        "wires": [
            [
                "f06aa782df1ad63e"
            ]
        ]
    },
    {
        "id": "a20ea5df904b241e",
        "type": "debug",
        "z": "b5d2b5d70adc9eec",
        "name": "",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": false,
        "complete": "payload",
        "targetType": "msg",
        "statusVal": "",
        "statusType": "auto",
        "x": 1510,
        "y": 260,
        "wires": []
    },
    {
        "id": "f06aa782df1ad63e",
        "type": "join",
        "z": "b5d2b5d70adc9eec",
        "name": "",
        "mode": "custom",
        "build": "object",
        "property": "payload",
        "propertyType": "msg",
        "key": "topic",
        "joiner": "\\n",
        "joinerType": "str",
        "accumulate": false,
        "timeout": "",
        "count": "9",
        "reduceRight": false,
        "reduceExp": "",
        "reduceInit": "",
        "reduceInitType": "",
        "reduceFixup": "",
        "x": 1050,
        "y": 280,
        "wires": [
            [
                "cabe61a302bbe43b"
            ]
        ]
    },
    {
        "id": "95dd18ccee2f5d60",
        "type": "function",
        "z": "b5d2b5d70adc9eec",
        "name": "function 20",
        "func": "msg.payload = {\n \"Excel_log_bit\": msg.payload['ns=3;s=\\\"SQL\".\"Excel_log_bit\"'] == true? 1 : 0,\n \"H_CoExtRunTime\": msg.payload['ns=3;s=\\\"SQL\".\"H_CoExtRunTime\"'],\n \"H_TotDefDrum\": msg.payload['ns=3;s=\\\"SQL\".\"H_TotDefDrum\"'],\n \"H_TotProdDrum\": msg.payload['ns=3;s=\\\"SQL\".\"H_TotProdDrum\"'],\n \"H_Act_Length\": msg.payload['ns=3;s=\\\"SQL\".\"H_Act_Length\"'],\n \"AvgSpeed\": msg.payload['ns=3;s=\\\"SQL\".\"AvgSpeed\"'],\n \"H_AWGrm/Mtr\": msg.payload['ns=3;s=\\\"SQL\".\"H_AWGrm/Mtr\"'],\n \"H_CoExtScrapAct\": msg.payload['ns=3;s=\\\"SQL\".\"H_CoExtScrapAct\"'],\n \"H_Defects\": msg.payload['ns=3;s=\\\"SQL\".\"H_Defects\"']\n}\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "initialize": "",
        "finalize": "",
        "libs": [],
        "x": 1330,
        "y": 280,
        "wires": [
            [
                "a20ea5df904b241e"
            ]
        ]
    },
    {
        "id": "c44ead5f3ce4f08e",
        "type": "comment",
        "z": "b5d2b5d70adc9eec",
        "name": "Try-5",
        "info": "",
        "x": 170,
        "y": 240,
        "wires": []
    },
    {
        "id": "70152a7ad43e3a4c",
        "type": "OpcUa-Client",
        "z": "b5d2b5d70adc9eec",
        "endpoint": "3ec188ec73ca536f",
        "action": "subscribe",
        "deadbandtype": "a",
        "deadbandvalue": 1,
        "time": "100",
        "timeUnit": "ms",
        "certificate": "n",
        "localfile": "",
        "localkeyfile": "",
        "securitymode": "None",
        "securitypolicy": "None",
        "folderName4PKI": "",
        "maxChunkCount": "",
        "maxMessageSize": "",
        "receiveBufferSize": "",
        "sendBufferSize": "",
        "name": "",
        "x": 740,
        "y": 280,
        "wires": [
            [
                "67c900801f738564"
            ]
        ]
    },
    {
        "id": "8b05d8891b583116",
        "type": "comment",
        "z": "b5d2b5d70adc9eec",
        "name": "chat-gpt corrected program",
        "info": "what i wrote:\nmsg.payload = {\n \"Excel_log_bit\": if(msg.payload['ns=3;s=\\\"SQL\".\"Excel_log_bit\"'] == true){\n return 1;\n else{\n return 0;\n },\n\n \"H_CoExtRunTime\": msg.payload['ns=3;s=\\\"SQL\".\"H_CoExtRunTime\"'],\n \"H_TotDefDrum\": msg.payload['ns=3;s=\\\"SQL\".\"H_TotDefDrum\"'],\n \"H_TotProdDrum\": msg.payload['ns=3;s=\\\"SQL\".\"H_TotProdDrum\"'],\n \"H_Act_Length\": msg.payload['ns=3;s=\\\"SQL\".\"H_Act_Length\"'],\n \"AvgSpeed\": msg.payload['ns=3;s=\\\"SQL\".\"AvgSpeed\"'],\n \"H_AWGrm/Mtr\": msg.payload['ns=3;s=\\\"SQL\".\"H_AWGrm/Mtr\"'],\n \"H_CoExtScrapAct\": msg.payload['ns=3;s=\\\"SQL\".\"H_CoExtScrapAct\"'],\n \"H_Defects\": msg.payload['ns=3;s=\\\"SQL\".\"H_Defects\"']\n}\nreturn msg;\n\n\ni was getting error, so i pasted the incorrect program as it is into microsoft bing chat gpt, to which it gave me :\nmsg.payload = {\n \"Excel_log_bit\": msg.payload['ns=3;s=\\\"SQL\".\"Excel_log_bit\"'] == true? 1 : 0,\n \"H_CoExtRunTime\": msg.payload['ns=3;s=\\\"SQL\".\"H_CoExtRunTime\"'],\n \"H_TotDefDrum\": msg.payload['ns=3;s=\\\"SQL\".\"H_TotDefDrum\"'],\n \"H_TotProdDrum\": msg.payload['ns=3;s=\\\"SQL\".\"H_TotProdDrum\"'],\n \"H_Act_Length\": msg.payload['ns=3;s=\\\"SQL\".\"H_Act_Length\"'],\n \"AvgSpeed\": msg.payload['ns=3;s=\\\"SQL\".\"AvgSpeed\"'],\n \"H_AWGrm/Mtr\": msg.payload['ns=3;s=\\\"SQL\".\"H_AWGrm/Mtr\"'],\n \"H_CoExtScrapAct\": msg.payload['ns=3;s=\\\"SQL\".\"H_CoExtScrapAct\"'],\n \"H_Defects\": msg.payload['ns=3;s=\\\"SQL\".\"H_Defects\"']\n}\nreturn msg;\n\nRESULT = It worked\n\n\n\n\n\n\nThen i asked him => correct this program and use if/else statement if required:\nmsg.payload = {\n \"Excel_log_bit\": if(msg.payload['ns=3;s=\\\"SQL\".\"Excel_log_bit\"'] == true){\n return 1;\n else{\n return 0;\n },\n\n \"H_CoExtRunTime\": msg.payload['ns=3;s=\\\"SQL\".\"H_CoExtRunTime\"'],\n \"H_TotDefDrum\": msg.payload['ns=3;s=\\\"SQL\".\"H_TotDefDrum\"'],\n \"H_TotProdDrum\": msg.payload['ns=3;s=\\\"SQL\".\"H_TotProdDrum\"'],\n \"H_Act_Length\": msg.payload['ns=3;s=\\\"SQL\".\"H_Act_Length\"'],\n \"AvgSpeed\": msg.payload['ns=3;s=\\\"SQL\".\"AvgSpeed\"'],\n \"H_AWGrm/Mtr\": msg.payload['ns=3;s=\\\"SQL\".\"H_AWGrm/Mtr\"'],\n \"H_CoExtScrapAct\": msg.payload['ns=3;s=\\\"SQL\".\"H_CoExtScrapAct\"'],\n \"H_Defects\": msg.payload['ns=3;s=\\\"SQL\".\"H_Defects\"']\n}\n\n\n\nto which it replied:\n\nvar Excel_log_bit_value;\nif (msg.payload['ns=3;s=\\\"SQL\".\"Excel_log_bit\"'] == true) {\n Excel_log_bit_value = 1;\n} else {\n Excel_log_bit_value = 0;\n}\n\nmsg.payload = {\n \"Excel_log_bit\": Excel_log_bit_value,\n \"H_CoExtRunTime\": msg.payload['ns=3;s=\\\"SQL\".\"H_CoExtRunTime\"'],\n \"H_TotDefDrum\": msg.payload['ns=3;s=\\\"SQL\".\"H_TotDefDrum\"'],\n \"H_TotProdDrum\": msg.payload['ns=3;s=\\\"SQL\".\"H_TotProdDrum\"'],\n \"H_Act_Length\": msg.payload['ns=3;s=\\\"SQL\".\"H_Act_Length\"'],\n \"AvgSpeed\": msg.payload['ns=3;s=\\\"SQL\".\"AvgSpeed\"'],\n \"H_AWGrm/Mtr\": msg.payload['ns=3;s=\\\"SQL\".\"H_AWGrm/Mtr\"'],\n \"H_CoExtScrapAct\": msg.payload['ns=3;s=\\\"SQL\".\"H_CoExtScrapAct\"'],\n \"H_Defects\": msg.payload['ns=3;s=\\\"SQL\".\"H_Defects\"']\n}\n\n\nResult - It also worked",
        "x": 1310,
        "y": 240,
        "wires": []
    },
    {
        "id": "cabe61a302bbe43b",
        "type": "rbe",
        "z": "b5d2b5d70adc9eec",
        "name": "",
        "func": "rbe",
        "gap": "",
        "start": "",
        "inout": "out",
        "septopics": false,
        "property": "payload",
        "topi": "topic",
        "x": 1190,
        "y": 280,
        "wires": [
            [
                "95dd18ccee2f5d60"
            ]
        ]
    },
    {
        "id": "4d2cdd99499bac90",
        "type": "comment",
        "z": "b5d2b5d70adc9eec",
        "name": "",
        "info": "If you ever get problem with changes not being reflected in debug node for subsequent changing in tia portal, then you should refer to this link.\n\n\ntype in gooogle -> opcua node interval in node red\n\n\nor directlly - https://support.industry.siemens.com/forum/in/en/posts/using-opc-ua-sampling-intervals-with-flow-creator-node-red/263016\n",
        "x": 720,
        "y": 240,
        "wires": []
    },
    {
        "id": "3ec188ec73ca536f",
        "type": "OpcUa-Endpoint",
        "endpoint": "opc.tcp://192.168.0.1:4840",
        "secpol": "None",
        "secmode": "None",
        "none": true,
        "login": false,
        "usercert": false,
        "usercertificate": "",
        "userprivatekey": ""
    }
]

```

[![Screenshot 1]

 ![Screenshot (659)](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/c/4/c44508940c419809753ab8d45ff088adb4897a7a.png)

[![Screenshot 2]

 ![Screenshot (660)](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/4/2/4220849957ecaef19601736738bb2edaf05976a3.png)

---

<div class="post-metadata">

**Author:** ![mikakaraila](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/mikakaraila/32/37496_2.png) [@mikakaraila](https://discourse.nodered.org/u/mikakaraila)\
**Post date:** [10 July 2023 08:13 UTC](https://discourse.nodered.org/t/unable-to-get-reflected-changes-in-the-node-red-debug-window-for-subsequent-changes-in-the-tia-portal/79541/2 "2023-07-10T08:13:20Z")

</div>

Error in the flow is that you inject again subscription 5s interval. It should be inject only once as flow starts.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/1X/d073cd938eafa2e558d7c2cd59003b3ef4963033.png) [@system](https://discourse.nodered.org/u/system)\
**Post date:** [8 September 2023 08:13 UTC](https://discourse.nodered.org/t/unable-to-get-reflected-changes-in-the-node-red-debug-window-for-subsequent-changes-in-the-tia-portal/79541/3 "2023-09-08T08:13:41Z")

</div>

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.
