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

RFC: Introduce Zephyr Driver Support for Single Edge Nibble Transmission (SENT) Protocol #83983

Open
congnguyenhuu opened this issue Jan 15, 2025 · 0 comments
Labels
Architecture Review Discussion in the Architecture WG required RFC Request For Comments: want input from the community

Comments

@congnguyenhuu
Copy link
Contributor

Introduction

This RFC proposes the introduction of a Zephyr driver to support the SENT protocol, enhancing the capabilities of the Zephyr RTOS for automotive sensor applications (https://en.wikipedia.org/wiki/SENT_(protocol)).

Technical document reference: https://www.nxp.com/docs/en/application-note/AN4219.pdf

Problem description

The SENT protocol is widely used in automotive applications for sensor communication. Adding support for SENT in Zephyr will enable developers to integrate automotive sensors more efficiently, leveraging Zephyr’s real-time capabilities.

Proposed change

Introduce new Zephyr driver support for SENT protocol: PR #80117.

Detailed RFC

Proposed change (Detailed)

  1. Driver Architecture:
    • The driver will be implemented as a new driver Zephyr.
    • The driver will provide APIs for SENT initialization, data transmission, and error handling.
    • The driver will support SENT receivers.
  2. Configuration:
    • The driver will be configurable via Kconfig options.
    • Device Tree bindings will be provided to specify hardware configurations.
  3. APIs Design:
  • The driver will expose APIs for receiving SENT frames.
    • start_rx(): Enable a specific channel to start receiving from the bus
    • stop_rx(): Disable a specific channel to stop receiving from the bus
    • add_rx_callback(): Add a callback function to handle messages received for a specific channel
  • Callbacks will handle SENT events
    • sent_rx_callback_t(): Callback handler function signature for receiving
  1. Testing:
    • sample samples/boards/nxp/s32/sent will validate the driver’s functionality and show how to use the driver.

Dependencies

Hardware: New components are required to interface with SENT sensors

Concerns and Unresolved Questions

Alternatives

Adding support for SENT in Zephyr will significantly benefit automotive applications, providing a robust and real-time solution for sensor communication.

@congnguyenhuu congnguyenhuu added the RFC Request For Comments: want input from the community label Jan 15, 2025
@henrikbrixandersen henrikbrixandersen added the Architecture Review Discussion in the Architecture WG required label Jan 15, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Architecture Review Discussion in the Architecture WG required RFC Request For Comments: want input from the community
Projects
Status: Todo
Status: No status
Development

No branches or pull requests

2 participants