Read the statement by Michael Teeuw here.
SolisCloud Solar PV
-
@Rags I ran into some snags on the install. It could be down to the dependencies - I wasn’t 100% sure where dependencies need to be installed.
I’ve put them in the MagicMirror folder (and they seemed to install fine there) but I get quite a few errors when I then try to run npm install in the Soliscloud folder.
Any advice?
The errors, if that’s helpful:
Magic@raspberrypi:~/MagicMirror/modules/MMM-Soliscloud $ npm install npm WARN deprecated crypto@1.0.1: This package is no longer supported. It's now a built-in Node module. If you've depended on crypto, you should switch to the one that's built-in. npm WARN deprecated electron-rebuild@3.2.9: Please use @electron/rebuild moving forward. There is no API change, just a package name change npm WARN cleanup Failed to remove some directories [ npm WARN cleanup [ npm WARN cleanup '/home/Magic/MagicMirror/modules/MMM-Soliscloud/node_modules/lzma-native', npm WARN cleanup [Error: ENOTEMPTY: directory not empty, rmdir '/home/Magic/MagicMirror/modules/MMM-Soliscloud/node_modules/lzma-native/build/liblzma'] { npm WARN cleanup errno: -39, npm WARN cleanup code: 'ENOTEMPTY', npm WARN cleanup syscall: 'rmdir', npm WARN cleanup path: '/home/Magic/MagicMirror/modules/MMM-Soliscloud/node_modules/lzma-native/build/liblzma' npm WARN cleanup } npm WARN cleanup ], npm WARN cleanup [ npm WARN cleanup '/home/Magic/MagicMirror/modules/MMM-Soliscloud/node_modules/lzma-native', npm WARN cleanup [Error: ENOTEMPTY: directory not empty, rmdir '/home/Magic/MagicMirror/modules/MMM-Soliscloud/node_modules/lzma-native/build/liblzma'] { npm WARN cleanup errno: -39, npm WARN cleanup code: 'ENOTEMPTY', npm WARN cleanup syscall: 'rmdir', npm WARN cleanup path: '/home/Magic/MagicMirror/modules/MMM-Soliscloud/node_modules/lzma-native/build/liblzma' npm WARN cleanup } npm WARN cleanup ] npm WARN cleanup ] npm ERR! code 1 npm ERR! path /home/Magic/MagicMirror/modules/MMM-Soliscloud/node_modules/epoll npm ERR! command failed npm ERR! command sh -c node-gyp rebuild npm ERR! make: Entering directory '/home/Magic/MagicMirror/modules/MMM-Soliscloud/node_modules/epoll/build' npm ERR! CXX(target) Release/obj.target/epoll/src/epoll.o npm ERR! make: Leaving directory '/home/Magic/MagicMirror/modules/MMM-Soliscloud/node_modules/epoll/build' npm ERR! gyp info it worked if it ends with ok npm ERR! gyp info using node-gyp@9.4.0 npm ERR! gyp info using node@21.6.1 | linux | arm64 npm ERR! gyp info find Python using Python version 3.11.2 found at "/usr/bin/python3" npm ERR! gyp info spawn /usr/bin/python3 npm ERR! gyp info spawn args [ npm ERR! gyp info spawn args '/home/Magic/MagicMirror/modules/MMM-Soliscloud/node_modules/node-gyp/gyp/gyp_main.py', npm ERR! gyp info spawn args 'binding.gyp', npm ERR! gyp info spawn args '-f', npm ERR! gyp info spawn args 'make', npm ERR! gyp info spawn args '-I', npm ERR! gyp info spawn args '/home/Magic/MagicMirror/modules/MMM-Soliscloud/node_modules/epoll/build/config.gypi', npm ERR! gyp info spawn args '-I', npm ERR! gyp info spawn args '/home/Magic/MagicMirror/modules/MMM-Soliscloud/node_modules/node-gyp/addon.gypi', npm ERR! gyp info spawn args '-I', npm ERR! gyp info spawn args '/home/Magic/.cache/node-gyp/21.6.1/include/node/common.gypi', npm ERR! gyp info spawn args '-Dlibrary=shared_library', npm ERR! gyp info spawn args '-Dvisibility=default', npm ERR! gyp info spawn args '-Dnode_root_dir=/home/Magic/.cache/node-gyp/21.6.1', npm ERR! gyp info spawn args '-Dnode_gyp_dir=/home/Magic/MagicMirror/modules/MMM-Soliscloud/node_modules/node-gyp', npm ERR! gyp info spawn args '-Dnode_lib_file=/home/Magic/.cache/node-gyp/21.6.1/<(target_arch)/node.lib', npm ERR! gyp info spawn args '-Dmodule_root_dir=/home/Magic/MagicMirror/modules/MMM-Soliscloud/node_modules/epoll', npm ERR! gyp info spawn args '-Dnode_engine=v8', npm ERR! gyp info spawn args '--depth=.', npm ERR! gyp info spawn args '--no-parallel', npm ERR! gyp info spawn args '--generator-output', npm ERR! gyp info spawn args 'build', npm ERR! gyp info spawn args '-Goutput_dir=.' npm ERR! gyp info spawn args ] npm ERR! gyp info spawn make npm ERR! gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ] npm ERR! In file included from /home/Magic/.cache/node-gyp/21.6.1/include/node/v8-array-buffer.h:12, npm ERR! from /home/Magic/.cache/node-gyp/21.6.1/include/node/v8.h:24, npm ERR! from ../src/epoll.cc:11: npm ERR! /home/Magic/.cache/node-gyp/21.6.1/include/node/v8-local-handle.h: In instantiation of ‘v8::Local<T>::Local(v8::Local<S>) [with S = v8::Data; T = v8::Value]’: npm ERR! ../../nan/nan_callbacks_12_inl.h:175:53: required from here npm ERR! /home/Magic/.cache/node-gyp/21.6.1/include/node/v8-local-handle.h:253:42: error: static assertion failed: type check npm ERR! 253 | static_assert(std::is_base_of<T, S>::value, "type check"); npm ERR! | ^~~~~ npm ERR! /home/Magic/.cache/node-gyp/21.6.1/include/node/v8-local-handle.h:253:42: note: ‘std::integral_constant<bool, false>::value’ evaluates to false npm ERR! make: *** [epoll.target.mk:110: Release/obj.target/epoll/src/epoll.o] Error 1 npm ERR! gyp ERR! build error npm ERR! gyp ERR! stack Error: `make` failed with exit code: 2 npm ERR! gyp ERR! stack at ChildProcess.onExit (/home/Magic/MagicMirror/modules/MMM-Soliscloud/node_modules/node-gyp/lib/build.js:203:23) npm ERR! gyp ERR! stack at ChildProcess.emit (node:events:519:28) npm ERR! gyp ERR! stack at ChildProcess._handle.onexit (node:internal/child_process:294:12) npm ERR! gyp ERR! System Linux 6.1.0-rpi7-rpi-v8 npm ERR! gyp ERR! command "/usr/bin/node" "/home/Magic/MagicMirror/modules/MMM-Soliscloud/node_modules/.bin/node-gyp" "rebuild" npm ERR! gyp ERR! cwd /home/Magic/MagicMirror/modules/MMM-Soliscloud/node_modules/epoll npm ERR! gyp ERR! node -v v21.6.1 npm ERR! gyp ERR! node-gyp -v v9.4.0 npm ERR! gyp ERR! not ok npm ERR! A complete log of this run can be found in: /home/Magic/.npm/_logs/2024-02-10T19_11_46_999Z-debug-0.log```
-
@Kash-0 npm install, right… not nvm
-
@sdetweil Yes, sorry! I’ll edit my original post
-
@Kash-0 Hello- 0. Well, I would suggest you to delete the existing folder (MMM-Solis Cloud if it exists) and then do a clean install in the MM Modules directory. The dependencies folder is created during NPM install in the same directory and are automatically registered ( I Guess) so there should not be any issue. Lots of my such issues with other modules were resolved by this method thanks to advice from @sdetweil .
-
@Rags just delete the node_modules folder and the npm install again
-
@sdetweil said in SolisCloud Solar PV:
just delete the node_modules folder and the npm install again
Thank you both. I deleted the folder node_modules from within the Soliscloud parent folder, then ran npm install again, but it produced the same result. I then deleted the Soliscloud folder and did a clean install of the module. Unfortunately, that also produced the same result. The biggest errors seem to be:
Failed to remove directories: There are warnings indicating that some directories could not be removed during cleanup, specifically related to the lzma-native dependency.
Error during epoll installation: The installation process encounters an error while trying to rebuild the epoll dependency.
Any and all help greatly appreciated :) - also, let me know if I should move the query to the Troubleshooting section.
-
@Kash-0 a few changes needed to the package…
try my pull request
cd to the module folder
git fetch origin pull/1/head:test_install git checkout test_install
then npm install should work
npm install
-
@sdetweil said in SolisCloud Solar PV:
git checkout test_install
Nailed it! Thank you Sam, you absolute legend :)
-
@Kash-0 this change has been accepted into the base module. so
to reset, in the module folder do
git checkout main git pull
no code change
-
Looks like a cool module - although I have 3 inverters for my setup and I see there is no way to add more than 1 currently?