Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
en:configuration_api [2021/03/12 08:22]
yjjung [BS2Rs485Config]
en:configuration_api [2022/08/11 21:34]
127.0.0.1 external edit
Line 76: Line 76:
   * [[BS2_GetThermalCameraConfig]]:​ [+ 2.7.1] ''​FaceStation F2, FaceStation2''​ Retrieves configuration of thermal camera.   * [[BS2_GetThermalCameraConfig]]:​ [+ 2.7.1] ''​FaceStation F2, FaceStation2''​ Retrieves configuration of thermal camera.
   * [[BS2_SetThermalCameraConfig]]:​ [+ 2.7.1] ''​FaceStation F2, FaceStation2''​ Stores configuration of thermal camera.   * [[BS2_SetThermalCameraConfig]]:​ [+ 2.7.1] ''​FaceStation F2, FaceStation2''​ Stores configuration of thermal camera.
 +  * [[BS2_GetBarcodeConfig]]:​ [+ 2.8] ''​X-Station 2''​ Retrieves configuration of Barcode. 
 +  * [[BS2_SetBarcodeConfig]]:​ [+ 2.8] ''​X-Station 2''​ Stores configuration of Barcode. 
 +  * [[BS2_GetInputConfigEx]]:​​ [+ 2.8.1] ''​​IM-120''​​ Retrieves Expanded Configuration related to the Input. 
 +  * [[BS2_SetInputConfigEx]]:​​ [+ 2.8.1] ''​​IM-120''​​ Retrieves Expanded Configuration related to the Input. 
 +  * [[BS2_GetRelayActionConfig]]:​​ [+ 2.8.1] ''​​IM-120''​​ Retrieves Configuration related to the RelayAction. 
 +  * [[BS2_SetRelayActionConfig]]:​​ [+ 2.8.1] ''​​IM-120''​​ Retrieves Configuration related to the RelayAction.
 \\ \\
 ===== Structure ===== ===== Structure =====
Line 416: Line 421:
 </​WRAP>​ </​WRAP>​
 **6. //​menuTimeout//​** \\  **6. //​menuTimeout//​** \\ 
-Timeout in seconds for lock screen when the user is inactive. The timeout can be set from 0 to 255 seconds. 0 means no lock screen.\\ ​\\ +Timeout in seconds for lock screen when the user is inactive. The timeout can be set from 0 to 255 seconds. 0 means no lock screen.\\ ​ 
 +<WRAP group 50%> 
 +^Value ​ ^Description ​ ^ 
 +|0  |No timeout. ​ | 
 +|10  |Menu timeout 10 sec.  | 
 +|20  |Menu timeout 20 sec. (Default) ​ | 
 +|30  |Menu timeout 30 sec.  | 
 +|40  |Menu timeout 40 sec.  | 
 +|50  |Menu timeout 50 sec.  | 
 +|60  |Menu timeout 60 sec.  | 
 +</​WRAP>​
 **7. //​msgTimeout//​** \\  **7. //​msgTimeout//​** \\ 
-Message timeout in milliseconds. The timeout can be set from 500 to 5000 milliseconds.\\ ​\\ +Message timeout in milliseconds. The timeout can be set from 500 to 5000 milliseconds.\\ ​ 
 +<WRAP group 50%> 
 +^Value ​ ^Description ​ ^ 
 +|500  |Message timeout 500 msec.  | 
 +|1000  |Message timeout 1 sec.  | 
 +|2000  |Message timeout 2 sec. (Default) ​ | 
 +|3000  |Message timeout 3 sec.  | 
 +|4000  |Message timeout 4 sec.  | 
 +|5000  |Message timeout 5 sec.  | 
 +</​WRAP>​
 **8. //​backlightTimeout//​** \\  **8. //​backlightTimeout//​** \\ 
-Backlight timeout in seconds. \\ \\ +Backlight timeout in seconds. \\  
 +<WRAP group 50%> 
 +^Value ​ ^Description ​ ^ 
 +|0  |Backlight timeout 0 sec.  | 
 +|10  |Backlight timeout 10 sec.  | 
 +|20  |Backlight timeout 20 sec. (Default) ​ | 
 +|30  |Backlight timeout 30 sec.  | 
 +|40  |Backlight timeout 40 sec.  | 
 +|50  |Backlight timeout 50 sec.  | 
 +|60  |Backlight timeout 60 sec.  | 
 +</​WRAP>​
 **9. //​displayDateTime//​** \\  **9. //​displayDateTime//​** \\ 
 Decides whether to display clock on screen. \\ \\  Decides whether to display clock on screen. \\ \\ 
