forked from yudi_xiao/expo-ble-app-demo
55 lines
1.6 KiB
TypeScript
55 lines
1.6 KiB
TypeScript
export const PROTOCOL_VERSION = "1.0.0";
|
|
|
|
export const BLE_UUIDS = {
|
|
SERVICE: '000002c4-0000-1000-8000-00805f9b34fb',
|
|
SERVICE_SHORT: 'ae00',
|
|
BROADCAST_CHARACTERISTIC: "000002c1-0000-1000-8000-00805f9b34fb",
|
|
WRITE_CHARACTERISTIC: '000002c5-0000-1000-8000-00805f9b34fb',
|
|
READ_CHARACTERISTIC: '000002c6-0000-1000-8000-00805f9b34fb',
|
|
} as const;
|
|
|
|
export const FRAME_CONSTANTS = {
|
|
HEAD_DEVICE_TO_APP: 0xb0,
|
|
// HEAD_APP_TO_DEVICE: 0xc7,
|
|
HEAD_APP_TO_DEVICE: 0xb1,
|
|
MAX_DATA_SIZE: 496,
|
|
HEADER_SIZE: 8,
|
|
FOOTER_SIZE: 1,
|
|
FRAME_INTERVAL: 35,
|
|
} as const;
|
|
export type FRAME_HEAD = typeof FRAME_CONSTANTS.HEAD_DEVICE_TO_APP | typeof FRAME_CONSTANTS.HEAD_APP_TO_DEVICE;
|
|
|
|
export const COMMAND_TYPES = {
|
|
ACTIVATION_QUERY: 0x01,
|
|
OTA_PACKAGE: 0x02,
|
|
TRANSFER_BOOT_ANIMATION: 0x03,
|
|
TRANSFER_AVI_VIDEO: 0x04,
|
|
TRANSFER_ANI_VIDEO: 0x05,
|
|
TRANSFER_JPEG_IMAGE: 0x06,
|
|
VERSION_QUERY: 0x07,
|
|
UPDATE_ACTIVATION_TIME: 0x08,
|
|
DEVICE_INFO_SETTINGS: 0x0d,
|
|
DEVICE_IDENTITY_CHECK: 0x0e,
|
|
} as const;
|
|
export type COMMAND_TYPES = typeof COMMAND_TYPES[keyof typeof COMMAND_TYPES];
|
|
|
|
export const RESPONSE_TYPES = {
|
|
ACTIVATION_STATUS: 0x01,
|
|
VERSION_INFO: 0x07,
|
|
DEVICE_INFO_REPORT: 0x0d,
|
|
IDENTITY_CHECK_RESULT: 0x0e,
|
|
} as const;
|
|
|
|
export const ERROR_CODES = {
|
|
DISCONNECT: -100,
|
|
TRANSFER_TIMEOUT: -101,
|
|
INVALID_RESPONSE: -102,
|
|
PROTOCOL_ERROR: -103,
|
|
CHECKSUM_MISMATCH: -104,
|
|
JSON_PARSE_ERROR: -105,
|
|
DEVICE_NOT_ACTIVATED: -106,
|
|
INVALID_FILE_FORMAT: -107,
|
|
TRANSFER_IN_PROGRESS: -108,
|
|
INSUFFICIENT_SPACE: -109,
|
|
} as const;
|