From 91aaee5beb6e28908f99a7ef45498f48d2cd097d Mon Sep 17 00:00:00 2001 From: Pol Henarejos Date: Mon, 19 May 2025 10:01:07 +0200 Subject: [PATCH 1/2] Force 8-digit serial number Fixes #149. Signed-off-by: Pol Henarejos --- src/fido/management.c | 1 + src/fido/otp.c | 1 + 2 files changed, 2 insertions(+) diff --git a/src/fido/management.c b/src/fido/management.c index b6ac61e..7be2e63 100644 --- a/src/fido/management.c +++ b/src/fido/management.c @@ -85,6 +85,7 @@ int man_get_config() { res_APDU[res_APDU_size++] = TAG_SERIAL; res_APDU[res_APDU_size++] = 4; memcpy(res_APDU + res_APDU_size, pico_serial.id, 4); + res_APDU[res_APDU_size] &= ~0xFC; // Force 8-digit serial number res_APDU_size += 4; res_APDU[res_APDU_size++] = TAG_FORM_FACTOR; res_APDU[res_APDU_size++] = 1; diff --git a/src/fido/otp.c b/src/fido/otp.c index 0e41dab..e434d27 100644 --- a/src/fido/otp.c +++ b/src/fido/otp.c @@ -476,6 +476,7 @@ int cmd_otp() { } else if (p1 == 0x10) { memcpy(res_APDU, pico_serial.id, 4); + res_APDU[0] &= ~0xFC; // Force 8-digit serial number res_APDU_size = 4; } else if (p1 == 0x13) { // Get config From 0518ac365521ccbbbb9e0f4a387764b27cbadbb6 Mon Sep 17 00:00:00 2001 From: Pol Henarejos Date: Fri, 30 May 2025 12:06:34 +0200 Subject: [PATCH 2/2] Flash size is obtained dynamically rather than in build time. It will allow to reduce dramatically the number of builds. Signed-off-by: Pol Henarejos --- pico-keys-sdk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pico-keys-sdk b/pico-keys-sdk index 580b0ac..f01aca5 160000 --- a/pico-keys-sdk +++ b/pico-keys-sdk @@ -1 +1 @@ -Subproject commit 580b0acffa8e685caee4508fb656b78247064248 +Subproject commit f01aca551893efa27137a9907289fa5bd442cfaa