Struct BoardConfig

Nested Relationships

Nested Types

Struct Documentation

struct BoardConfig

Public Members

USB usb
Network network
std::vector<std::string> sysctl

Optional list of FreeBSD sysctl parameters to be set (system, network, etc.). For example: “net.inet.tcp.delayed_ack=0” (this one is also set by default)

std::optional<uint32_t> watchdogTimeoutMs

Watchdog config.

std::optional<uint32_t> watchdogInitialDelayMs
std::unordered_map<std::int8_t, GPIO> gpio
std::unordered_map<std::int8_t, UART> uart

UART instance map.

std::optional<bool> pcieInternalClock

PCIe config.

std::optional<bool> usb3PhyInternalClock

USB3 phy config.

std::optional<bool> mipi4LaneRgb

MIPI 4Lane RGB config.

std::optional<bool> emmc

eMMC config

std::optional<std::string> logPath

log path

std::optional<size_t> logSizeMax

Max log size.

std::optional<LogLevel> logVerbosity

log verbosity

std::optional<bool> logDevicePrints

log device prints

bool nonExclusiveMode = false
std::unordered_map<CameraBoardSocket, Camera> camera
std::optional<IMU> imu
std::optional<UVC> uvc
std::unordered_map<std::string, Extrinsics> defaultImuExtr
struct Camera

Camera description.

Public Members

std::string name
std::optional<CameraSensorType> sensorType = std::nullopt
std::optional<CameraImageOrientation> orientation = std::nullopt
struct GPIO

GPIO config.

Public Types

enum Mode

Values:

enumerator ALT_MODE_0
enumerator ALT_MODE_1
enumerator ALT_MODE_2
enumerator ALT_MODE_3
enumerator ALT_MODE_4
enumerator ALT_MODE_5
enumerator ALT_MODE_6
enumerator DIRECT
enum Direction

Values:

enumerator INPUT
enumerator OUTPUT
enum Level

Values:

enumerator LOW
enumerator HIGH
enum Pull

Values:

enumerator NO_PULL
enumerator PULL_UP
enumerator PULL_DOWN
enumerator BUS_KEEPER
enum Drive

Drive strength in mA (2, 4, 8 and 12mA)

Values:

enumerator MA_2
enumerator MA_4
enumerator MA_8
enumerator MA_12

Public Functions

GPIO() = default
inline GPIO(Direction direction)
inline GPIO(Direction direction, Level level)
inline GPIO(Direction direction, Level level, Pull pull)
inline GPIO(Direction direction, Mode mode)
inline GPIO(Direction direction, Mode mode, Pull pull)

Public Members

Mode mode = Mode::DIRECT
Direction direction = Direction::INPUT
Level level = Level::LOW
Pull pull = Pull::NO_PULL
Drive drive = MA_2
bool schmitt = false
bool slewFast = false
struct IMU

Public Functions

inline IMU()

Public Members

int8_t bus
int8_t interrupt
int8_t wake
int8_t csGpio
int8_t boot
int8_t reset
struct Network

Network configuration.

Public Members

uint16_t mtu = 0

Network MTU, 0 is auto (usually 1500 for Ethernet) or forwarded from bootloader (not yet implemented there). Note: not advised to increase past 1500 for now

bool xlinkTcpNoDelay = true

Sets the TCP_NODELAY option for XLink TCP sockets (disable Nagle’s algorithm), reducing latency at the expense of a small hit for max throughput. Default is true

struct UART

UART instance config.

Public Members

std::int8_t tmp
struct USB

USB related config.

Public Members

uint16_t vid = 0x03e7
uint16_t pid = 0xf63b
uint16_t flashBootedVid = 0x03e7
uint16_t flashBootedPid = 0xf63d
UsbSpeed maxSpeed = UsbSpeed::SUPER
std::string productName
std::string manufacturer
struct UVC

UVC configuration for USB descriptor.

Public Functions

inline UVC(uint16_t width, uint16_t height)
inline UVC()

Public Members

std::string cameraName
uint16_t width
uint16_t height
ImgFrame::Type frameType
bool enable