openhab / openhab-addons

Add-ons for openHAB
https://www.openhab.org/
Eclipse Public License 2.0
1.86k stars 3.58k forks source link

[miele] Extend binding with Wifi devices #2359

Closed bytedealer closed 4 years ago

bytedealer commented 7 years ago

Miele changed its technology from Zigbee to Wifi. You can integrate both via the XGW3000 Gateway after updating firmware. I have a new washing machine which appears automatically as thing in the inbox. The data fields can be linked in Paper UI but there are no values shown in the items values.

Expected Behavior

Show all values (Status, Program, Phase, Door, Switch). I can see this info in the Miele@home app.

Current Behavior

Nothing is shown and in the log I get the following error message: "A remote exception occurred : '-32001':'There is no home device with UID hdm:ZigBee:147952778#0.':'null'"

Possible Solution

Extend binding with flexible protocols (not only hdm:ZigBee).

Steps to Reproduce (for Bugs)

  1. You need an discovered and implemented Miele Device with Wifi communicator.
  2. Have a look in the log.

Context

The appartment is in the second floor, the devices are in the cellar. I want to know if the device is ready and the clothes are clean or dry.

Your Environment

AND....

It would be cool to have some more info like time to finish! :-)

bytedealer commented 7 years ago

@kgoderis Do you know that Wifi devices are also be available in the gateway XGW 3000?

kgoderis commented 7 years ago

@bytedealer Nope, I was not aware of this, and maybe this is something that was enabled in a recent firmware version. That being said, I hope that they did not change the API wrt how to retrieve information on devices communicating over either technology. As I do not have Wifi enabled appliance by Miele I have no means to test this...

bytedealer commented 7 years ago

Hey @kgoderis,

no I don't think they changed the API. I made some screenshots accessing the homebus of both devices (one wifi, one zigbee) via browser.

I already see the washing machine in openHAB2, it was discovered as thing, but no values coming from it.

I guess, this is because of the protocol prefix. So I get these errors in openHAB

A remote exception occurred : '-32001':'There is no home device with UID hdm:ZigBee:147952778#0.':'null'

For wifi devices it is not hdm:ZigBee but hdm:LAN followed by ID and maybe a number (#0). Please see the attachment XML_Devices_Overview.png below and there the URL of the action tags (named "Details").

I think this should not be a big thing, isn't it? Because I am not a java coder it is difficult to change that - and therefore a big thing. :-)

What do you think?

Homebus xml_devices_overview

XML ZigBee device xml_tumbledryer_details

XML WLAN device xml_washingmachine_details

XGW3000 Overview xgw3000_screenshot_devices

kgoderis commented 7 years ago

@bytedealer In that case it will indeed be a minor tweak, I hope ;-)

bytedealer commented 7 years ago

@kgoderis I would be very happy testing a experimental binding... :-)

bytedealer commented 7 years ago

Hey @kgoderis,

any news regarding the minor tweak?

bytedealer commented 6 years ago

Hey @kgoderis,

did you find some time to extend the class? Would be happy to test!

eikowagenknecht commented 6 years ago

Any chance to support the XKM3100W as well (without gateway)? I already have some working Java code to handle the encryption / decryption. But I'm not experienced in writing openHAB Addons yet. How can I help best?

https://github.com/eikowagenknecht/miele-xkm3100w has some example code to get decrypted JSON responses from the XKM3100W .

Tomibeck commented 6 years ago

I have one Miele appliance with wifi directly integrated. So no Gateway needed. Would be happy to test when you are ready

phreatom commented 6 years ago

