New binding available: SolarEdge binding

My next step is to get the non-legacy mode running.
After adding a smartmeter to my inverter, my dashboard on the SE Webinterface looks like this:

The measured values are perfectly fine, peaks are caused by a heat pump.
Note: On browser reload, the “Monat” tab is shown.

The log in legacy mode:

2018-01-30 10:24:16.291 [DEBUG] [dge.handler.SolarEdgeLiveDataPolling] - polling SolarEdge live data org.openhab.binding.solaredge.config.SolarEdgeConfiguration@1576f2d[username=XX,password=XX,solarId=XX,legacyMode=true,live data pollingInterval=60,aggregate data pollingInterval=300,asyncTimeout=120,syncTimeout=120]
2018-01-30 10:24:16.748 [DEBUG] [nternal.command.LegacyLiveDataUpdate] - received content, length: 6559
2018-01-30 10:24:16.752 [DEBUG] [nternal.command.LegacyLiveDataUpdate] - HTTP response 200
2018-01-30 10:24:16.755 [DEBUG] [nternal.command.LegacyLiveDataUpdate] - onComplete()
2018-01-30 10:24:16.762 [DEBUG] [nternal.command.LegacyLiveDataUpdate] - RAW String: Ext.apply(SE.labels,{overViewPanel:SE.labels.OverViewPanel,overViewPanel1:SE.labels.OverViewPanel1});(function(){varshowCurrentPower=false;if(!SE.isPublic&&SE.Params.hasSEMInDashboard&&SE.permissions.DashboardPowerFlow)showCurrentPower=false;elseshowCurrentPower=true;if(SE.isPhone){showCurrentPower=false;};vardata={lastDayEnergy:"939,88Wh",lastMonthEnergy:"123,65kWh",lifeTimeEnergy:"11,69MWh",};if(showCurrentPower){Ext.apply(data,{currentPower:"827W"});}varoverViewPanel={showLifeTimeRevenue:false,showCurrentPower:showCurrentPower,data:data};Ext.apply(SE.Params,{overViewPanel:overViewPanel});})();Ext4.define('SE.AbsOverViewPanel',{extend:'Ext.panel.Panel',layout:{type:'hbox'},cls:'se-overview-panel',params:SE.Params.overViewPanel,statics:{create:function(params){returnSE.createCmp('SE.OverViewPanel',params);}},adjustLastItemCSS:function(){varlastItem=this.items[this.items.length-1];lastItem.cls='se-site-filter-panel-cell-end';lastItem.style='border-right:none';},createTodayEnergyCell:function(){this.TodayEnergyCell=SE.createCmp('SE.OverviewPanelCell',{id:'se-today-energy',cellId:'TodayEnergy',text:this.labels.todayEnergy,_data:this.data.lastDayEnergy});this.items.push(this.TodayEnergyCell);},createThisMonthEnergyCell:function(){this.ThisMonthEnergyCell=SE.createCmp('SE.OverviewPanelCell',{id:'se-this-month-energy',cellId:'ThisMonthEnergy',text:this.labels.thisMonthEnergy,_data:this.data.lastMonthEnergy});this.items.push(this.ThisMonthEnergyCell);},createLifeTimeEnergyCell:function(){this.LifeTimeEnergyCell=SE.createCmp('SE.OverviewPanelCell',{id:'se-life-time-energy',cellId:'LifeTimeEnergy',text:this.labels.lifeTimeEnergy,_data:this.data.lifeTimeEnergy});this.items.push(this.LifeTimeEnergyCell);},createCurrentPowerCell:function(){this.CurrentPowerCell=SE.createCmp('SE.OverviewPanelCell',{id:'se-current-power',cellId:'CurrentPower',text:this.labels.currentPower,_data:this.data.currentPower});this.items.push(this.CurrentPowerCell);},createLifeTimeRevenueCell:function(){this.LifeTimeRevenueCell=SE.createCmp('SE.OverviewPanelCell',{id:'se-life-time-revenue',cellId:'LifeTimeRevenue',text:this.labels.lifeTimeRevenue,_data:this.data.formatedRevenue});this.items.push(this.LifeTimeRevenueCell);},update:function(data){if(this.params.showCurrentPower){this.CurrentPowerCell.dataPanel._data.setHtml(data.currentPower);}this.TodayEnergyCell.dataPanel._data.setHtml(data.lastDayEnergy);this.ThisMonthEnergyCell.dataPanel._data.setHtml(data.lastMonthEnergy);this.LifeTimeEnergyCell.dataPanel._data.setHtml(data.lifeTimeEnergy);if(this.params.showLifeTimeRevenue){this.LifeTimeRevenueCell.dataPanel._data.setHtml(data.formatedRevenue);}}});Ext4.define('SE.OverViewPanel',{extend:'SE.AbsOverViewPanel',labels:SE.labels.overViewPanel,width:300,addTitle:true,initComponent:function(){if(this.addTitle)this.title=this.labels.overview;this.data=SE.Params.overViewPanel.data;this.items=[];if(this.params.showCurrentPower){this.createCurrentPowerCell();}this.createTodayEnergyCell();this.createThisMonthEnergyCell();this.createLifeTimeEnergyCell();if(this.params.showLifeTimeRevenue){this.createLifeTimeRevenueCell();}this.adjustLastItemCSS();this.callParent(arguments);}});Ext4.define('SE.AbsOverviewPanelCell',{extend:'Ext.Container',flex:1,params:SE.Params.overViewPanel,statics:{create:function(params){returnSE.createCmp('SE.OverviewPanelCell',params);}},createCSS:function(){varrules=['.se-site-overview-panel-cell.x4-autocontainer-innerCt{vertical-align:middle;}'];SE.util.CSS.addCmpRules('se-site-overview-panel-cell-css',rules);},initComponent:function(){this.style='border-right:solid#d9d9d92px';this.createCSS();this.dataPanel=SE.createCmp('SE.OverviewDataBox',{text:this.text,_data:this._data});this.items=[this.dataPanel];if(this.params.showLifeTimeRevenue){if(this._data2){this._data2=SE.createCmp('Ext.Component',{html:this._data2,cls:'se-site-overview-data-box-data2se-green-color',flex:1});this.items.push(this._data2);}else{this._data2=SE.createCmp('Ext.Component',{html:'\u00A0',flex:1});this.items.push(this._data2);}}this.callParent(arguments);}});Ext4.define('SE.OverviewPanelCell',{extend:'SE.AbsOverviewPanelCell',height:79,cls:['se-panel-gradient','se-site-overview-panel-cell']});Ext4.define('SE.AbsOverviewDataBox',{extend:'Ext.Container',params:SE.Params.overViewPanel,width:'100%',layout:{type:'vbox',align:'stretch'},cls:'se-site-overview-data-box',statics:{create:function(params){returnSE.createCmp('SE.OverviewDataBox',params);}},initComponent:function(){this.createCSS();this.text=SE.createCmp('Ext.Component',{html:this.text,cls:this.textCls,flex:1});this._data=SE.createCmp('Ext.Component',{html:this._data,cls:'se-site-overview-data-box-data',flex:1});this.items=[this.text,this._data];this.callParent(arguments);}});Ext4.define('SE.OverviewDataBox',{extend:'SE.AbsOverviewDataBox',textCls:'se-site-overview-data-box-text',createCSS:function(){varrules=['.se-site-overview-data-box.x4-autocontainer-innerCt{vertical-align:middle;}','.se-site-overview-data-box.x4-box-inner{width:100%!important;}','.se-site-overview-data-box.x4-box-target{position:initial}','.se-site-overview-data-box-text{width:100%!important;font-size:14px;white-space:nowrap;text-align:center;padding:5px05px0;}','.se-site-overview-data-box-data{width:100%!important;font-size:18px;white-space:nowrap;text-align:center;padding:5px05px0;color:'+SE.CSSColor.grc()+';font-weight:bold;overflow:hidden;}'];SE.util.CSS.addCmpRules('se-site-overview-data-box-css',rules);}});
2018-01-30 10:24:16.779 [DEBUG] [nternal.command.LegacyLiveDataUpdate] - Parsed value: '827'
2018-01-30 10:24:16.781 [DEBUG] [nternal.command.LegacyLiveDataUpdate] - Parsed unit: 'W'
2018-01-30 10:24:16.785 [DEBUG] [nternal.command.LegacyLiveDataUpdate] - Converted value: '0.83'
2018-01-30 10:24:16.787 [DEBUG] [laredge.handler.SolarEdgeBaseHandler] - Handling channel update.
2018-01-30 10:24:16.790 [DEBUG] [laredge.handler.SolarEdgeBaseHandler] - Channel is to be updated: live#production: 0.83

