async fn handle_read_counter<H, C>(
service: &mut CryptoService<H, C>,
payload: &[u8],
tx_buf: &mut [u8],
) -> usizewhere
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.