hultenvp / solis-sensor

HomeAssistant integration for the SolisCloud PV Monitoring portal via SolisCloud API
Apache License 2.0
215 stars 45 forks source link

No Data after Soliscloud update AM 27/09 #162

Closed corvus2606 closed 1 year ago

corvus2606 commented 2 years ago

home-assistant.log After Soliscloud was updated early this morning, there is no data coming through on the sensors. on a HASS restart, I am seeing the below errors:

Config

Versions HA Docker install, 2022.9.7 HACS version: 1.27.2 Integration version: 2.3.4

Debug logs

2022-09-27 10:20:39.686 INFO (MainThread) [custom_components.solis.soliscloud_api] Login Successful! 2022-09-27 10:20:39.918 DEBUG (MainThread) [custom_components.solis.soliscloud_api] Found inverters: ['****'] 2022-09-27 10:20:39.918 WARNING (MainThread) [custom_components.solis.service] Failed to discover, scheduling retry in 180 seconds. 2022-09-27 10:20:39.919 DEBUG (MainThread) [custom_components.solis.service] Scheduling discovery in 180 seconds.

Screenshots

defeatedbythecat commented 2 years ago

Same issue this morning

drsmarsden commented 2 years ago

This is what I saw

2022-09-27 03:45:04.516 DEBUG (MainThread) [custom_components.solis.service] SMSM hour [3] min [45] energy [0.000000] 2022-09-27 03:45:04.516 DEBUG (MainThread) [custom_components.solis.service] Scheduling next update in 2 minutes. 2022-09-27 03:47:04.611 DEBUG (MainThread) [custom_components.solis.soliscloud_api] Error from URI (/v1/api/addUser) : 0, message='Attempt to decode JSON with unexpected mimetype: text/html', url=URL('https://www.soliscloud.com:13333/v1/api/addUser') 2022-09-27 03:47:04.611 DEBUG (MainThread) [custom_components.solis.service] Scheduling next update in 1 minutes. 2022-09-27 03:48:04.716 INFO (MainThread) [custom_components.solis.soliscloud_api] Login Successful!

corvus2606 commented 2 years ago

so it seems they've probably made an undocumented change to their API, this is why i prefer to avoid cloud based services...

liveware-problems commented 2 years ago

This was working for me before the update to Solis Cloud, and this morning there is no data. However, I've checked the apiManage page and it now shows Nonactivated whereas before I had an active key. Trying to re-register for a key now results in the 'No Authority' error discussed on the Solis Cloud comment thread: image

defeatedbythecat commented 2 years ago

Mine showing as active, but still having the issue above

corvus2606 commented 2 years ago

I'm getting the same error when trying to reactivate the API access

corvus2606 commented 2 years ago

I've logged a support ticket with their team, awaiting a response.

From what i can tell, the API has now been locked behind some extra permissions, even the API management option is missing from the basic settings page, we have to type the address directly.

Hopefully this is just an error and not a permanent move by them.

RIA-Ingo commented 2 years ago

same problem here.. but after Uptdate to 2022.9.7

hultenvp commented 2 years ago

so it seems they've probably made an undocumented change to their API, this is why i prefer to avoid cloud based services...

I believe this is a regression on their side. Let's hope it's not intentional.

Propose to await response on ticket logged by @corvus2606.

This is not the first time and will probably not be the last time SolisCloud will see instability. It looks they're still actively developing. I recommend to use m.ginlong.com if you require stability.

liveware-problems commented 2 years ago

I also logged a ticket with Solis Support about this.

The issue with using m.ginlong.com is that I'm not sure the newer datalogger supports this platform - I think older hardware registered on ginlong.com and then migrated to soliscloud, whereas the newer S3-WiFI-ST stick seems to only register on soliscloud and there is no option to migrate from there to ginlong.com

I'll have a try anyway 😄

corvus2606 commented 2 years ago

this has been the prompt i needed to give in to my urge to avoid cloud based integrations. I'll be going down the route of an RS485 ethernet bridge and monitoring over modbus.

I never was super fond of the idea of freely giving away all of my electricity usage habits to a chinese entity anyway.

We'll see what they say on the support ticket and I'll feed back here regardless

GillesC commented 2 years ago

this has been the prompt i needed to give in to my urge to avoid cloud based integrations. I'll be going down the route of an RS485 ethernet bridge and monitoring over modbus.

I never was super fond of the idea of freely giving away all of my electricity usage habits to a chinese entity anyway.

We'll see what they say on the support ticket and I'll feed back here regardless

I agree. Could you share the procedure when you are able to get this work?

usbrit commented 2 years ago

Same issue, please keep progress updated. Thanks

abbamust commented 2 years ago

Mine also have the same issue. But do this have anything to do with the upgrade to HA 2022.9.7? Or is this a problem the SolisCloud have caused?

