- feat: support reading iout_set and vout_set (
1d03f20
)
- feat(bic): add support for system_status
fix(bic): fix incorrect fault_status mapping (4f4a00a
)
- fix(listener): fix hanging issue described in 1cf8f3c
the hanging described in previous commit is due to deadlock in
can.Notifier, essentially you should not block
Notifier.on_message_received
as it is called after acquiring a mutex,
so that only one handler may be executed at a time.
the solution to this problem is to execute handler asynchrounusly
with a thread pool. (220f733
)
- fix(bic): prefetch scaling factor to avoid hanging
fix(bic): strip mfr model
when quering temperature without first quering scaling factor, the library would hang, without receving scaling factor response.
and no subsequent response is ever received until a system reboot.
by prefetching scaling factor before doing anything, we can workaround
the issue. (1cf8f3c
)
- chore: bump poetry.lock (
7ab14a5
)
- fix: expose Bic to the pybic package (
cb68adf
)
- chore: initial commit (
99c4adb
)
- feat(bic): add support for more bic commands
fix(listener): filter message not meant for the controller
Added support for:
- temperature (r)
- fault_status (r)
- mfr_id (r)
- mfr_model (r)
- mfr_serial (r)
- mfr_date (r)
- mfr_revision (r)
- mfr_location (r) (
9ce39df
)
- feat(bic): impl. bic property getters and setters
feat(listener): impl. CAN listener for bic feat(utils): impl. can message formatter
Supported Properties:
- operation (r/w)
- v_in (r)
- v_out (r/w)
- i_out (r/w)
- reverse_v_out (r/w)
- reverse_i_out (r/w)
- scaling_factor (r)
- bidirectional_config (r/w)
- system_config (r/w)
- direction_ctrl (r/w) (
f91c54f
)
- refactor(promise): use promise for asynchronus results (
c9c8d26
)
- style: reformat code with black, isort (
f1c3c82
)