After switching to non-legacy mode:

2018-01-30 10:21:24.917 [DEBUG] [dge.handler.SolarEdgeLiveDataPolling] - polling SolarEdge live data org.openhab.binding.solaredge.config.SolarEdgeConfiguration@455fd8[username=XX,password=XX,solarId=XX,legacyMode=false,live data pollingInterval=60,aggregate data pollingInterval=300,asyncTimeout=120,syncTimeout=120]
2018-01-30 10:21:25.010 [DEBUG] [edge.internal.command.LiveDataUpdate] - received content, length: 27
2018-01-30 10:21:25.013 [DEBUG] [edge.internal.command.LiveDataUpdate] - HTTP response 200
2018-01-30 10:21:25.016 [DEBUG] [edge.internal.command.LiveDataUpdate] - onComplete()
2018-01-30 10:21:25.018 [DEBUG] [edge.internal.command.LiveDataUpdate] - JSON String: {"siteCurrentPowerFlow":{}}

There are no values at all, can you add some more debug messages at this point?
Maybe there is a “raw” string like in legacy mode :wink:

Best Regards

This is the “raw string”. However it seems that your solaredge configuration is not yet the same like mine.
As you can see here: New binding available: SolarEdge binding
I have a visualization of the live data which is different from yours which still shows only the current production, and the totals for today, current month and year. Unfortunately I cannot help you with the configuration as I did not configure my system neither I have access to it.

