Grabba Driver for iOS
Unified driver for Grabba devices on the iOS operating system
Versioning and Release History

There are no stable unified driver release series at the time of this release (2.0.0-alpha-11). However, stable releases of pre-unification drivers are available on Android (1.x series) and iOS (1.0 series).

The current experimental release series at the time of this release is 2.0, which is presently at alpha quality.

This page contains the following information:

Version Numbers

This driver follows the Grabba unified driver numbering convention, which uses three types of releases:

  • Alpha release (e.g. 2.0.0-alpha-2): may not be feature-complete, and may be subject to further API changes. Bugs are to be expected.
  • Beta release (e.g. 2.0.0-beta-1): contains final feature set and APIs for the release series, but development, review and testing are still ongoing. Bugs are to be expected.
  • Stable release (e.g. 2.0.1-stable): full release; review and testing are complete, no known issues of significance at the time of release, no further development other than bug fixes.

Releases are planned to occur as a number of series, each moving from alpha to beta to full release. Series are specified in terms of a major and minor number, e.g. series 2.0 has major number two and minor number 0. Any changes which introduce incompatibilities to existing APIs will be released under a new major number (e.g. 2.1 -> 3.0); changes under a new minor number (e.g. 2.0 -> 2.1) should not break compatibility.

Note that the version numbers for the Visual Studio extension (VSIX) and any Windows applications released in the Windows Store are slightly different, due to restrictions placed on them by Microsoft. The numbering convention used for the VSIX and any applications which depend on it (e.g. Grabba Demo for Windows) is as follows:

  • VSIX A.B.C11.0 through A.B.C39.0 - alpha release 1 through 29 for version A.B.C
    • Example: driver v2.0.0-alpha-11 is encoded as VSIX v2.0.021.0
  • VSIX A.B.C41.0 through A.B.C69.0 - beta release 1 through 29 for version A.B.C
    • Example: driver v2.0.0-beta-2 is encoded as VSIX v2.0.042.0
  • VSIX A.B.C90.0 - stable release of version A.B.C
    • Example: driver v2.0.2-stable is encoded as VSIX v2.0.290.0

2.0 Series


  • Initial release series for the Grabba unified driver
  • Supported platforms for driver library:
    • Android: v5.0 or later recommended; v4.4.2 or later supported
    • iOS: 64-bit v9.0 or later recommended; 64-bit v8.0 or later currently marked as deprecated
      • 32-bit binaries are provided, but no support will be offered for any issues specific to them
    • Windows: Windows 10 (all variants), running on a phone, tablet, laptop or desktop
      • Anniversary Update (v1607 / 10.0.14393) or later is recommended, and may be required in future
    • Cross-platform development atop all of the above via Cordova plugin (pending)
  • Supported platforms for RPC Server application:
    • Android (pending): v5.0 or later recommended; v4.4.2 or later supported
    • iOS (pending): v8.0 or later; 64-bit highly recommended
    • Windows: Windows 10 Professional or Windows 10 Home, running on a tablet, laptop or desktop
      • Windows 10 S and Windows 10 phones are not presently supported, but support for them may be added in the future
      • Anniversary Update (v1607 / 10.0.14393) or later is recommended, and may be required in future
      • 64-bit Windows installation is recommended but not yet mandatory
  • Supported Grabba devices:
    • Device series: ATR, C, GT, H, Q, S, S2 or Z
    • Year of manufacture:
      • Android: 2013 or later
      • iOS: 2013 or later
      • Windows: 2015 or later
  • Support meeting or exceeding that of iOS 1.0-series and Android 1.x-series drivers and SDKs, except:
    • All features marked deprecated in the older driver series will not be supported
    • Signature capture functionality may not be supported

2.0.0-alpha-11 (May 2017)

  • Significant enhancements to driver/device communications performance and reliability
  • Addition of driver support for barcode and/or proxcard press-to-scan behaviour
  • Addition of driver support for keyboard wedge implementations
  • Addition of support for Visual Studio 2017 IDE, which becomes the recommended option for Windows developers
  • Fix bug in MRZ parser where it erroneously rejected document numbers containing non-numeric characters
  • Increase the duration of the post-connect flash of the blue LED, so it is easier to distinguish from other device events (e.g. USB enumeration)

2.0.0-alpha-10 (Feb 2017)

  • Fixed several issues affecting comms closure (typically at app suspension) and reopening (at resumption)
  • Fixed comms performance issues affecting Windows tablets, laptops and desktops (particularly for fingerprint and MRTD image downloads)
  • Added MRZ parsing and validation support, plus associated MRTD API improvements
  • Added support for proxcard reading on xxx8 devices, including support for concurrent reads of multiple tags
  • Added support for barcode reading on new (Opticon) x1xx devices
  • Added several new entries in the barcode symbology enumeration (to support the Opticon reader)
  • Added support for H-Series devices (previously known as C-DUT-001 model)
  • Added option to wait for card availability when powering down contact smart cards
  • Fixed several concurrency hazards in technology-exclusive comms access code
  • Fixed handling of barcode post-processing errors (will now result in generation of error event, not data event)
  • Fixed incorrect handling of barcode and proxcard scan errors (no longer will any errors detected during module power-off overwrite those detected during scans)
  • Fixed model string generation for H-Series and Z-Series models
  • Fixed incorrect generation of error code details when message field is empty
  • Updated hardware version number generation to remove confusion with (irrelevant) series IDs
  • Added firmware series identifiers as a prefix in firmware API version strings
  • Modified VSIX / Windows demo app version numbering convention for Windows store compatibility

