Class VescFrame

Inheritance Relationships

Derived Type

Class Documentation

class VescFrame

The raw frame for communicating with the VESC

Subclassed by vesc_driver::VescPacket

Public Functions

inline virtual ~VescFrame()
inline virtual const Buffer &frame() const

Public Static Attributes

static const int VESC_MAX_PAYLOAD_SIZE = 1024

Maximum VESC payload size, in bytes.

static const int VESC_MIN_FRAME_SIZE = 5

Smallest VESC frame size, in bytes.

static const int VESC_MAX_FRAME_SIZE = 6 + VESC_MAX_PAYLOAD_SIZE
static const unsigned int VESC_SOF_VAL_SMALL_FRAME = 2

VESC start of “small” frame value.

static const unsigned int VESC_SOF_VAL_LARGE_FRAME = 3

VESC start of “large” frame value.

static const unsigned int VESC_EOF_VAL = 3

VESC end-of-frame value.

static constexpr CRC::Parameters<crcpp_uint16, 16> CRC_TYPE = {0x1021, 0x0000, 0x0000, false, false}

CRC parameters for the VESC

Protected Functions

explicit VescFrame(int payload_size)

Construct frame with specified payload size.

Protected Attributes

std::shared_ptr<Buffer> frame_

Stores frame data, shared_ptr for shallow copy.

BufferRange payload_

View into frame’s payload section.