Program Purpose
Seenaptec OSDP Handle Firmware Configurator is used to configure AGRG OSDP devices over USB: connect to the device, configure line, input and output parameters, prepare card reading profiles, and write a profile set to the device.
The program works with saved sets that can be loaded, edited and written again. A set contains OSDP parameters, input/output settings and the list of card profiles.
Application Panels
Left column
The left column shows connection and device state. It updates live: the program periodically checks COM port availability, connection state, device information and card status.
- Connection selects the COM port and connects or disconnects the device.
- Device shows manufacturer, model and serial number read from the device.
- Diagnostics shows current card status and the manual card read button.
Middle column
The middle column contains device parameters: OSDP and inputs/outputs. These settings are written together with card profiles.
Right column and bottom area
The right column builds the card reading profile set. The bottom area shows write cells, the write button, delete-all button and operation log.
Connection Settings
The COM port field can be selected from detected USB ports or entered manually. After pressing Connect, the program saves the port and opens communication with the device.
If the cable is disconnected or the port disappears, live updates move the state to disconnected. When the same port appears again, the program can reconnect.
OSDP Settings
- Address is the device OSDP address, range 0-126.
- Connection speed is the OSDP exchange speed and must match the controller.
- Traffic encryption selects Secure Channel requirement mode.
- Password is the 16-byte HEX Secure Channel key.
- Reset key writes the command that resets the installed OSDP key.
The OSDP key is protected data. When a set is saved, it is encrypted with the set access password.
Input and Output Settings
- Contacts connected in series defines the contact wiring scheme.
- Inputs inactive state defines the electrical state treated as inactive.
- Outputs inactive state defines the idle output state.
These parameters are written to the device together with card profiles and OSDP settings.
Card Profiles and Device Behavior
A profile set describes which cards the device should recognize and how read data is converted before output. Each profile occupies one device cell.
During card reading the device scans written profiles in order until a matching profile is found. The profile marked as last terminates the active cell list.
Profile Settings
- Cell name is a human-readable profile name inside the set.
- Card type is the card family.
- Data source selects UID or secure area for MIFARE/DESFire.
- Length, bit defines output card code length according to Wiegand formats.
- Start byte is the data offset.
- Invert code inverts the output code.
Secure Area Settings
Secure area is used when data must be read from a protected block or file instead of UID. The device performs cryptographic authentication and reads the configured area.
- AID is a 3-byte HEX DESFire application identifier.
- Block is a MIFARE Classic block number.
- FID is a DESFire file identifier.
- Encryption selects Crypto1, DES, 2K2DES, 3K3DES or AES-128.
- Key HEX is the access key.
Working with Sets
A set is a saved collection of device settings and card profiles. The top panel lets you select an existing set, enter a new name, save a copy or delete the selected set.
Last Written
The program always has a special Last Written set. It cannot be saved or deleted manually and is updated automatically after a successful write to the device.
Storage and Password
Sets may contain sensitive data: the OSDP key and secure area card keys. They are not stored in JSON as plain text. Values are encrypted using PBKDF2-SHA256 + AES-256-GCM.
One password is used for the whole session. If a protected set was opened, the same password is used for subsequent saves.
Write to Device
Before writing, the device clears active cells, then receives current OSDP settings, input/output settings and card profiles. The working copy sent to the device contains decrypted keys from memory.
After a successful write, the program automatically updates the Last Written set.