import { hexStringToArray } from "./csl" export const IN_SER = "00009800-0000-1000-8000-00805f9b34fb" export const IN_CHAR = "00009901-0000-1000-8000-00805f9b34fb" export const OUT_CHAR = "00009900-0000-1000-8000-00805f9b34fb" export const HEADER = { RFID: [0xa7, 0xb3, 0, 0xc2, 0x82, 0x37, 0, 0], BARCODE: [0xa7, 0xb3, 0, 0x6a, 0x82, 0x37, 0, 0], NOTIFICATION: [0xa7, 0xb3, 0, 0xd9, 0x82, 0x37, 0, 0], } /** * Refer to this [link](https://efichain1.sharepoint.com/sites/DeveloperTeam/Shared%20Documents/SIMS%20Project/CS108_and_CS463_Bluetooth_and_USB_Byte_Stream_API_Specifications.pdf?wdsle=0&CT=1720770150264&OR=ItemsView#page=21) */ export const RFID = { START_RFID_READER: [...HEADER.RFID, 0x80, 0x00], STOP_RFID_READER: [...HEADER.RFID, 0x80, 0x01], SET_RFID_READER: [...HEADER.RFID, 0x80, 0x03], ABORT: [...HEADER.RFID, 0x80, 0x02, 0x40, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00], } /** * Refer to this [link](https://efichain1.sharepoint.com/sites/DeveloperTeam/Shared%20Documents/SIMS%20Project/CS108_and_CS463_Bluetooth_and_USB_Byte_Stream_API_Specifications.pdf?wdsle=0&CT=1720770150264&OR=ItemsView#page=24) * * More details for SET_BARCODE_READER [link](https://efichain1.sharepoint.com/sites/DeveloperTeam/Shared%20Documents/SIMS%20Project/445_Serial_Programming_Command_Manual_V1.3.0_2.pdf?wdsle=0&CT=1720773349368&OR=ItemsView) */ export const BARCODE = { START_BARCODE_READER: [...HEADER.BARCODE, 0x90, 0x00], STOP_BARCODE_READER: [...HEADER.BARCODE, 0x90, 0x01], TRIGGER_BARCODE_SCAN: [...HEADER.BARCODE, 0x90, 0x02], SET_BARCODE_READER: [...HEADER.BARCODE, 0x90, 0x03], START_BARCODE_VIBRATION: [...HEADER.BARCODE, 0x90, 0x04], STOP_BARCODE_VIBRATION: [...HEADER.BARCODE, 0x90, 0x05], } /** * Refer to this [link](https://efichain1.sharepoint.com/sites/DeveloperTeam/Shared%20Documents/SIMS%20Project/CS108_and_CS463_Bluetooth_and_USB_Byte_Stream_API_Specifications.pdf?wdsle=0&CT=1720770150264&OR=ItemsView#page=27) */ export const NOTIFICATION = { GET_BATTERY_STATE: [...HEADER.NOTIFICATION, 0xa0, 0x00], GET_TRIGGER_STATE: [...HEADER.NOTIFICATION, 0xa0, 0x01], START_BATTERY_REPORT: [...HEADER.NOTIFICATION, 0xa0, 0x02], STOP_BATTERY_REPORT: [...HEADER.NOTIFICATION, 0xa0, 0x03], DISABLE_TRIGGER_INVOKE_RFID_ABORT: [...HEADER.NOTIFICATION, 0xa0, 0x04, 0x00], ENABLE_TRIGGER_INVOKE_RFID_ABORT: [...HEADER.NOTIFICATION, 0xa0, 0x04, 0x01], GET_TRIGGER_INVOKE_RFID_ABORT: [...HEADER.NOTIFICATION, 0xa0, 0x05], DISABLE_TRIGGER_BARCODE_SCANNING: [...HEADER.NOTIFICATION, 0xa0, 0x06, 0x00], ENABLE_TRIGGER_BARCODE_SCANNING: [...HEADER.NOTIFICATION, 0xa0, 0x06, 0x01], GET_TRIGGER_BARCODE_SCANNING: [...HEADER.NOTIFICATION, 0xa0, 0x07], START_TRIGGER_REPORT: [...HEADER.NOTIFICATION, 0xa0, 0x08, 1], STOP_TRIGGER_REPORT: [...HEADER.NOTIFICATION, 0xa0, 0x09], } export const INIT_DEVICE = [ "A7B302D982370000A002", "A7B302E882370000B000", "A7B3025F82370000C000", // "A7B3026A823700009000", //Tmp close due to every "A7B302C2823700008000", "A7B30AC28237000080024003000000000000", "A7B303E882370000B00400", "A7B3096A8237000090037E0000023337F9", "A7B30C6A8237000090037E0000053344303030BD", "A7B30AC28237000080027001000508000000", "A7B30C6A8237000090037E0000053348303330B2", "A7B3226A8237000090036E6C73303030363031303B6E6C73303430353130303B6E6C7330303036303030", "A7B30AC2823700008002700100F003000000", "A7B30AC28237000080027001000509000000", "A7B30AC2823700008002700100F003000000", "A7B30AC2823700008002700100050A000000", "A7B30AC2823700008002700100F003000000", "A7B30AC2823700008002700100050B000000", "A7B30AC2823700008002700100F003000000", "A7B30AC28237000080027000000000000000", "A7B30AC28237000080027000010200000000", "A7B30AC28237000080027001080C00010000", "A7B30AC2823700008002700100F003000000", "A7B30AC28237000080027001000502000000", "A7B30AC2823700008002700100F003000000", "A7B30AC2823700008002700100058F000000", "A7B30AC2823700008002700100F003000000", "A7B30AC2823700008002700100058E000000", "A7B30AC2823700008002700100F003000000", "A7B30AC28237000080027001000504000000", "A7B30AC2823700008002700100F003000000", "A7B30AC28237000080027001000505000000", "A7B30AC2823700008002700100F003000000", "A7B30AC28237000080027001000506000000", "A7B30AC2823700008002700100F003000000", "A7B30AC28237000080027001000507000000", "A7B30AC2823700008002700100F003000000", "A7B30AC28237000080027001000201000000", "A7B30AC2823700008002700100F014000000", "A7B30AC28237000080027000040200000000", "A7B30AC28237000080027000020C00000000", "A7B30AC28237000080027000060700000000", "A7B302D982370000A005", "A7B302D982370000A007", "A7B303D982370000A009", "A7B30AC28237000080027000020C00000000", "A7B30AC28237000080027000060700000000", "A7B30AC28237000080027000020C00000000", "A7B30AC28237000080027000060700000000", "A7B30AC28237000080027000020C00000000", "A7B30AC282370000800270010007FFFF0000", "A7B30AC28237000080027001050700000000", "A7B30AC282370000800270010707FEFFFFFF", "A7B30AC2823700008002700106072C010000", "A7B30AC28237000080027001000450040000", "A7B30AC28237000080027001010404010000", "A7B30AC2823700008002700100F006000000", "A7B30AC282370000800270010309F7405003", "A7B30AC28237000080027001040900000000", "A7B30AC28237000080027001050901000000", "A7B30AC28237000080027001000980000000", "A7B30AC28237000080027001030200000000", "A7B30AC28237000080027001050901000000", "A7B30AC28237000080027001000900000000", "A7B30AC28237000080027001010903000000", "A7B30AC28237000080027001010903000004", ].map((code) => hexStringToArray(code)) export const START_RFID_SCAN = [ "A7B30AC28237000080027001050901000000", "A7B30AC28237000080027001000801000000", "A7B30AC28237000080027001050901000000", "A7B30AC28237000080027001000802000000", "A7B30AC282370000800270010309F7405003", "A7B30AC28237000080027001040900000000", "A7B30AC28237000080027001050901000000", "A7B30AC28237000080027001000980000000", "A7B30AC28237000080027001030200000000", "A7B30AC28237000080027001050901000000", "A7B30AC28237000080027001000900000000", "A7B30AC28237000080027001000800000000", "A7B30AC28237000080027001060A00000000", "A7B30AC2823700008002700100F00F000000", ].map((code) => hexStringToArray(code)) export const SETTING = ["A7B30AC282370000800270000607"].map((code) => hexStringToArray(code)) // const dBuV_dBm_constant = 106.98 //rssi -dBuV_dBm_constant // export const START_RFID = // Barcode Action (why this so simple QwQ) // A7B303D982370000A00600 //disable // A7B303D982370000A00601 //enable // A7B3046A8237000090031B33 //start scan // A7B3046A8237000090031B30 //stop scan //RFID // Step 1: Open Radio // 40:03:00:00:00:00:00:00 // Step 2: Set RF Power // 70:00:06:07:00:00:00:00 //But why 0 Power??? // Step 3: Set Channel // 70:00:02:0C:00:00:00:00 //Why 0 agn // Step 4: Set Profile // There are 3 steps within Inventory that MUST be done: // Step 1: Set Inventory Parameters // 70:01:00:07:FF:FF:00:00 // Step 2: Set Inventory Algorithm // 70:01:00:09:80:00:00:00 // 70:01:00:09:00:00:00:00 // Step 3: Start/Stop Inventory