[OBSOLETE] MiHome (Connect) V2.0.1 [Energenie] (not Xiaomi MiHome)

Hopefully a pro active smartthings staff member with knowledge of cloud to cloud coms could have a look in the background and give us a start @posborne sorry for randomly tagging ypu

Mihome messaged, saying they had made a change. Is it working for anyone

I get this when I try to login to my mihome credentials.

I’m close to selling my mihome gear now :frowning:

Can you check the logs in the IDE to see what the error is.
I’d raise a ticket with energies. Might help put pressure on

still think its smartthings
image

From everything I have looked at and tested this looks to be some kind of issue with the SSL cert or setup on the MiHome domain. All other APIs I try using the same code work perfectly fine, including others using basic auth.

I suspect the version of groovy or some underlying system was upgraded when the SmartThings firmware was updated and that is more strict around security (a good thing) and that it is rejecting the SSL cert.

There are ways around this in groovy, the ignoreSSLIssues flag I think(?), but this isn’t exposed to SmartApps and Device Handlers. I’ve given up on the Energenie stuff now, the one way communications was annoying enough and then this has made it too frustrating.

My current work around for my Energenie light switch is to create a simulated switch and then using webcore to call IFTTT to turn the switch on and off. It’s slow and crap but works well enough until I can replace it with a Xiaomi one.

This is all I can see in the IDE (unless I’m looking in the wrong place). Seems to log the action but has a false attribute.

I have left a message with MiHome along with the screenshots I posted earlier. Lets see what they come back with.

Graham

Look under live logs while you enter your details

Energenie are investigating :slight_smile:

They got back to me today…

A quick update regarding our checks. We have confirmed the certification for Cloudflare is fine. Using a couple of SSL checker sites (https://www.sslshopper.com/ssl-checker.html and https://www.ssllabs.com/ssltest) and using the address mihome4u.co.uk, you will see that our certification is good should be accepted by the SmartThings site.

It looks like something has changed at SmartThings which may be causing the issue. We can confirm that the API can still be called directly using Python and Curl. We believe the problem to be at the SmartThings end.

Same response to me. Are you flagging with smartthings?

I’m asking whats changed but they don’t seam to interested. They said ask on the forum. The more that pester the more chance we will have? I am really mad the mihome was one of the reasons I selected smartthings and IT WORKED fine till a few weeks ago.

Same here, i’ll call them tomorrow

ive done some testing and found below, ive sent it back to mihome

Ive tried the following in my code
https://www.yalehomesystem.co.uk/homeportal/api/login/check_login/ – I get a response
https://wap.tplinkcloud.com – I get a response
http://www.transat.com – I get a response (certificate was issued by Comodo like yours)

https://renderloop.com - avax.net.ssl.SSLException: java.security.ProviderException: java.security.InvalidKeyException: EC parameters error (they were listed on the SSL checker under SANs: ssl389385.cloudflaressl.com,
https://image-charts.com - avax.net.ssl.SSLException: java.security.ProviderException: java.security.InvalidKeyException: EC parameters error (some on else on smartthings having error) but on cloudflaressl.com
https://mihome4u.co.uk/ - javax.net.ssl.SSLException: java.security.ProviderException: java.security.InvalidKeyException: EC parameters error

please note
http://mihome.co.uk (not https) I get a Status: 301 not an Exception in smartthings
There is defiantly something different with cloudflaressl.com security setup (might be of note the 3 error sites only have 66 to 84 days left on the Comodo certificate

I have been trying to connect to my new smartthings hub and refusing to connect to MiHome error on log says error at line 1345
1343 def apiGET(path) {
1344
1345 try {
1346
1347 httpGet(uri: apiURL(path), headers: apiRequestHeaders()) {response ->

does this help or new problem?

same issue, get into mihome and smartthings, one of them has changed something

I wonder if we can bring is ST staff member to check if anything was changed on the ST side of things. Not sure who is the best contact but @ady624 might be able to help us find out why the exception below has started happening with httpGet without any change in the smart app code.

javax.net.ssl.SSLException: java.security.ProviderException: java.security.InvalidKeyException: EC parameters error

Http gets a 301 response, where as https has the exception. Smartthings mustn’t like the security side of mihome response. It’s just getting one of them to own up to a tweek some where

Someone with same issue on cloudfair received this…

Do you have control over Samsung Smartthings Java version? Is it on premise?

“helped me to narrow down OpenJDK7 issue with SSL in Ubuntu Trusty environment.
Just change to JDK 8 :rocket: will fix the issue.”