feathersdk.comms.comms_manager Module¶
- exception feathersdk.comms.comms_manager.CanNotEnabledError(*args: Any, **kwargs: Any)¶
Bases:
ExceptionError raised when a CAN interface is not enabled.
- exception feathersdk.comms.comms_manager.CanOverloadError¶
Bases:
ExceptionError raised when the CAN bus is overloaded.
- class feathersdk.comms.comms_manager.CommsManager(*args, **kwargs)¶
Bases:
objectHandles sending and receiving messages over CAN and TCP.
Provides a single point of entry for sending and receiving messages over CAN and TCP. Any new instances of this class will point to the same instance.
The manager also checks for message overload on the CAN bus and will raise an error if the message rate is too high.
You can
- add_callback(*args, **kwargs)¶
- add_endpoint(*args, **kwargs)¶
- cansend(*args, **kwargs)¶
- clear_endpoints(*args, **kwargs)¶
- is_running() bool¶
Check if the background polling thread is currently running.
- on_abort(*args, **kwargs)¶
- on_fork() None¶
Called when the process forks.
- register_single_msg_checker(*args, **kwargs)¶
- remove_callback(*args, **kwargs)¶
- remove_endpoint(*args, **kwargs)¶
- reset(*args, **kwargs)¶
- set_is_dry(*args, **kwargs)¶
- set_single_message_mode(*args, **kwargs)¶
- tcpsend_modbus(*args, **kwargs)¶
- exception feathersdk.comms.comms_manager.CommsManagerNotRunningError(*args: Any, **kwargs: Any)¶
Bases:
ExceptionError raised when the comms manager is not running.
- class feathersdk.comms.comms_manager.LoadAndTime(load, last_message_time)¶
Bases:
tuple- last_message_time¶
Alias for field number 1
- load¶
Alias for field number 0
- exception feathersdk.comms.comms_manager.MissingMotorUIDError(*args: Any, **kwargs: Any)¶
Bases:
ExceptionError raised when a motor UID is required but not provided.
- exception feathersdk.comms.comms_manager.PendingReceiveMessageError(*args: Any, **kwargs: Any)¶
Bases:
ExceptionError raised when a message is to be sent to a motor when we are awaiting a response in single message mode.
- class feathersdk.comms.comms_manager.SendCanMessage(*args: Any, **kwargs: Any)¶
Bases:
objectData class representing a CAN message that is about to be sent. Only used for WireHawk
- can_id: int¶
- data: bytes¶
- extended: bool¶
- iface: str¶
- motor_uid: str | None = None¶
- class feathersdk.comms.comms_manager.SendTCPMessage(*args: Any, **kwargs: Any)¶
Bases:
objectData class representing a TCP message that is about to be sent. Only used for WireHawk
- fcode: int¶
- ip: str¶
- reg_addr: int¶
- reg_val: int¶
- tid: int¶
- uid: int¶
- exception feathersdk.comms.comms_manager.SocketCANLibError¶
Bases:
ExceptionError raised when the socketcan library returns a non-zero error code.
- exception feathersdk.comms.comms_manager.UnknownInterfaceError(*args: Any, **kwargs: Any)¶
Bases:
ExceptionError raised when the interface is not an interface, or is not being tracked by CommsManager.