Skip to content

Pyectool 0.2.0

Latest
Compare
Choose a tag to compare
@AhmedYasserrr AhmedYasserrr released this 03 Aug 16:32
· 2 commits to main since this release
d5f79db

0.2.0 (2025-8-3)

This version introduces a major API overhaul, replacing the flat function interface with an object-oriented design and significantly expanding fan and temperature control capabilities.


API Changes

Refactor: from functions to class-based interface

We’ve moved from standalone functional calls to a structured, class-based API via ECController.
This improves maintainability and aligns with typical Pythonic design.

Old Approach:

get_max_temperature()
set_fan_duty(75)
is_on_ac()

New Approach:

ec = ECController()
ec.get_max_temp()
ec.set_fan_duty(75, fan_idx=0)
ec.is_on_ac()

New Capabilities

Fan Control:

  • Get/set fan RPM per fan or all fans.
  • Set duty cycle per fan or globally.

Temperature Monitoring:

  • Read temperatures per sensor or all sensors.
  • Retrieve sensor metadata with get_temp_info(sensor_idx).
  • Get max temperatures, optionally ignoring battery sensor.

Documentation Updates

  • Replaced function-based docs with object-oriented examples.
  • Added full method reference for ECController.
  • Described return structure of ECTempInfo.