Line 696: Line 730:
 **23. //​cipher//​** \\ **23. //​cipher//​** \\
 Activates '​Keypad card ID' option. \\ Activates '​Keypad card ID' option. \\
-Default value is 0, it is only valid for XPass D2 Gangbox Keypad type. \\+Default value is 0, it is only valid for Gangbox Keypad type of Xpass 2, XPass D2. \\
 <WRAP group 50%> <WRAP group 50%>
 ^Value ​ ^Description ​ ^ ^Value ​ ^Description ​ ^
Line 787: Line 821:
 ==== BS2Rs485Config ==== ==== BS2Rs485Config ====
 <code cpp> <code cpp>
 +typedef struct {
 +    uint8_t supportConfig;​
 +    uint8_t useExceptionCode;​
 +    uint8_t exceptionCode[BS2_RS485_MAX_FAIL_CODE_LEN];​
 +    uint8_t outputFormat;​
 +    uint8_t osdpID;
 +    uint8_t reserved[4];​
 +} BS2IntelligentPDInfo; ​  //​Added 2.8.0 for Intelligent Slave Feature
 +
 typedef struct { typedef struct {
     uint32_t baudRate;     uint32_t baudRate;
Line 799: Line 842:
     uint8_t mode;     uint8_t mode;
     uint8_t numOfChannels;​     uint8_t numOfChannels;​
-    uint8_t reserved[2];​ +    uint8_t reserved[2]; ​ 
-    uint8_t reserved1[32];+    BS2IntelligentPDInfo intelligentInfo; ​ //Updated to v2.8.0 
 +    uint8_t reserved1[16];
     BS2Rs485Channel channels[BS2_RS485_MAX_CHANNELS];​     BS2Rs485Channel channels[BS2_RS485_MAX_CHANNELS];​
 } BS2Rs485Config;​ } BS2Rs485Config;​
 </​code>​ </​code>​
-**1. //​baudRate//​** \\ +**1. //​supportConfig//​** \\  
 +''​[+V2.8]''​ If this value is 0, the device will ignore all settings related to Intelligent PD (Peripheral Device) below. \\ 
 +useExceptionCode \\ 
 +exceptionCode \\ 
 +outputFormat \\ 
 +osdpID \\ 
 + 
 +**2. //​useExceptionCode//​** \\  
 +''​[+V2.8]''​ This option is available to choose whether the exception code is sent or not. 
 + 
 +**3. //​exceptionCode//​** \\  
 +''​[+V2.8]''​ This function sends an exception code in case of authentication failure or authentication success but no card registered user.\\ 
 +Set the exception code to be used at this time.\\ 
 +If the exception code is 0 (0x0000000000000000),​ no exception code is generated.\\ 
 + 
 +**4. //​outputFormat//​** \\  
 +''​[+V2.8]''​ Intelligent Slave device can send Card ID or User ID upon successful authentication. ​ \\ 
 +If it is 0, the card ID is output, if it is 1, the user ID is output. \\ 
 + 
 +**5. //​osdpID//​** \\  
 +''​[+V2.8]''​ This is a value used to distinguish two or more Suprema Intelligent devices from each other when connecting to the RS485 port of the same third party controller. You can set and designate a unique value between 0 and 127. 
 +The default OSDP ID for Suprema intelligent devices is 0. 
 + 
 + 
 +**6. //​reserved//​** \\  
 +''​[+V2.8]''​ Reserved space.\\  
 + 
 + 
 +**7. //​baudRate//​** \\ 
 The RS-485 communication speed which can be configured as below. \\ The RS-485 communication speed which can be configured as below. \\
 <WRAP group 50%> <WRAP group 50%>
Line 814: Line 886:
 |115200 ​ | |115200 ​ |
 </​WRAP>​ </​WRAP>​
-**2. //​channelIndex//​** \\ +**8. //​channelIndex//​** \\ 
 (non configurable index) Communication channel index of the RS-485 network. \\ \\ (non configurable index) Communication channel index of the RS-485 network. \\ \\
