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.1.0a38170
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.0a38170.tar.gz | 71.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cyclarity_in_vehicle_sdk-1.1.0a38170-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 176.2 kB
Release files / cyclarity_in_vehicle_sdk-1.1.0a38170.tar.gz
| Download URL | cyclarity_in_vehicle_sdk-1.1.0a38170.tar.gz |
|---|---|
| Size | 71.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9fe49ba25657b7cbdc5975ade118306594cd45360afe2c8c53ed19959111e616
|
|
BLAKE2b-256 checksum How to use checksums |
533f35f812ed06973d664b8c1ba0490000488010dc3e7cf9f537334ae4b4c21e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.0.1 CPython/3.10.13 Linux/6.11.0-1013-azure
|
Release files / cyclarity_in_vehicle_sdk-1.1.0a38170-py3-none-any.whl
| Download URL | cyclarity_in_vehicle_sdk-1.1.0a38170-py3-none-any.whl |
|---|---|
| Size | 105.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
349778a54b84a99a4b12044901aab850c2f2b208cf743bf9e2a055499c3f6e83
|
|
BLAKE2b-256 checksum How to use checksums |
2ead6d4b01ecee144b6ead1ead6e6519bc750b1db820b8d8b8d599c2ef8c7fec
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.0.1 CPython/3.10.13 Linux/6.11.0-1013-azure
|