hardbyte / hardbyte/python-can

Meaning of can.BusABC.state

Open
#736 13 comments 3 reactions 0 assignees View on GitHub
api
Dominant language
Python
Stars
1.6k
Forks
697
PR merge metrics
No merged PRs in 30d

Description

Hello,
please help me understand the meaning of `class BusState(Enum):`. I would like to show status of the interface (Kvaser Leaf and Vector VN1610 are on my desk) as specified by CAN specification (error active, error passive and bus-off state).
But the @property `def state(self):` of the classes `class KvaserBus(BusABC):` and `class VectorBus(BusABC):` are not implemented.

I would like to implement them but I am not sure what it shall returns
- state of the CAN bus as defined by standard (active, passive, error=busoff)
- state of the Python class BusABC (active, passive=silent_mode, error=some_driver)

The documentation says that it returns ["current state of the hardware"](https://python-can.readthedocs.io/en/master/bus.html#can.BusABC.state). Does it mean state of driver connection with HW interface or state of CAN bus controller (active->passive->busoff)?

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.