INFO (MainThread) [custom_components.solis.soliscloud_api] Login Successful! DEBUG (MainThread) [custom_components.solis.soliscloud_api] Found inverters: ['', ''] WARNING (MainThread) [custom_components.solis.service] Failed to discover, scheduling retry in 60 seconds. DEBUG (MainThread) [custom_components.solis.service] Scheduling discovery in 60 seconds.

corvus2606 commented 2 years ago

this is not caused by Home assistant, this is a problem on the Solis Cloud side. I've had indications that they may have withdrawn API access citing GDPR issues. I'm awaiting confirmation of that

dhoogfr commented 2 years ago

Curious what kind of GDPR issue that could be. I mean, the data is still being send to Solis Cloud, the API only makes it available for the user via a different method than the website. Unless they gather statistics on the API usage and additional approval is needed for that (or it isn't about GDPR, but about security...)

corvus2606 commented 2 years ago

yeah, until we get an official answer, it's all rumour and speculation unfortunately. Either way, the end result for us is the same...

hultenvp commented 2 years ago

this has been the prompt i needed to give in to my urge to avoid cloud based integrations. I'll be going down the route of an RS485 ethernet bridge and monitoring over modbus.

I never was super fond of the idea of freely giving away all of my electricity usage habits to a chinese entity anyway.

We'll see what they say on the support ticket and I'll feed back here regardless

There was a link in one of the issues or in the discussion thread to an integration that would potentially work. EDIT: Found here: https://github.com/hultenvp/solis-sensor/discussions/71#discussioncomment-2921478

Regardless of what will happen to the SolisCloud I will continue to maintain this integration. Mostly because it's fun and a great learning experience ;-). For now I'll monitor the situation and leave the ticket open, not much I can do to deal with a disabled/broken service. Please post any new info anyone might have here.

corvus2606 commented 2 years ago

@hultenvp Of course, nothing against you or the work you've done, this integration would have been the perfect solution had solis chosen to be a reliable data provider.

Thank you very much for the work you've done on this!

abbamust commented 2 years ago

It looks like the datalogger I have is not working with ginlong, so for now I am a little stuck. Anyone tried to read from the new datalogges via IP adress?

Moondevil-ha commented 2 years ago

I have a datalogger with serial starting "5A" which will not allow me to set up any local access. I was going to attempt it, but can see no way forward without building an MQTT2RS485 interface?

tobes49 commented 2 years ago

I also logged a ticket with Solis Support about this.

The issue with using m.ginlong.com is that I'm not sure the newer datalogger supports this platform - I think older hardware registered on ginlong.com and then migrated to soliscloud, whereas the newer S3-WiFI-ST stick seems to only register on soliscloud and there is no option to migrate from there to ginlong.com

I'll have a try anyway 😄

I've got the same problem so fingers crossed they fix it soon.
I too have the S3 stick and have looked at direct access but cant seem to find a username or password to let me access the stick (tried admin/admin also admin/S/N etc) - would anyone have this?

corvus2606 commented 2 years ago

It looks like the datalogger I have is not working with ginlong, so for now I am a little stuck. Anyone tried to read from the new datalogges via IP adress?

the newer model of datalogger is locked in to Solis Cloud and also doesn't publish any data that can be read using the solismon integrations, you can't even scrape the data off the page thanks to ajax. The only option with those is to replace them with an older model, or use an RS485 module and interface directly with modbus

corvus2606 commented 2 years ago

I also logged a ticket with Solis Support about this. The issue with using m.ginlong.com is that I'm not sure the newer datalogger supports this platform - I think older hardware registered on ginlong.com and then migrated to soliscloud, whereas the newer S3-WiFI-ST stick seems to only register on soliscloud and there is no option to migrate from there to ginlong.com I'll have a try anyway 😄

I've got the same problem so fingers crossed they fix it soon. I too have the S3 stick and have looked at direct access but cant seem to find a username or password to let me access the stick (tried admin/admin also admin/S/N etc) - would anyone have this?

the username is 'admin' and the password is your wifi password.

but as i said above, it doesn't support rest api requests like the old ones did, so you can't use it to pull data

corvus2606 commented 2 years ago

I have a datalogger with serial starting "5A" which will not allow me to set up any local access. I was going to attempt it, but can see no way forward without building an MQTT2RS485 interface?

I am waiting to receive a RS485 ethernet bridge. you can then integrate with it using the modbus integration in home assistant without the need to have MQTT in the middle.

I'm working off a lot of the things in this thread: https://community.home-assistant.io/t/getting-data-from-solis-inverter/302189/70?u=corvus2606

spetrie13 commented 2 years ago

S3 stick.

Not found a way to get data from it.

Once configured and connected to your network, login with admin password is your wifi password

On Wed, 28 Sept 2022, 10:23 tobes49, @.***> wrote:

I also logged a ticket with Solis Support about this.

The issue with using m.ginlong.com is that I'm not sure the newer datalogger supports this platform - I think older hardware registered on ginlong.com and then migrated to soliscloud, whereas the newer S3-WiFI-ST stick seems to only register on soliscloud and there is no option to migrate from there to ginlong.com

I'll have a try anyway 😄

I've got the same problem so fingers crossed they fix it soon. I too have the S3 stick and have looked at direct access but cant seem to find a username or password to let me access the stick (tried admin/admin also admin/S/N etc) - would anyone have this?

— Reply to this email directly, view it on GitHub https://github.com/hultenvp/solis-sensor/issues/162#issuecomment-1260631009, or unsubscribe https://github.com/notifications/unsubscribe-auth/AYRF45ZNBOOTX3UOWSOED33WAQFABANCNFSM6AAAAAAQWS2U5Q . You are receiving this because you are subscribed to this thread.Message ID: @.***>

rmhomecouk commented 2 years ago

I was loving the simplicity of this integration but the outage has pushed me to stick an Ethernet bridge in place of the stick. So far so good (the bridge is a PE-11 unit which seems really solid).

image

image

liveware-problems commented 2 years ago

Is that an AC powered PE-11 you are using @rmhomecouk ? So the yellow cable is just the RS485 data connection? I'm looking at these options, but think the port on the inverter (as used by the stick) only supplies +5v DC:

Protoss-PE11-M is RS485 to Ethernet server, no wifi, power input 9V to 48VDC;

Protoss-PE11-H is RS485 to Ethernet server, no wifi, power input 100V to240VAC;

Moondevil-ha commented 2 years ago

I am looking at something like this: Serial Port RS485 to WiFi Device Server Module Elfin-EW11 f TCP/IP Protocol Data: https://bit.ly/3UIQh1I I'm ordering and going to get my thinking cap on.

corvus2606 commented 2 years ago

I ordered this unit: https://www.amazon.co.uk/dp/B08NW79RNK?psc=1&ref_=chk_typ_imgToDp

It takes 5v power from the port, so hopefully it'll be self contained. I'll report back when it arrives

rmhomecouk commented 2 years ago

net server, no wifi, power input 9V to 48VDC;

Yeah I went for the 240VAC option as I didn't realise that I could has used the internal 5V from the invertor. got a spare 2way consumer unit that I'll wire up for it though. Yellow cable is indeed the data cable

so far so good - data flowing through and just sorting out some scaling issues.

liveware-problems commented 2 years ago

Looks like a good find @corvus2606 - but a month for delivery! Isn't everyone used to next-day Prime? 😄

corvus2606 commented 2 years ago

Looks like a good find @corvus2606 - but a month for delivery! Isn't everyone used to next-day Prime? 😄

I got it on prime, it just arrived and I ordered it about 2pm yesterday. unfortunately the plug from that one guy on ebay will be a little longer...

joernschumacher0001 commented 2 years ago

Just a note, you don't really need additional hardware to access the Modbus data - you can add your own server to send it to in the dongle setup page. I've got this https://community.home-assistant.io/t/getting-data-from-solis-inverter/302189 working with some adjustments (seems the data format is also different between the dongles and/or firmware versions).

Moondevil-ha commented 2 years ago

Just a note, you don't really need additional hardware to access the Modbus data - you can add your own server to send it to in the dongle setup page. I've got this https://community.home-assistant.io/t/getting-data-from-solis-inverter/302189 working with some adjustments (seems the data format is also different between the dongles and/or firmware versions).

Unfortunately this is only true if you have a version of the stick pre-V3. V3 has removed all local access, hence everyone's consternation.

RIA-Ingo commented 2 years ago

Just a note, you don't really need additional hardware to access the Modbus data - you can add your own server to send it to in the dongle setup page. I've got this https://community.home-assistant.io/t/getting-data-from-solis-inverter/302189 working with some adjustments (seems the data format is also different between the dongles and/or firmware versions).

Unfortunately this is only true if you have a version of the stick pre-V3. V3 has removed all local access, hence everyone's consternation.

Unfortunatly on my Solis wifi stick i canot set a SERVER B IP Adresse to use this way

hescher commented 2 years ago

I got an solis s3-wifi-st and am able to login in the webpage of the datalogger. (Firmware 0001012F, Serial 5A12...) So temporarly I just get the values via rest sensors:

The device password changed from the inital 123456789 to my wifi password. t=0.8156536889125297 is just a random number. I use 6 rest sensors for: Inverter temprature[3], Current power[4], Yield today[5], Total yield[6], Alerts[7], Wifi-Quality[8]. The only downside is, only one update of current power every 5 minutes.

rmhomecouk commented 2 years ago

I have the same stick - I took the cover off and connected to the internal headers which provides serial. It appears to be read only and only provides info on the wifi strength and available heap. There was also an option to upload a new firmware via ymodem. Maybe if we can get hold of a firmware bin we can modify it to provide server b again?

corvus2606 commented 2 years ago
  • platform: rest resource: http://IP/inverter.cgi?t=0.8156536889125297 authentication: basic username: admin password: wifipassword scan_interval: 10 value_template: '{{ value.split(";")[4] }}' name: solaris_test_current_power unit_of_measurement: "W" device_class: power

this is really handy as a stop gap to at least see what our solar panels are doing. it's a pity it doesn't provide battery and other stats :(

Moondevil-ha commented 2 years ago

I got an solis s3-wifi-st and am able to login in the webpage of the datalogger. (Firmware 0001012F, Serial 5A12...) So temporarly I just get the values via rest sensors:

  • platform: rest resource: http://IP/inverter.cgi?t=0.8156536889125297 authentication: basic username: admin password: wifipassword scan_interval: 10 value_template: '{{ value.split(";")[4] }}' name: solaris_test_current_power unit_of_measurement: "W" device_class: power

The device password changed from the inital 123456789 to my wifi password. t=0.8156536889125297 is just a random number. I use 6 rest sensors for: Inverter temprature[3], Current power[4], Yield today[5], Total yield[6], Alerts[7], Wifi-Quality[8]. The only downside is, only one update of current power every 5 minutes.

Great find, great stopgap

corvus2606 commented 2 years ago

not sure if this is affecting everyone, but the yield today value is off by a factor of 10, It's telling me I produced 47kWh (i wish) when it is in-fact 4.7

Moondevil-ha commented 2 years ago

so it seems they've probably made an undocumented change to their API, this is why i prefer to avoid cloud based services... SolisCloud Monitoring API 1.2.pdf SolisCloud API 1.0.8.pdf

I've got the original v1.0 API document, and am comparing to the referenced v1.2 and there appear to be significant changes.

corvus2606 commented 2 years ago

I was loving the simplicity of this integration but the outage has pushed me to stick an Ethernet bridge in place of the stick. So far so good (the bridge is a PE-11 unit which seems really solid).

image

image

any chance you could share your configs for the modbus registers for HASS?

DdenBraver commented 2 years ago
  • platform: rest resource: http://IP/inverter.cgi?t=0.8156536889125297 authentication: basic username: admin password: wifipassword scan_interval: 10 value_template: '{{ value.split(";")[4] }}' name: solaris_test_current_power unit_of_measurement: "W" device_class: power

this is really handy as a stop gap to at least see what our solar panels are doing. it's a pity it doesn't provide battery and other stats :(

Thank you for this. Its enough for me to use for my energy reporting and monitoring. I will probably be using this as a local solution, until SolisCloud becomes more stable.

rmhomecouk commented 2 years ago

I was loving the simplicity of this integration but the outage has pushed me to stick an Ethernet bridge in place of the stick. So far so good (the bridge is a PE-11 unit which seems really solid). image image

any chance you could share your configs for the modbus registers for HASS?

Certainly - Sharing is caring :)

I've just posted the files in here:

https://community.home-assistant.io/t/solis-inverter-modbus-integration/292553/54?u=rico365

roperstv commented 2 years ago

Confirming my integration also stopped working from the 27th. Will try Dden's temp fix until this is resolved, thank you.

up2datecyborg commented 2 years ago

@rmhomecouk

Sounds very interesting, do you think it's possible to bridge the TX and RX cables and have at the same time the WIFI S3 data logger to still have data on soliscloud, and have a RS485 to ethernet/wifi device?

rmhomecouk commented 2 years ago

image

rmhomecouk commented 2 years ago

@rmhomecouk

Sounds very interesting, do you think it's possible to bridge the TX and RX cables and have at the same time the WIFI S3 data logger to still have data on soliscloud, and have a RS485 to ethernet/wifi device?

It might work but you'll end up with collisions in the data line if both devices send a query. I did this with the meter and removed the 120ohm resister on a rs485 dongle which was hooked to an arduino. I had decent readings most of the time but sometimes they were out of sync.

I've now decided just to sell the wifi stick and stay away from the Solis cloud.

hultenvp commented 2 years ago

The comment of @LucidityCrash in the discussion thread allowed me to find at least a partial way around the current API limitations. Apparently only some API calls are blocked and those are not critical for the actual data retrieval. People that do have a valid key and secret should now again be able to get data from SolisCloud. The fix is in 2.3.5 and is available on HACS. If you have no valid key and secret (anymore) then sorry, this will not help. Let me know if you see crashes, I had to fix this on my "production" HA instance with limited means to test. Keeping the issue open to monitor what happens to the API.