Ok, thats what i’ve expected…
Can you send me a full screenshot of your dashboard, so i can contact the SE service?

Greetings!

Is it possible to get the (home automation) devices status as well? I just connected two ZigBee AC switches to the inverter. Here’s a screenshot.

regards,
Michael

Hi Micheal

basically this should be possible but unfortunately I cannot test it. In my setup I do not have the permission to see this tab. So it is hard to implement it without any access to this.

I could give it a try but I would at least need your help providing the http requests that are done by the browser to get the (JSON) data that is put into the view. Maybe only the view is hidden in my setup but the data API is enabled.

BR
Alex

Hi Alex,

great - I never tried to get the json dump from a browser, here’s my first try:

    |Name|Protokoll|Methode|Ergebnis|Inhaltstyp|Empfangen|Zeit|Initiator|
    |---|---|---|---|---|---|---|---|
    |https://monitoring.solaredge.com/solaredge-apigw/api/site/xxxxxx/loadDevices.json|HTTPS|GET|200|application/json||119,84 ms|XMLHttpRequest|

{"isUpdated":true,"fieldLastUpdateTS":1519977402199,"updateRefreshRate":3,"globalCommunicationStatus":"ACTIVE","devices":[{"reporterId":54046105,"serialNumber":"163541156","iconName":"GENERIC","name":"Schalter 1","manufacturer":"SolarEdge","model":"SE-S-PLG","macAddress":"000D6F0005B10A61","swVersion":"V1b246-20160525","type":"RELAY","lastUpdated":1519977489000,"deviceStatus":"ACTIVE","status":{"level":0,"activePowerMeter":null,"activeTrigger":"MANUAL","startTime":1519925409000,"endTime":null},"config":{"iconName":"GENERIC","ratedPower":500.0,"minOnTime":2,"maxOnTime":null,"deviceName":"Schalter 1"},"remoteOpInfo":null,"deviceTriggers":[],"excessPVConfiguration":{"useExcessPV":true,"excessPVActiveDays":["SUNDAY","MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY"]}},{"reporterId":54259093,"serialNumber":"170861214","iconName":"SWITCH","name":"Heizstab","manufacturer":"SolarEdge","model":"SE-S-SW","macAddress":"000D6F0005B6EEE7","swVersion":"V1b246-20160525","type":"RELAY","lastUpdated":1519977489000,"deviceStatus":"ACTIVE","status":{"level":0,"activePowerMeter":null,"activeTrigger":"MANUAL","startTime":1519831811000,"endTime":null},"config":{"iconName":"SWITCH","ratedPower":2000.0,"minOnTime":10,"maxOnTime":null,"deviceName":"Heizstab"},"remoteOpInfo":null,"deviceTriggers":[{"enable":true,"endTime":720,"smartSaver":true,"minOnDuration":120,"maxOnDuration":120,"scheduledDays":["SUNDAY","MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY"]}],"excessPVConfiguration":{"useExcessPV":false,"excessPVActiveDays":["SUNDAY","MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY"]}}]}

Unfortunately the data API is also protected so I cannot access it. I could only try to use your static json for development.

