Bug report, old version so maybe fixed, RPi3B

Apologies, I was half tempted to stick this on github but not sure if it's easily recreated, nor if it's a problem with the contrib module, is that possible? Anyway here's my rambling version:

Importing some flows I've done on an even older version (1.0.6 no subflow support) on my Raspberry Pi Zero in a greenhouse, to my indoor Raspberry Pi 3B(+?) running 1.3.4. To make my flows work I obviously needed to manage my palette and add support for an i2c temp/humidity sensor SHT3x and did so, then also an i2c ADC chip ADS1x15. This was the curious point. As I knew what was coming, I first didn't even switch to the flows with errors but instead went straight to palette manager. I added the SHT3x package and viewed the log, closed it before it finished and then mused for a second, at which point NodeRed flashed/refreshed so I knew the package was done. I switched to the SHT3x flow and saw the nodes were now valid. I then switched over to the flow with the ADC nodes, dashed outlines as the module was missing. I loaded package manager and started the module installing, closed the manager and I switched off the flow with the ADC and back to the one with the SHT3x, while the ADC module was installing, and then once installed the ADC nodes from the flow I was on when I started the module installing appeared on my SHT3x flow.

Recreation steps: Setup a new flow, then import these two flows. Go to the Flow1 page, then trigger install of the first module, immediately view log and close dialog before install finishes then wait for screen to flash or 1minute (signifying install finished). Then goto flow2(SHT3x flow named fswebcam) and verify nodes, then goto flow 3(called pwd but uses 3x ADC nodes), start install and view log and immediately close dialog and return to flow2. Expect 3 adc nodes to appear on flow2 by mistake.

FLOW2:

