66 lines
1.7 KiB
TypeScript
66 lines
1.7 KiB
TypeScript
export const PROTOCOL_VERSION = "1.0.0";
|
|
|
|
export const BLE_UUIDS = {
|
|
SERVICE: '000002c4-0000-1000-8000-00805f9b34fb',
|
|
BROADCAST_CHARACTERISTIC: "000002c1-0000-1000-8000-00805f9b34fb",
|
|
WRITE_CHARACTERISTIC: '000002c5-0000-1000-8000-00805f9b34fb',
|
|
READ_CHARACTERISTIC: '000002c6-0000-1000-8000-00805f9b34fb',
|
|
REQUEST_MTU: 512,
|
|
SCREEN_SIZE: 360
|
|
} as const;
|
|
|
|
export const FRAME_CONSTANTS = {
|
|
HEAD_DEVICE_TO_APP: 0xb0,
|
|
HEAD_APP_TO_DEVICE: 0xb1,
|
|
MAX_DATA_SIZE: 496,
|
|
HEADER_SIZE: 8,
|
|
FOOTER_SIZE: 1,
|
|
FRAME_INTERVAL: 35, // package transfer idle interval in ms, set 35 ms for ble device have enough time to process data
|
|
} as const;
|
|
|
|
export type FRAME_HEAD = typeof FRAME_CONSTANTS.HEAD_DEVICE_TO_APP | typeof FRAME_CONSTANTS.HEAD_APP_TO_DEVICE;
|
|
|
|
export const COMMAND_TYPES = {
|
|
OTA_PACKAGE: 0x02,
|
|
TRANSFER_BOOT_ANIMATION: 0x03,
|
|
TRANSFER_ANI_VIDEO: 0x05,
|
|
TRANSFER_JPEG_IMAGE: 0x06,
|
|
GET_DEVICE_VERSION: 0x07,
|
|
GET_DEVICE_INFO: 0x0d,
|
|
BIND_DEVICE: 0x0f,
|
|
UNBIND_DEVICE: 0x12
|
|
} as const;
|
|
|
|
export type APP_COMMAND_TYPES = typeof COMMAND_TYPES[keyof typeof COMMAND_TYPES];
|
|
|
|
export const EVENT_TYPES = {
|
|
TRANSFER_OTA_PACKAGE : {
|
|
name: "onTransferOtaPackage",
|
|
code : 0x02 // 2
|
|
},
|
|
TRANSFER_BOOT_ANIMATION : {
|
|
name: "onTransferBootAnimation",
|
|
code : 0x03 // 3
|
|
},
|
|
TRANSFER_ANI_VIDEO : {
|
|
name: "onTransferAniVideo",
|
|
code : 0x05 // 5
|
|
},
|
|
VERSION_INFO: {
|
|
name: "onVersionInfo",
|
|
code : 0x07 // 7
|
|
},
|
|
DEVICE_INFO: {
|
|
name: "onDeviceInfo",
|
|
code : 0x0d // 13
|
|
},
|
|
BIND_DEVICE: {
|
|
name: "onBindDevice",
|
|
code : 0x0f // 15
|
|
},
|
|
UNBIND_DEVICE: {
|
|
name: "onUnbindDevice",
|
|
code : 0x12 // 18
|
|
}
|
|
}
|