Installier this Binding crashes my Homematic Binding. Solaredge Binding then works well. Anyone experienced something like this? Could you help? What do you need? Logs on debug level?

I also use the homematic binding in combination with the solaredge binding. I never had problems.
I use the openhab 2.2 stable version and the latest 2.3 snapshot version of the solaredge binding. This works well for me.

After playing around, seems that I only get the ‘Day/Week/…’-production values? Caused by the missing modbus meter as I understand?

Nevertheless, i’m getting following error in log. Not sure form where it comes. :blush:

2018-04-16 08:43:19.820 [INFO ] [clipse.jetty.client.ResponseNotifier] - Exception while notifying listener org.openhab.binding.solaredge.internal.command.LiveDataUpdate@378b45c3                                                                   
java.lang.NullPointerException: null                                                                                                                                                                                                                 
        at org.openhab.binding.solaredge.internal.model.LiveDataResponse.getValues(LiveDataResponse.java:108) [240:org.openhab.binding.solaredge:2.3.0.201803081209]                                                                                 
        at org.openhab.binding.solaredge.internal.command.LiveDataUpdate.onComplete(LiveDataUpdate.java:68) [240:org.openhab.binding.solaredge:2.3.0.201803081209]                                                                                   
        at org.eclipse.jetty.client.ResponseNotifier.notifyComplete(ResponseNotifier.java:193) [75:org.eclipse.jetty.client:9.3.22.v20171030]                                                                                                        
        at org.eclipse.jetty.client.ResponseNotifier.notifyComplete(ResponseNotifier.java:185) [75:org.eclipse.jetty.client:9.3.22.v20171030]                                                                                                        
        at org.eclipse.jetty.client.HttpReceiver.terminateResponse(HttpReceiver.java:458) [75:org.eclipse.jetty.client:9.3.22.v20171030]                                                                                                             
        at org.eclipse.jetty.client.HttpReceiver.responseSuccess(HttpReceiver.java:405) [75:org.eclipse.jetty.client:9.3.22.v20171030]                                                                                                               
        at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.messageComplete(HttpReceiverOverHTTP.java:277) [75:org.eclipse.jetty.client:9.3.22.v20171030]                                                                                          
        at org.eclipse.jetty.http.HttpParser.parseContent(HttpParser.java:1617) [78:org.eclipse.jetty.http:9.3.22.v20171030]                                                                                                                         
        at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:1350) [78:org.eclipse.jetty.http:9.3.22.v20171030]                                                                                                                            
        at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.parse(HttpReceiverOverHTTP.java:159) [75:org.eclipse.jetty.client:9.3.22.v20171030]                                                                                                    
        at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.process(HttpReceiverOverHTTP.java:120) [75:org.eclipse.jetty.client:9.3.22.v20171030]                                                                                                  
        at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.receive(HttpReceiverOverHTTP.java:70) [75:org.eclipse.jetty.client:9.3.22.v20171030]                                                                                                   
        at org.eclipse.jetty.client.http.HttpChannelOverHTTP.receive(HttpChannelOverHTTP.java:90) [75:org.eclipse.jetty.client:9.3.22.v20171030]                                                                                                     
        at org.eclipse.jetty.client.http.HttpConnectionOverHTTP.onFillable(HttpConnectionOverHTTP.java:115) [75:org.eclipse.jetty.client:9.3.22.v20171030]                                                                                           
        at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:283) [79:org.eclipse.jetty.io:9.3.22.v20171030]                                                                                                    
        at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:108) [79:org.eclipse.jetty.io:9.3.22.v20171030]                                                                                                                              
        at org.eclipse.jetty.io.ssl.SslConnection.onFillable(SslConnection.java:251) [79:org.eclipse.jetty.io:9.3.22.v20171030]                                                                                                                      
        at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:283) [79:org.eclipse.jetty.io:9.3.22.v20171030]                                                                                                    
        at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:108) [79:org.eclipse.jetty.io:9.3.22.v20171030]                                                                                                                              
        at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93) [79:org.eclipse.jetty.io:9.3.22.v20171030]                                                                                                                
        at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303) [90:org.eclipse.jetty.util:9.3.22.v20171030]                                                                           
        at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148) [90:org.eclipse.jetty.util:9.3.22.v20171030]                                                                                  
        at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136) [90:org.eclipse.jetty.util:9.3.22.v20171030]                                                                                             
        at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671) [90:org.eclipse.jetty.util:9.3.22.v20171030]                                                                                                             
        at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589) [90:org.eclipse.jetty.util:9.3.22.v20171030]                                                                                                              
        at java.lang.Thread.run(Thread.java:748) [?:?]                                                                                                                                                                                               
