Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
en:configuration_api [2023/03/02 15:21] kkshin [BS2BarcodeConfig] |
en:configuration_api [2024/02/21 11:22] mwkim [BS2Trigger] |
||
---|---|---|---|
Line 86: | Line 86: | ||
* [[BS2_GetOsdpStandardActionConfig]]: [+ 2.9.1] Get the LED/buzzer settings for each action of the OSDP device. | * [[BS2_GetOsdpStandardActionConfig]]: [+ 2.9.1] Get the LED/buzzer settings for each action of the OSDP device. | ||
* [[BS2_SetOsdpStandardActionConfig]]: [+ 2.9.1] Specifies the LED/buzzer setting for each action of the OSDP device. | * [[BS2_SetOsdpStandardActionConfig]]: [+ 2.9.1] Specifies the LED/buzzer setting for each action of the OSDP device. | ||
+ | * [[BS2_GetCustomCardConfig]]: [+ 2.9.4] Retrieves Custom smart card settings. | ||
+ | * [[BS2_SetCustomCardConfig]]: [+ 2.9.4] Stores Custom smart card settings. | ||
\\ | \\ | ||
===== Structure ===== | ===== Structure ===== | ||
Line 200: | Line 202: | ||
Also, the required card type MASK should be combined with ''CARD_OPERATION_USE''. \\ | Also, the required card type MASK should be combined with ''CARD_OPERATION_USE''. \\ | ||
For example, useCardOperationMask needs to be configured ''x0x80000001'' when EM card is selected only. | For example, useCardOperationMask needs to be configured ''x0x80000001'' when EM card is selected only. | ||
- | <WRAP group 50%> | + | <WRAP group 60%> |
^Value ^Description ^ | ^Value ^Description ^ | ||
|0xFFFFFFFF |CARD_OPERATION_MASK_DEFAULT | | |0xFFFFFFFF |CARD_OPERATION_MASK_DEFAULT | | ||
|0x80000000 |CARD_OPERATION_USE | | |0x80000000 |CARD_OPERATION_USE | | ||
+ | |0x00000000 |CARD_OPERATION_MASK_NONE | | ||
+ | |0x00000800 |CARD_OPERATION_MASK_CUSTOM_DESFIRE_EV1 | | ||
+ | |0x00000400 |CARD_OPERATION_MASK_CUSTOM_CLASSIC_PLUS | | ||
|0x00000200 |CARD_OPERATION_MASK_BLE | | |0x00000200 |CARD_OPERATION_MASK_BLE | | ||
|0x00000100 |CARD_OPERATION_MASK_NFC | | |0x00000100 |CARD_OPERATION_MASK_NFC | | ||
Line 385: | Line 390: | ||
uint8_t tnaIcon[16]; | uint8_t tnaIcon[16]; | ||
uint8_t useScreenSaver; | uint8_t useScreenSaver; | ||
- | uint8_t reserved1[31]; | + | uint8_t showOsdpResult; |
+ | uint8_t reserved1[30]; | ||
} BS2DisplayConfig; | } BS2DisplayConfig; | ||
</code> | </code> | ||
Line 491: | Line 497: | ||
**17. //useScreenSaver//** \\ | **17. //useScreenSaver//** \\ | ||
''FaceStation 2'', ''FaceStation F2'' If set true, you can activate the screensaver. \\ \\ | ''FaceStation 2'', ''FaceStation F2'' If set true, you can activate the screensaver. \\ \\ | ||
- | **18. //reserved1//** \\ | + | **18. //showOsdpResult//** \\ |
+ | [+ 2.9.6] In environments where Suprema devices are connected as peripheral devices to Intelligent Slaves or third-party controllers, this option allows authentication results to be displayed on the device screen. \\ | ||
+ | <WRAP group 50%> | ||
+ | ^Value ^Description ^ | ||
+ | |0 |Display OSDP Authentication Result (Default) | | ||
+ | |1 |Do Not Display OSDP Authentication Result | | ||
+ | </WRAP> | ||
+ | 19. //reserved1// \\ | ||
Reserved space. \\ | Reserved space. \\ | ||
- | |||
==== BS2IpConfig ==== | ==== BS2IpConfig ==== | ||
<code cpp> | <code cpp> | ||
Line 1227: | Line 1239: | ||
uint32_t deviceID; | uint32_t deviceID; | ||
uint8_t type; | uint8_t type; | ||
- | uint8_t reserved[3]; | + | uint8_t reserved; |
+ | uint16_t ignoreSignalTime; | ||
| | ||
union { | union { | ||
Line 1273: | Line 1286: | ||
|3|Schedule trigger| | |3|Schedule trigger| | ||
</WRAP> | </WRAP> | ||
+ | 11. //reserved// \\ | ||
+ | Reserved space. \\ \\ | ||
+ | 12. //ignoreSignalTime// \\ | ||
+ | [+2.9.6] This setting is specified in milliseconds and is used to ignore repetitive input signals within a certain time frame. \\ | ||
+ | In environments where Suprema devices are connected to third-party controllers via Wiegand, \\ | ||
+ | if the feedback for authentication from a specific model of the controller is repetitively input to the Suprema device, \\ | ||
+ | this feature allows you to forcibly ignore the input signal for the specified duration. \\ \\ | ||
==== BS2Action ==== | ==== BS2Action ==== | ||
Line 1694: | Line 1714: | ||
uint8_t maxRotation; | uint8_t maxRotation; | ||
+ | // Deprecated | ||
struct { | struct { | ||
uint16_t min; | uint16_t min; | ||
Line 1699: | Line 1720: | ||
} faceWidth; | } faceWidth; | ||
+ | // Deprecated | ||
struct { | struct { | ||
uint16_t x; | uint16_t x; | ||
Line 1704: | Line 1726: | ||
} searchRange; | } searchRange; | ||
- | uint8_t reserved2[18]; | + | struct { |
+ | uint8_t min; // 30 ~ 100 | ||
+ | uint8_t max; // 40 ~ 100, 255 | ||
+ | } detectDistance; ////< 2 bytes | ||
+ | |||
+ | BS2_BOOL wideSearch; ///< 1 byte | ||
+ | uint8_t unused; | ||
+ | |||
+ | uint8_t unableToSaveImageOfVisualFace; | ||
+ | uint8_t reserved[13]; | ||
} BS2FaceConfig; | } BS2FaceConfig; | ||
</code> | </code> | ||
Line 1813: | Line 1844: | ||
This enables detection failure in the case of images rotated over a certain angle. \\ | This enables detection failure in the case of images rotated over a certain angle. \\ | ||
maxRotation represents the maximum allowable value in this case, and the default value is 15 degrees. \\ \\ | maxRotation represents the maximum allowable value in this case, and the default value is 15 degrees. \\ \\ | ||
+ | [+ 2.9.6] Additional definitions of Angle \\ | ||
+ | <WRAP group 40%> | ||
+ | ^Definition ^Value ^ | ||
+ | |BS2_MAX_ROTATION_DEFAULT | 15 | | ||
+ | |BS2_MAX_ROTATION_ANGLE_15 | 15 | | ||
+ | |BS2_MAX_ROTATION_ANGLE_30 | 30 | | ||
+ | |BS2_MAX_ROTATION_ANGLE_45 | 45 | | ||
+ | |BS2_MAX_ROTATION_ANGLE_60 | 60 | | ||
+ | |BS2_MAX_ROTATION_ANGLE_75 | 75 | | ||
+ | |BS2_MAX_ROTATION_ANGLE_90 | 90 | | ||
+ | |BS2_MAX_ROTATION_ANGLE_MAX | 90 | | ||
+ | </WRAP> | ||
**12. //faceWidth//** \\ | **12. //faceWidth//** \\ | ||
- | [+ 2.7.1] ''FaceStation F2'' This indicates the width of the face image, and you can specify the minimum and maximum values. \\ | + | [+ 2.7.1] ''FaceStation F2'' This indicates the width of the face image, and you can specify the minimum and maximum values. \\ |
The default values of min and max are as follows. \\ | The default values of min and max are as follows. \\ | ||
- | [+ 2.8.3] ''BioStation 3'' The settings are ignored. \\ | ||
<WRAP group 30%> | <WRAP group 30%> | ||
^ ^Default(min) ^Default(max) ^ | ^ ^Default(min) ^Default(max) ^ | ||
|FSF2 |66 |250 | | |FSF2 |66 |250 | | ||
- | |BS3 |- |- | | + | |BS3 |130 |350 | |
+ | |BEW3 |130 |350 | | ||
</WRAP> | </WRAP> | ||
**13. //searchRange//** \\ | **13. //searchRange//** \\ | ||
- | [+ 2.7.1] ''FaceStation F2'' Represents the face search range, and you can specify the x value (horizontal coordinate) of the range and the width from the x value point. \\ | + | [+ 2.7.1] ''FaceStation F2'' Represents the face search range, and you can specify the x value (horizontal coordinate) of the range and the width from the x value point. \\ |
The default values of x and width are as follows. \\ | The default values of x and width are as follows. \\ | ||
- | [+ 2.8.3] ''BioStation 3'' The settings are ignored. \\ | ||
<WRAP group 30%> | <WRAP group 30%> | ||
^ ^Default(x) ^Default(width) ^ | ^ ^Default(x) ^Default(width) ^ | ||
|FSF2 |144 |432 | | |FSF2 |144 |432 | | ||
- | |BS3 |- |- | | + | |BS3 |90 |540 | |
+ | |BEW3 |90 |540 | | ||
</WRAP> | </WRAP> | ||
**14. //detectDistance//** \\ | **14. //detectDistance//** \\ | ||
[+ 2.8.3] ''BioStation 3'' This configures the minimum and maximum detection range for facial recognition. \\ | [+ 2.8.3] ''BioStation 3'' This configures the minimum and maximum detection range for facial recognition. \\ | ||
+ | [+ 2.9.6] Added features to ''FaceStation F2'' and ''BioEntry W3'' \\ | ||
We no longer support faceWidth to pinpoint the face location using pixel units due to its complexity. \\ | We no longer support faceWidth to pinpoint the face location using pixel units due to its complexity. \\ | ||
Instead, we set the detection range of the subject(face). The unit is set to cm, and the value must be inputted as a multiple of 10. \\ | Instead, we set the detection range of the subject(face). The unit is set to cm, and the value must be inputted as a multiple of 10. \\ | ||
<WRAP group 80%> | <WRAP group 80%> | ||
- | ^ ^Min limit for min detection range ^Max limit for min detection range ^Min detection range(Default) ^Min limit for max detection range ^Max limit for max detection range ^Max sensing range(No limit) ^Max sensing range(Default) ^ | + | ^ ^Min limit for min detection range ^Max limit for min detection range ^Min detection range(Default) ^Min limit for max detection range ^Max limit for max detection range ^Max sensing range(No limit) ^Max sensing range(Default) ^ |
- | |BS3 |30 |100 |60 |40 |100 |255 |100 | | + | |FSF2 |30 |130 |30 |40 |130 |255 |130 | |
+ | |BS3 |30 |100 |30 |40 |100 |255 |100 | | ||
+ | |BEW3 |30 |100 |30 |40 |100 |255 |100 | | ||
</WRAP> | </WRAP> | ||
**15. //wideSearch//** \\ | **15. //wideSearch//** \\ | ||
- | [+ 2.8.3] ''BioStation 3'' This can increase the detection range for facial recognition. \\ | + | [+ 2.8.3] ''BioStation 3'' This can increase the detection range for face detection. \\ |
We no longer support searchRange to set the x-coordinate and width due to its complexity. \\ | We no longer support searchRange to set the x-coordinate and width due to its complexity. \\ | ||
Instead, we set the face detection setting as default(FALSE), or a wide area(TRUE). \\ | Instead, we set the face detection setting as default(FALSE), or a wide area(TRUE). \\ | ||
The details of the settings and protocols for the detection of wide area is set within the device, which the user cannot change. \\ \\ | The details of the settings and protocols for the detection of wide area is set within the device, which the user cannot change. \\ \\ | ||
- | If this setting is set to TRUE, the camera detects subjects within a large range, and unintentionally detect and authenticate multiple subjects at once. Therefore, the default setting is at FALSE. \\ \\ | + | If this setting is set to TRUE, the camera detects subjects within a large range, and unintentionally detect and authenticate multiple subjects at once. \\ |
+ | Therefore, the default setting is at FALSE. \\ \\ | ||
16. //unused// \\ | 16. //unused// \\ | ||
Reserved space.\\ \\ | Reserved space.\\ \\ | ||
- | 17. //reserved// \\ | + | 17. //unableToSaveImageOfVisualFace// \\ |
+ | [+ 2.9.6] Indicates whether devices that use visual face as a credential will store facial images on the device. \\ | ||
+ | Enabling this setting will immediately delete image information from all users' facial data stored in the device, leaving only the templates. \\ | ||
+ | Additionally, even if face information containing user images is obtained through the [[BS2_EnrollUserFaceEx]] API, the device will ignore it. \\ | ||
+ | The default value is false, which means both facial data and images are stored. \\ \\ | ||
+ | 18. //reserved// \\ | ||
Reserved space.\\ \\ | Reserved space.\\ \\ | ||
==== BS2Rs485ConfigEX ==== | ==== BS2Rs485ConfigEX ==== | ||
Line 2488: | Line 2540: | ||
Visual barcode scans QR code with a general visual camera instead of a QR code sensor, \\ | Visual barcode scans QR code with a general visual camera instead of a QR code sensor, \\ | ||
and a separate license activation is required to use this feature. \\ | and a separate license activation is required to use this feature. \\ | ||
- | License activation is supported through [[qr_code_api#BS2_EnableBarcodeLicense]]. \\ \\ | + | License activation is supported through [[BS2_EnableDeviceLicense]]. \\ \\ |
6. //motionSensitivity// \\ | 6. //motionSensitivity// \\ | ||
[+2.9.1] Set the sensitivity of motion sensor for visual barcode. \\ | [+2.9.1] Set the sensitivity of motion sensor for visual barcode. \\ | ||
Line 2877: | Line 2929: | ||
Visual barcode scans QR code with a general visual camera instead of a QR code sensor, \\ | Visual barcode scans QR code with a general visual camera instead of a QR code sensor, \\ | ||
and a separate license activation is required to use this feature. \\ | and a separate license activation is required to use this feature. \\ | ||
- | License activation is supported through [[qr_code_api#BS2_EnableBarcodeLicense]]. \\ \\ | + | License activation is supported through [[BS2_EnableDeviceLicense]]. \\ \\ |
6. //motionSensitivity// \\ | 6. //motionSensitivity// \\ | ||
[+2.9.1] Set the sensitivity of motion sensor for visual barcode. \\ | [+2.9.1] Set the sensitivity of motion sensor for visual barcode. \\ | ||
Line 3123: | Line 3175: | ||
29. //actions// \\ | 29. //actions// \\ | ||
LED/buzzer information for OSDP devices, up to 32 can be designated. \\ \\ | LED/buzzer information for OSDP devices, up to 32 can be designated. \\ \\ | ||
+ | |||
+ | |||
+ | ==== BS2CustomMifareCard ==== | ||
+ | <code cpp> | ||
+ | typedef struct { | ||
+ | uint8_t primaryKey[6]; | ||
+ | uint8_t reserved1[2]; | ||
+ | uint8_t secondaryKey[6]; | ||
+ | uint8_t reserved2[2]; | ||
+ | uint16_t startBlockIndex; | ||
+ | uint8_t dataSize; | ||
+ | uint8_t skipBytes; | ||
+ | uint8_t reserved[4]; | ||
+ | } BS2CustomMifareCard; | ||
+ | </code> | ||
+ | 1. //primaryKey// \\ | ||
+ | Primary encryption key to access the Mifare card information. \\ \\ | ||
+ | 2. //reserved1// \\ | ||
+ | Reserved space.\\ \\ | ||
+ | 3. //secondaryKey// \\ | ||
+ | Secondary encryption key to access the Mifare card information. \\ \\ | ||
+ | 4. //reserved2// \\ | ||
+ | Reserved space.\\ \\ | ||
+ | 5. //startBlockIndex// \\ | ||
+ | Start block index on the Mifare data storage.\\ \\ | ||
+ | 6. //dataSize// \\ | ||
+ | The size in bytes of the card data. \\ \\ | ||
+ | 7. //skipBytes// \\ | ||
+ | This is where the card data appears. \\ | ||
+ | This is the starting point to read card data. It is 0 when reading from the starting point, and indicates the number of bytes skipped after the first. \\ \\ | ||
+ | 8. //reserved// \\ | ||
+ | Reserved space.\\ \\ | ||
+ | |||
+ | |||
+ | ==== BS2CustomDesFireCard ==== | ||
+ | <code cpp> | ||
+ | typedef struct { | ||
+ | uint8_t primaryKey[16]; | ||
+ | uint8_t secondaryKey[16]; | ||
+ | uint8_t appID[3]; | ||
+ | uint8_t fileID; | ||
+ | uint8_t encryptionType; // 0: DES/3DES, 1: AES | ||
+ | uint8_t operationMode; // 0: legacy(use picc master key), 1: new mode(use app master, file read, file write key) | ||
+ | uint8_t dataSize; | ||
+ | uint8_t skipBytes; | ||
+ | uint8_t reserved[4]; | ||
+ | BS2DesFireAppLevelKey desfireAppKey; ///<52 bytes | ||
+ | } BS2CustomDesFireCard; ///<96 Bytes | ||
+ | </code> | ||
+ | 1. //primaryKey// \\ | ||
+ | Primary encryption key to access the DesFire card information. (General settings) \\ \\ | ||
+ | 2. //secondaryKey// \\ | ||
+ | Secondary encryption key to access the Desfire card information. (General settings) \\ \\ | ||
+ | 3. //appID// \\ | ||
+ | Application Id that is stored inside the DesFire card for user authentication.\\ \\ | ||
+ | 4. //fileID// \\ | ||
+ | File ID that is stored inside the DesFire card, which will be used by the application to read and write data.\\ \\ | ||
+ | 5. //encryptionType// \\ | ||
+ | Type of data encryption.\\ | ||
+ | <WRAP group 50%> | ||
+ | ^Value ^Description ^ | ||
+ | |0 |DES/3DES | | ||
+ | |1 |AES | | ||
+ | </WRAP> | ||
+ | 6. //operationMode// \\ | ||
+ | Operation mode. \\ | ||
+ | <WRAP group 50%> | ||
+ | ^Value ^Description ^ | ||
+ | |0 |Using general settings (Using PICC master key) | | ||
+ | |1 |Using advanced settings (Using App master key) | | ||
+ | </WRAP> | ||
+ | 7. //dataSize// \\ | ||
+ | The size in bytes of the card data. \\ \\ | ||
+ | 8. //skipBytes// \\ | ||
+ | This is where the card data appears. \\ | ||
+ | This is the starting point to read card data. It is 0 when reading from the starting point, and indicates the number of bytes skipped after the first. \\ \\ | ||
+ | 9. //reserved// \\ | ||
+ | Reserved space.\\ \\ | ||
+ | 10. //desfireAppKey// \\ | ||
+ | Indicates key information to access DesFire card information. (Advanced settings) \\ \\ | ||
+ | |||
+ | |||
+ | ==== BS2CustomCardConfig ==== | ||
+ | <code cpp> | ||
+ | typedef struct { | ||
+ | BS2_CARD_DATA_TYPE dataType; | ||
+ | BS2_BOOL useSecondaryKey; | ||
+ | uint8_t reserved1[2]; | ||
+ | |||
+ | BS2CustomMifareCard mifare; | ||
+ | BS2CustomDesFireCard desfire; | ||
+ | uint8_t reserved2[24]; | ||
+ | uint8_t reserved3[96]; | ||
+ | |||
+ | BS2_CARD_BYTE_ORDER smartCardByteOrder; | ||
+ | uint8_t reserved4[3]; | ||
+ | BS2_UID formatID; | ||
+ | uint8_t reserved5[8]; | ||
+ | } BS2CustomCardConfig; | ||
+ | </code> | ||
+ | 1. //dataType// \\ | ||
+ | Type of card data. \\ | ||
+ | <WRAP group 50%> | ||
+ | ^Value ^Description ^ | ||
+ | |0 |Binary | | ||
+ | |1 |ASCII | | ||
+ | |2 |UTF16 | | ||
+ | |3 |BCD | | ||
+ | </WRAP> | ||
+ | 2. //useSecondaryKey// \\ | ||
+ | Decides whether to use the secondary encryption key. \\ \\ | ||
+ | 3. //reserved1// \\ | ||
+ | Reserved space. \\ \\ | ||
+ | 4. //mifare// \\ | ||
+ | Set the Mifare custom card information. \\ \\ | ||
+ | 5. //desfire// \\ | ||
+ | Set the DESFire custom card information. \\ \\ | ||
+ | 6. //reserved2// \\ | ||
+ | Reserved space. \\ \\ | ||
+ | 7. //reserved3// \\ | ||
+ | Reserved space. \\ \\ | ||
+ | 8. //smartCardByteOrder// \\ | ||
+ | The output method can be selected from MSB or LSB. \\ | ||
+ | <WRAP group 50%> | ||
+ | ^Value ^Description ^ | ||
+ | |0 |MSB | | ||
+ | |1 |LSB | | ||
+ | </WRAP> | ||
+ | 9. //reserved4// \\ | ||
+ | Reserved space. \\ \\ | ||
+ | 10. //formatID// \\ | ||
+ | This is an identifier that can be used when the BioStar 2 application needs to manage the card configuration as a database. \\ \\ | ||
+ | 11. //reserved5// \\ | ||
+ | Reserved space. \\ \\ |