Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature Proposal : CAN Protocol Adapter (Provider) with SocketCAN and ISO-TP support for request-response capabilities. #14

Open
RaviprasadBS opened this issue Nov 6, 2024 · 0 comments

Comments

@RaviprasadBS
Copy link

Background

The current Kuksa-can-provider only supports reading CAN frames from the bus and lacks functionality for sending requests over the CAN bus, except for actuator signals. This limitation restricts use cases for applications that require two-way vehicle data exchange, such as diagnostics, monitoring, and control.

Proposed Solution

The proposed solution aims to enhance CAN communication by integrating Socket CAN and ISO-TP support for both request and response operations, addressing the current limitations in two-way data exchange. This solution enhances the ability to interact with CAN networks for diagnostics, monitoring, and control. By utilizing DBC support, CAN data can be decoded and the actual values can be fed into Kuksa data broker.

Key Features

User Configuration : JSON-based user configuration for setting up CAN and Socket CAN interfaces, defining CAN request-response tables, specifying protocol parameters, and mapping VSS and PID signal names.

Socket CAN Integration : Compatible with Socket CAN interfaces for CAN bus communication in Linux-based environments.

Read CAN Frame and Decode: Read CAN frames from the bus and decode them using DBC files, mapping the signals to their corresponding values.

Register and Feed Data Points to Data Broker: Register VSS signal data points with Kuksa Data Broker and feed the decoded or interpreted values into the data broker.

Technical context
Technical context

Programming language and Dependencies

  • Programming Language : Rust
  • Linux Dependencies : socket-can and can-isotp driver.

Expected Outcome

  • A Rust-based CAN Protocol Adapter capable of configuring the CAN bus, sending user-defined CAN requests, receiving responses on a CAN network, and feeding the decoded values as VSS signals to the Kuksa DataBroker.

  • Basic documentation, including usage examples and integration guide with Kuksa data broker and linux systems.

RaviprasadBS added a commit to RaviprasadBS/kuksa-incubation that referenced this issue Dec 16, 2024
RaviprasadBS added a commit to RaviprasadBS/kuksa-incubation that referenced this issue Dec 16, 2024
RaviprasadBS added a commit to RaviprasadBS/kuksa-incubation that referenced this issue Dec 16, 2024
RaviprasadBS added a commit to RaviprasadBS/kuksa-incubation that referenced this issue Dec 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant