5 Commits

Author SHA1 Message Date
Pol Henarejos
bb20a75ef4 Fix secure boot enable.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-02-16 16:29:53 +01:00
Pol Henarejos
8d709cf745 Add support for HIGH/LOW ESP32 LED
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-02-04 23:46:41 +01:00
Pol Henarejos
bbbbcadf4c Upgrade to v7.4
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-02-01 20:37:29 +01:00
Pol Henarejos
fbbf1feb49 Fix phy marker write.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-02-01 20:37:17 +01:00
Pol Henarejos
22de41bfe0 Upgrade to Pico Keys SDK 8.5
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
2026-01-29 16:22:25 +01:00
4 changed files with 1 additions and 34 deletions

View File

@@ -75,13 +75,6 @@ else()
endif()
set(USB_ITF_HID 1)
option(WAVESHARE_RP2350_ONE "Enable Waveshare RP2350-One LED support" OFF)
if(WAVESHARE_RP2350_ONE)
add_definitions(-DWAVESHARE_RP2350_ONE=1)
message(STATUS "Waveshare RP2350-One: \t enabled")
endif()
include(pico-keys-sdk/pico_keys_sdk_import.cmake)
if(NOT ESP_PLATFORM)

View File

@@ -75,7 +75,6 @@ PICO_SDK_PATH=/path/to/pico-sdk cmake .. -DPICO_BOARD=board_type -DUSB_VID=0x123
make
```
Note that `PICO_BOARD`, `USB_VID` and `USB_PID` are optional. If not provided, `pico` board and VID/PID `FEFF:FCFD` will be used.
For Waveshare RP2350-One board, add `-DWAVESHARE_RP2350_ONE=ON` to enable RGB LED support on GPIO 16.
Additionally, you can pass the `VIDPID=value` parameter to build the firmware with a known VID/PID. The supported values are:
@@ -119,18 +118,6 @@ While processing, the Pico FIDO is busy and cannot receive additional commands u
![Processing](https://user-images.githubusercontent.com/55573252/162009007-df45111e-2473-4a92-97c5-15c3cd19babd.gif)
### Waveshare RP2350-One RGB LED
The Waveshare RP2350-One uses a WS2812 RGB LED on GPIO 16. Different colors indicate different states:
| State | Color | Pattern |
| ---------------- | --------- | ------------------------------- |
| Not mounted | 🔴 Red | 500ms on / 500ms off |
| Mounted (active) | 🟢 Green | 500ms on / 500ms off |
| Suspended (idle) | 🔵 Blue | 1000ms on / 2000ms off |
| Processing | 🟢 Green | 50ms on / 50ms off (fast blink) |
| Press to confirm | 🟡 Yellow | 1000ms on / 100ms off |
## Driver
Pico FIDO uses the `HID` driver, which is present in all operating systems. It should be detected by all OS and browser/applications just like normal USB FIDO keys.

View File

@@ -36,19 +36,6 @@ extern uint8_t session_pin[32];
uint8_t mkek_mask[MKEK_KEY_SIZE];
bool has_mkek_mask = false;
#define POLY 0xedb88320
uint32_t crc32c(const uint8_t *buf, size_t len) {
uint32_t crc = 0xffffffff;
while (len--) {
crc ^= *buf++;
for (int k = 0; k < 8; k++) {
crc = (crc >> 1) ^ (POLY & (0 - (crc & 1)));
}
}
return ~crc;
}
void mkek_masked(uint8_t *mkek, const uint8_t *mask) {
if (mask) {
for (int i = 0; i < MKEK_KEY_SIZE; i++) {