Commit Graph

  • 9b6d6f6736 Fix build Pol Henarejos 2025-10-28 09:36:41 +01:00
  • 8f907b25ba Relicense project under the GNU Affero General Public License v3 (AGPLv3) and add the Enterprise / Commercial licensing option. Pol Henarejos 2025-10-26 20:06:16 +01:00
  • 233e6594c6 Add casts to fix warnings. Pol Henarejos 2025-10-12 18:52:07 +02:00
  • eca6807f8e Fix win build. Pol Henarejos 2025-10-12 18:51:46 +02:00
  • 14d5a75571 Add some win compatibility. Pol Henarejos 2025-10-12 18:51:29 +02:00
  • e56624948b Expose gettimeofday. Pol Henarejos 2025-10-12 18:47:43 +02:00
  • 200d59f91b ADd strlcpy when necessary. Pol Henarejos 2025-10-12 18:47:34 +02:00
  • c165ae4838 Add set of secure functions to derive keys based on OTP, if available, and pico_serial as a fallback. PIN is also an input vector, which defines a separated domain. Pol Henarejos 2025-10-08 00:30:41 +02:00
  • 0ddfdf8134 Add sanity check. Pol Henarejos 2025-10-07 21:11:28 +02:00
  • 031d76737b Add pico_serial_hash as a source of unique (almost) 32 bytes string. Pol Henarejos 2025-10-07 21:11:06 +02:00
  • df94d10f8f Fix print macro. Pol Henarejos 2025-10-07 21:10:19 +02:00
  • b3b2b67034 Add const to OTP functions. Pol Henarejos 2025-10-06 13:32:44 +02:00
  • 3eff2442c6 Fix is_empty_otp_buffer when a register is invalid. Pol Henarejos 2025-10-06 13:27:16 +02:00
  • a7e1cf028b To prevent the PVC attack, MKEK and DEV keys are migrated to another OTP page. Pol Henarejos 2025-10-06 13:00:45 +02:00
  • e14a12b002 Add OTP chaff to avoid passive voltage contrast (PVC) attacks. Pol Henarejos 2025-10-06 09:41:14 +02:00
  • d39732c613 Allow data partition write only with secure code (not in BL). Pol Henarejos 2025-10-06 00:42:08 +02:00
  • 56c2ef0cc1 Fix alignment when programming OTP. Pol Henarejos 2025-10-05 19:30:47 +02:00
  • 9b294b9685 Fix build Pol Henarejos 2025-09-30 17:25:55 +02:00
  • 5048e07f81 Add hash functions using OTP as feed when available. Pol Henarejos 2025-09-28 20:26:46 +02:00
  • d63ed56e0e Fix phy_data idVendor/idProduct when not set. Pol Henarejos 2025-09-28 20:24:07 +02:00
  • afe2b28fab Merge remote-tracking branch 'origin/main' Pol Henarejos 2025-09-24 01:12:07 +02:00
  • 838f342877 Fix HID processing only for CTAP_HID. Pol Henarejos 2025-09-24 01:11:45 +02:00
  • 1a1d03ab2f Add compatibility for non-pico boards. Pol Henarejos 2025-09-24 01:11:19 +02:00
  • 809dc3d16d Add missing files. Pol Henarejos 2025-09-23 17:03:38 +02:00
  • 70c0c1bf81 Fix conditional build for non-pico platforms. Pol Henarejos 2025-09-23 16:59:59 +02:00
  • cff3f8f677 Fix interface conditional builds. Pol Henarejos 2025-09-23 16:56:34 +02:00
  • 6f6004c57b Fix build for non-pico boards. Pol Henarejos 2025-09-23 00:02:20 +02:00
  • 0b49fe4e1b Fix build for non-pico boards. Pol Henarejos 2025-09-22 23:52:47 +02:00
  • 4edc506759 Fix build for non-pico boards. Pol Henarejos 2025-09-22 23:35:46 +02:00
  • e55014cfb3 Fix set version for non-pico platforms. Pol Henarejos 2025-09-22 17:31:48 +02:00
  • 2211fafe32 Fix non-pico build. Pol Henarejos 2025-09-22 17:30:39 +02:00
  • 276f1b2ae8 Fix build for non-pico platforms. Pol Henarejos 2025-09-22 17:27:08 +02:00
  • 202d32d13d Fix descriptor description when there are disabled interfaces. Pol Henarejos 2025-09-02 01:20:07 +02:00
  • 95f02b6ea7 Add dummy led driver to avoid crashes in case a non-supported board is built. Pol Henarejos 2025-09-01 22:02:08 +02:00
  • 2e2b78445c Load led driver depending on PHY. Pol Henarejos 2025-09-01 21:27:43 +02:00
  • da44fd21d4 Add support for led driver in PHY. Pol Henarejos 2025-09-01 21:27:15 +02:00
  • 365567d12b Upgrade tinycbor to 0.6.1 Pol Henarejos 2025-08-29 01:20:09 +02:00
  • a3406572cd Fix uint16 endianness that affected chained RAPDU. Pol Henarejos 2025-08-29 01:17:37 +02:00
  • 8321db1f67 Fix build for rp2350. Pol Henarejos 2025-08-25 01:39:06 +02:00
  • 5984d1f72d NK compatibility improvements. Pol Henarejos 2025-08-25 01:33:46 +02:00
  • 685e660ec0 Call pico_sdk_init in the cmake. Pol Henarejos 2025-08-25 01:33:23 +02:00
  • 3863842536 Fix crash in case response buffer is not 16bit aligned. Pol Henarejos 2025-08-24 01:22:59 +02:00
  • 113e720fca Merge remote-tracking branch 'origin/main' Pol Henarejos 2025-06-22 19:58:17 +02:00
  • c45c97ee1f Fix Pico Keys SDK build. Pol Henarejos 2025-06-22 19:57:15 +02:00
  • d66d1c85b9 Add missing header. Pol Henarejos 2025-06-22 19:52:36 +02:00
  • f01aca5518 Flash size is obtained dynamically rather than in build time. It will allow to reduce dramatically the number of builds. Pol Henarejos 2025-05-30 12:06:26 +02:00
  • da3a7f25d0 Fix bool build. Pol Henarejos 2025-05-25 19:20:04 +02:00
  • eb75ad4efa Add app_exists() to check if an AID is loaded. Pol Henarejos 2025-05-25 19:07:20 +02:00
  • 11d8a5343c Remove the tweak for packets multiple of 64 bytes. It was fixed in the USB stack handling (don't remember where). Pol Henarejos 2025-05-23 20:17:57 +02:00
  • a324477a8a Fix interface descriptor when HID is disabled. Pol Henarejos 2025-05-02 18:28:38 +02:00
  • 580b0acffa Define MCU for emulation. Pol Henarejos 2025-04-07 01:24:03 +02:00
  • 3990e7643a Fix EPNUM counting for ESP32. It fixes the problem of not sending KB. Pol Henarejos 2025-04-06 18:31:01 +02:00
  • 5718c83083 Upgrade TinyUSB for ESP32 Pol Henarejos 2025-04-06 18:26:34 +02:00
  • a75fd6b815 CTAP_RESP should be 0ed before sending. Pol Henarejos 2025-03-30 18:12:06 +02:00
  • 499e8fafaa Upgrade to mbedtls v3.6.3 and fix git subscripts. Pol Henarejos 2025-03-24 23:58:53 +01:00
  • 5f79a8c8ed Fix ESP32 dynamic USB interfaces. Pol Henarejos 2025-03-24 09:22:25 +01:00
  • a08abaed0f Enable each USB interface independently depending on PHY parameters. Pol Henarejos 2025-03-22 23:25:31 +01:00
  • 4ef641b8d3 Always build ccid if defined. Pol Henarejos 2025-03-22 23:25:04 +01:00
  • c185b35ca3 Add enabled USB interfaces in PHY. Pol Henarejos 2025-03-22 23:24:36 +01:00
  • f1b1382300 USB descriptors are now created dynamically. Pol Henarejos 2025-03-21 15:30:50 +01:00
  • f18f761234 Restore led mode when finishing button press. Pol Henarejos 2025-03-19 01:19:17 +01:00
  • 1a4ca13cc7 Add get led mode. Pol Henarejos 2025-03-19 01:18:57 +01:00
  • ef9b66f990 Use TLV for PHY serialization/unserialization. Pol Henarejos 2025-03-17 11:36:14 +01:00
  • 7191cda6d3 Add PHY option to enable specific curves. It's in the app side the management. Pol Henarejos 2025-03-11 18:43:08 +01:00
  • 2c3fe5bebf Only pin to core in ESP32-S3 since it is multicore. Pol Henarejos 2025-03-07 19:35:13 +01:00
  • 9e9632f297 Fix commissioned values for LED. Pol Henarejos 2025-02-23 00:49:45 +01:00
  • 259c4854df Fix LED for ESP32S3 Pol Henarejos 2025-02-23 00:49:12 +01:00
  • 0a4c7b0981 Fix autobuild. Pol Henarejos 2025-02-21 19:56:19 +01:00
  • db338842b9 Add git pull when switch Pol Henarejos 2025-02-21 19:12:19 +01:00
  • 71af710568 Add EDDSA support as a conditional build. Pol Henarejos 2025-02-21 19:00:21 +01:00
  • e18f192edf Fix ESP32 build. Pol Henarejos 2025-02-21 18:59:11 +01:00
  • 07415e6e8b Fix emulation build. Pol Henarejos 2025-02-21 17:08:29 +01:00
  • a9eff9fb17 Build cyw43 driver with RP2350. Pol Henarejos 2025-02-21 17:02:20 +01:00
  • 6e6b524878 Fix led driver build for Pimoroni. Pol Henarejos 2025-02-19 15:14:23 +01:00
  • bfa085cae9 Take led_driver on build depending on defines. Pol Henarejos 2025-02-19 14:32:58 +01:00
  • 94a842fa04 Add file & line to debug info. Pol Henarejos 2025-02-19 11:43:47 +01:00
  • 90fb86be64 Add support for ESP32-S2 build. Pol Henarejos 2025-02-19 11:17:02 +01:00
  • f06cb3a96d Fix multiple interfaces in older PCSC versions. Pol Henarejos 2025-02-12 13:24:28 +01:00
  • 5985548c97 Merge pull request #7 from imkuang/limit-led-update-frequency Pol Henarejos 2025-02-09 19:16:29 +01:00
  • 3f5cbf6542 Merge pull request #8 from imkuang/update-led-ws2812-driver Pol Henarejos 2025-02-09 19:12:39 +01:00
  • 29c0d078c3 Update ws2812 pio program and optimized the process of RGB color values Ming Kuang 2025-02-09 16:17:14 +08:00
  • 1723613b4e Limit the frequency of LED status updates Ming Kuang 2025-02-09 15:35:42 +08:00
  • 44ca760e1c Added phy_save() and phy_load() to save and load PHY. Pol Henarejos 2025-01-29 17:09:20 +01:00
  • 4992d8e273 Added phy_save() and phy_load() to save and load PHY. Pol Henarejos 2025-01-29 17:06:55 +01:00
  • 80fa13a19c Do not init PHY on unserialize. Pol Henarejos 2025-01-29 16:57:53 +01:00
  • b4c67d2fa5 Add PHY option to keep LED steady. Pol Henarejos 2025-01-29 16:27:26 +01:00
  • 18eb3e6ef2 Fixed stack overflow on serializing PHY. Pol Henarejos 2025-01-29 15:16:13 +01:00
  • 350f0da763 Fix USB keyboard descriptor. Pol Henarejos 2025-01-29 13:21:05 +01:00
  • a081a2bde6 LibCCID allows propietary class for CCID (ALLOW_PROPIETARY_CLASS in LibCCID). Then both interfaces are loaded but since both belong to same device, only the last is opened. Pol Henarejos 2025-01-17 20:56:03 +01:00
  • 3d912878f1 Add OTP (dummy value) for emulation. Pol Henarejos 2025-01-08 13:25:43 +01:00
  • 68a816895e Fix build for RP2040. Pol Henarejos 2024-12-30 21:37:38 +01:00
  • 1d89c14268 Compute flash memory bounds depending on the partition if available. Pol Henarejos 2024-12-30 21:27:46 +01:00
  • 5508c082e5 Add padding to align the struct in host build. Pol Henarejos 2024-12-30 21:27:27 +01:00
  • 0bed03e522 Reduce data partition to 2K. It start always at half of flash. Pol Henarejos 2024-12-30 21:27:00 +01:00
  • 9e2b6ac4b6 Remove comment Pol Henarejos 2024-12-24 02:05:50 +01:00
  • 046bac42e3 Update CCID descriptor to reflect max USB transport size. Pol Henarejos 2024-12-24 02:05:07 +01:00
  • c59fb91540 Set stack size depending on the number of enabled interfaces. Pol Henarejos 2024-12-24 01:42:33 +01:00
  • f8cb36c2cf Use uint16 funcs. Pol Henarejos 2024-12-23 21:23:13 +01:00
  • d78e977926 Use BE/LE functions for packing uint16. Pol Henarejos 2024-12-23 21:00:43 +01:00
  • 8e68e6cae9 Use BE/LE functions for packing uint16. Pol Henarejos 2024-12-23 21:00:38 +01:00