3#ifndef WOZ_UWB_FIRA_SESSION_H_
4#define WOZ_UWB_FIRA_SESSION_H_
11 uint32_t *block_out, int64_t *age_ms_out);
13#if defined(CONFIG_WOZ_ALIRO)
15void fira_session_set_provisioned_ursk(
const uint8_t *ursk);
18const uint8_t *fira_session_get_ursk(
void);
21void fira_session_set_ccc_range_cm(int32_t cm, uint32_t block);
34void fira_session_set_ccc_range_sts(int32_t driver_verdict, int16_t quality_index);
37struct fira_range_integrity {
51bool fira_session_last_range_integrity(
struct fira_range_integrity *out);
56void fira_session_reset_ranges(
void);
59uint32_t fira_session_range_generation(
void);
62uint32_t fira_session_current_slot(
void);
88#define FIRA_RANGE_NEG_TOL_CM 30
89#define FIRA_RANGE_MAX_CM 3000
92bool fira_session_range_plausible(int32_t cm);
98#define FIRA_STS_QUALITY_MIN 0
103bool fira_session_sts_quality_ok(int32_t driver_verdict, int16_t quality_index);
111#define FIRA_RANGE_TRUST_K 3
112#define FIRA_RANGE_SPREAD_CM 50
116bool fira_session_range_trusted(
void);
120uint8_t fira_session_trust_level(
void);
124void fira_session_set_range_listener(
void (*cb)(
void));
bool fira_session_last_range(int32_t *cm_out, uint16_t *addr_out, uint8_t *nlos_out, uint32_t *block_out, int64_t *age_ms_out)
Fetch the most recent valid DS-TWR range; out-params optional (NULL to skip).
Definition fira_session.c:76