[][src]Trait clyde_3g_eps_api::Clyde3gEps

pub trait Clyde3gEps {
    fn get_board_status(&self) -> EpsResult<BoardStatus>;
fn get_checksum(&self) -> EpsResult<Checksum>;
fn get_version_info(&self) -> EpsResult<VersionInfo>;
fn get_last_error(&self) -> EpsResult<LastError>;
fn manual_reset(&self) -> EpsResult<()>;
fn reset_comms_watchdog(&self) -> EpsResult<()>;
fn get_motherboard_telemetry(&self, telem_type: Type) -> EpsResult<f64>;
fn get_daughterboard_telemetry(&self, telem_type: Type) -> EpsResult<f64>;
fn get_reset_telemetry(&self, telem_type: Type) -> EpsResult<Data>;
fn set_comms_watchdog_period(&self, period: u8) -> EpsResult<()>;
fn get_comms_watchdog_period(&self) -> EpsResult<u8>;
fn raw_command(&self, cmd: u8, data: Vec<u8>) -> EpsResult<()>; }

Trait defining expected functionality for Clyde 3g EPS

Required Methods

Get Board Status

The status bytes are designed to supply operational data about the I2C Node.

Get Checksum

This command instructs the node to self-inspect its ROM contents in order to generate a checksum. The value retrieved can be used to determine whether the contents of the ROM have changed during the operation of the device.

Get Version

The version number of the firmware will be returned on this command. The revision number returns the current revision of the firmware that is present on the board. The firmware number returns the current firmware on the board.

Get Last Error

If an error has been generated after attempting to execute a user's command, this command can be used to retrieve details about the error.

Manual Reset

If required the user can reset the TTC node using this command. When issued, the board will reset within 1 second. This command will result in the board being brought up in its defined initial condition. Resetting the board in this fashion will increment the Manual Reset Counter.

Reset Communications Watchdog

Any valid command will reset the communications watchdog timer. If the user does not require any telemetry from the board, this command can be sent to reset the communications watchdog.

Get Motherboard Telemetry

This command is used to request telemetry items from the motherboard's telemetry node.

Arguments

telem_type - Variant of MotherboardTelemetry::Type to request

Get Daughterboard Telemetry

This command is used to request telemetry items from the daughterboard's telemetry node.

Arguments

telem_type - Variant of DaughterboardTelemetry::Type to request

Get Reset Telemetry

This command is used to request telemetry items regarding various reset conditions on both the motherboard and daughterboard.

Arguments

telem_type - Variant of ResetTelemetry::Type to request

Set Communications Watchdog Period

The Communications Watchdog by default has a value of 4 minutes set as its timeout period. If 4 minutes pass without a command being received then the device will reboot into its pre-defined initial state. This value of 4 minutes can be changed using the Set Communications Watchdog Period command, 0x21. The data byte specifies the number of minutes the communications watchdog will wait before timing out.

Arguments

period - Watchdog period to set in minutes

Get Communications Watchdog Period

This command provides the user with the current communications watchdog timeout that has been set. The returned value is indicated in minutes.

Issue Raw Command

This command sends a raw command to the EPS

Implementors

impl Clyde3gEps for Eps
[src]

Get Board Status

The status bytes are designed to supply operational data about the I2C Node.

Get Checksum

This command instructs the node to self-inspect its ROM contents in order to generate a checksum. The value retrieved can be used to determine whether the contents of the ROM have changed during the operation of the device.

Get Version

The version number of the firmware will be returned on this command. The revision number returns the current revision of the firmware that is present on the board. The firmware number returns the current firmware on the board.

Get Last Error

If an error has been generated after attempting to execute a user's command, this command can be used to retrieve details about the error.

Manual Reset

If required the user can reset the TTC node using this command. When issued, the board will reset within 1 second. This command will result in the board being brought up in its defined initial condition. Resetting the board in this fashion will increment the Manual Reset Counter.

Reset Communications Watchdog

Any valid command will reset the communications watchdog timer. If the user does not require any telemetry from the board, this command can be sent to reset the communications watchdog.

Get Motherboard Telemetry

This command is used to request telemetry items from the motherboard's telemetry node.

Arguments

telem_type - Variant of MotherboardTelemetry::Type to request

Get Daughterboard Telemetry

This command is used to request telemetry items from the daughterboard's telemetry node.

Arguments

telem_type - Variant of DaughterboardTelemetry::Type to request

Get Reset Telemetry

This command is used to request telemetry items regarding various reset conditions on both the motherboard and daughterboard.

Arguments

telem_type - Variant of ResetTelemetry::Type to request

Set Communications Watchdog Period

The Communications Watchdog by default has a value of 4 minutes set as its timeout period. If 4 minutes pass without a command being received then the device will reboot into its pre-defined initial state. This value of 4 minutes can be changed using the Set Communications Watchdog Period command, 0x21. The data byte specifies the number of minutes the communications watchdog will wait before timing out.

Arguments

period - Watchdog period to set in minutes

Get Communications Watchdog Period

This command provides the user with the current communications watchdog timeout that has been set. The returned value is indicated in minutes.

Issue Raw Command

This command sends a raw command to the EPS