-**3. //​useRegistance//​** \\ +**9. //​useRegistance//​** \\ 
 Registance flag - no effect on operation. \\ \\ Registance flag - no effect on operation. \\ \\
-**4. //​numOfDevices//​** \\ +**10. //​numOfDevices//​** \\ 
 Number of slave devices.\\ \\ Number of slave devices.\\ \\
-**5. //​slaveDevices//​** \\ +**11. //​reserved//​** \\  
 +Reserved space.\\ \\ 
 +**12. //​slaveDevices//​** \\ 
 List of slave devices, which can be configured up to 32 devices.\\ \\ List of slave devices, which can be configured up to 32 devices.\\ \\
-**6. //mode//** \\ +**13. //mode//** \\ 
 Decides the operating mode on the RS-485 network.\\ Decides the operating mode on the RS-485 network.\\
 <WRAP group 50%> <WRAP group 50%>
Line 831: Line 905:
 |3  |Standalone ​ | |3  |Standalone ​ |
 </​WRAP>​ </​WRAP>​
-**7. //​numOfChannels//​** \\ +**14. //​numOfChannels//​** \\ 
 Number of RS-485 channel.\\ \\  Number of RS-485 channel.\\ \\ 
-**8. //​reserved//​** \\ +**15. //​reserved//​** \\ 
 Reserved space.\\ \\  Reserved space.\\ \\ 
-**9. //​reserved1//​** \\  +**16. //​intelligentInfo//​** \\  
-Reserved space.\\ \\ +''​[+V2.8]''​ This is Intelligent Slave Device Information\\  
-**10. //​channels//​** \\ +This only works when the device mode is RS485 default.\\ 
 +Once the Suprema device is connected to a slave device to the 3rd party ACU through RS485(OSDP),​ the Suprema device becomes a Peripheral Device of the OSDP automatically.\\ \\ 
 + 
 +**17. //​reserved1//​** \\  
 +Reserved space.\\ \\  
 +**18. //​channels//​** \\ 
 List of RS-485 channels, which can be configured up to 4 channels.\\ \\  List of RS-485 channels, which can be configured up to 4 channels.\\ \\ 
  
Line 1639: Line 1718:
 |1  |Outdoor ​ | |1  |Outdoor ​ |
 |2  |Automatic ​ | |2  |Automatic ​ |
 +|3  |[+V2.8] Not used ''​(FaceStation F2 v1.1.0 or higher version)'' ​ |
 </​WRAP>​ </​WRAP>​
 +[Note]\\
 +FaceStation F2: v1.0.0 - v1.0.5 \\
 +Ambient Brightness: Normal, High, ''​Auto''​ \\
 +FaceStation F2: v1.1.0 or higher version \\ 
 +Light Brightness: Normal, High, ''​Not Used''​ \\
 +
 **3. //​enrollThreshold//​** \\  **3. //​enrollThreshold//​** \\ 
 Threshold of face enrollment. It determines how much movement of pose is allowed when enrolling the face.  \\  Threshold of face enrollment. It determines how much movement of pose is allowed when enrolling the face.  \\ 
Line 1726: Line 1812:
 **12. //​faceWidth//​** \\  **12. //​faceWidth//​** \\ 
 [+ V2.7.1] ''​FaceStation F2''​ This indicates the width of the face image, and you can specify the minimum and maximum values. \\ [+ V2.7.1] ''​FaceStation F2''​ This indicates the width of the face image, and you can specify the minimum and maximum values. \\
