PatrickE94 / pycalima

Python interface for Pax Calima Fan via Bluetooth LE
Apache License 2.0
45 stars 22 forks source link

Heat transfer and the yet unknown values #12

Open Gozem opened 5 years ago

Gozem commented 5 years ago

Hi, just bought two Pax Calima and found this. Gonna test it in a few hours.

However, reading the protocol manifest so far, I think the missing pieces might be related to the heat transfer feature. If you take the app, (on ios atleat) and reset the fan. Connect again, you get a series of questions to determine what ”mode” or ”profile” the fan is in. One is ”heat transfer”. Where you set a temperature where is starts. Manual says defailt is 25C (and off at 22C).

Bad part is that if it is in this mode, every other feature is disabled (sensors).

I bought them to ventilate a combined pool area and outdoor room, all completely glassed in. I want both the humidity sensor and heat transfer (cooling during summer).

I hope these scripts can solve my issues. Any ideas on this?

Edit: I forgot. I powered my fan using 12V after I couldnt find the heat transfer settings. Also switched from Android to IOS in an attempt to get what I wanted. Not until I hit ”reset device” and reconnected did I get the questions which switched to heat transfer mode. I dont know if 12V powering is a must. Ill test it :-)

Gozem commented 5 years ago

Nope, 12V is not needed to access heat transfer mode.

Gozem commented 5 years ago

The heat transfer mode (in the app) has just 3 settings. Temperature. Fan speed above temp, and fan speed below temp.

Default are: Temp = 25C Speed above: Just a slider with no printed values. At about 80% on the scale. Speed below: Default off

PatrickE94 commented 5 years ago

Actually all the characteristics are now decoded. I just haven't updated the manifest properly. Try the getHeatDistributor() function, it will return a named tuple with TemperatureLimit FanSpeedBelow FanSpeedAbove. Rev-eng is still fun tho! If you enjoy it, you can simply not check and discover for yourself!

Gozem commented 5 years ago

Oh yes, I saw that once I started to play with the API. Sorry for not updating.

I also added setMode and setHeatDistributor and tested. Seems when changing mode (setMode), it also resets all(?) settings. Eg. I can flip between mode 0 (normal with sensors) and 4 (heat transfer), but has to reconfigure all settings when switching mode.

I do understand why heat-transfer doesn't work with sensor mode. What takes prescience if over temperature and humid at the same time? However, it would have been nice to have both at the same time.

PatrickE94 commented 5 years ago

In my humble opinion, it should simply be decided by what requires the highest speed. But they have almost surely taken the easy route and created different flows depending on which mode is configured. Reconfiguring is not that bad when it's scripted/automatic. But as you say, you need to externally decide which mode should be configured at the moment, which slightly defeats the autonomy of the device.