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 pointCreateVlanAction- creating a VLAN interface
- 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:
The complete user manual can be found in here
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.1.14a51023
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.1.14a51023.tar.gz | 114.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cyclarity_in_vehicle_sdk-1.1.14a51023-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 274.3 kB
Release files / cyclarity_in_vehicle_sdk-1.1.14a51023.tar.gz
| Download URL | cyclarity_in_vehicle_sdk-1.1.14a51023.tar.gz |
|---|---|
| Size | 114.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5588f055073479e2722f3efba7fcc9d3da5736735a2a2c2073b2eb1f16d3eb07
|
|
BLAKE2b-256 checksum How to use checksums |
10b64109fc9a7e40a1871c0565f845d955cf2659ee80ae919f3d57544bec6aab
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.0.1 CPython/3.10.13 Linux/6.17.0-1020-azure
|
Release files / cyclarity_in_vehicle_sdk-1.1.14a51023-py3-none-any.whl
| Download URL | cyclarity_in_vehicle_sdk-1.1.14a51023-py3-none-any.whl |
|---|---|
| Size | 160.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b032bc7e460fea6366551b5bc168af3eb265e0292b53fbf10188191acdc564c7
|
|
BLAKE2b-256 checksum How to use checksums |
8e4aca0e13e1497daa829cee45bee6a5ea3a50d96d9a5487807248ae7273b2ee
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.0.1 CPython/3.10.13 Linux/6.17.0-1020-azure
|