none
HID GLOAL OMNIKEY 5025CL Smart Card Reader driver toggle removed from newer verion RRS feed

  • Question

  • I need to set Driver attribute on a HID GLOAL OMNIKEY 5025CL smart card reader.
    I do not have the the Vendors SDK.

    Their documentation states

    Reader Mode (8Dh)
    The tag readerCurrentMode 8Dh is primitive and defines reader operating mode:

    Tag =  8Dh  
    ASN.1 name = readerCurrentMode 
    Value = 00h – Native CCID mode / 01h – Legacy mode, OK5325 emulation
    Type = Octet String
    Len = 1
    Access = RW

    Get APDU: FF 70 07 6B 05 A2 03 A0 01 8D 00
    Response: BD 03 8D 01 00 90 00
    Set APDU: FF 70 07 6B 07 A2 05 A1 03 8D 01 01 00
    Response: 9D 00 90 00

    Note: In Native CCID mode the OMNIKEY 5025 CL reader does not require a dedicated driver – native
    CCID driver from the operating system is used. The ATR format is configured according to the
    readerATRConfiguration setting. See 5.3 ATR Configuration (8Bh) in Native CCID Mode, page 13.
    In Legacy mode the OMNIKEY 5325 behavior is emulated. HID driver is required. The ATR format is the
    same as for the OMNIKEY 5325 and is described in 6.3 ATR Format in Legacy Mode, page 18.

    So I need to toggle this reader before getting a monitoring context such that Tag 8Dh = 01h (Legacy mode, OK5325 emulation)

    I have been using a PCSC liary for CSharp.
    https://danm.de/docs/pcsc-sharp/index.html

    This Lirary has allowed me to GET some attriutes but I don't know how to SET the attribute above.

    All was going great until I had to buy new readers and wanted to use the same distriuted cards (security) for something else (time tracking)

    The older readers had a configuration interface (workbench) to set H10301 response format. The newer readers do not have that option, so I've been told to do it in code.

    I don't know how to translate the Reader Mode (8Dh) above into a C# property.

    Monday, August 12, 2019 7:48 PM

All replies

  • That's odd.  The PC/SC library has an SCardTransmit API that is ordinarily used to send arbitrary APDUs to a PC/SC device, but I don't see that in the pcsc-sharp library.  Many such devices have a separate USB interface that is used for sending out-of-band commands, and I'm guessing that's why you'd need to use the HID interface.

    Tim Roberts | Driver MVP Emeritus | Providenza & Boekelheide, Inc.

    Monday, August 12, 2019 9:20 PM
  • Thanks for the insight into SCardTransmit. I found a French SDK called SpringCardPCSC that might allow me to build a module to send the APDU. I guess I'm most twisted up that the HDI Omnikey 5325cl had a workbench utility that allowed me to persist H10301 format after device restart or connection where as sending the APDU Set Command of FF 70 07 6B 07 A2 05 A1 03 8D 01 01 00 will be runtime and possibly per Card event. Yuck. 

    Further  5325cl reader formats RAW and H10301 are ATR (ATS) equivalent


    • Edited by Toomanyhats Tuesday, August 13, 2019 4:30 PM
    Tuesday, August 13, 2019 4:24 PM