2018-04-16 08:43:49.846 [INFO ] [clipse.jetty.client.ResponseNotifier] - Exception while notifying listener org.openhab.binding.solaredge.internal.command.LiveDataUpdate@3947c4c4                                                                   
java.lang.NullPointerException: null                                                                                                                                                                                                                 
        at org.openhab.binding.solaredge.internal.model.LiveDataResponse.getValues(LiveDataResponse.java:108) [240:org.openhab.binding.solaredge:2.3.0.201803081209]                                                                                 
        at org.openhab.binding.solaredge.internal.command.LiveDataUpdate.onComplete(LiveDataUpdate.java:68) [240:org.openhab.binding.solaredge:2.3.0.201803081209]                                                                                   
        at org.eclipse.jetty.client.ResponseNotifier.notifyComplete(ResponseNotifier.java:193) [75:org.eclipse.jetty.client:9.3.22.v20171030]                                                                                                        
        at org.eclipse.jetty.client.ResponseNotifier.notifyComplete(ResponseNotifier.java:185) [75:org.eclipse.jetty.client:9.3.22.v20171030]                                                                                                        
        at org.eclipse.jetty.client.HttpReceiver.terminateResponse(HttpReceiver.java:458) [75:org.eclipse.jetty.client:9.3.22.v20171030]                                                                                                             
        at org.eclipse.jetty.client.HttpReceiver.responseSuccess(HttpReceiver.java:405) [75:org.eclipse.jetty.client:9.3.22.v20171030]                                                                                                               
        at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.messageComplete(HttpReceiverOverHTTP.java:277) [75:org.eclipse.jetty.client:9.3.22.v20171030]                                                                                          
        at org.eclipse.jetty.http.HttpParser.parseContent(HttpParser.java:1617) [78:org.eclipse.jetty.http:9.3.22.v20171030]                                                                                                                         
        at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:1350) [78:org.eclipse.jetty.http:9.3.22.v20171030]                                                                                                                            
        at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.parse(HttpReceiverOverHTTP.java:159) [75:org.eclipse.jetty.client:9.3.22.v20171030]                                                                                                    
        at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.process(HttpReceiverOverHTTP.java:120) [75:org.eclipse.jetty.client:9.3.22.v20171030]                                                                                                  
        at org.eclipse.jetty.client.http.HttpReceiverOverHTTP.receive(HttpReceiverOverHTTP.java:70) [75:org.eclipse.jetty.client:9.3.22.v20171030]                                                                                                   
        at org.eclipse.jetty.client.http.HttpChannelOverHTTP.receive(HttpChannelOverHTTP.java:90) [75:org.eclipse.jetty.client:9.3.22.v20171030]                                                                                                     
        at org.eclipse.jetty.client.http.HttpConnectionOverHTTP.onFillable(HttpConnectionOverHTTP.java:115) [75:org.eclipse.jetty.client:9.3.22.v20171030]                                                                                           
        at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:283) [79:org.eclipse.jetty.io:9.3.22.v20171030]                                                                                                    
        at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:108) [79:org.eclipse.jetty.io:9.3.22.v20171030]                                                                                                                              
        at org.eclipse.jetty.io.ssl.SslConnection.onFillable(SslConnection.java:251) [79:org.eclipse.jetty.io:9.3.22.v20171030]                                                                                                                      
        at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:283) [79:org.eclipse.jetty.io:9.3.22.v20171030]                                                                                                    
        at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:108) [79:org.eclipse.jetty.io:9.3.22.v20171030]                                                                                                                              
        at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93) [79:org.eclipse.jetty.io:9.3.22.v20171030]                                                                                                                
        at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303) [90:org.eclipse.jetty.util:9.3.22.v20171030]                                                                           
        at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148) [90:org.eclipse.jetty.util:9.3.22.v20171030]                                                                                  
        at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136) [90:org.eclipse.jetty.util:9.3.22.v20171030]                                                                                             
        at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671) [90:org.eclipse.jetty.util:9.3.22.v20171030]                                                                                                             
        at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589) [90:org.eclipse.jetty.util:9.3.22.v20171030]                                                                                                              
        at java.lang.Thread.run(Thread.java:748) [?:?]            