[{"id":"8ffe0f10.b8ea6","type":"tab","label":"fswebcam","disabled":false,"info":"Take an image, save it, maybe send it up the ether.\n\nA timestamp gets added, temp+hum get avg'd\nOne should set the plant info in the box, or pass in a payload like this:\n\n`{`\n\n`    \"name\": \"Rocket\",`\n\n`    \"latin\": \"Eruca verisicaria\",`\n\n`    \"type\": \"Voyager\",`\n\n`    \"brand\": \"Unwins\",`\n\n`    \"location\": \"Greenhouse\",`\n\n`    \"temp\": \"-99\",`\n\n`    \"humidity\": \"-99\"`\n\n`}`"},{"id":"96008868.8284b8","type":"exec","z":"8ffe0f10.b8ea6","command":"fswebcam","addpay":true,"append":"","useSpawn":"false","timer":"","oldrc":false,"name":"","x":140,"y":440,"wires":[["8349ee40.8e9e7"],["5e2d4039.66ff7","5762bed2.8e21"],["e76dc185.e48c6"]]},{"id":"60e1b3aa.d697dc","type":"link in","z":"8ffe0f10.b8ea6","name":"Trigger_full_pipeline","links":[],"x":115,"y":180,"wires":[["342afe0d.b58862"]]},{"id":"fb9ee21b.03a68","type":"inject","z":"8ffe0f10.b8ea6","name":"inject Rocket","topic":"","payload":"{\"name\":\"Rocket\",\"latin\":\"Eruca verisicaria\",\"type\":\"Voyager\",\"brand\":\"Unwins\",\"temp\":\"-99\",\"humidity\":\"-99\"}","payloadType":"json","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":210,"y":300,"wires":[[]]},{"id":"5e2d4039.66ff7","type":"debug","z":"8ffe0f10.b8ea6","name":"err","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","x":350,"y":480,"wires":[]},{"id":"e76dc185.e48c6","type":"debug","z":"8ffe0f10.b8ea6","name":"c","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","x":350,"y":520,"wires":[]},{"id":"8349ee40.8e9e7","type":"debug","z":"8ffe0f10.b8ea6","name":"out","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","x":350,"y":440,"wires":[]},{"id":"79caa399.61e7ec","type":"template","z":"8ffe0f10.b8ea6","name":"TEMPLATE Like: -r 640x480 --jpeg 100 -D 3 -S 13 --title \"Rocket - Voyager(Eruca verisicaria) - Unwins - 6.2c 32%RH\" latestRocket.jpg","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"-r 640x480 --jpeg 100 -D 3 -S 13 --title \"{{payload.name}} - {{payload.type}}({{payload.latin}}) - {{payload.brand}} - {{payload.temp}}c {{payload.humidity}}%RH\" \"./growlab-greenhouse/{{payload.id}}/{{payload.timestamp}}{{payload.id}}.jpg\"","output":"str","x":500,"y":380,"wires":[["96008868.8284b8","95ec4b4b.3056b8"]]},{"id":"95ec4b4b.3056b8","type":"debug","z":"8ffe0f10.b8ea6","name":"args","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","x":770,"y":300,"wires":[]},{"id":"7020ddee.2dc094","type":"SHT3x","z":"8ffe0f10.b8ea6","name":"Sht3x-i2c44","shtaddress":"0x44","x":410,"y":180,"wires":[["97a19030.a2b8d"]]},{"id":"5432ceec.9da4","type":"function","z":"8ffe0f10.b8ea6","name":"Avg","func":"//array input\nnode.warn(msg.payload);\nconst avg = (arr,key) => {\n    node.warn(arr);\n    var ans = Array.prototype.reduce.call(arr.map(x=>x[key]), (a, x) => a + x, 0) / arr.length;\n    return ans;\n}\n\nmsg.payload = {\n    temp: avg(msg.payload,\"temperature\").toFixed(2),\n    humidity: avg(msg.payload, \"humidity\").toFixed(2),\n    payload: msg.payload};\nreturn msg;","outputs":1,"noerr":0,"x":730,"y":180,"wires":[["f0613036.5a96c","6268f909.500958"]]},{"id":"97a19030.a2b8d","type":"join","z":"8ffe0f10.b8ea6","name":"Merge2parts","mode":"custom","build":"array","property":"payload","propertyType":"msg","key":"topic","joiner":"\\n","joinerType":"str","accumulate":false,"timeout":"6","count":"2","reduceRight":false,"reduceExp":"","reduceInit":"","reduceInitType":"","reduceFixup":"","x":590,"y":180,"wires":[["5432ceec.9da4"]]},{"id":"f0613036.5a96c","type":"debug","z":"8ffe0f10.b8ea6","name":"","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":690,"y":120,"wires":[]},{"id":"6268f909.500958","type":"change","z":"8ffe0f10.b8ea6","name":"► Set Plant Info Here ◄","rules":[{"t":"set","p":"payload.name","pt":"msg","to":"PurpleThings","tot":"str"},{"t":"set","p":"payload.latin","pt":"msg","to":"latin_name","tot":"str"},{"t":"set","p":"payload.type","pt":"msg","to":"Purple","tot":"str"},{"t":"set","p":"payload.brand","pt":"msg","to":"Bucket","tot":"str"},{"t":"set","p":"payload.location","pt":"msg","to":"Greenhouse","tot":"str"},{"t":"set","p":"payload.id","pt":"msg","to":"#Bucket052021-01","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":270,"y":260,"wires":[["d5f832e4.0a627"]]},{"id":"342afe0d.b58862","type":"function","z":"8ffe0f10.b8ea6","name":"noop","func":"\nreturn msg;","outputs":1,"noerr":0,"x":250,"y":180,"wires":[["7020ddee.2dc094","9900ec20.146bc"]]},{"id":"d5f832e4.0a627","type":"function","z":"8ffe0f10.b8ea6","name":"timestamp","func":"msg.payload.timestamp = \n    Date.prototype.toISOString.call(\n        new Date()\n    ).replace(/([-:]|\\..*)/g,\"\");\nreturn msg;","outputs":1,"noerr":0,"x":550,"y":300,"wires":[["79caa399.61e7ec"]]},{"id":"9900ec20.146bc","type":"SHT3x","z":"8ffe0f10.b8ea6","name":"Sht3x-i2c45","shtaddress":"0x45","x":410,"y":140,"wires":[["97a19030.a2b8d"]]},{"id":"324c235.d2be6dc","type":"link in","z":"8ffe0f10.b8ea6","name":"Take_full_payload_skip_sensors","links":[],"x":335,"y":320,"wires":[["d5f832e4.0a627"]]},{"id":"5762bed2.8e21","type":"ping","z":"8ffe0f10.b8ea6","mode":"triggered","name":"","host":"8.8.4.4","timer":"20","inputs":1,"x":150,"y":540,"wires":[["1767f0b3.7bb5ff"]]},{"id":"1767f0b3.7bb5ff","type":"switch","z":"8ffe0f10.b8ea6","name":"","property":"payload","propertyType":"msg","rules":[{"t":"false"},{"t":"else"}],"checkall":"false","repair":false,"outputs":2,"x":220,"y":620,"wires":[["64d271ad.b925a"],["c6a8a93b.c64318"]]},{"id":"64d271ad.b925a","type":"function","z":"8ffe0f10.b8ea6","name":"set global online to 0","func":"global.set(\"online\",0);\nreturn msg;","outputs":1,"noerr":0,"x":420,"y":600,"wires":[["7c4e9899.bd1a98"]]},{"id":"c6a8a93b.c64318","type":"function","z":"8ffe0f10.b8ea6","name":"set global online to 1","func":"global.set(\"online\",1);\nreturn msg;","outputs":1,"noerr":0,"x":420,"y":640,"wires":[["7c4e9899.bd1a98","ab3c5a6e.c38168"]]},{"id":"7c4e9899.bd1a98","type":"debug","z":"8ffe0f10.b8ea6","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":790,"y":620,"wires":[]},{"id":"ab3c5a6e.c38168","type":"exec","z":"8ffe0f10.b8ea6","command":"{ cd /home/pi/growlab-greenhouse/ ; git add . ; git commit -am\"Next batch\" ; git pull ; git push ; cd /home/pi ; echo Uploaded ; }","addpay":false,"append":"","useSpawn":"false","timer":"","oldrc":false,"name":"Update git repo","x":690,"y":580,"wires":[["56323814.5206a8"],["56323814.5206a8"],["56323814.5206a8"]]},{"id":"56323814.5206a8","type":"debug","z":"8ffe0f10.b8ea6","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":820,"y":560,"wires":[]},{"id":"bb30cb0a.ab1538","type":"trigger","z":"8ffe0f10.b8ea6","op1":"{\"item\":\"\"}","op2":"0","op1type":"json","op2type":"str","duration":"-1","extend":false,"units":"min","reset":"reset","bytopic":"all","name":"","x":410,"y":40,"wires":[["342afe0d.b58862"]]},{"id":"c0216693.d71258","type":"inject","z":"8ffe0f10.b8ea6","name":"Start","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":150,"y":40,"wires":[["bb30cb0a.ab1538"]]},{"id":"f73ecb69.379af8","type":"inject","z":"8ffe0f10.b8ea6","name":"STOP / RESET","topic":"","payload":"reset","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":180,"y":80,"wires":[["bb30cb0a.ab1538"]]}]

Flow3

[{"id":"1105a396.8de24c","type":"tab","label":"Pwd","disabled":false,"info":""},{"id":"727c09a9.5d39d8","type":"debug","z":"1105a396.8de24c","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":230,"y":160,"wires":[]},{"id":"13e4d4e2.26ba1b","type":"exec","z":"1105a396.8de24c","command":"pwd","addpay":true,"append":"","useSpawn":"false","timer":"","oldrc":false,"name":"","x":110,"y":280,"wires":[["727c09a9.5d39d8"],["727c09a9.5d39d8"],[]]},{"id":"45282cc.908c0d4","type":"inject","z":"1105a396.8de24c","name":"","topic":"","payload":"{\"sample\":\"2s\"}","payloadType":"json","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":120,"y":460,"wires":[["b0253db2.273c2","f32c7b78.4dd5f8","3d4f2b44.f6f824","c1f6932a.fd95f"]]},{"id":"b0253db2.273c2","type":"ads1x15-raspi","z":"1105a396.8de24c","property":"payload.A0","name":"","chip":"IC_ADS1115","i2c_address":"ADDRESS_0x48","channel":"CHANNEL_0","samplesPerSecond0":"SPS_920","samplesPerSecond1":"SPS_128","progGainAmp":"PGA_4_096V","x":260,"y":340,"wires":[["ca1f37f2.5d7b58"]]},{"id":"ca1f37f2.5d7b58","type":"ads1x15-raspi","z":"1105a396.8de24c","property":"payload.A1","name":"","chip":"IC_ADS1115","i2c_address":"ADDRESS_0x48","channel":"CHANNEL_1","samplesPerSecond0":"SPS_920","samplesPerSecond1":"SPS_128","progGainAmp":"PGA_4_096V","x":500,"y":380,"wires":[["5b0fed0a.358df4"]]},{"id":"5b0fed0a.358df4","type":"ads1x15-raspi","z":"1105a396.8de24c","property":"payload.A2","name":"","chip":"IC_ADS1115","i2c_address":"ADDRESS_0x48","channel":"CHANNEL_2","samplesPerSecond0":"SPS_920","samplesPerSecond1":"SPS_128","progGainAmp":"PGA_4_096V","x":500,"y":420,"wires":[["a027537.1bcc2b"]]},{"id":"a027537.1bcc2b","type":"ads1x15-raspi","z":"1105a396.8de24c","property":"payload.A3","name":"","chip":"IC_ADS1115","i2c_address":"ADDRESS_0x48","channel":"CHANNEL_3","samplesPerSecond0":"SPS_920","samplesPerSecond1":"SPS_128","progGainAmp":"PGA_4_096V","x":520,"y":460,"wires":[["727c09a9.5d39d8"]]},{"id":"f32c7b78.4dd5f8","type":"delay","z":"1105a396.8de24c","d":true,"name":"","pauseType":"delay","timeout":"2","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":300,"y":380,"wires":[["ca1f37f2.5d7b58"]]},{"id":"3d4f2b44.f6f824","type":"delay","z":"1105a396.8de24c","d":true,"name":"","pauseType":"delay","timeout":"4","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":300,"y":420,"wires":[["5b0fed0a.358df4"]]},{"id":"c1f6932a.fd95f","type":"delay","z":"1105a396.8de24c","d":true,"name":"","pauseType":"delay","timeout":"6","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":320,"y":460,"wires":[["a027537.1bcc2b"]]}]

Module for sht3x: node-red-contrib-sht
Module for ADC (ADS1x15): node-red-contrib-anolog-to-digital-converter-raspberry-pi

Since you don't know whether it is fixed, and it seems quite complex to replicate, could you upgrade to the latest version and try again?

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