Firmware for the Pico / Pico 2 that acts as a USB FIDO2 authenticator: CTAP2 and U2F, passkeys, BOOTSEL as the touch button, and clientPIN with PIN/UV auth protocols 1 and 2. A host simulator runs the same core so the python-fido2 test suite exercises it without hardware. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
25 lines
463 B
C
25 lines
463 B
C
#include "button.h"
|
|
#include "ctaphid.h"
|
|
#include "pin.h"
|
|
#include "platform.h"
|
|
#include "presence.h"
|
|
#include "storage.h"
|
|
#include "tusb.h"
|
|
|
|
int main(void) {
|
|
uint8_t packet[HID_PACKET_SIZE];
|
|
|
|
platform_init();
|
|
storage_init();
|
|
pin_init();
|
|
ctaphid_init();
|
|
tud_init(0);
|
|
|
|
for (;;) {
|
|
while (platform_hid_receive(packet)) ctaphid_handle_packet(packet);
|
|
ctaphid_tick();
|
|
button_poll();
|
|
presence_tick();
|
|
}
|
|
}
|