The SDK contains the following directories:
/appnotes: Source code of working example implementations including demo configurations where needed
/appnotes/c_sharp: Use BRP Communication Library via C#
/appnotes/update_reader: Implement your own wired upload application to deploy a configuration and/or firmware update via wired USB or RS-232.
/appnotes/secure_communcations: Set up authenticated and encrypted host-reader communication using AES 128
/appnotes/tcp_server.c: Implement your host application as an Ethernet server including X.509-certificate-based authentication and encryption
/appnotes/tcp_client.c: Implement your host application as an Ethernet client.
No authentication and encryption included here - please see
/appnotes/secure_communcationsfor AES-128 and
/appnotes/tcp_server.cfor X.509 certificate
/appnotes/vhl: Wait for a card and read/write data to/from it via the high-level VHL interface
/appnotes/udp_introspection.c: Find a reader via UDP introspection
/appnotes/usb_hid: Access a reader via USB HID
/appnotes/usb_cdc: Access a reader via RS-232 or USB-CDC (i.e. virtual COM port)
Here's how you can try the app notes to get started using the SDK.
/baltech_api: Language specific implementation of the BALTECH API wrapper that provides a function/method for every command or configuration value provided by the API of the reader. This wrapper uses BRP Communication Library to send the respective commands.
These files are generated by a code generator. Don't change them!
/baltech_api/c: Contains the central header file
baltech_api.hand the corresponding source file
/baltech_api/c/cmds: Contains the header files for all reader commands. These files are included by
/brp_lib: Source code and header files of the (language-agnostic) BRP Communication Library
/brp_lib/inc: Header files (
/brp_lib/inc/brp_lib.his the main file to include)
/brp_lib/src: Source code
/brp_lib/tests: Unit tests for the modules of BRP Communication Library. These tests are written in Python 3.6 and need the following extension modules: M2Crypto, pytest v3.3.2, and headlock.
/brp_lib/thirdparty: Third-party open-source code libraries needed to build BRP Communication Library
/binaries: This directory contains Windows binaries and libraries for 32bit (
/binaries/win32) and 64bit (
/binaries/winXX/Release: Binaries for app notes (see also folder
/appnotes) and the dynamically linked libraries brp_lib.dll and BrpDriver.dll.
/binaries/winXX/static-libs/Release: Static libraries brp_lib.lib and BrpDriver.lib plus the BALTECH API library baltech_api.lib.
/legacy_wrapper: Windows DLL that wraps brp_lib so it provides a compatible interface to the SDK predecessor BrpDriver.dll (learn more)
/legacy_wrapper/inc: Header files of the wrapper. They're the same as in the original BrpDriver package.
/legacy_wrapper/src: Wrapper source code that maps the BrpDriver API to the brp_lib API