I Will test My used plug-ins this week
Node v8 plugin compatibility
Hmm. I can not say anything but that the plugins work for me. I came to pimatic because of the Radiohead plugin. This plugin uses radiohead-serial. According to the description of radiohaed-serial version 4.0 requires at least node.js version 8 or higher. That’s why I installed Pimatic directly with nodejs ver. 8 a few months ago. I installed the plugins via the Pimatic interface.
I did not have to make any changes. They work.
Here is the output of the last launch of pimatic:
22:33:45.688 2018-12-28 Friday
22:33:49.083 [pimatic] info: Starting pimatic version 0.9.43
22:33:49.089 [pimatic] info: Node.js version 8.15.0
22:33:49.090 [pimatic] info: OpenSSL version 1.0.2q
22:33:50.748 [pimatic, ppm] info: 2.15.12
22:33:50.778 [pimatic] info: Loading plugin: “pimatic-cron” (0.8.8)
22:33:51.186 [pimatic] info: Loading plugin: “pimatic-mobile-frontend” (0.9.12)
22:33:51.506 [pimatic] info: Loading plugin: “pimatic-radiohead” (1.3.1)
22:33:51.621 [pimatic] info: Loading plugin: “pimatic-dewpoint” (0.9.2)
22:33:51.667 [pimatic] info: Loading plugin: “pimatic-sysinfo” (0.9.4)
22:33:51.787 [pimatic] info: Loading plugin: “pimatic-filter” (0.9.4)
22:33:51.819 [pimatic] info: Loading plugin: “pimatic-mail” (0.8.6)
22:33:52.271 [pimatic] info: Loading plugin: “pimatic-i2c-bme280” (0.9.1)
22:33:52.288 [pimatic] info: Loading plugin: “pimatic-sunrise” (0.9.2)
22:33:52.407 [pimatic] info: Loading plugin: “pimatic-shell-execute” (0.9.11)
22:33:52.440 [pimatic] info: Loading plugin: “pimatic-charts” (0.0.4)
22:33:52.456 [pimatic-cron] info: the time is: Fri Dec 28 2018 22:33:52 GMT+0100 (CET)
22:33:53.046 [pimatic-sunrise] info: Your location is set to lat: xxxxxx, long: xxxxxxx
22:33:53.497 [pimatic] info: New device “Luftdruck”…
22:33:53.523 [pimatic] info: New device “Server”…
22:33:53.557 [pimatic] info: New device “Empfänger”…
22:33:53.588 [pimatic] info: New device “Außensensor 1”…
22:33:53.614 [pimatic] info: New device “Batterie Außensensor 1”…
22:33:53.821 [pimatic] info: New device “Innensensor Nr. 1 (OG)”…
22:33:53.848 [pimatic] info: New device “Messwerte Innensensor (OG)”…
22:33:53.878 [pimatic] info: New device “T (Min/Max) Innensensor (OG)”…
22:33:53.898 [pimatic] info: New device “T (Min/Max) Außensensor”…
22:33:53.913 [pimatic] info: New device “Messwerte Außensensor 1”…
22:33:53.931 [pimatic] info: New device “Reset Min/Max Temperaturen”…
22:33:53.943 [pimatic] info: New device “Reset Luftdruck Tendenz”…
22:33:53.958 [pimatic] info: New device “Calc Luftdruck Diff”…
22:33:53.980 [pimatic] info: New device “Sonnenstand”…
22:33:54.007 [pimatic] info: New device “rpi-pwrled-off”…
22:33:54.022 [pimatic] info: New device “Innensensor Nr. 2 (EG)”…
22:33:54.037 [pimatic] info: New device “T (Min/Max) Innensensor (EG)”…
22:33:54.050 [pimatic] info: New device “Wetter”…
22:33:54.063 [pimatic] info: New device “Batterie Innensensor Nr. 2 (EG)”…
22:33:54.077 [pimatic] info: New device “Messwerte Innensensor (EG)”…
22:33:54.094 [pimatic] info: New device “Luftdruck Tendenz”…
22:33:54.107 [pimatic] info: New device “Temperaturen”…
22:33:54.121 [pimatic] info: New device “Luftfeuchte”…
22:33:55.995 [pimatic-mobile-frontend] info: packing static assets
22:33:57.107 [pimatic-mobile-frontend] info: packing static assets finished
22:33:57.113 [pimatic-mobile-frontend] info: rendering html
22:34:01.654 [pimatic-mobile-frontend] info: rendering html finished
22:34:01.787 [pimatic] info: Listening for HTTPS-request on port 443…
@kair I’m curious how you got it working so smoothly with node 8. For me pimatic didn’t event start in the default config. I’m wondering why I did put so much time into updating the code!
If I should provide any information about my runtime environment I can try that. But then I have to know what information you may need.
@kair I’ve checked this, and you are right! You can even run the 0.9.43 version with node 8. I didn’t test everything, but at least the default config seems to be running fine. Nevertheless the node_v8 branch also uses a newer CoffeeScript which in turn compiles to ES6 syntax (which is btw the reason for all the errors).
I think we should still go for this change, as it ensures more future compatibility.
22:33:50.748 [pimatic, ppm] info: 2.15.12
There is one constraint, though: Because of the package.json from 0.9.43 you are using ppm (aka npm) in version 2.15.12 whereas the npm version that comes with node 8 is 4.x. This might have some implications that we don’t know yet.
Plugins installed, activated and working:
mobile-frontend 0.9.13 (already in your list)
Unfortunately could not install:
Node 8.15 :
Easter holidays and with my spare raspberry start testing.
First tried node 8.15 and then with node 10.15.3
With both versions the above works and pimatic installation was without problems. I will stay with node 10.15.3 to try pimatic-owjs, pimatic-climasens.
Plugin: unipi-evok only not working:
error [pimatic-unipi-evok]: [UniPiUpdateManager] Web Socket Closed 00:44:49error [pimatic-unipi-evok]: [UniPiUpdateManager] Web Socket Error: Error: getaddrinfo ENOTFOUND 82ws 82ws:80 00:44:30error [pimatic-unipi-evok]: Error at Object.stack (/home/pi/pimatic-app/node_modules/pimatic-unipi-evok/node_modules/pimatic-plugin-commons/lib/index.js:251:100) at Object.rejectWithErrorString (/home/pi/pimatic-app/node_modules/pimatic-unipi-evok/node_modules/pimatic-plugin-commons/lib/index.js:155:21) at /home/pi/pimatic-app/node_modules/pimatic-unipi-evok/unipi-update-manager.coffee:166:18 at tryCatcher (/home/pi/pimatic-app/node_modules/pimatic/node_modules/bluebird/js/release/util.js:16:23) at Promise._settlePromiseFromHandler (/home/pi/pimatic-app/node_modules/pimatic/node_modules/bluebird/js/release/promise.js:512:31) at Promise._settlePromise (/home/pi/pimatic-app/node_modules/pimatic/node_modules/bluebird/js/release/promise.js:569:18) at Promise._settlePromise0 (/home/pi/pimatic-app/node_modules/pimatic/node_modules/bluebird/js/release/promise.js:614:10) at Promise._settlePromises (/home/pi/pimatic-app/node_modules/pimatic/node_modules/bluebird/js/release/promise.js:690:18) at _drainQueueStep (/home/pi/pimatic-app/node_modules/pimatic/node_modules/bluebird/js/release/async.js:138:12) at _drainQueue (/home/pi/pimatic-app/node_modules/pimatic/node_modules/bluebird/js/release/async.js:131:9) at Async._drainQueues (/home/pi/pimatic-app/node_modules/pimatic/node_modules/bluebird/js/release/async.js:147:5) at Immediate.Async.drainQueues [as _onImmediate] (/home/pi/pimatic-app/node_modules/pimatic/node_modules/bluebird/js/release/async.js:17:14) at runCallback (timers.js:705:18) at tryOnImmediate (timers.js:676:5) at processImmediate (timers.js:658:5) at process.topLevelDomainCallback (domain.js:120:23) 00:44:30error [pimatic-unipi-evok]: [UniPiUpdateManager] Error: unable to get status for all devices, exception caught: Error: getaddrinfo ENOTFOUND 82rest 82rest:80
And pimatic-zwave-usb gives an error and installation stops.
I have also re-tested this on with node v10 and can confirm unipi-evok is working as expected
EDIT: Updated first post - move unipi to list of working plugins, added rflink to “NOT Working”
"It always takes longer than you expect, even when you take into account Hofstadter's Law.", Hofstadter's Law
pimatic-owjs also working with node v8 and v10.15.3
EDIT mwittig: Updated first post
I updated node to 8.16.0. After reinstalling pimatic the system works.
I am using the telegram plugin which isn’t listed yet above.
Keep in mind telegram is a little bit tricky. When you use your old database, then no problem will occur during the first start. If you want to use a fresh db you need to disable the plugin before the first start in the config.json. After the system is up you can activate it. From now on the system will normally start with the running plugin. Unfortunately the plugin dev @Dan is not mor active here to fix this effect.
@SaxnPaule: Can you update the list above regarding telegram please.
While the plugin i2c-bme280 0.9.1 in node version 8.16 still works, it can no longer be installed in node version 10.16.
Radiohead 1.3.1 has been upgraded to version 2.0 and now also works under node version 10.16
Too bad the RF link plugin does not work. I ran into this when transitioning to a new install with a brand new RFlink to replace my homeduino setup. Seems I should have stayed with homeduino…
Any chance that someone might update the RFlink plugin? I am not a programmer myself.
Main problem is the dependency on serialport 2.0.6, which can not be compiled with node 10.x.x., or node v8 for that matter.