openaliro
Aliro reader: UWB/CCC core and ESP32-S3/C5/C6 port
Loading...
Searching...
No Matches
aliro_uwb_internal.h
Go to the documentation of this file.
1
3#pragma once
4
7#include <cherry/cherry.h>
8#include <cherry/cherry_ccc.h>
9
10#include <stdint.h>
11
38
41 CREATED,
42 M1_SENT,
43 M3_SENT,
44 RANGING,
45 SUSPEND_REQ_SENT,
46 SUSPENDED,
47 RESUME_REQ_SENT,
48};
49
61 void *user_data;
62 uint32_t session_id;
63 uint8_t *ursk;
64 int64_t time_offset;
65 uint16_t selected_protocol_version;
76 enum aliro_uwb_session_state state;
77};
78
79/* Shared between the session and message-handling sources. */
— reader-device public interface.
aliro_uwb_err
Status codes returned by the Aliro UWB adapter.
Definition aliro_uwb_adapter.h:22
enum aliro_uwb_err aliro_uwb_session_init(struct aliro_uwb_session *session)
Initialize a session by creating and configuring a CCC Aliro responder, setting URSK,...
Definition aliro_uwb_session.c:122
aliro_uwb_session_state
BLE-handshake state of a session.
Definition aliro_uwb_internal.h:40
enum aliro_uwb_err aliro_uwb_session_start(struct aliro_uwb_session *session)
Start ranging for a per-approach session.
Definition aliro_uwb_session.c:192
enum aliro_uwb_err cherry_err_to_aliro(enum cherry_err err)
Map a CCC error code to its Aliro UWB equivalent, treating unknown errors as internal failures.
Definition aliro_uwb_adapter.c:21
enum aliro_uwb_err aliro_uwb_session_stop(struct aliro_uwb_session *session)
Stop an active CCC session, transitioning to SUSPENDED state.
Definition aliro_uwb_session.c:214
— per-session public interface.
void(* aliro_uwb_session_cb_t)(struct aliro_uwb_session_event *event, void *user_data)
Session notification callback type.
Definition aliro_uwb_session.h:88
void(* aliro_uwb_adapter_transmit_message_t)(struct aliro_uwb_message *message, struct aliro_uwb_session *session, void *user_data, bool timeout)
BLE transmit callback: sends an adapter-built message to the peer.
Definition aliro_uwb_session.h:91
— Cherry core (context + device-capabilities) interface.
cherry_err
Status codes returned across the Cherry / CCC seam.
Definition cherry.h:21
— CCC/Aliro-session interface (seam the adapter drives).
Reader-side selection preferences (borrowed for the adapter's lifetime).
Definition aliro_uwb_adapter.h:54
Session-independent reader state shared across all ranging sessions for an Aliro UWB adapter.
Definition aliro_uwb_internal.h:16
struct cherry_common_diag_cfg * diag_config
Diagnostic configuration for CCC session reporting (e.g., ranging data, signal strength,...
Definition aliro_uwb_internal.h:36
struct cherry * cherry_ctx
Cherry library context managing CCC session lifecycle and event dispatch.
Definition aliro_uwb_internal.h:20
struct aliro_uwb_adapter_reader_config * config
Reader adapter configuration supplied by the caller (e.g., ranging parameters, capabilities).
Definition aliro_uwb_internal.h:25
struct cherry_ccc_capabilities ccc_caps
CCC device capabilities (supported channels, PRF, ranging mode) discovered during adapter initializat...
Definition aliro_uwb_internal.h:30
Per-approach ranging-setup session record holding the CCC state machine and derived keys for one Alir...
Definition aliro_uwb_internal.h:54
struct cherry_ccc_session * ccc_session
Cherry CCC session object managing DS-TWR state and M1-M4 message handling for this ranging session.
Definition aliro_uwb_internal.h:70
struct aliro_uwb_adapter * aliro_ctx
Session-independent reader state shared by this per-approach session.
Definition aliro_uwb_internal.h:58
struct cherry_ccc_aliro_session_config ccc_aliro_config
CCC Aliro session configuration encoding the M1-M4 setup parameters (MAC, time sync,...
Definition aliro_uwb_internal.h:75
Negotiated Aliro ranging params (filled in-place across M1-M4).
Definition cherry_ccc.h:159
Device CCC/Aliro capability set advertised to the peer.
Definition cherry_ccc.h:26
CCC ranging session bound to FiRa MAC.
Definition cherry_ccc_shim.c:50
Per-session diagnostics selection flags and CIR window parameters, passed by value.
Definition cherry_common.h:15
Opaque Cherry context holder.
Definition cherry_ccc_shim.c:27