Error code
Common Error Codes
Below is a list of common error codes that developers may encounter when working with the Android application for Smart POS devices. Understanding these error codes is essential for effective troubleshooting.
Code | Description |
---|---|
-251 | JNI error, normal error. |
-252 | JNI error, invalid argument. |
-253 | JNI error, no implement. |
-254 | JNI error, device has opened. |
-255 | JNI error, device not opened. |
-75520 | No key in this field. |
-65792 | PinPad cancel. |
-65538 | PinPad timeout. |
-65676 | Terminal certificate is not correct. |
-74496 | Wrong length of key. |
Error Codes in C Interface
When dealing with error codes in the C interface, it's crucial to follow the steps outlined below to identify and address issues effectively. 1. Get the Absolute Value and Convert to HEX:
- Obtain the absolute value of the error code.
- If the absolute value is greater than 10000, convert it to HEX as Byte0Byte1Byte2Byte3.
2. Check Hardware and Software Errors:
- Examine the right three bytes (Byte1Byte2Byte3).
- Byte1 represents the hardware type, Byte2 represents the hardware error, and Byte3 represents the software error.
- If Byte2 is not equal to 0, it indicates a hardware error.
- If Byte2 is 0 and Byte3 is not 0, it indicates a software error.
3. Error Code Resolution:
- If Byte2 is not 0, refer to the Hardware Type and Hardware Error tables to identify the specific issue.
- If Byte2 is 0 and Byte3 is not 0, refer to the Software Error table for resolution.
Example:
Suppose a C interface method returns 196609. Firstly, convert it to hex value (30001). In this case:
- Byte1 is 3 (hardware type).
- Byte2 is 00 (no hardware error).
- Byte3 is 01 (software error).
- As Byte2 is 0 and Byte3 is not 0, it's a software error.
- Byte3, 0x01, corresponds to "Operation not permitted" in the Software Error table.
4. Special Cases:
- If the absolute value is between 250 and 255, the error is from JNI source code. Refer to the common error code list above.
- For other values, please send the log to WizarPOS for further investigation.
Hardware Type (Byte1) Mapping:
- 1: PINPAD
Hardware Error (Byte2) Mapping:
MSR
Code | Description |
---|---|
0x00 | success |
0x01 | General error |
0x40 | Mismatch in the field of STX |
0x41 | Mismatch in the field of class |
0x42 | Mismatch in the field of function |
0x43 | Mismatch in the field of length |
0x44 | Mismatch in the field of ETX |
0x45 | Mismatch in the field of LRC |
0x46 | Mismatch in the field of MODE |
0x51 | Preamble error in card read data |
0x52 | Postamble error in card read data |
0x53 | LRC error in card read data |
0x54 | Parity error in card read data |
0x55 | Blank track |
0x61 | STX/ETX error in command communication |
0x62 | Class/Function un-recognizable in command |
0x63 | BCC error in command communication |
0x64 | Length error in command communication |
0x65 | No data available to re-read |
0x71 | No more space available for OPT write |
0x72 | OTP write try without data |
0x73 | CRC error in read data from OTP |
0x74 | No data stored in OTP |
SmartCard Reader
Code | Description |
---|---|
0x00 | success |
0x01 | CMD_FAILED |
0x10 | AU9540_MSG_TYPE_NOT_MATCH |
0x11 | AU9540_MSG_SLOT_NOT_MATCH |
0x12 | AU9540_MSG_SEQ_NOT_MATCH |
0x13 | AU9540_MSG_NEED_MORE_WAIT_TIME |
0x6A | timeout during a Rx |
0xF4 | PROCEDURE_BYTE_CONFLICT |
0xF6 | ICC_PROTOCOL_NOT_SUPPORTED |
0xF7 | BAD_ATR_TCK |
0xF8 | BAD_ATR_TS |
0xFB | An all inclusive hardware error occurred |
0xFD | Parity error while talking to the ICC |
0xFE | timed out while talking to the ICC |
0xFF | Host aborted the current activity |
PINPAD
Code | Description |
---|---|
0x00 | success |
0x11 | access denied |
0x12 | wrong command id |
0x13 | wrong package length |
0x14 | user cancel |
0x15 | wrong length of field |
0x20 | no key in this sector |
0x21 | out of range of pin length |
0x22 | failed in authentication |
0x23 | wrong length of key |
0x24 | wrong check value of session key |
0x25 | failed in writing flash |
0x26 | failed in reading flash |
0x27 | no key in this field |
0x28 | input is out legal range |
0x29 | failed in checking integrity |
0x2A | failed in encrypting using aes key text |
0x2B | failed in decrypting using aes key |
0x2C | break rules about data sensitivity |
0x2D | failed in the process of calculating mac |
0x2E | data length is not aligned |
Software Error (Byte3) Mapping
Code(Hex) | Code(Decimal) | Description |
---|---|---|
0x01 | 1 | Operation not permitted |
0x02 | 2 | No such file or directory |
0x03 | 3 | No such process |
0x04 | 4 | Interrupted system call |
0x05 | 5 | I/O error |
0x06 | 6 | No such device or address |
0x07 | 7 | Arg list too long |
0x08 | 8 | Exec format error |
0x09 | 9 | Bad file number |
0x0A | 10 | No child processes |
0x0B | 11 | Try again |
0x0C | 12 | Out of memory |
0x0D | 13 | Permission denied |
0x0E | 14 | Bad address |
0x0F | 15 | Block device required |
0x10 | 16 | Device or resource busy |
0x11 | 17 | File exists |
0x12 | 18 | Cross-device link |
0x13 | 19 | No such device |
0x14 | 20 | Not a directory |
0x15 | 21 | Is a directory |
0x16 | 22 | Invalid argument |
0x17 | 23 | File table overflow |
0x18 | 24 | Too many open files |
0x19 | 25 | Not a typewriter |
0x1A | 26 | Text file busy |
0x1B | 27 | File too large |
0x1C | 28 | No space left on device |
0x1D | 29 | Illegal seek |
0x1E | 30 | Read-only file system |
0x1F | 31 | Too many links |
0x20 | 32 | Broken pipe |
0x21 | 33 | Math argument out of domain of func |
0x22 | 34 | Math result not representable |
0x23 | 35 | Resource deadlock would occur |
0x24 | 36 | File name too long |
0x25 | 37 | No record locks available |
0x26 | 38 | Function not implemented |
0x27 | 39 | Directory not empty |
0x28 | 40 | Too many symbolic links encountered |
0x29 | 41 | Operation would block |
0x2A | 42 | No message of desired type |
0x2B | 43 | Identifier removed |
0x2C | 44 | Channel number out of range |
0x2D | 45 | Level 2 not synchronized |
0x2E | 46 | Level 3 halted |
0x2F | 47 | Level 3 reset |
0x30 | 48 | Link number out of range |
0x31 | 49 | Protocol driver not attached |
0x32 | 50 | No CSI structure available |
0x33 | 51 | Level 2 halted |
0x34 | 52 | Invalid exchange |
0x35 | 53 | Invalid request descriptor |
0x36 | 54 | Exchange full |
0x37 | 55 | No anode |
0x38 | 56 | Invalid request code |
0x39 | 57 | Invalid slot |
0x3A | 58 | EDEADLK |
0x3B | 59 | Bad font file format |
0x3C | 60 | Device not a stream |
0x3D | 61 | No data available |
0x3E | 62 | Timer expired |
0x3F | 63 | Out of streams resources |
0x40 | 64 | Machine is not on the network |
0x41 | 65 | Package not installed |
0x42 | 66 | Object is remote |
0x43 | 67 | Link has been severed |
0x44 | 68 | Advertise error |
0x45 | 69 | Srmount error |
0x46 | 70 | Communication error on send |
0x47 | 71 | Protocol error |
0x48 | 72 | Multihop attempted |
0x49 | 73 | RFS specific error |
0x4A | 74 | Not a data message |
0x4B | 75 | Value too large for defined data type |
0x4C | 76 | Name not unique on network |
0x4D | 77 | File descriptor in bad state |
0x4E | 78 | Remote address changed |
0x4F | 79 | Can not access a needed shared library |
0x50 | 80 | Accessing a corrupted shared library |
0x51 | 81 | .lib section in a.out corrupted |
0x52 | 82 | Attempting to link in too many shared libraries |
0x53 | 83 | Cannot exec a shared library directly |
0x54 | 84 | Illegal byte sequence |
0x55 | 85 | Interrupted system call should be restarted |
0x56 | 86 | Streams pipe error |
0x57 | 87 | Too many users |
0x58 | 88 | Socket operation on non-socket |
0x59 | 89 | Destination address required |
0x5A | 90 | Message too long |
0x5B | 91 | Protocol wrong type for socket |
0x5C | 92 | Protocol not available |
0x5D | 93 | Protocol not supported |
0x5E | 94 | Socket type not supported |
0x5F | 95 | Operation not supported on transport endpoint |
0x60 | 96 | Protocol family not supported |
0x61 | 97 | Address family not supported by protocol |
0x62 | 98 | Address already in use |
0x63 | 99 | Cannot assign requested address |
0x64 | 100 | Network is down |
0x65 | 101 | Network is unreachable |
0x66 | 102 | Network dropped connection because of reset |
0x67 | 103 | Software caused connection abort |
0x68 | 104 | Connection reset by peer |
0x69 | 105 | No buffer space available |
0x6A | 106 | Transport endpoint is already connected |
0x6B | 107 | Transport endpoint is not connected |
0x6C | 108 | Cannot send after transport endpoint shutdown |
0x6D | 109 | Too many references: cannot splice |
0x6E | 110 | Connection timed out |
0x6F | 111 | Connection refused |
0x70 | 112 | Host is down |
0x71 | 113 | No route to host |
0x72 | 114 | Operation already in progress |
0x73 | 115 | Operation now in progress |
0x74 | 116 | Stale NFS file handle |
0x75 | 117 | Structure needs cleaning |
0x76 | 118 | Not a XENIX named type file |
0x77 | 119 | No XENIX semaphores available |
0x78 | 120 | Is a named type file |
0x79 | 121 | Remote I/O error |
0x7A | 122 | Quota exceeded |
0x7B | 123 | No medium found |
0x7C | 124 | Wrong medium type |
0x8c | 140 | X509_VERIFY_FAIL |
0x8e | 142 | X509_VERIFY_ERR_UNABLE_TO_GET_ISSUER_CERT |
0x8f | 143 | X509_VERIFY_ERR_UNABLE_TO_GET_CRL |
0x90 | 144 | X509_VERIFY_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE |
0x91 | 145 | X509_VERIFY_ERR_UNABLE_TO_DECRYPT_CRL_SIGNATURE |
0x92 | 146 | X509_VERIFY_ERR_UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY |
0x93 | 147 | X509_VERIFY_ERR_CERT_SIGNATURE_FAILURE |
0x94 | 148 | X509_VERIFY_ERR_CRL_SIGNATURE_FAILURE |
0x95 | 149 | X509_VERIFY_ERR_CERT_NOT_YET_VERIFYALID |
0x96 | 150 | X509_VERIFY_ERR_CERT_HAS_EXPIRED |
0x97 | 151 | X509_VERIFY_ERR_CRL_NOT_YET_VERIFYALID |
0x98 | 152 | X509_VERIFY_ERR_CRL_HAS_EXPIRED |
0x99 | 153 | X509_VERIFY_ERR_ERROR_IN_CERT_NOT_BEFORE_FIELD |
0x9a | 154 | X509_VERIFY_ERR_ERROR_IN_CERT_NOT_AFTER_FIELD |
0x9b | 155 | X509_VERIFY_ERR_ERROR_IN_CRL_LAST_UPDATE_FIELD |
0x9c | 156 | X509_VERIFY_ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD |
0x9d | 157 | X509_VERIFY_ERR_OUT_OF_MEM |
0x9e | 158 | X509_VERIFY_ERR_DEPTH_ZERO_SELF_SIGNED_CERT |
0x9f | 159 | X509_VERIFY_ERR_SELF_SIGNED_CERT_IN_CHAIN |
0xa0 | 160 | X509_VERIFY_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY |
0xa1 | 161 | X509_VERIFY_ERR_UNABLE_TO_VERIFYERIFY_LEAF_SIGNATURE |
0xa2 | 162 | X509_VERIFY_ERR_CERT_CHAIN_TOO_LONG |
0xa3 | 163 | X509_VERIFY_ERR_CERT_REVOKED |
0xa4 | 164 | X509_VERIFY_ERR_INVALID_CA |
0xa5 | 165 | X509_VERIFY_ERR_PATH_LENGTH_EXCEEDED |
0xa6 | 166 | X509_VERIFY_ERR_INVALID_PURPOSE |
0xa7 | 167 | X509_VERIFY_ERR_CERT_UNTRUSTED |
0xa8 | 168 | X509_VERIFY_ERR_CERT_REJECTED |
0xa9 | 169 | X509_VERIFY_ERR_SUBJECT_ISSUER_MISMATCH |
0xaa | 170 | X509_VERIFY_ERR_AKID_SKID_MISMATCH |
0xab | 171 | X509_VERIFY_ERR_AKID_ISSUER_SERIAL_MISMATCH |
0xac | 172 | X509_VERIFY_ERR_KEYUSAGE_NO_CERTSIGN |
0xad | 173 | X509_VERIFY_ERR_UNABLE_TO_GET_CRL_ISSUER |
0xae | 174 | X509_VERIFY_ERR_UNHANDLED_CRITICAL_EXTENSION |
0xaf | 175 | X509_VERIFY_ERR_KEYUSAGE_NO_CRL_SIGN |
0xb0 | 176 | X509_VERIFY_ERR_UNHANDLED_CRITICAL_CRL_EXTENSION |
0xb1 | 177 | X509_VERIFY_ERR_INVALID_NON_CA |
0xb2 | 178 | X509_VERIFY_ERR_PROXY_PATH_LENGTH_EXCEEDED |
0xb3 | 179 | X509_VERIFY_ERR_KEYUSAGE_NO_DIGITAL_SIGNATURE |
0xb4 | 180 | X509_VERIFY_ERR_PROXY_CERTIFICATES_NOT_ALLOWED |
0xb5 | 181 | X509_VERIFY_ERR_INVALID_EXTENSION |
0xb6 | 182 | X509_VERIFY_ERR_INVALID_POLICY_EXTENSION |
0xb7 | 183 | X509_VERIFY_ERR_NO_EXPLICIT_POLICY |
0xb8 | 184 | X509_VERIFY_ERR_DIFFERENT_CRL_SCOPE |
0xb9 | 185 | X509_VERIFY_ERR_UNSUPPORTED_EXTENSION_FEATURE |
0xba | 186 | X509_VERIFY_ERR_UNNESTED_RESOURCE |
0xbb | 187 | X509_VERIFY_ERR_PERMITTED_VERIFYIOLATION |
0xbc | 188 | X509_VERIFY_ERR_EXCLUDED_VERIFYIOLATION |
0xbd | 189 | X509_VERIFY_ERR_SUBTREE_MINMAX |
0xbe | 190 | X509_VERIFY_ERR_APPLICATION_VERIFYERIFICATION |
0xbf | 191 | X509_VERIFY_ERR_UNSUPPORTED_CONSTRAINT_TYPE |
0xc0 | 192 | X509_VERIFY_ERR_UNSUPPORTED_CONSTRAINT_SYNTAX |
0xc1 | 193 | X509_VERIFY_ERR_UNSUPPORTED_NAME_SYNTAX |
0xc2 | 194 | X509_VERIFY_ERR_CRL_PATH_VERIFYALIDATION_ERROR |
0xc3 | 195 | X509_VERIFY_ERR_KEYUSAGE_NOT_MATCH |
0xc8 | 200 | COMMON_ERR_GENERAL |
0xc9 | 201 | COMMON_ERR_INVALID_ARG |
0xca | 202 | COMMON_ERR_TIME_OUT |
0xcb | 203 | COMMON_ERR_OVERFLOW |
0xcc | 204 | COMMON_ERR_NO_MEM |
0xcd | 205 | COMMON_ERR_WRITE |
0xce | 206 | COMMON_ERR_READ |
0xcf | 207 | COMMON_ERR_NO_DATA |
0xd0 | 208 | COMMON_ERR_INVALID_HANDLE |
0xd1 | 209 | COMMON_ERR_NO_DEVICE |