{"_id":"@devalexdom/victron-vedirect-pnp","_rev":"6-a0ba08824d636adeb506bbb08e222227","name":"@devalexdom/victron-vedirect-pnp","dist-tags":{"latest":"0.1.0"},"versions":{"0.0.1":{"name":"@devalexdom/victron-vedirect-pnp","version":"0.0.1","description":"A plug and play way to easily read data from your connected Victron VE.Direct devices","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"rollup -c","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/devalexdom/nodejs-vedirect-pnp/tree/master"},"keywords":["victron","vedirect","mppt","bmv","inverter","raspberry","linux","nodejs"],"author":{"name":"Àlex Domínguez"},"license":"MIT","bugs":{"url":"https://github.com/devalexdom/nodejs-vedirect-pnp/issues"},"homepage":"https://github.com/devalexdom/nodejs-vedirect-pnp#readme","dependencies":{"@serialport/parser-readline":"^9.2.4","@types/node":"^17.0.10","@types/serialport":"^8.0.2","serialport":"^9.2.8","stream":"0.0.2","typescript":"^4.3.5"},"devDependencies":{"@babel/core":"^7.14.8","@rollup/plugin-babel":"^5.3.0","@rollup/plugin-commonjs":"^20.0.0","rollup":"^2.55.1","rollup-plugin-babel":"^4.4.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.31.1"},"gitHead":"650e71b76ed0abca155b5314de1f3b9c9176378f","_id":"@devalexdom/victron-vedirect-pnp@0.0.1","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-lG0Q4WXJTnU/0q06WSNS0GIL9sRp1vgigEHKgWc+RMM8Q1Fm1UMvTutx28HkYMaL/DNxXcEJqy7/vmGNBaEk5A==","shasum":"6ae226ab15d77763f9206316328f8ec0a1e0cdf3","tarball":"https://registry.npmjs.org/@devalexdom/victron-vedirect-pnp/-/victron-vedirect-pnp-0.0.1.tgz","fileCount":7,"unpackedSize":14446,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh7dMjCRA9TVsSAnZWagAAbKAP/3cFqqMmRZ+JmX3Uacgn\nfi4yz+d1rqDogyeTN/OmPaiHNqrI4sOtb7P7IDRpQYwdwpLPyyoGfaCTuOA/\nOqM+gZISndYCSC/wVZm5O7QOoq+Elg3OdzGmM3phJI5X3n4L/EpcdmHpFN7V\nXS0CjCLvyQf1uE84DzbSK2dkfmheIuL3/idYATTCKHtnEMrbYFg7zb6t+R+m\nw6o7V9tfe3oPbh92gBkyE117LdzCMgzRtcme/nCwRLvy8wPK46Beu2R0xoPL\n8CmPKAdRjKUXHeig86mHysckquF+wF4nD1K79kD6gGkHZreM7nSbVXm3IbF0\n2zeQareff9IlGeJRsRfi2bFbIQozcywK3expcq/GFglrIIstN8oP5jZXTuuz\npsOaiejsIUeIeEgCWhe/j4mSR9y4ZHteEoRZUnuWMIjBQthT6bb8bhUTE956\nte4iHX9h8mgU0N0DZLANndwxseeMvFLN9TA+HJLYxy/3sTnGWEju+b1Zwj+n\n/MjrcqMGiWXN1gD5p2ZEqBD4Ia3r+dC7Wzxh0hAChgGRVfAZ6et1Hl7LhNMQ\nuYcKiZNoxW5vuJXWvXBD6IuUGTnAXxdZ88i4/crCeQ6q8j+OFgJWEai02tHV\nEMiWlw11QggkUecKNaCYvTOCwvgKzJVfBFLPXu4TO7aXeohVtVqQc39gKQ3W\n9TTx\r\n=8sjN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAczw4JNtjCjbYRJk6LBrh8tZZnzptdYYja/hQB6FCIFAiAmJX4+eMybmUPpxMK3ld9yMweOnhz5oS+9xXpdrbUnhA=="}]},"_npmUser":{"name":"devalexdom","email":"devalexdom@gmail.com"},"directories":{},"maintainers":[{"name":"devalexdom","email":"devalexdom@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/victron-vedirect-pnp_0.0.1_1642976035160_0.3874257037799398"},"_hasShrinkwrap":false},"0.0.2":{"name":"@devalexdom/victron-vedirect-pnp","version":"0.0.2","description":"A plug and play way to easily read data from your connected Victron VE.Direct devices","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"rollup -c","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/devalexdom/nodejs-vedirect-pnp/tree/master"},"keywords":["victron","vedirect","mppt","bmv","inverter","raspberry","linux","nodejs"],"author":{"name":"Àlex Domínguez"},"license":"MIT","bugs":{"url":"https://github.com/devalexdom/nodejs-vedirect-pnp/issues"},"homepage":"https://github.com/devalexdom/nodejs-vedirect-pnp#readme","dependencies":{"@serialport/parser-readline":"^9.2.4","@types/node":"^17.0.10","@types/serialport":"^8.0.2","serialport":"^9.2.8","stream":"0.0.2","typescript":"^4.3.5"},"devDependencies":{"@babel/core":"^7.14.8","@rollup/plugin-babel":"^5.3.0","@rollup/plugin-commonjs":"^20.0.0","rollup":"^2.55.1","rollup-plugin-babel":"^4.4.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.31.1"},"gitHead":"650e71b76ed0abca155b5314de1f3b9c9176378f","_id":"@devalexdom/victron-vedirect-pnp@0.0.2","_nodeVersion":"12.22.7","_npmVersion":"6.14.15","dist":{"integrity":"sha512-FV6T9110Y4FDBHb5nFxBKheiSKPLAQKeRkCVpu5Bz3gG+U3lK/gIjJJlL4PETOMlJLk3p8h9PYHwidJV004sjw==","shasum":"2aeab148e20972dbb3571fc36b471278b440e92b","tarball":"https://registry.npmjs.org/@devalexdom/victron-vedirect-pnp/-/victron-vedirect-pnp-0.0.2.tgz","fileCount":7,"unpackedSize":18187,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh7e0rCRA9TVsSAnZWagAA8hIQAI+xypmziLc4AMxvrluX\nrUlSscC2cVeiDybqnC5pj+PFHYAH3DBrU7G8wiDYJiqgkQsOizTQ95XEZoDe\naRyT6slALhxAsNleBOVjKYsAQPp12WuVRAEdK7Nep7MXWrqcaDm+YUZYYS0u\nFP8BIEMEin6kINPlTyzkkD36SsHHU6ybdnt/4tUCrmH/bkzrt5SpF28VTAlc\nn6Odz60drEKgiEhcjFCApwYVLf96i7Af9fXlqoeOpMnD61urKZXBz7XkzN29\nUbVkjUogYAAn7KGko4UF0CtrxNZ55pT8Ls20T5GMmKUgZw62FcEcJbSunRTP\nsxjS62IMxmvcJIgSlugKQBBCJzG8fEX+JgJiy+606Yf2g4KqjpwjGLvpR1ER\nmJn8eUuJH/NIt1LmeL5jbehnPL5KfwAskwEy/0t+uYihjB303ERF/8xoigxy\n+PuNvbfxTDIs6TqYgP6hi7vAXC53qPqoUG/DvLE7G0SmuK0SJUjbBjugV9RT\nwauKrj7DBwO9knsfoaADkaDFK13sm9n03u1/g1bufyHuSqEiUFYDgCIy7UB4\nq64vIL1BT3TJk5Kf+idkhngof+uUzWYqAn/45FUKpQjsTafe2af0FOUI7xja\nl1n328xV3v+uEcnE7RAXJK9uabC89OZrUch9EBF6ChsuCEegUfbQTIQ+PKLP\nHL5C\r\n=yyJx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEaeIJb6EfKIIbdMBJ5Fq5DDL+/xZDWZVcdGu8NGYCtzAiAFZSwFmXwC1mGw5R/fPVcYrP/o5iAjPCJfK8fyccWb/g=="}]},"_npmUser":{"name":"devalexdom","email":"devalexdom@gmail.com"},"directories":{},"maintainers":[{"name":"devalexdom","email":"devalexdom@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/victron-vedirect-pnp_0.0.2_1642982699388_0.5672080731171483"},"_hasShrinkwrap":false},"0.0.3":{"name":"@devalexdom/victron-vedirect-pnp","version":"0.0.3","description":"A plug and play way to easily read data from your connected Victron VE.Direct devices","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"rollup -c","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/devalexdom/nodejs-vedirect-pnp.git#master"},"keywords":["victron","vedirect","mppt","bmv","inverter","raspberry","linux","nodejs"],"author":{"name":"Àlex Domínguez"},"license":"MIT","bugs":{"url":"https://github.com/devalexdom/nodejs-vedirect-pnp/issues"},"homepage":"https://github.com/devalexdom/nodejs-vedirect-pnp#readme","dependencies":{"@serialport/parser-readline":"^9.2.4","@types/node":"^17.0.10","@types/serialport":"^8.0.2","serialport":"^9.2.8","typescript":"^4.3.5"},"devDependencies":{"@babel/core":"^7.14.8","@rollup/plugin-babel":"^5.3.0","rollup":"^2.55.1","rollup-plugin-typescript2":"^0.31.1"},"gitHead":"c8e39c4651f5ad085c169469d8a95042895f8bcb","_id":"@devalexdom/victron-vedirect-pnp@0.0.3","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-6dRgcltXflhYxXjyo00Dp3KntuU7R2+ICitl7p1/36nsEAdtt0U2u3SmW2fSnAax3T3f//F3tii1DIoLW5twqg==","shasum":"4c88da8b19c07f0bc499618cfdb048625d2cf043","tarball":"https://registry.npmjs.org/@devalexdom/victron-vedirect-pnp/-/victron-vedirect-pnp-0.0.3.tgz","fileCount":11,"unpackedSize":28557,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh7yX3CRA9TVsSAnZWagAAFR4P/irTuScWajupIM8KN/zQ\nBMcdprjU+25q3Mq38aKEfR7651NsMOSDCGsiCNoTolFAcal1bBHY9Ob1F5ui\nYo1FIdKkEyWmoBpw7wGrDEmD/UqOpWnpgO3X6twQNhHwoni3pXmLvIHRrJ3Y\n367DGIAt1xF1eqp1eBf2rW+Qy9+XqWnj36AeK0/aQA05LUb8m+zqQNLhH6go\ncrxoG9UHlnR5/F47o3pg6GFwtN4fGP5I8J6I++QpDFZjcxCCrVOb/ouaZO3y\nt6gnKcdA4WhWI4+6bcTwawoVKLy+PEggiXF155J1J4LLxJ4eAhC0etMekCda\nBWTmD0GONf3EmPJd9fDTWItLMo5WdPpderOzgQKbGvDK6tv59Eh0Nrljledo\n+4T4peaXNeGendUpDoa30SY4Uy79ChlYWRI9UxnbAr4X1Us9lLrTtNSKapIA\nSYCycTOfjXfYvHmL/H8MJBb8t5aYeAfHgT0u4zOmVzDv51XCI1S5YfYnvHzv\nYqMN/HK0YBwRQzHrCAKUvNTu8yb3rxPpVxD8tLAXN4GjnYB3aCemBSJW+hJy\nxhw4/9rBIh4+T7p8cH0lgAj1EI/9+uG7nLw/MaImH9PlO/RjYzXjFefyNks1\nq5o2IwMSSDS8hJMgc6/CFF3WkCSy6jFguJg8sGQOLgIqapdbzusmTPWhpCJr\nBJ/k\r\n=scft\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC7ZD63L5myJ4cUhCpO6rmLJq1WTGIPKdffLxv2p/kMIAIhAJnLSUdNFL8X88Z6q9oGo61NgSav8ScoOILCtxp7nkG8"}]},"_npmUser":{"name":"devalexdom","email":"devalexdom@gmail.com"},"directories":{},"maintainers":[{"name":"devalexdom","email":"devalexdom@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/victron-vedirect-pnp_0.0.3_1643062775441_0.29159551009970874"},"_hasShrinkwrap":false},"0.0.5":{"name":"@devalexdom/victron-vedirect-pnp","version":"0.0.5","description":"A plug and play way to easily read data from your connected Victron VE.Direct devices","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"rollup -c","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/devalexdom/nodejs-vedirect-pnp.git#master"},"keywords":["victron","vedirect","mppt","bmv","inverter","raspberry","linux","nodejs"],"author":{"name":"Àlex Domínguez"},"license":"MIT","bugs":{"url":"https://github.com/devalexdom/nodejs-vedirect-pnp/issues"},"homepage":"https://github.com/devalexdom/nodejs-vedirect-pnp#readme","dependencies":{"@serialport/parser-readline":"^9.2.4","@types/node":"^17.0.10","@types/serialport":"^8.0.2","serialport":"^9.2.8","typescript":"^4.3.5"},"devDependencies":{"@babel/core":"^7.14.8","@rollup/plugin-babel":"^5.3.0","rollup":"^2.55.1","rollup-plugin-typescript2":"^0.31.1"},"gitHead":"f384c21143e21dc213e7ce9da77fbf374e8e4664","_id":"@devalexdom/victron-vedirect-pnp@0.0.5","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-EkZa2dyPgTINQ/30GdSpHqUhBFlpM1QJLSS7ReV3iOamwnNG2/dQHRGkIqjIKOcz/jMs4vhJ6f7ZCHCMPTYqEA==","shasum":"4bed23652fa7176d84fd2e3ed48826d1a2bc51ff","tarball":"https://registry.npmjs.org/@devalexdom/victron-vedirect-pnp/-/victron-vedirect-pnp-0.0.5.tgz","fileCount":11,"unpackedSize":34242,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh8I0UCRA9TVsSAnZWagAAh+0P/2516YWlEz4wEGGJTlEc\nBasNdGvy2kEyFIiHp15CaD7i/+dbFQfCmlo5ZVFok1Bn4CfaacEvkCeuOfzi\nbrU/yO4IoF2DDx0cO6svtykjQ4AnvLvBdbAX6S0wLOZ/FUJDtmC2nF76DxFj\nHHUpbG75R83+9dWD5Jy7uVrmxZiiar4snVXaSzSOhTV9GpVh+jX0JkPUuRy5\nIQEmdOEFAXMbBhtHcKwXIlW7nBaldLwzJsBu+N96tZ6ideczIbvXPNw8ji3L\nxp1A2yRQkFQZxtPuJelTdHt+tznjTyeP269PEWfJrfAztcjstkzdtAv4fGV6\nc8rfdcj86ojASTwTiipcAA8rCVKYol2y883Mi9brhx9JAd2l87vpfHO+Xqf0\n95/3dsS8JyPLJYclS1am1GABzm6kMUYOHy4gxSRRMVJ2Xmv00ap5JpdEShwZ\nlltXPxfXDHqvy0ZeFJKZ2dZFRs3jFoXfXbkSu3y7lc9rWdAoIPO02eSe/xYB\njf26CYNaNqvaSmt7wzDKZpQXNpdk4P+IdEoX4B16kQ3K+5Kr7Rl2+HiZdZ89\nTfMebnFWlSDl2OpM9oX0g1TQBHvpgkniNiPeswEvtAF7clRfMUyOztPP+xTq\nIQZy3+mhIS4zT8fNh8aCNmbZeOHk8bWfRwsPK5iz+MbR+CHkkShJ++J1s94Y\nafmP\r\n=iSqr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDGum18seamlPvxi4mtjLjAQoTK7d3D8VQlADlp5XpXuAIhALjYFZWWoocC0r6WZopsE9YhJ638M1bZz1OCZdymszk/"}]},"_npmUser":{"name":"devalexdom","email":"devalexdom@gmail.com"},"directories":{},"maintainers":[{"name":"devalexdom","email":"devalexdom@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/victron-vedirect-pnp_0.0.5_1643154708494_0.6168043461216177"},"_hasShrinkwrap":false},"0.0.6":{"name":"@devalexdom/victron-vedirect-pnp","version":"0.0.6","description":"A plug and play way to easily read data from your connected Victron VE.Direct devices","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"rollup -c","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/devalexdom/nodejs-vedirect-pnp.git#master"},"keywords":["victron","vedirect","mppt","bmv","inverter","raspberry","linux","nodejs"],"author":{"name":"Àlex Domínguez"},"license":"MIT","bugs":{"url":"https://github.com/devalexdom/nodejs-vedirect-pnp/issues"},"homepage":"https://github.com/devalexdom/nodejs-vedirect-pnp#readme","dependencies":{"@serialport/parser-readline":"^9.2.4","@types/node":"^17.0.10","@types/serialport":"^8.0.2","serialport":"^9.2.8","typescript":"^4.3.5"},"devDependencies":{"@babel/core":"^7.14.8","@rollup/plugin-babel":"^5.3.0","rollup":"^2.55.1","rollup-plugin-typescript2":"^0.31.1"},"gitHead":"a4dd04b45b60493e357773d0e3a29689af7f1e56","_id":"@devalexdom/victron-vedirect-pnp@0.0.6","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-XkgBZqU5uCr4KeViw9u5VNiSlce6bquZwrO58OEbVjHJd+A5x7fE9dj1/V6OXOlsnA5IYLXZJDPcwXKD76yLmg==","shasum":"a94f41ee876ac1bc9a6aa28796018a98a1b5dd11","tarball":"https://registry.npmjs.org/@devalexdom/victron-vedirect-pnp/-/victron-vedirect-pnp-0.0.6.tgz","fileCount":11,"unpackedSize":35673,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh8UZcCRA9TVsSAnZWagAASJoQAIMqebWB0Fnt/yXWf6l1\nuPfRReH2Slwlh9hQ61zqYG8970MwmEWoB/ij5EnMXIgRBTf7ep87wefTiB05\nhdk4vCpaHQqfY4Ei0A7wWEYDBodUui0HW5VY4wwbPfVi0+R6DsE4GVEEl4uJ\n+M4fuEb0oGwyq74aAXBW2MKltCRsiWmPs/iKiJglhNTLEZidXDDnNgYyUuHF\nIeddLZmDr3Uj/zcTo0sZGhuSUTPz0dVObmA0oSgbcfkQlfTCU7Qoh+0MlLY1\n471UsT29Pyfb1XMN4OgfNO1eY23aOWOc77WqKdoFNtTuoNrWKyhp1P/X3QLH\nzezGPvwhFafC+5Pwxr3WthONj36tnf1oCuwOYwdHEnGk1uOUQX+PVgQ0CVmH\n5LFA5QJ9oVASz1RlACPJKprcP98pUXyOcPSYodTSAoYcLbogfg1/PRBbozIU\nR2td5AxmI1w5exSxHXtfL3lbLspDDDUbtLwq8nUYZoDW3G/tiIe7PYGiMB29\n6Y6FLxvBp6v/HJQDNsmth2RdEqeiIIEwkFK12hOxl32zlELoljSaEFSkQMDw\nioXGjpYbJuBoOQpcDUZpJo0N4pNfN+N42t6Db/pasmV3q9MSvOdqxq0MR5/p\ny2kjjB2KcaDKICmrDGnxXqkdMnhKi+G5o05yZMtEDU210mYkXnt3jwCWy4cY\nL70H\r\n=nBBW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDbXwHAAMY8m0MN2Cx/0s4Q5s9ifoOVv/LaqrxzOx1pqwIgSSQ0szfADduXE0plVuHShiAkwtXeTfv8FEM2vrMq0Tg="}]},"_npmUser":{"name":"devalexdom","email":"devalexdom@gmail.com"},"directories":{},"maintainers":[{"name":"devalexdom","email":"devalexdom@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/victron-vedirect-pnp_0.0.6_1643202140824_0.705249775094658"},"_hasShrinkwrap":false},"0.1.0":{"name":"@devalexdom/victron-vedirect-pnp","version":"0.1.0","description":"A plug and play way to easily read data from your connected Victron VE.Direct devices","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"rollup -c","prepublishOnly":"npm run build"},"repository":{"type":"git","url":"git+https://github.com/devalexdom/nodejs-vedirect-pnp.git#master"},"keywords":["victron","vedirect","mppt","bmv","inverter","raspberry","linux","nodejs"],"author":{"name":"Àlex Domínguez"},"license":"MIT","bugs":{"url":"https://github.com/devalexdom/nodejs-vedirect-pnp/issues"},"homepage":"https://github.com/devalexdom/nodejs-vedirect-pnp#readme","dependencies":{"@serialport/parser-readline":"^9.2.4","@types/node":"^17.0.10","@types/serialport":"^8.0.2","serialport":"^9.2.8","typescript":"^4.3.5"},"devDependencies":{"@babel/core":"^7.14.8","@rollup/plugin-babel":"^5.3.0","rollup":"^2.55.1","rollup-plugin-typescript2":"^0.31.1"},"gitHead":"9ebbfd085963bd81abe9275359aaca28604c6f31","_id":"@devalexdom/victron-vedirect-pnp@0.1.0","_nodeVersion":"16.18.0","_npmVersion":"8.19.2","dist":{"integrity":"sha512-eTZSOcnlwPG2HN2IXum9+6Tvg/1fHrntXvHeCTG7CjPD05trv9I5teIFXkTfFxRzIc+5kBewPjL24E0q0GsUpQ==","shasum":"141f883fb65f6896388861645802d5abb920b8ba","tarball":"https://registry.npmjs.org/@devalexdom/victron-vedirect-pnp/-/victron-vedirect-pnp-0.1.0.tgz","fileCount":11,"unpackedSize":42521,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGR00XQrfD3mTtaUPMmrEAa6ErbBksHlX2D9GnINs9XXAiAnj2USUyp+N25pYFjqxXQy+ZWYHkYqp+ea5rHK/fTtkg=="}]},"_npmUser":{"name":"devalexdom","email":"devalexdom@gmail.com"},"directories":{},"maintainers":[{"name":"devalexdom","email":"devalexdom@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/victron-vedirect-pnp_0.1.0_1697552168005_0.33277080556022076"},"_hasShrinkwrap":false}},"time":{"created":"2022-01-23T22:13:55.109Z","0.0.1":"2022-01-23T22:13:55.326Z","modified":"2023-10-17T14:16:08.492Z","0.0.2":"2022-01-24T00:04:59.513Z","0.0.3":"2022-01-24T22:19:35.574Z","0.0.5":"2022-01-25T23:51:48.641Z","0.0.6":"2022-01-26T13:02:20.975Z","0.1.0":"2023-10-17T14:16:08.309Z"},"maintainers":[{"name":"devalexdom","email":"devalexdom@gmail.com"}],"description":"A plug and play way to easily read data from your connected Victron VE.Direct devices","homepage":"https://github.com/devalexdom/nodejs-vedirect-pnp#readme","keywords":["victron","vedirect","mppt","bmv","inverter","raspberry","linux","nodejs"],"repository":{"type":"git","url":"git+https://github.com/devalexdom/nodejs-vedirect-pnp.git#master"},"author":{"name":"Àlex Domínguez"},"bugs":{"url":"https://github.com/devalexdom/nodejs-vedirect-pnp/issues"},"license":"MIT","readme":"# victron-vedirect-pnp\nA plug and play way to easily read data from your connected Victron VE.Direct devices\n\n## Changelog\n```\n0.0.6: [Feature]\n--Added all methods, constructor parameters and events documentation on README.md\n-\n0.0.5: [Feature breaking changes!] \n--Improved events naming, types and listener\n--Implement reset functionality\n--Implement custom VE.Direct devices paths constructor parameter\n-\n0.0.4: [Hotfix]\n--Fixes incorrect identification of VE.Direct serial port interfaces\n```\n\n## Usage\n1. Connect your Victron device using the VE.Direct USB interface to your Raspberry or Linux x86-64 based computer\n\n2. `npm i @devalexdom/victron-vedirect-pnp`\n\n3. Run:\n```javascript\nconst VEDirectPnP = require(\"@devalexdom/victron-vedirect-pnp\");\nconst dataReader = new VEDirectPnP();\ndataReader.on(\"stream-init\", () => {\n  console.log(dataReader.getDevicesData());\n  /*{\n    \"HQ21340EFYE\": {\n        \"deviceName\": \"SmartSolar MPPT 100|50\",\n        \"deviceSN\": \"HQ21340EFYE\",\n        \"deviceType\": \"MPPT\",\n        \"deviceFirmwareVersion\": 1.59,\n        \"batteryVoltage\": 28.32,\n        \"batteryCurrent\": 21.2,\n        \"statusMessage\": \"Absorption\",\n        \"errorMessage\": \"\",\n        \"mpptMessage\": \"Voltage or current limited\",\n        \"maximumPowerToday\": 909,\n        \"maximumPowerYesterday\": 835,\n        \"totalEnergyProduced\": 130.4,\n        \"energyProducedToday\": 1.98,\n        \"energyProducedYesterday\": 3.55,\n        \"photovoltaicPower\": 608,\n        \"photovoltaicVoltage\": 37.32,\n        \"photovoltaicCurrent\": 16.291532690246516,\n        ...\n    */\n});\n```\n\n4. And start making great green things 🌱🌍!\n\n---\n---\n---\n\n## A more detailed usage\n\n```javascript\nconst VEDirectPnP = require(\"@devalexdom/victron-vedirect-pnp\");\nconst dataReader = new VEDirectPnP({ veDirectDevicesPath: \"/dev/serial/by-id/\" }); //Optional parameter to set the directory path of the VE.Direct USB interfaces\ndataReader.on(\"stream-init\", () => {\n        const allDevicesData = dataReader.getDevicesData();\n        console.log(allDevicesData[\"HQ21340EFYE\"]);\n        /* If your device serial number is HQ21340EFYE the expected output will be:\n        {\n            deviceName: 'SmartSolar MPPT 100|50',\n            deviceSN: 'HQ21340EFYE',\n            deviceType: 'MPPT',\n            deviceFirmwareVersion: 1.59,\n            batteryVoltage: 25.49, //Volts\n            batteryCurrent: 0, //Amps\n            statusMessage: 'Off',\n            errorMessage: '',\n            mpptMessage: 'Off',\n            maximumPowerToday: 835, //Watts\n            maximumPowerYesterday: 837, //Watts\n            totalEnergyProduced: 128.42, //kWh\n            energyProducedToday: 3.55, //kWh\n            energyProducedYesterday: 3.63, //kWh\n            photovoltaicPower: 0, //Watts\n            photovoltaicVoltage: 0.82, //Volts\n            photovoltaicCurrent: 0, //Amps\n            loadCurrent: 0, //Amps\n            loadOutputState: true,\n            relayState: false,\n            offReasonMessage: 'No input power',\n            daySequenceNumber: 142,\n            VEDirectData: {\n                PID: 41047,\n                FW: 159,\n                'SER#': 'HQ21340EFYE',\n                V: 25490,\n                I: 0,\n                VPV: 820,\n                PPV: 0,\n                CS: 0,\n                MPPT: 0,\n                OR: 1,\n                ERR: 0,\n                LOAD: 'ON',\n                H19: 12842,\n                H20: 355,\n                H21: 835,\n                H22: 363,\n                H23: 837,\n                HSDS: 142,\n                dataTimeStamp: 1643058077196\n            }\n        }\n        */\n    }, 1000);\n})\n\n//Handling errors\ndataReader.on(\"error\", (error) => {\n    console.error(error);\n})\n```\n\n## Constructor parameters\n### Optional VEDirectDevicesPath?: string\nBy default \"/dev/serial/by-id/\", the path where the VE.Direct interfaces will be searched\n### Optional customVEDirectDevicesPaths?: Array<string>\nManually sets the VE.Direct interfaces paths\n```javascript\nnew VEDirectPnP({\n    veDirectDevicesPath: \"/dev/serial/by-id/\", \n    customVEDirectDevicesPaths: [\"/dev/serial/by-id/usb-VictronEnergy_BV_VE_Direct_cable_VE83Y8X8-if00-port0\"]\n});\n```\n\n## Methods\n### getDevicesData():{ [key: string]: IVEDirectPnP_DeviceData }\nReturns a key -> value, the key is the serial number of the Victron device, value the processed stream data\n```javascript\nconst dataReader = new VEDirectPnP();\ndataReader.on(\"interface-found\", (eventData) => {\n    /*\n    eventData: IVEDirectPnP_EventData\n    {\n        message: string;\n        dataDump: any;\n        eventName: string;\n    }\n    */\n})\n```\n### on(eventName:string, callback:eventData):void\nListen to VEDirectPnP events\n```javascript\nconst dataReader = new VEDirectPnP();\ndataReader.on(\"interface-found\", (eventData) => {\n    /*\n    eventData: IVEDirectPnP_EventData\n    {\n        message: string;\n        dataDump: any;\n        eventName: string;\n    }\n    */\n})\n```\nWith the \"all\" wildcard the listener will fire with all events\n```javascript\nconst dataReader = new VEDirectPnP();\ndataReader.on(\"all\", console.log);\n/*\n{\n  message: 'Found VE.Direct serial port interface',\n  dataDump: '/dev/serial/by-id/usb-VictronEnergy_BV_VE_Direct_cable_VE83Y8X8-if00-port0',\n  eventName: 'interface-found'\n}\n{\n  message: 'VE.Direct device connected through serial port',\n  dataDump: '/dev/serial/by-id/usb-VictronEnergy_BV_VE_Direct_cable_VE83Y8X8-if00-port0',\n  eventName: 'device-connection-open'\n}\n{\n  message: 'VE.Direct devices data stream init',\n  eventName: 'stream-init'\n}\n\n*/\n```\n### destroy(callback:void):void\nDestroys the data stream from VE.Direct devices\n```javascript\nconst dataReader = new VEDirectPnP();\ndataReader.destroy(()=>{\n    //callback when data stream is destroyed (All serial ports connection closed)\n});\n```\n### reset():void\nResets the data stream from VE.Direct devices\n```javascript\nconst dataReader = new VEDirectPnP();\ndataReader.reset(); //Be aware that the event \"stream-init\" will be emitted again\n```\n### clean():void\nCleans the cached data from VE.Direct devices stream\n```javascript\nconst dataReader = new VEDirectPnP();\ndataReader.reset();\n```\n### init():void\nInitializes the data stream from VE.Direct devices\n```javascript\nconst dataReader = new VEDirectPnP();\ndataReader.init(); //Initializes data stream from VE.Direct devices (Called on VEDirectPnP constructor)\n```\n## Events\n### stream-init\nEmitted when the VE.Direct devices starts sending data through serial port\n### stream-destroy\nEmitted when the VE.Direct devices stream has been destroyed (All serial ports connection closed)\n### error\nEmitted when a critical error occurs with a (hopelly) helpful message\n### interface-found\nEmitted when a VE.Direct interface is automatically detected (The plug and play way)\n### device-connection-open\nEmitted when a connection to the VE.Direct device is opened\n### device-connection-error\nEmitted when a connection to the VE.Direct device suffers an error\n```javascript\nconst dataReader = new VEDirectPnP();\ndataReader.on(\"device-connection-error\", () => {\n    setTimeout(() => {\n        dataReader.reset();\n    }, 5000);\n});//Example to reestablish a lost connection, it's not tested but should do the trick ;)\n```\n\n## Pending things to code\n\n1. Victron Phoenix Inverters data mapping\n2. Victron BMV data mapping\n3. Victron Phoenix Charger data mapping\n4. Kill the bugs\n\n## Related\nVE.Direct protocol 3.29 [documentation](docs/victron_energy_VE.Direct-Protocol-3.29.pdf).\n\n## Credits\nVE.Direct parser using Stream interface [@bencevans/ve.direct](https://github.com/bencevans/ve.direct).\n","readmeFilename":"README.md"}