cands_transport/cyphal/defines/
constants.rs1pub const CYPHAL_VERSION_MAJOR: u8 = 1;
4pub const CYPHAL_VERSION_MINOR: u8 = 1;
5
6pub const CYPHAL_SPECIFICATION_VERSION_MAJOR: u8 = 1;
8pub const CYPHAL_SPECIFICATION_VERSION_MINOR: u8 = 0;
9
10pub const CYPHAL_ERROR_INVALID_ARGUMENT: u8 = 2;
17pub const CYPHAL_ERROR_OUT_OF_MEMORY: u8 = 3;
18
19pub const CYPHAL_MTU_CAN_CLASSIC: u8 = 8;
22pub const CYPHAL_MTU_CAN_FD: u8 = 64;
23
24pub const CYPHAL_SUBJECT_ID_MAX: u16 = 8191;
26pub const CYPHAL_SERVICE_ID_MAX: u16 = 511;
27pub const CYPHAL_NODE_ID_MAX: u8 = 127;
28pub const CYPHAL_PRIORITY_MAX: u8 = 7;
29pub const CYPHAL_TRANSFER_ID_BIT_LENGTH: u8 = 5;
30pub const CYPHAL_TRANSFER_ID_MAX: u8 = (1 << CYPHAL_TRANSFER_ID_BIT_LENGTH) - 1;
31
32pub const CYPHAL_NODE_ID_UNSET: u8 = 255;
35
36pub const CYPHAL_DEFAULT_TRANSFER_ID_TIMEOUT_USEC: usize = 2000000;
39
40pub const CYPHAL_NUM_TRANSFER_KINDS: usize = 3;
41
42pub const CAN_DLC_TO_DLEN: [u8;16] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 12, 16, 20, 24, 32, 48, 64];
43pub const CAN_DLEN_TO_DLC: [u8; 65] = [
44 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 9, 9, 9, 10, 10, 10, 10, 11, 11, 11, 11, 12, 12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, ];
53
54pub const BITS_PER_BYTE: u8 = 8;
55pub const BYTE_MAX: u16 = 0xff;
56
57pub const CAN_EXT_ID_MASK: u32 = (1 << 29) - 1;
58
59pub const MFT_NON_LAST_FRAME_PAYLOAD_MIN: u8 = 7;
60
61pub const PADDING_BYTE_VALUE: u8 = 0;
62
63pub const OFFSET_PRIORITY:u8 = 26;
64pub const OFFSET_SUBJECT_ID: u8 = 8;
65pub const OFFSET_SERVICE_ID: u8 = 14;
66pub const OFFSET_DST_NODE_ID: u8 = 7;
67
68pub const FLAG_SERVICE_NOT_MESSAGE: u32 =1 << 25;
69pub const FLAG_ANONYMOUS_MESSAGE: u32 = 1 << 24;
70pub const FLAG_REQUEST_NOT_RESPONSE: u32 = 1 << 24;
71pub const FLAG_RESERVED_23: u32 = 1 << 23;
72pub const FLAG_RESERVED_07: u32 = 1 << 7;
73
74pub const TAIL_START_OF_TRANSFER: u8 = 128;
75pub const TAIL_END_OF_TRANSFER: u8 = 64;
76pub const TAIL_TOGGLE: u8 = 32;
77pub const TAIL_SIZE_BYTES: u8 = 1;
78
79pub const INITIAL_TOGGLE_STATE: bool = true;
80
81pub const CRC_INITIAL: u16 = 0xFFFF;
82pub const CRC_RESIDUE: u16 = 0x0000;
83pub const CRC_SIZE_BYTES: u8 = 2;