-The minimum and maximum ​values ​default to 66 and 250. \\ \\+The default ​values ​of min and max are as follows. \\ 
 +<WRAP group 20%> 
 +^  ^Default ​ ^ 
 +|min  |66  | 
 +|max  |250  | 
 +</​WRAP> ​
  
 **13. //​searchRange//​** \\ **13. //​searchRange//​** \\
 [+ V2.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. \\ [+ V2.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 ​for value and width are 144 and 432. \\ \\+The default values ​of x and width are as follows. \\ 
 +<WRAP group 20%> 
 +^  ^Default ​ ^ 
 +|x  |144  | 
 +|width ​ |432  | 
 +</​WRAP> ​
 14. //​reserved2//​ \\  14. //​reserved2//​ \\ 
 Reserved space.\\ \\ Reserved space.\\ \\
Line 2279: Line 2375:
 <WRAP group 50%> <WRAP group 50%>
 ^Value ​ ^Description ​ ^Default ​ ^ ^Value ​ ^Description ​ ^Default ​ ^
-|0  |Temperature check or Mask detection check before ​authentication | Default ​ | +Authentication before ​Temperature check or Mask detection check  
-|1  |Authentication ​before ​Temperature check or Mask detection check  ​| ​ | +|0  |Check after authentication | Default ​ | 
-|2  |No authentication. Only Temperature check or Mask detection ​check  |  |+|1  |Check before ​authentication ​ ​| ​ | 
 +|2  |No authenticationcheck only  ​| ​ |
 </​WRAP>​ </​WRAP>​
  
Line 2318: Line 2415:
 It must be as the value multiplied by 10 of the temperature to be set. The value is available -50 ~ +50 \\ \\ It must be as the value multiplied by 10 of the temperature to be set. The value is available -50 ~ +50 \\ \\
  
 +==== BS2BarcodeConfig ====
 +<code cpp>
 +typedef struct {
 +    uint8_t useBarcode;
 +    uint8_t scanTimeout;​
 +    uint8_t bypassData;
 +    uint8_t treatAsCSN;
 +
 +    uint8_t reserved[12];​
 +} BS2BarcodeConfig;​
 +</​code>​
 +1. //​useBarcode//​ \\ 
 +Barcode usage flag. \\ \\ 
 +2. //​scanTimeout//​ \\ 
 +Set the Barcode scan time. The unit is in seconds. \\
 +The default is 4 seconds, and can be entered within a range of 4 to 10 seconds.\\ \\
 +3. //​bypassData//​ \\ 
 +[+2.8.2] Used to send read barcode information to the server, not processed by the device. \\
 +If the barcode value is stored in the user information structure for user authentication,​ \\
 +There is a size constraint of 32 bytes ([[smartcard_api#​BS2CSNCard|BS2CSNCard data]]), \\
 +Call the [[BS2_SetBarcodeScanListener]],​ use this option to send barcodes up to 512 bytes of size to the server. \\ \\
 +4. //​treatAsCSN//​ \\
 +[+2.8.2] Indicates whether the Barcode should be treated the same as a regular CSN card. \\
 +It is applied from XS2-QR 1.1.3 and in the case of false, it is treated the same as before. \\
 +This allows you to freely specify character sets that can be treated as barcodes from ASCII codes 32 to 126.  (See description in [[qr_code_api#​BS2_WriteQRCode|BS2_WriteQRCode]]) \\
 +If set to true, the barcode is treated like a number just like the existing CSN. \\
 +Therefore, if you want to set the bar code card data with special characters and English characters. \\
 +In this case, only the card type may be different, and the CSN card and barcode data may be used in the same value. \\
 +
 +5. //​reserved//​ \\ 
 +Reserved space. \\
 +
 +==== BS2InputConfigEx ====
 +<code cpp>
 +typedef struct {
 +    uint8_t ​   numInputs;
 +    uint8_t ​   numSupervised;​
 +    uint8_t ​   reserved[18];​
 +
 +    struct {
 +        uint8_t ​   portIndex;
 +        uint8_t ​   switchType;
 +        uint16_t ​  ​duration;​
 +    ​
 +        uint8_t ​   reserved;
 +        uint8_t ​   supervisedResistor;​
 +        uint8_t ​   reserved1[16];​
 +    ​
 +        uint8_t ​   reserved2[26];​
 +    } inputs[BS2_MAX_INPUT_NUM_EX];​
 +
 +    uint8_t ​   reserved2[200];​
 +} BS2InputConfigEx;​
 +</​code>​
 +1. //​​numInputs//​​ \\ 
 +Number of Input port. \\ \\
 +2. //​​numSupervised//​​ \\
 +Number of supervised input port. \\ \\
 +3. //​​reserved//​​ \\
 +Reserved Space. \\ \\
 +4. //​​portIndex//​​ \\ 
 +Input Port Number. \\ \\
 +5. //​switchType//​ \\
 +Input Signal Type. \\ 
 +<WRAP group 50%>
 +^Value ​ ^Description ​ ^
 +|0  |Normally Open  |
 +|1  |Normally Closed ​ |
 +</​WRAP> ​
 +6. //​​duration//​​ \\ 
 +Input Signal Duration Time Measurement is milliseconds(ms). \\ \\
 +7. //​​reserved//​​ \\
 +Reserved Space. \\ \\
 +8. //​​supervisedResistor//​​ \\
 +You can set Supervised input resistance value type or unsupervise it. \\
 +<WRAP group 50%>
 +^Value ​ ^Description ​ ^
 +|0  |1K Resistance ​ |
 +|1  |2.2K Resistance ​ |
 +|2  |4.7K Resistance ​ |
 +|3  |10K Resistance ​ |
 +|254  |Unsupervised(Default) ​ |
 +</​WRAP> ​
 +9. //​​reserved1//​​ \\
 +Reserved Space. \\ \\
 +10. //​​reserved2//​​ \\
 +Reserved Space. \\ \\
 +11. //​​reserved2//​​ \\
 +Reserved Space. \\ \\
 + 
 +==== BS2RelayActionConfig ====
 +<code cpp>
 +typedef struct {
 +    uint32_t ​       deviceID;​ ///<​ 4 bytes
 +    uint8_t ​        ​reserved[16];​ ///<​ 16 bytes
 +
 +    struct {
 +        uint8_t ​    ​port;​ ///<​ 1 byte (relay port)
 +        uint8_t ​    ​reserved0;​ ///<​ 1 byte
 +        uint8_t ​    ​disconnEnabled;​ ///<​ 1 byte (RS485 disconnection)
 +        uint8_t ​    ​reserved[9];​ ///<​ 9 bytes
 +        ​
 +        struct {
 +            uint8_t port;​ ///<​ 1 byte (input port)
 +            uint8_t type;​ ///<​ 1 byte (linkage/​latching/​release)
 +            uint8_t mask;​ ///<​ 1 byte (alarm/​fault)
 +            uint8_t reserved[9];​ ///<​ 9 bytes
 +        } input[BS2_MAX_RELAY_ACTION_INPUT];​ ///<​ 192 bytes
 +    } relay[BS2_MAX_RELAY_ACTION];​ ///< 816 bytes
 +
 +    uint8_t reserved2[152];​ ///<​ 152 bytes
 +} BS2RelayActionConfig;​
 +</​code>​
 +1. //​​deviceID//​​ \\ 
 +Device Identifier \\ \\
 +2. //​​reserved//​​ \\
 +Reserved Space. \\ \\
 +3. //relay// \\
 +Relay Setting Information \\ \\
 +4. //port// \\ 
 +Relay port Number. \\ \\
 +5. //​​reserved0//​​ \\
 +Reserved Space. \\ \\
 +6. //​​disconnEnabled//​​ \\ 
 +If set to true, a signal is made when RS485 is disconnected. \\ \\
 +7. //​​reserved//​​ \\
 +Reserved Space. \\ \\
 +8. //input// \\
 +Defines to which input ports the relay ports will take action. \\ \\
 +9. //port// \\
 +Input port Identifier. \\ \\
 +10. //type// \\
 +Defines in which input type the input will take action. \\
 +If set to Linkage, signal can be made when alarm is set to mask. \\
 +<WRAP group 50%>
 +^type  ^Value ​ ^Description ​ ^
 +|NONE  |0  |OFF ​ |
 +|LINKAGE ​ |1  |Connect to the relay of the input ​ |
 +|LATCHING ​ |2  |''​​Not Supported''​ ​ |
 +|RELEASE ​ |3  |''​​Not Supported''​ ​ |
 +</​WRAP>​
 +11. //mask// \\
 +Set mask to Input Signal Info. \\
 +<WRAP group 50%>
 +^type  ^Value ​ ^Description ^
 +|NONE  |0  |OFF ​ |
 +|ALARM ​ |1  |Signal Made ​ |
 +|FAULT ​ |2  |Signal Made when disconnected ​ |
 +</​WRAP>​
 +12. //​​reserved//​​ \\
 +Reserved Space. \\ \\
 +13. //​​reserved2//​​ \\
 +Reserved Space. \\ \\