mob41 / broadlink-java-api

A clean Broadlink API for Java
MIT License
22 stars 25 forks source link

Implementation for Hysen and Floureon thermostats #18

Closed alpapad closed 6 years ago

alpapad commented 6 years ago

Would you be interested in something like this?

It is wip, and needs a definition for the hysen device (basically a description and a type)

mob41 commented 6 years ago

Hi, sorry for a late reply. It would be a good idea to add these device into the library.

However, your indentation seems to be incorrect. We use spaced indentation to ensure the file is correctly indented and can read in any systems. You can take a look of this to see how to change your IDE indentation format: https://github.com/mob41/broadlink-java-api/blob/master/CONTRIBUTING.md

Also BLDevice.java except the devType stuff supposed not to be changed.

alpapad commented 6 years ago

I am out, on vacation.

I will update and push a new PR.

Thanks.

On Wed, Mar 28, 2018 at 12:35 PM, mob41 notifications@github.com wrote:

Hi, sorry for a late reply. It would be a good idea to add these device into the library.

However, your indentation seems to be incorrect. We use spaced indentation to ensure the file is correctly indented and can read in any systems. You can take a look of this to see how to change your IDE indentation format: https://github.com/mob41/broadlink-java-api/blob/master/CONTRIBUTING.md

Also BLDevice.java except the devType stuff supposed not to be changed.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/mob41/broadlink-java-api/pull/18#issuecomment-376824023, or mute the thread https://github.com/notifications/unsubscribe-auth/ABIa3Uhm80lsNUp2htDBDsCMyeV9GYb4ks5ti1lYgaJpZM4Swzv1 .

alpapad commented 6 years ago

I think I must have a different setting for new lines, that is why BLDevice.java show so many diffs..

I will need some time to fix this. In the mean time, indention used for the rest of the files is 4spaces + nl at end of file.

alpapad commented 6 years ago

Hi, it should be ok now.

mob41 commented 6 years ago

Cause I don't have any of these devices, I cannot check if it is working. Do you have these devices and tested working?

alpapad commented 6 years ago

I have the Floureon one, and it is working fine. I copied the code from the python lib (impl for Hysen), and tested with my device. My device has a different code than the Hysen one and that is the only difference as far as I can tell. Seems there is a family of such devices (I think people have reported the python code working on other models as well) that either share the same code as the Hysen one, or have a different code, but with the exact same functionality..

Later on I am planning on having unit tests for the device, to check each function. All functions are supported. The only "grey" area in this implementation is that the devices send response codes per command, but these are not really checked (would love to know what they send back). Same applies to the python lib...

mob41 commented 6 years ago

Seems the code requires tidying afterwards. Your ****Command.java that extends CmdPayload would be better to be placed in com/github/mob41/blapi/pkt/cmd/hysen instead.