Skip to main content

handle_read_counter

Function handle_read_counter 

Source
async fn handle_read_counter<H, C>(
    service: &mut CryptoService<H, C>,
    payload: &[u8],
    tx_buf: &mut [u8],
) -> usize
where H: AteccHal, C: Clock, H::Error: Debug,
Expand description

Read one of the chip’s monotonic counters and return its raw value.

Payload format: [counter_id: u8] (0 = Counter0, 1 = Counter1). Any other value yields [ResponseStatus::InvalidPayload].

Response payload: 4 bytes little-endian, the chip’s u32 count unaltered. The host CLI decodes this into a decimal + hex value for the operator. Unlike handle_get_pin_status this does not map the count to “tries remaining”, the goal is diagnostic transparency on what the chip actually stores.