openaliro
Aliro reader: UWB/CCC core and ESP32-S3/C5/C6 port
Loading...
Searching...
No Matches
uwb_min.h File Reference

— Minimal DW3110 (DWM3000EVB) hardware bring-up driver. More...

#include <stdbool.h>
#include <stdint.h>
Include dependency graph for uwb_min.h:

Go to the source code of this file.

Data Structures

struct  uwb_selftest_result
 Self-test result emitted by uwb_min_selftest. More...
 
struct  uwb_twr_result
 Result of a raw static-STS SS-TWR initiator burst (uwb_min_twr_poll). More...
 
struct  uwb_twr_frame
 Outcome of one raw SS-TWR POLL/RESP exchange (uwb_min_twr_exchange). More...
 

Macros

#define UWB_DW3110_DEV_ID   0xDECA0302u
 Expected DEV_ID value for the DW3110 (the IC on the DWM3000 module).
 

Functions

int uwb_min_read_chipid (uint32_t *id_out)
 Read the DW3000-family DEV_ID register over SPI.
 
int uwb_min_hw_reset (void)
 Pulse the DW3110 RST line low to force a hardware reset.
 
int uwb_min_selftest (struct uwb_selftest_result *out)
 Radio self-test: configure, TX one frame, then arm RX.
 
int uwb_min_twr_prep (void)
 Configure the radio for the raw SS-TWR loopback (SP3-ND, ch9, code11); no STS.
 
void uwb_min_twr_exchange (struct uwb_twr_frame *f)
 Run one POLL/RESP exchange; the STS must already be programmed.
 
int uwb_min_twr_poll (uint32_t n, uint32_t period_ms, struct uwb_twr_result *out)
 Raw static-STS SS-TWR initiator burst (bench probe).
 
int uwb_min_radio_init (void)
 Ensure the DW3110 is fully initialised (probe + initialise + configure + LEDs).
 
uint32_t uwb_min_radio_generation (void)
 Count of fresh radio inits; changes whenever the base config was re-applied.
 

Detailed Description

— Minimal DW3110 (DWM3000EVB) hardware bring-up driver.