Miele also opened a 3rd party API to access appliances registered via miele@mobile in August (https://www.miele.com/developer/). With that API it should be way easier to integrate households without gateway.

However it is currently in Beta.

lhurt commented 5 years ago

Had a quick look on the API and it looks very promising. I don't exect major changes thereore it would be awesome if someone could take care of this.

jlaur commented 5 years ago

Any news on this issue? I'm not sure why it is needed to parse the URL at all? Examples:

ZigBee: <action name="Details" URL="http://xgw3000/homebus/device?language=en&type=2&id=hdm%3AZigBee%3A001e63ccfe02173b%23210"/>

Wi-Fi: <action name="Details" URL="http://xgw3000/homebus/device?language=en&type=7&id=hdm%3ALAN%3A000301778290%230"/>

I mean, you always have the UID for unique identification:

<UID>000301778290</UID>

So why any need to parse the URL's instead of just using them for retrieving device details? I'd be happy to assist with any protocol-related questions/information (to the extent of my knowledge) or fixes/review of the binding code.

Side-note: Has anyone considered implemented the JSON-RPC protocol or the REST protocol? Both API's available on the gateway. Both undocumented though, but seems quite straight-forward. You'll get elapsed time, program and a lot of device-specific details like spinning speed (washing machine), temperature (washing machine), current/target temperature (oven), etc.

lobocobra commented 5 years ago

PING and another user, who wants that feature!

philipparndt commented 5 years ago

In the mean time Miele released an official API for the Miele@home web service (https://www.miele.com/developer/). With this API it is possible to access the devices. I have implemented a Miele@home to MQTT gateway in order to connect my Miele dishwasher to openhab (https://github.com/philipparndt/miele-to-mqtt-gw) the effort writing a openhab add-on for this should not be too big.

sirupflex commented 5 years ago

+1, have a brand new Miele@Home (Wifi) device at home (dishwasher). The current binding does not return any values for reasons stated above. I'm not a developer, unfortunately, but would be happy to test a new Wifi enabled binding if anybody is willing to take the development effort.

philipparndt commented 5 years ago

@sirupflex until there is a binding you can use the miele-to-mqtt gateway and include the device to openHAB using MQTT. See https://github.com/philipparndt/miele-to-mqtt-gw/blob/master/openHAB.md for an example.

penguin242 commented 4 years ago

Any updates regarding the new 2019 devices?

kaikreuzer commented 4 years ago

See https://github.com/openhab/openhab2-addons/issues/5947#issuecomment-524185024 - we are eagerly waiting for a PR from @MartinLepsy on this!

kaikreuzer commented 4 years ago

All, I am happy that this is finally implemented! It should be included in the next snapshot distro build, so it would be great, if you could go ahead and test it!

penguin242 commented 4 years ago

Testing will be done this afternoon ;)

On Tue, 29 Oct 2019 at 20:48, Kai Kreuzer notifications@github.com wrote:

All, I am happy that this is finally implemented! It should be included in the next snapshot distro build, so it would be great, if you could go ahead and test it!

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/openhab/openhab2-addons/issues/2359?email_source=notifications&email_token=AH7UYBZKDIJPVXDYCNOQWRDQRCHP3A5CNFSM4DO3IIDKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOECR3CEI#issuecomment-547598609, or unsubscribe https://github.com/notifications/unsubscribe-auth/AH7UYB7H547PORDBS7EAPWLQRCHP3ANCNFSM4DO3IIDA .

stefferber commented 4 years ago

My dishwasher is already 2 years old Type "G 6865 SCVi XXL" and has WLAN only. Ready to test your new binding, too. How can I install your "alpha" binding on my openHAB?

P.S.: user manual (German)

kaikreuzer commented 4 years ago

@stefferber You have to test with the latest 2.5.0-SNAPSHOT distro (so best run this separate from your production system). If all works, you can happily wait for the final 2.5 release, which is expected in December and then upgrade your production installation 😎.

stefferber commented 4 years ago

Thx @kaikreuzer for your quick hint ;-) Here is my first test result: Autodiscover does not work. I can add the gateway and dishwasher manually, but then I do not receive any data. Bildschirmfoto 2019-11-01 um 21 05 44 Bildschirmfoto 2019-11-01 um 21 10 18

Happy to support with more tests....

My configuration:

kaikreuzer commented 4 years ago

Did you try to manually triggering the scan (Inbox->"+"->Miele Binding)? This works for me and the XGW3000 is added to the inbox. If this does not work, could you check your network with the DNS-SD Browser? You should see an entry like this for the XGW3000:

Bildschirmfoto 2019-11-01 um 22 40 58
kaikreuzer commented 4 years ago

FTR, I have submitted a small fix, so that gateways do not appear to be ONLINE, even if they are noit: https://github.com/openhab/openhab2-addons/pull/6325

stefferber commented 4 years ago

Looks like I don't have a gateway at all Bildschirmfoto 2019-11-02 um 13 05 57

stefferber commented 4 years ago

But maybe my auto discovery has a problem. I cannot discover any ordinary network device either: Bildschirmfoto 2019-11-02 um 13 12 59

Is there maybe a firewall setting preventing this? I just updated to macOS Catalina.... and I get a lot of access questions.

kaikreuzer commented 4 years ago

Looks like I don't have a gateway at all

I think this explains - afaik, the local device support only works through an XGW3000 gateway (@MartinLepsy, please correct me, if I am wrong). This fact should probably be added to the documentation to make it clear...

stefferber commented 4 years ago

@kaikreuzer by the way: Thx for the hint with this very cool Discovery tool.

MartinLepsy commented 4 years ago

Hello @kaikreuzer that is right, you need a XGW3000 Gateway to discover the devices. If you have one, you have to add it and afterwards all other devices are discovered.

stefferber commented 4 years ago

OK. Than please explain in the documentation that the Miele Wifi based devices from 2017 onwards will not work with this binding. I have tested several times without success.

kaikreuzer commented 4 years ago

I have created https://github.com/openhab/openhab2-addons/pull/6351 to clarify the situation.

Please note that the "Miele Wifi based devices from 2017 onwards" ARE supported by the binding, but that you still require the XGW3000 for establishing the communication.

JoeD84 commented 4 years ago

Any chance that Wifi only devices will be supported without the XGW3000? The XGW3000 is pretty expensive. As I understand the official API would support Wifi only setups.

benofishal commented 4 years ago

Hello all, I see no updates for a while. I've been following this thread, checking in every 6 months to year since 2017. I was delighted to see we had a solution for the wifi devices, having bought a new wifi washing machine myself a year a go.

Anyway I have the XGW gateway, two zigbee devices, and one wifi device. Both the zigbee and wifi are detected and autodiscovered as things, yet only the zigbees show any data. I have just today upgraded from 2.0 to 2.5 as saw no need until I saw the recent posts stating Miele Wifi compatibility.

My gateway shows all devices including wifi. I have also factory reset it and re-added all devices. Deleted any references in openHAB and setup the gateway again (it wouldn't autodiscover I had to manually input the IP and connection details). Then it would autodiscover the appliances, but still the wifi washer won't show any data.

Thoughts please.

Thanks you.

kaikreuzer commented 4 years ago

@benofishal Why do you expect updates on a closed issue? If you encounter a bug that hasn't been reported so far, please enter a new bug issue. If you only need support you might be better of in our discussion forum at https://community.openhab.org/.

benofishal commented 4 years ago

Sorry kaikreuzer I hadn't realised it was closed and have been following for several years. Will do as you say, no harm intended.