2.0.0-alpha-9 (Dec 2016)

  • Addition of support for Android platform (library APIs only; server support is pending)
  • Completion of support for SAM smart cards, and Grabba devices with more than one smart card interface
  • Addition of full support for C-Series devices
  • Addition of limited support for ATR-Series devices
  • Split packaging of RPC distribution into separate SDK, server and example-client packages
  • Addition of per-type event gating support to RPC protocol and server
  • Addition of RPC protocol events to support fingerprint and MRTD image conversions
  • Addition of RPC protocol commands to query fingerprint image and template type names
  • Addition of status string field to ResponseAPDU type in RPC protocol
  • Added support for additional fingerprint image type conversions to the BMP format
  • Fixed and clarified formatting of uncompressed fingerprint image data
  • Fixed generation of ImageProgress fingerprint user events when connected to S2-Series devices
  • Rename of Windows CommandAPDU::Data property to CommandData
  • Fix barcode, proxcard and MRTD scan logic so that new scans may be started from post-scan event handlers
  • Fix handling of extended command APDUs when used with T0-protocol smartcards
  • Removal of barcode symbology ID "OCR", as it is presently unused and will not be needed in this release series
  • Removal of deprecated classes and methods from Windows APIs
  • Removal of support for Windows 8.1 and Windows Phone 8.1 operating systems. Windows 10 remains supported.
  • Removal of support for Visual Studio 2013 IDE. Visual Studio 2015 remains supported.
  • Deprecation of support for iOS 8; iOS 9 and above remain supported.

2.0.0-alpha-8 (Oct 2016)

  • Initial implementation of Grabba Protocol, providing RPC-based access to the driver
  • Initial implementation of Grabba Server for Windows 10

2.0.0-alpha-7 (Oct 2016)

  • Implement workaround for Microsoft's Windows 10 Anniversary Update, which blocked communications from Windows 10 phones
  • Fix support for ARM-based phones in Visual Studio extension for Universal Windows Platform (Windows 10)

2.0.0-alpha-6 (Sept 2016)

  • Add support for Universal Windows Platform (Windows 10). Windows 8.1 and Windows Phone 8.1 support is now deprecated.
  • Add support for iOS 10, and drop support for iOS 7.x as Apple no longer provides build tools for it
  • Improve core APIs for opening and closing the communications channel
  • Add support for fingerprint reading on -PIF and -PIV devices
  • Add support for proximity card reading on xxx3 devices, excepting xxx3-SE variant
  • Add limited support for proximity card reading on xxx2-GA and xxx2-V2 devices
  • Improved detection of model numbers on all platforms
  • Add blocking version of Abort method in fingerprint API
  • Minor improvements to iOS and Windows APIs for clarity and consistency

2.0.0-alpha-5 (Aug 2016)

  • Add support for iOS platform
  • Add improved listener event delegation mechanism on Windows, deprecating its predecessor
  • Minor additions to GrabbaDriver::ErrorCode interface
  • Fix CommandAPDU handling of non-zero values in the P2 field

2.0.0-alpha-4 (Jun 2016)

  • Add support for contact smart card reading on xx1x, xx3x, xx5x and xx7x devices

2.0.0-alpha-3 (Apr 2016)

  • Add support for barcode reading on x2xx and x3xx devices
  • Temporarily remove support for firmware upgrading; it will be restored and extended in a later release
  • Improved reliability of USB reconnections
  • Minor issues (mostly casing) with barcode symbology and proxcard type names

2.0.0-alpha-2 (Dec 2015)

  • Fix version numbering bug in Visual Studio extensions. This was preventing correct linkage of the Cordova plugin; native Windows API users should not have been affected.

2.0.0-alpha-1 (Dec 2015)

  • Initial public alpha release for Windows platform; other platforms are not yet supported
  • Associated firmware: GT- series v1.0.0
  • Lacks support for preferences or fingerprint database manipulation
  • Barcode support restricted to x4xx and x5xx devices
  • Fingerprint support restricted to -SFP and -WSQ devices
  • Proxcard support restricted to xxx2 devices (excluding xxx2-GA and xxx2-V2)
  • Only has partial support for firmware uploading, proxcard technology and BER-TLV data structure
  • No support for contact smart card reading or supplemental charging
  • All other capabilities and technologies in this series' scope are fully or almost-fully supported