Changelog SpringCore

Ver. Date Details
1.29 18/07/2024 Official release M519 and M519-SUV (only for M519)
Partially validated ISO/IEC T=0 against Comprion NFC Forum EMV CT L1 4.3c test suite; know deviation: too frequent communication error @ TA1=13, to be fixed in 1.30 (M519)
Validated ISO/IEC T=1 against Comprion NFC Forum EMV CT L1 4.3c test suite (M519)
Re-validated NFC implementation against Comprion NFC Forum CR13.1 test suite (Puck, M519)
Fixed a bug in ISO/IEC 7816 T=0 case 2 implementation (M519)
Added new proprietary APDUs to read most interesting internal data while undergoing endurance/temperature testing (M519)
Flash (DFU) implementation + SpringCoreFlash are now able to support both PN5190B1 and PN5190B2 (M519)
Lots of minor improvements in the implementation of the BLE Templates; removed Eddystone Template (all, RDR mode, with BLE)
Added the ability to change the Apple ECP1 or ECP2 polling frame dynamically (all)
Introduced STid Mobile ID BLE Template (all, RDR mode, with BLE)
Lots of minor changes in the code to pass static analysis (all)
Changed the implementation of BLE Template to ease the configuration by Companion (all, RDR mode, with BLE)
Changed the implementation of URL in Apple VAS Template to ease the configuration by Companion (all, RDR mode)
Supporting new release of PN5190 firmware (M519)
M519-SUV implementation fully validated (M519)
Fixed an issue with USB clock when temperature exceeded 70°C; USB link is now OK up to 105°C (M519)
Fixed a bug in Desfire template, when EV2 secure communication was used (all, RDR mode)
Disabled SC_CLK output on M519-SUV (M519)
Validated implementation of NFC HCE (host card emulation) and finished the corresponding Direct API (Puck, M519)
Added new console commands to debug/fine tune the configuration of the NFC frontend (all)
Updated the implementation of the communication with NFC Cockpit (all)
Added a task to monitor the temperatures of the NFC frontend and of the MCU continuously (all)
1.28 07/05/2024 Official release M519 and M519-SUV (only for M519)
Exported PN5190 calibration function for production, automated applying calibration after every update of the PN5190 (M519)
Added PN5190 temperature monitor to protect the chip from overheating (M519)
Removed unecessary NFC-A polling frames if Master Cards & Colorado are not enabled (all, RDR mode)
Corrected a bug that prevent using Mifare Classic keys in E2PROM with index > 3 (all, PC/SC mode)
Improved Mifare Classic implementation over CCID (all, PC/SC mode)
Validated implementation of NFC Forum T4T card emulation with an API consistent on all platforms (Puck, M519)
Improved Mifare Classic implementation over SpringProx protocol (all, Legacy mode)
The status LED now flashs to denode USB operation (stays solid for serial) (M519)
Added NFC-A & NFC-B multi-activation over CCID (all, PC/SC mode)
The Google Smart Tap template was unable to compute ECDH if temporary private key was taken < 0 (all)
Implementation of UI to mimic the behaviour of D600 (D770)
Created a 2nd stage bootloader to handle the user buttons before actual startup (D770)
Added reading of last card response delay (FDT) to manage Desfire or Mifare Plus Proximity Check in host application (all)
Added GET POWER STATE instruction in CONTROL class (all)
Implemented battery and charger stuff (D770)
Implemented dual antenna system, with analog switching (D770)
GET DATA 85 returned wrong value for firmware version (all)
Now supporting MAX20332 to monitor battery & power supply (D770, Puck)
Now supporting 25×25 reference antenna (antenna=3) (M519)
1.27 12/03/2024 First version of M519 FW supporting M519-SUV hardware (only for M519)
(end of development branch 1.26)
Now supporting M519-SUV serial configuration system (switching between RS-TTL, RS-232 and RS-485) (M519)
Added support for MT84g scan engine (D770)
Now able to totally disable smart card (ISO 7816) subsystem on M519-SUV (M519)
Prepared multi-activation and multi-card tracking to support PIV cards again (all)
Now supporting Omnikey Secure Element to read a PAC from a HID iClass or SEOS card, and also HID passes on Android and iOS (ECP2), in Smart Reader mode (all, RDR mode)
Performance improvement, removed a duplicated guard time check in EMV CL mode (all)
Added Battery Power State characteristic to the GATT (all, BLE mode)
Global performance improvement, removing unecessary read-back operations (M519)
Corrected Colorado sequence (all, RDR mode)
Added internal profiling counters to look for better performances (all)
Improved efficiency of SPI bus between MCU and PN5190 (M519)
Now supporting 80×80 reference antenna (antenna=2) (M519)
Now supporting Omnikey Secure Element to read a PAC from a HID iClass or SEOS card, under the control of a host application (all, PC/SC mode)
Now supporting a PIC as peripheral (for UI) (D770)
Now supporting a BGM as peripheral (for BLE) (M519)
ISO 18000-3M3 / EPC-HF basic implementation ready (all)
Optimization of ASN.1 / TLV library to reduce the memory footprint (all, RDR mode)
New version of NFC Cockpit supported (M519)
Now supporting 65×49 reference antenna (antenna=1) (M519)
Refactoring of ISO 7816 ATR reception for a better immunity to start-up noises (M519)
Added test commands to start working on M519-SUV (M519)
Added support of Model 1 QR code (S370)
Corrected a clock glitch that occured between ISO 7816 ATR and PPS and prevent operation with NXP SAM AV3 (Puck)
(customer specific)
Improved robustness of USB STOP / START sequence in CCID to behave better with VirtualBox that uses this sequence heavily (all, PC/SC mode)
PN5190 firmware version is now 2.07 (M519)
Added “consider any NFC-A card as Mifare Classic” in register 0233 (all, PC/SC mode)
Added support for MT684 scan engine (D770)
NFC Forum pattern 0007 patch (all)
1.26 05/07/2023 First version of M519 FW (only for M519)
Implemented a self-test that works with M519X1 MultiProd bench (M519)
GPIO1/GPIO2 where inverted (M519)
CCID STOP and RDR STOP now return an error if the corresponding mode was not started (all)
Completed ISO 7816 validation in ISO mode up to TA1=95 (M519)
Completed validation against SpringProx 1.80 SDK (legacy mode) (M519)
PN5190 firmware version is now 2.06 (M519)
Activated a pull-up on SAM AV3 TX/TX (S550)
Implemented Micore settings load (M519)
OK to replace SAM AV2 by SAM AV3 (S550, Puck)
Final ProductID attributed (M519)
Implementation of /WAKEUP and /SUSPEND (M519)
Improved the activation of SAM AV2 or SAM AV3 (no more EMV, directly ISO) (Puck, SpringPark, S550)
Improved PN5180 implementation for a better coherence with new PN5190 implementation on M519 (Puck, SpringPark, S550)
Performance improvement, shorten the guard times in T=1 (ISO 7816) (Puck, SpringPark, S550)
(customer specific)
Added support of IS31FL3199 (D770)
Completed ISO 7816 validation in EMV CT mode (M519)
1.25 05/07/2023 (customer specific)
(end of development in branch 1.25)
Speed optimisation, ISO 7816 on SAMD51 (M519)
(customer specific)
(customer specific)
Added support for MT8g scan engine (D770)
Improved usage of DS2745 to monitor charge/discharge cycles (Puck)
(customer specific)
Added support for Innovatron + ATS CTS + ST SR to PN5190 code base (M519)
(customer specific)
Direct protocol can now multiplexed over a serial link with CCID protocol and most RDR protocols (all)
Added support for VAS ECP1/ECP2 polling + tested Smart Tap in RDR mode (M519)
Project put on a hold (SpringPark AC)
Bootloader now supports serial (not only USB) (M519)
Direct protocol implemented over serial interface (M519)
USB VCP (CDC-ACM) implemented, SpringProx Legacy protocol validated (M519)
Mifare Classic implementation validated in Legacy mode (M519)
Created ISO 7816 library on SAMD51 (M519)
Project officially created (D770)
Investigation on how to connect a barcode (scan engine) to the M519, testing with MT684 (D770)
Stall WinUSB descriptor if WinUSB not enabled (all)
Now able to boot and to flash the PIC without USB (S370, S550)
Created Micore library for PN5190 on SAMD51 (M519)
Product renamed (SpringPark -> SpringPark SD) (SpringPark SD)
(customer specific)
LEDs go full off on USB suspend (Puck)
BLE stack now supporting BGM2xx and BGM13x (and not only BGM11x) (all)
Changed USB state machine after SUSPEND to support Windows 11 22H2 with Windows Hello (all, PC/SC mode)
CCID protocol implemented over serial interface (all)
Added support for Apple ECP2 polling (all)
(end of development in branch 1.24)
Felica test report improved to pass the test in Japan (all)
BGM SDK upgraded from version 4 to version 5.1.0 (all)
iBeacon mode improved (all)
AES HW is OK (M519)
Added Desfire ID template (all, RDR mode)
Supporting PN5190 settings as provided by NFC Cockpit (M519)
Corrected implementation of key in HID extended keymaps (all)
1st PCB says 1st Hello World (M519)
New version of NFC Cockpit supported (all)
Template Desfire Data tested OK with ECP2 emulation on iPhone (Puck, RDR mode)
Added new Apple-specific frame to terminated an ECP2 session (all)
Desfire Data template now supports using an external SAM for authentication and secure communication (all)
1.24 05/12/2022 (internal release)
(end of development branch 1.23)
BGM220 supported with SDK 4 (all)
PN5190 implementation prepared on development board (M519)
(customer specific)
(customer specific)
Restart UDP operation after a link down / link up sequence (SpringPark)
First version (S370)
NFC Tag template can now read ThinFilm NFC barcode (all, RDR mode)
CCID implementation adjusted to ease non-driver use cases (all, PC/SC mode)
CEN TS 16794 + RCTIF 5 debug session passed OK (had to adjust a few analog settings) (SpringPark SD)
Using LTC3537 deep sleep mode to improve power effiency (all)
Improved the logical separation between barcode reader and NFC reader (new interfaces) (S370)
Hotfix to accept ISO 7816 cards that sends an extra Procedure Byte between SW1 and SW2 (all)
Specific test APDUs added to pass Felica certification (S550)
Communication UC / head is OK (SpringPark AC)
Communication UC / IOs is OK (SpringPark AC)
Added a GET DATA entry to read DSI / DRI (all, PC/SC mode)
Improved battery monitoring on Puck Point (Puck)
Improvement of CCID Time Extension to help PCSC Lite accept “slow” cards (all)
HTTPC implementation improved (SpringPark, others)
Ethernet implementation now supports T1L PHY (SpringPark, others)
1.23 14/12/2021 (customer specific)
(end of development branch 1.22)
Basic SSI implementation tu support a barcode
1.22 23/09/2021 NFC Forum CR12 ready
1.21 15/09/2021 Added secure boot
1.20 02/04/2021 First release of SpringPark-SD
1.19 19/03/2021 USB CV2 test OK
1.18 02/02/2021 ISO 7816 supporting TDA8035 as an alternative to TDA8023
1.17 21/12/2020 Added encapsulation of Control commands within CLA=FF, INS=F0 APDUs
1.16 23/10/2020 Puck: new antenna hardware settings (nominal impedance is now 20 ohms instead of 50)
1.15 15/11/2020 Supporting new power management hardware for battery-powered devices
1.14 24/06/2020 Added authenticated+ciphered Bluetooth communication
1.13 06/04/2020 Added support for Apple ECP + Apple VAS and Google SmartTap templates
1.12 25/03/2020 Added support for Orange PackID Bluetooth and SpringCard SpringBlue applications
1.11 21/02/2020 Improved ISO 14443 EMD recovery
1.10 12/02/2020 Added IWM2 template engine
1.09 05/02/2020 Added support of ISO 15693 tags with address on 2 bytes
1.08 30/01/2020 CEN + RCTIF approval for SpringPark
1.07 22/01/2020 Fastest implementation of PN5180 communication
1.06 08/01/2020 ISO 7816 + EMV CT ready
1.05 15/12/2019 Introduced power management for battery-powered devices
1.04 15/10/2019 First release of Puck Blue
1.03 15/08/2019 iBeacon implementation for Puck Blue
1.02 15/06/2019 Supporting serial numbers longer than 4 bytes
1.01 15/05/2019 Added auto-detection of hardware to support multiple device variants from a single firmware
1.00 15/04/2019 First release of Puck Base