{"id":797,"date":"2017-07-26T21:36:21","date_gmt":"2017-07-26T20:36:21","guid":{"rendered":"http:\/\/pjsmith.me.uk\/?p=797"},"modified":"2017-07-26T21:36:21","modified_gmt":"2017-07-26T20:36:21","slug":"growatt-shinenet-interface-to-pvoutput-org","status":"publish","type":"post","link":"https:\/\/pjsmith.me.uk\/index.php\/2017\/07\/growatt-shinenet-interface-to-pvoutput-org\/","title":{"rendered":"Growatt ShineNet &#8211; Interface to PVOutput.org"},"content":{"rendered":"<p>So I recently dabbled in some Solar Tech. As part of this project, I wanted to get a Growatt Inverter to report to <a href=\"https:\/\/pvoutput.org\">PVOutput<\/a>, BUT, I also wanted to run Growatts own ShineNet 2 software. It seems doing both can be quite difficult. There appear to be 2 solutions to get Growatt inverter data to POVoutput. One is via a java script, which has various dependencies (like Java) and I simply could not get to run. It also perhaps only runs with an older version of ShineNet (They changed to a database format in the newer versions). The other was an app that directly read from the intverter interface, but this would mean that you could no longer run ShineNet.<\/p>\n<p>So, what to do!? \u00a0As usual &#8211; Create my own&#8230; \u00a0Fortunately, PVOutput have a simple and open API. \u00a0So, 1 day later, here are the fruits of my labours<\/p>\n<p><a href=\"https:\/\/pjsmith.me.uk\/wp-content\/uploads\/2017\/07\/2017-07-26-21_05_31-WG2.5-2.450kW-_-Live-Output-Medium-1.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"803\" data-permalink=\"https:\/\/pjsmith.me.uk\/index.php\/2017\/07\/growatt-shinenet-interface-to-pvoutput-org\/2017-07-26-21_05_31-wg2-5-2-450kw-_-live-output-medium-2\/\" data-orig-file=\"https:\/\/pjsmith.me.uk\/wp-content\/uploads\/2017\/07\/2017-07-26-21_05_31-WG2.5-2.450kW-_-Live-Output-Medium-1.png\" data-orig-size=\"1366,715\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Solar output &amp;#8211; A miserable day\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/pjsmith.me.uk\/wp-content\/uploads\/2017\/07\/2017-07-26-21_05_31-WG2.5-2.450kW-_-Live-Output-Medium-1-300x157.png\" data-large-file=\"https:\/\/pjsmith.me.uk\/wp-content\/uploads\/2017\/07\/2017-07-26-21_05_31-WG2.5-2.450kW-_-Live-Output-Medium-1-1024x536.png\" class=\"alignnone wp-image-803 size-large\" src=\"https:\/\/pjsmith.me.uk\/wp-content\/uploads\/2017\/07\/2017-07-26-21_05_31-WG2.5-2.450kW-_-Live-Output-Medium-1-1024x536.png\" alt=\"\" width=\"1024\" height=\"536\" srcset=\"https:\/\/pjsmith.me.uk\/wp-content\/uploads\/2017\/07\/2017-07-26-21_05_31-WG2.5-2.450kW-_-Live-Output-Medium-1-1024x536.png 1024w, https:\/\/pjsmith.me.uk\/wp-content\/uploads\/2017\/07\/2017-07-26-21_05_31-WG2.5-2.450kW-_-Live-Output-Medium-1-600x314.png 600w, https:\/\/pjsmith.me.uk\/wp-content\/uploads\/2017\/07\/2017-07-26-21_05_31-WG2.5-2.450kW-_-Live-Output-Medium-1-300x157.png 300w, https:\/\/pjsmith.me.uk\/wp-content\/uploads\/2017\/07\/2017-07-26-21_05_31-WG2.5-2.450kW-_-Live-Output-Medium-1-768x402.png 768w, https:\/\/pjsmith.me.uk\/wp-content\/uploads\/2017\/07\/2017-07-26-21_05_31-WG2.5-2.450kW-_-Live-Output-Medium-1.png 1366w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/p>\n<p>A pretty miserable day for solar generation, but hey, it&#8217;s working&#8230;<\/p>\n<p>If you&#8217;d like to do the same I have made available my software below. It&#8217;s very simple. There is no install. Just extract the zip to a folder of your choice (program files x86 probably a good choice) and edit the &#8216;ShineToPVO.exe.config&#8217; file. \u00a0The bits you&#8217;ll need to edit I have highlighted in bold below<\/p>\n<p>&lt;ShineToPVO.My.MySettings&gt;<br \/>\n&lt;setting name=&#8221;LogFolder&#8221; serializeAs=&#8221;String&#8221;&gt;<br \/>\n&lt;value&gt;<strong>Path to your shinenet data folder, i.e. InverterData\\<\/strong>&lt;\/value&gt;<br \/>\n&lt;\/setting&gt;<br \/>\n&lt;setting name=&#8221;PVO_APIKey&#8221; serializeAs=&#8221;String&#8221;&gt;<br \/>\n&lt;value&gt;<strong>Your POVOutput read\/write key<\/strong>&lt;\/value&gt;<br \/>\n&lt;\/setting&gt;<br \/>\n&lt;setting name=&#8221;PVO_SystemId&#8221; serializeAs=&#8221;String&#8221;&gt;<br \/>\n&lt;value&gt;<strong>You PVOutput system ID<\/strong>&lt;\/value&gt;<br \/>\n&lt;\/setting&gt;<br \/>\n&lt;setting name=&#8221;PVO_ServiceURL&#8221; serializeAs=&#8221;String&#8221;&gt;<br \/>\n&lt;value&gt;https:\/\/pvoutput.org\/service\/r2\/addstatus.jsp&lt;\/value&gt;<br \/>\n&lt;\/setting&gt;<br \/>\n&lt;setting name=&#8221;WriteResultToFile&#8221; serializeAs=&#8221;String&#8221;&gt;<br \/>\n&lt;value&gt;solardata.csv&lt;\/value&gt;<br \/>\n&lt;\/setting&gt;<br \/>\n&lt;\/ShineToPVO.My.MySettings&gt;<\/p>\n<p>Now, this is a windows service, so you&#8217;ll need to install it as such. \u00a0You do this in .Net with the &#8216;installutil.exe&#8217; tool. You&#8217;ll need to find where this is on your computer. Probably something like &#8216;c:\\windows\\Microsoft.NET\\Framework\\v4.0.30319\\&#8217;. Make sure you use the &#8216;Framework&#8217; version, not &#8216;Framework64&#8217;. This is compiled for all processors, not 64bit only. Once you locate your installutil, you open a command prompt (as administrator), change to the folder you extracted the files to and run a command like the following<\/p>\n<p>c:\\windows\\Microsoft.NET\\Framework\\v4.0.30319\\installutil.exe ShineToPVO.exe<\/p>\n<p>You should get asked for a user account you want to use to run the service as. You&#8217;ll likely need to enter this as computername\\username, then your password. This is stored on your computer only &#8211; the app has not access to it. It&#8217;s just windows asking for it. \u00a0If at the end of the command you get the sucess message, you are set! \u00a0Well, almost. You probably want to go into &#8216;services&#8217; and make sure the service is set to auto start.<\/p>\n<p>There&#8217;s no output from the app at all. If you got your config file correct and the paths to the ShineNetapp etc. are all good, PVOutput should start showing data for your inverter in a few minutes. \u00a0The app is configured to work with 5 minut outputs. If monitors the inverter and takes readings as they occur which is normally about every 5\/10 seconds with ShineNet. These readings are all taken, averaged, then sent to PVOtput as 5 minutes intervals (they do not allow logging at higher resolution). The app uploads for as long as the inverter is running and generating data. Once the inverter goes to sleep, like overnight, the app stops reporting. It will automatically start again once the inverter wakes up.<\/p>\n<p><strong>Download<\/strong><\/p>\n<p>You can download the latest version of the service\u00a0<a href=\"\/downloads\/ShineToPVO.zip\">here<\/a>\u00a0(Windows, .Net4 (4.6) only)<\/p>\n<p>As usual, let me know below if any issues and I will try to resolve, time permitting.<\/p>\n<p><strong>Donate<\/strong><\/p>\n<p>The software is free for non-commercial use but if you find it useful and wish to donate beer money, you can do so Via Bitcoin or PayPal. Any amount (no matter how small) will give you a warm fuzzy feeling and help me keep the power on. Be fair, just donate what you think is right. Thank you.<\/p>\n<p>Bitcoin to\u00a0<span class=\"highlighted\">\u00a0<span class=\"ng-binding\">1PsQP6ECsevKRck4NPNJ3ZLnGaSJLxNyUT<\/span><\/span><\/p>\n<p>PayPal to pjs DOT guernsey AT gmail DOT com<\/p>\n<p>Commercial arrangements and custom versions are available if you wish to re-distribute or use for commercial purposes.\u00a0 Please do not redistribute this, but feel free to link to it here.<\/p>\n<p>At the very least, if you liked this or found it useful, please let me know in the comments section below or give it a like\/share above. Thanks!<\/p>\n<p><strong>Contact me<\/strong><\/p>\n<p>You can view my linkedin\u00a0<a href=\"https:\/\/www.linkedin.com\/in\/pauljsmith2\">here<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>So I recently dabbled in some Solar Tech. As part of this project, I wanted to get a Growatt Inverter to report to PVOutput, BUT, I also wanted to run&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[25,5],"tags":[53,54,4],"class_list":{"0":"post-797","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-home-automation","7":"category-tech","8":"tag-growatt","9":"tag-pvoutput","10":"tag-solar"},"jetpack_featured_media_url":"","jetpack-related-posts":[],"jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/pjsmith.me.uk\/index.php\/wp-json\/wp\/v2\/posts\/797","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pjsmith.me.uk\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/pjsmith.me.uk\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/pjsmith.me.uk\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/pjsmith.me.uk\/index.php\/wp-json\/wp\/v2\/comments?post=797"}],"version-history":[{"count":0,"href":"https:\/\/pjsmith.me.uk\/index.php\/wp-json\/wp\/v2\/posts\/797\/revisions"}],"wp:attachment":[{"href":"https:\/\/pjsmith.me.uk\/index.php\/wp-json\/wp\/v2\/media?parent=797"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/pjsmith.me.uk\/index.php\/wp-json\/wp\/v2\/categories?post=797"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/pjsmith.me.uk\/index.php\/wp-json\/wp\/v2\/tags?post=797"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}