This release is a pre-release and may not be stable for production use.
In-Vehicle SDK Package
This package provides the In-Vehicle SDK, offering a range of functionalities to support communication and operations with in-vehicle systems.
Features
The In-Vehicle SDK package includes the following interfaces and implementations:
-
Communication
-
CommunicatorBase: Provides the capability to send and receive byte data over various protocols. The following implementations are available:
TcpCommunicatorUdpCommunicatorMulticastCommunicatorIsoTpCommunicatorDoipCommunicator
-
RawSocketCommunicatorBase: Offers send, receive, and srp (send and receive answer) operations for
py_pcapplusplus.Packettypes. The following implementations are available:Layer2RawSocketLayer3RawSocketWiFiRawSocket
-
CanCommunicatorBase: Exposes the python-can functionality, offering operations like send, receive, sniff, and more. The following implementation is available:
CanCommunicatorSocketCan- A specific implementation for the socketcan driver
-
-
DoipUtils: A utility library for performing Diagnostic over IP (DoIP) operations, such as vehicle identity requests, routing activation, and more.
-
UdsUtilsBase: Used for performing Unified Diagnostic Services (UDS) operations, such as ECU reset, read DIDs, session change, and more. The following implementation is available:
UdsUtils- Can be initialized to work over DoIP/ISO-TP
-
IDeviceShell: Allows for the execution of shell commands. The following implementations are available:
AdbDeviceShellSerialDeviceShellSshDeviceShell
-
SomeipUtils: A utility library for SOME/IP operations, allowing the receive and parse services, and in these services invoke methods and subscribe to eventgroups
-
Plugins:
SessionChangeCrashDetector: a plugin that detects ECU crash based on UDS session changeUnrespondedTesterPresentCrashDetector: a plugin that detects ECU crash based on UDS TP that is not being respondedUdsEcuRecoverPlugin: a plugin responsible of recovering the ECU back to predefined UDS state - session and elevationRelayResetPlugin: a plugin that resets a device via relayUdsBasedEcuResetPlugin: a plugin that resets a device via UDS ECU Reset
-
ConfigurationManager: An API allowing to perform configuration of the IOT Device.
- configure_actions(action/s) - can perform the following configuration actions on the device:
IpAddAction- add an IP to an Ethernet interface, and optionally configure a route for this IP.IpRemoveAction- remove an existing IP from an Ethernet interface.CanConfigurationAction- configure CAN interface parameters. e.g. bitrate, sample-point, cc-len8-dlc flag and state.EthInterfaceConfigurationAction- configure the Ethernet interface: mtu, state and flags.WifiConnectAction- connect to a WiFi access point
- get_device_configuration() - retrieves the current device configurations:
- Ethernet interface configuration: state, IPs, flags and MTU.
- CAN interface configurations: state, bitrate, sample-point and cc-len8-dlc flag.
- The available WiFi access points.
- configure_actions(action/s) - can perform the following configuration actions on the device:
Installation
You can install the In-Vehicle SDK package using pip:
pip install cyclarity-in-vehicle-sdk
Usage
Example for importing and using CanCommunicatorSocketCan for sending a Message
from cyclarity_in_vehicle_sdk.communication.can.base.can_communicator_base import CanMessage
from cyclarity_in_vehicle_sdk.communication.can.impl.can_communicator_socketcan import CanCommunicatorSocketCan
canmsg = CanMessage(
arbitration_id=0x123,
is_extended_id = False,
is_rx=False,
data=b"\x00" * 8,
is_fd=False,
bitrate_switch=False,
)
socket = CanCommunicatorSocketCan(channel="vcan0", support_fd=True)
with socket:
socket.send(can_msg=canmsg)
Metadata
Release files for cyclarity-in-vehicle-sdk 1.0.10a52903
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cyclarity_in_vehicle_sdk-1.0.10a52903.tar.gz | 68.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cyclarity_in_vehicle_sdk-1.0.10a52903-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 169.1 kB
Release files / cyclarity_in_vehicle_sdk-1.0.10a52903.tar.gz
| Download URL | cyclarity_in_vehicle_sdk-1.0.10a52903.tar.gz |
|---|---|
| Size | 68.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f2ed65d3242edb4a70993d8c48b2c09427c198747f59600f88ed8abb88b110f0
|
|
BLAKE2b-256 checksum How to use checksums |
682fb8a5a4c20fd6e21fed250d97e52406606732182e3b366dae1d0d6ac11a3c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.0.1 CPython/3.10.13 Linux/6.1.79
|
Release files / cyclarity_in_vehicle_sdk-1.0.10a52903-py3-none-any.whl
| Download URL | cyclarity_in_vehicle_sdk-1.0.10a52903-py3-none-any.whl |
|---|---|
| Size | 101.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
38ae13963ff91b85d26240900d89b23a47a069559b52a1b0bf1fedc4692abc06
|
|
BLAKE2b-256 checksum How to use checksums |
838f2fd99329e17d4076d49f9a568cfb18db9a9691b4292a49dd1b89d32e630e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.0.1 CPython/3.10.13 Linux/6.1.79
|