In my case, I’ve got also some power optimizers on the PV panels. Is there a way to read out those values/status?

And beside, I see on the monitoring site of solaredge some other interesting stuff. Like fe gained CO2, money earned… Not sure if we could get that info as well into OH2?

@brononius: You should get the current production as well as the aggregates per day, week, …

Currently you do not get the live data because you did not activate the legacy mode. As the legacy mode parses the HTML it might be necessary to switch the solaredge web ui to english.

Hope that helps.

BR
Alex

Hey, Indeed, after changing to legacy, I see the production (live, day, week…).
My language is set on ‘dutch’, and is working asis…

The java-errors went away with remove the addon, rebooting the server, adding the addon, rebooting once more, and…


Hope that in the future, we can also use other things (like temperature, PV status (through fe optimizers)…).
For the moment, I added the solar webpage in it, so I can check the solar panels. But of course, it would be nice if we can use them (items) in rules and so.

Let me know if I can assist in any way!
Not much program skills, but I’ve got access to my stuff. :wink:

Hi guys, my binding for some reason has just stopped producing data within the last few days, worked fine for months, now it says it’s connected but the figure is “0”? Solaredge monitor is showing the live data, as is pvoutput.org (which uses the api), so I’m not sure what’s changed?
I last updated openhab a week or two ago, and it still worked after that.
Using lecacy mode as the system doesn’t have a modbus meter.

Hmm, my Thing is “solaredge:generic:SE5000H”, but in Paper’s Configuration->Things it says “solaredge:generic:f522cb85” is online??

Hi @roguestreak,

it seems that you have mixed up configuration via files and via paper-ui. If a thing is added via paper-ui it gets a generated name like “solaredge:generic:f522cb85”.
If you configure everything via files, the items should still be visible in paper-ui but then they have correct names and via paper-ui those things/items are read-only, of course.

Hope that helps
Alex

Hi Alex
I originally had troubles setting up the binding via files, I had everything defined in the files but nothing was happening. It wasn’t until I went into paper-ui and re-saved the settings and linked the channel to my item that I got anything to work.
But that was a few months ago and it’s been working fine since, now with no changes it’s suddenly stopped working? Any thoughts on where I should be looking to repair? Places to turn on logging and what to look for etc?

So it looks like this has resolved itself, will have to log in remotely tomorrow to keep an eye on it, but tonight I went into the events.log etc. and found from the 17th onwards just a mass of errors, followed by today it registering data again; eg. “SE5000H_Live_Production changed from 4.05 to 3.87”
Errors seemed to be the following in perpetuity;

    2018-05-22 09:14:08.724 [hingStatusInfoChangedEvent] - 'solaredge:generic:f522cb85' changed from ONLINE: logged in to OFFLINE (COMMUNICATION_ERROR): Server Error
    2018-05-22 09:14:12.486 [hingStatusInfoChangedEvent] - 'solaredge:generic:f522cb85' changed from OFFLINE (COMMUNICATION_ERROR): Server Error to ONLINE: logged in
    2018-05-22 09:19:08.633 [hingStatusInfoChangedEvent] - 'solaredge:generic:f522cb85' changed from ONLINE: logged in to OFFLINE (COMMUNICATION_ERROR): Server Error
    2018-05-22 09:19:12.464 [hingStatusInfoChangedEvent] - 'solaredge:generic:f522cb85' changed from OFFLINE (COMMUNICATION_ERROR): Server Error to ONLINE: logged in

Any thoughts on what could have been causing this, considering I could still get data via the solaredge monitor and into pvoutput.org via the API?
I did have one optimiser playing up and not reporting/producing, which got replaced this afternoon, but not sure how / why that would impact the binding, and doesn’t seem to fully correlate with the error dates.

Hi Guys - i noticed mine has stopped updating…cannot say when exactly…

Im my logs i have

==> /var/log/openhab2/openhab.log <==
2018-06-04 21:47:30.824 [WARN ] [edge.internal.connector.WebInterface] - Client-Cookie not found: SolarEdge_Client-1.5

==> /var/log/openhab2/events.log <==
2018-06-04 21:47:30.832 [hingStatusInfoChangedEvent] - 'solaredge:generic:se7000' changed from ONLINE: logged in to OFFLINE (COMMUNICATION_ERROR): Client-Cookie not found: SolarEdge_Client-1.5

Any ideas?

The Client version has been updated to version 1.6 and my binding is a little bit strict in checking the version. I will fix this asap.

2 Likes