PatrickE94 / pycalima

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

fan.getFactorySettingsChanged() and fan.getMode() report wronmg lenght #9

Closed toast1234 closed 5 years ago

toast1234 commented 5 years ago

Need to comment those two lines in cmdline.py to get it to work with my fans:

`root@e-linux01:/opt/src/pycalima# python3 cmdline.py -m 58:2b:db:01:b0:3b -p 12234107 -s [0x3] Device Name (READ ) = (10) 5041582043616c696d61 [0x5] Appearance (READ ) = (2) 0000 [0x7] Peripheral Preferred Connection Parameters (READ ) = (8) 900190010400e803 [0xb] Serial Number String (READ ) = (8) 3030303030303000 [0xd] Model Number String (READ ) = (2) 3130 [0xf] Hardware Revision String (READ ) = (6) 30312e303000 [0x11] Firmware Revision String (READ ) = (6) 30312e303200 [0x13] Software Revision String (READ ) = (5) 30312e3035 [0x15] Manufacturer Name String (READ ) = (3) 504158 [0x18] 4cad343a-209a-40b7-b911-4d9b3df569b2 (WRITE ) [0x1a] d1ae6b70-ee12-4f6d-b166-d2063dcaffe1 (READ ) = (1) 01 [0x1c] b85fa07a-9382-4838-871c-81d045dcc2ff (READ WRITE ) = (20) 53686f7765720000000000000000000000000000 [0x1e] 638ff62c-3823-4e0f-8179-1695c46ee8af (READ ) = (6) 582bdb01b03b [0x21] 25a824ad-3021-4de9-9f2f-60cf8d17bded (READ ) = (1) 00 [0x23] 528b80e8-c47a-4c0a-bdf1-916a7748f412 (READ ) = (12) 250052000a00000001000000 [0x26] 63b04af9-24c0-4e5d-a69c-94eb9c5707b4 (READ ) = (1) 01 [0x28] 90cabcd1-bcda-4167-85d8-16dcd8ab6a6b (READ WRITE ) = (1) 00 [0x2a] 1488a757-35bc-4ec8-9a6b-9ecf1502778e (READ WRITE ) = (6) 9808e8030000 [0x2c] e782e131-6ce1-4191-a8db-f4304d7610f1 (READ WRITE ) = (4) 01030101 [0x2e] 49c616de-02b1-4b67-b237-90f66793a6f2 (READ WRITE ) = (2) 001e [0x30] a22eae12-dba8-49f3-9c69-1721dcff1d96 (READ WRITE ) = (5) 1900003408 [0x32] 118c949c-28c8-4139-b0b3-36657fd055a9 (READ WRITE ) = (5) 0084030000 [0x34] 8b850c04-dc18-44d2-9501-7662d65ba36e (READ WRITE ) = (2) 0000 [0x36] f508408a-508b-41c6-aa57-61d1fd0d5c39 (READ WRITE ) = (1) 00 [0x38] 6dec478e-ae0b-4186-9d82-13dda03c0682 (READ WRITE ) = (4) 070e0c02 [0x3a] b5836b55-57bd-433e-8480-46e4993c5ac0 (READ WRITE ) = (5) 0016000600 [0x3c] faa49e09-a79c-4725-b197-bdc57c67dc32 (READ WRITE ) = (2) 0101 [0x3e] ff5f7c4f-2606-4c69-b360-15aaea58ad5f (READ WRITE ) = (1) 00 root@e-linux01:/opt/src/pycalima# python3 cmdline.py -m 58:2b:db:01:b0:3b -p 12234107 Device Name: PAX Calima Model Number: 10 Serial Number: 0000000 Hardware Revision: 01.00 Firmware Revision: 01.02 Software Revision: 01.05 Manufacturer: PAX Alias: Shower Traceback (most recent call last): File "cmdline.py", line 135, in main() File "cmdline.py", line 111, in main print("Factory Settings Changed: ", fan.getFactorySettingsChanged()) File "/opt/src/pycalima/pycalima/Calima.py", line 174, in getFactorySettingsChanged return bool(unpack('<I', self._readUUID(CHARACTERISTIC_FACTORY_SETTINGS_CHANGED))) struct.error: unpack requires a bytes object of length 4

root@e-linux01:/opt/src/pycalima# python3 cmdline.py -m 58:2b:db:01:b0:3b -p 12234107 Device Name: PAX Calima Model Number: 10 Serial Number: 0000000 Hardware Revision: 01.00 Firmware Revision: 01.02 Software Revision: 01.05 Manufacturer: PAX Alias: Shower Traceback (most recent call last): File "cmdline.py", line 135, in main() File "cmdline.py", line 112, in main print("Mode: ", fan.getMode()) File "/opt/src/pycalima/pycalima/Calima.py", line 177, in getMode v = unpack('<H', self._readUUID(CHARACTERISTIC_MODE)) struct.error: unpack requires a bytes object of length 2

root@e-linux01:/opt/src/pycalima# python3 cmdline.py -m 58:2b:db:01:b0:3b -p 12234107 Device Name: PAX Calima Model Number: 10 Serial Number: 0000000 Hardware Revision: 01.00 Firmware Revision: 01.02 Software Revision: 01.05 Manufacturer: PAX Alias: Shower Fan Speed Settings: Fanspeeds(Humidity=2200, Light=1000, Trickle=0) Sensors Sensitivity: Sensitivity(HumidityOn=1, Humidity=3, LightOn=1, Light=1) Light Sensor Settings: LightSensorSettings(DelayedStart=0, RunningTime=30) Heat Distributor: HeatDistributorSettings(TemperatureLimit=25, FanSpeedBelow=0, FanSpeedAbove=2100) Boost Mode: BoostMode(OnOff=0, Speed=900, Seconds=0) Led: 0000 Automatic Cycles: 0 Time: Time(DayOfWeek=7, Hour=14, Minute=27, Second=33) Silent Hours: SilentHours(On=0, StartingHour=22, StartingMinute=0, EndingHour=6, EndingMinute=0) Trickle Days: TrickleDays(Weekdays=1, Weekends=1) FanState(Humidity=31, Temp=21.0, Light=11, RPM=0, Mode='Trickle ventilation') FanState(Humidity=31, Temp=21.0, Light=11, RPM=0, Mode='Trickle ventilation')`

toast1234 commented 5 years ago

Thanks, working now.