Skip to content

Modules

harp.devices.loadcells #

Device #

The Device class provides the interface for interacting with Harp devices. This implementation of the Harp device was based on the official documentation available on the harp-tech website.

Attributes:

Name Type Description
WHO_AM_I int

The device ID number. A list of devices can be found here

DEFAULT_DEVICE_NAME str

The device name, i.e. "Behavior". This name is derived by cross-referencing the WHO_AM_I identifier with the corresponding device name in the device_names dictionary

HW_VERSION_H int

The major hardware version

HW_VERSION_L int

The minor hardware version

ASSEMBLY_VERSION int

The version of the assembled components

HARP_VERSION_H int

The major Harp core version

HARP_VERSION_L int

The minor Harp core version

FIRMWARE_VERSION_H int

The major firmware version

FIRMWARE_VERSION_L int

The minor firmware version

DEVICE_NAME str

The device name stored in the Harp device

SERIAL_NUMBER (int, optional)

The serial number of the device

__enter__() #

Support for using Device with 'with' statement.

Returns:

Type Description
Device

The Device instance

__exit__(exc_type, exc_val, exc_tb) #

Cleanup resources when exiting the 'with' block.

Parameters:

Name Type Description Default
exc_type Exception type or None

Type of the exception that caused the context to be exited

required
exc_val Exception or None

Exception instance that caused the context to be exited

required
exc_tb traceback or None

Traceback if an exception occurred

required

__init__(serial_port, dump_file_path=None, read_timeout_s=1, timeout_strategy=TimeoutStrategy.RAISE) #

Parameters:

Name Type Description Default
serial_port str

The serial port used to establish the connection with the Harp device. It must be denoted as /dev/ttyUSBx in Linux and COMx in Windows, where x is the number of the serial port

required
dump_file_path Optional[str]

The binary file to which all Harp messages will be written

None
read_timeout_s float

TODO

1

alive_en(enable) #

Sets the ALIVE_EN bit of the device.

Parameters:

Name Type Description Default
enable bool

If True, enables the ALIVE_EN bit. If False, disables it

required

Returns:

Type Description
bool

True if the operation was successful, False otherwise

connect() #

Connects to the Harp device.

disconnect() #

Disconnects from the Harp device.

dump_registers() #

Asserts the DUMP bit to dump the values of all core and app registers as Harp Read Reply Messages. More information on the DUMP bit can be found here.

Returns:

Type Description
list

The list containing the reply Harp messages for all the device's registers

event_count() #

Gets the number of events in the event queue.

Returns:

Type Description
int

The number of events in the event queue

get_events() #

Gets all events from the event queue.

Returns:

Type Description
list

The list containing every Harp event message that were on the queue

info() #

Prints the device information.

load() #

Loads the data stored in the device's common registers.

mute_reply(enable) #

Sets the MUTE_REPLY bit of the device.

Parameters:

Name Type Description Default
enable bool

If True, the Replies to all the Commands are muted. If False, un-mutes them

required

Returns:

Type Description
bool

True if the operation was successful, False otherwise

op_led_en(enable) #

Sets the operation LED of the device.

Parameters:

Name Type Description Default
enable bool

If True, enables the operation LED. If False, disables it

required

Returns:

Type Description
bool

True if the operation was successful, False otherwise

read_float(address) #

Reads the value of a register of type Float.

Parameters:

Name Type Description Default
address int

The register to be read

required

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message that will contain the value read from the register

Raises:

Type Description
HarpTimeoutError

If no reply is received and the effective strategy requires raising

read_operation_ctrl() #

Reads the OPERATION_CTRL register of the device.

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message

read_s16(address) #

Reads the value of a register of type S16.

Parameters:

Name Type Description Default
address int

The register to be read

required

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message that will contain the value read from the register

Raises:

Type Description
HarpTimeoutError

If no reply is received and the effective strategy requires raising

read_s32(address) #

Reads the value of a register of type S32.

Parameters:

Name Type Description Default
address int

The register to be read

required

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message that will contain the value read from the register

Raises:

Type Description
HarpTimeoutError

If no reply is received and the effective strategy requires raising

read_s64(address) #

Reads the value of a register of type S64.

Parameters:

Name Type Description Default
address int

The register to be read

required

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message that will contain the value read from the register

Raises:

Type Description
HarpTimeoutError

If no reply is received and the effective strategy requires raising

read_s8(address) #

Reads the value of a register of type S8.

Parameters:

Name Type Description Default
address int

The register to be read

required

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message that will contain the value read from the register

Raises:

Type Description
HarpTimeoutError

If no reply is received and the effective strategy requires raising

read_u16(address) #

Reads the value of a register of type U16.

Parameters:

Name Type Description Default
address int

The register to be read

required

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message that will contain the value read from the register

Raises:

Type Description
HarpTimeoutError

If no reply is received and the effective strategy requires raising

read_u32(address) #

Reads the value of a register of type U32.

Parameters:

Name Type Description Default
address int

The register to be read

required

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message that will contain the value read from the register

Raises:

Type Description
HarpTimeoutError

If no reply is received and the effective strategy requires raising

read_u64(address) #

Reads the value of a register of type U64.

Parameters:

Name Type Description Default
address int

The register to be read

required

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message that will contain the value read from the register

Raises:

Type Description
HarpTimeoutError

If no reply is received and the effective strategy requires raising

read_u8(address) #

Reads the value of a register of type U8.

Parameters:

Name Type Description Default
address int

The register to be read

required

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message that will contain the value read from the register

Raises:

Type Description
HarpTimeoutError

If no reply is received and the effective strategy requires raising

reset_device(reset_mode=ResetMode.RST_DEF) #

Resets the device and reboots with all the registers with the default values. Beware that the EEPROM will be erased. More information on the reset device register can be found here.

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message

send(message, *, expect_reply=True, timeout_strategy=None) #

Sends a Harp message and (optionally) waits for a reply.

Parameters:

Name Type Description Default
message HarpMessage

The HarpMessage to be sent to the device

required
expect_reply bool

If False, do not wait for a reply (fire-and-forget)

True
timeout_strategy TimeoutStrategy | None

Override the device-level timeout strategy for this call

None

Returns:

Type Description
ReplyHarpMessage | None

Reply (or None when allowed by the timeout strategy or expect_reply=False)

Raises:

Type Description
HarpTimeoutError

If no reply is received and the effective strategy requires raising

set_clock_config(clock_config) #

Sets the clock configuration of the device.

Parameters:

Name Type Description Default
clock_config ClockConfig

The clock configuration value

required

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message

set_mode(mode) #

Sets the operation mode of the device.

Parameters:

Name Type Description Default
mode DeviceMode

The new device mode value

required

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message

set_timestamp_offset(timestamp_offset) #

When the value of this register is above 0 (zero), the device's timestamp will be offset by this amount. The register is sensitive to 500 microsecond increments. This register is non-volatile.

Parameters:

Name Type Description Default
timestamp_offset int

The timestamp offset value

required

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message

visual_en(enable) #

Sets the status led of the device.

Parameters:

Name Type Description Default
enable bool

If True, enables the status led. If False, disables it

required

Returns:

Type Description
bool

True if the operation was successful, False otherwise

write_float(address, value) #

Writes the value of a register of type Float.

Parameters:

Name Type Description Default
address int

The register to be written on

required
value float | list[float]

The value to be written to the register

required

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message

Raises:

Type Description
HarpTimeoutError

If no reply is received and the effective strategy requires raising

write_operation_ctrl(mode=None, mute_rpl=None, visual_en=None, op_led_en=None, alive_en=None) #

Writes the OPERATION_CTRL register of the device.

Parameters:

Name Type Description Default
mode OperationMode

The new operation mode value

None
mute_rpl bool

If True, the Replies to all the Commands are muted

None
visual_en bool

If True, enables the status led

None
op_led_en bool

If True, enables the operation LED

None
alive_en bool

If True, enables the ALIVE_EN bit

None

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message

write_s16(address, value) #

Writes the value of a register of type S16.

Parameters:

Name Type Description Default
address int

The register to be written on

required
value int | list[int]

The value to be written to the register

required

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message

Raises:

Type Description
HarpTimeoutError

If no reply is received and the effective strategy requires raising

write_s32(address, value) #

Writes the value of a register of type S32.

Parameters:

Name Type Description Default
address int

The register to be written on

required
value int | list[int]

The value to be written to the register

required

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message

Raises:

Type Description
HarpTimeoutError

If no reply is received and the effective strategy requires raising

write_s64(address, value) #

Writes the value of a register of type S64.

Parameters:

Name Type Description Default
address int

The register to be written on

required
value int | list[int]

The value to be written to the register

required

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message

Raises:

Type Description
HarpTimeoutError

If no reply is received and the effective strategy requires raising

write_s8(address, value) #

Writes the value of a register of type S8.

Parameters:

Name Type Description Default
address int

The register to be written on

required
value int | list[int]

The value to be written to the register

required

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message

Raises:

Type Description
HarpTimeoutError

If no reply is received and the effective strategy requires raising

write_u16(address, value) #

Writes the value of a register of type U16.

Parameters:

Name Type Description Default
address int

The register to be written on

required
value int | list[int]

The value to be written to the register

required

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message

Raises:

Type Description
HarpTimeoutError

If no reply is received and the effective strategy requires raising

write_u32(address, value) #

Writes the value of a register of type U32.

Parameters:

Name Type Description Default
address int

The register to be written on

required
value int | list[int]

The value to be written to the register

required

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message

Raises:

Type Description
HarpTimeoutError

If no reply is received and the effective strategy requires raising

write_u64(address, value) #

Writes the value of a register of type U64.

Parameters:

Name Type Description Default
address int

The register to be written on

required
value int | list[int]

The value to be written to the register

required

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message

Raises:

Type Description
HarpTimeoutError

If no reply is received and the effective strategy requires raising

write_u8(address, value) #

Writes the value of a register of type U8.

Parameters:

Name Type Description Default
address int

The register to be written on

required
value int | list[int]

The value to be written to the register

required

Returns:

Type Description
ReplyHarpMessage

The reply to the Harp message

Raises:

Type Description
HarpTimeoutError

If no reply is received and the effective strategy requires raising

DigitalInputs #

Bases: IntFlag

Available digital input lines.

Attributes:

Name Type Description
DI0 int

No description currently available

DigitalOutputs #

Bases: IntFlag

Specifies the state of port digital output lines.

Attributes:

Name Type Description
DO1 int

No description currently available

DO2 int

No description currently available

DO3 int

No description currently available

DO4 int

No description currently available

DO5 int

No description currently available

DO6 int

No description currently available

DO7 int

No description currently available

DO8 int

No description currently available

HarpMessage #

The HarpMessage class implements the Harp message as described in the protocol.

Attributes:

Name Type Description
frame bytearray

The bytearray containing the whole Harp message

message_type MessageType

The message type

length int

The length parameter of the Harp message

address int

The address of the register to which the Harp message refers to

port int

Indicates the origin or destination of the Harp message in case the device is a hub of Harp devices. The value 255 points to the device itself (default value).

payload_type PayloadType

The payload type

checksum int

The sum of all bytes contained in the Harp message

address property #

The address of the register to which the Harp message refers to.

Returns:

Type Description
int

The address of the register to which the Harp message refers to

checksum property #

The sum of all bytes contained in the Harp message.

Returns:

Type Description
int

The sum of all bytes contained in the Harp message

frame property #

The bytearray containing the whole Harp message.

Returns:

Type Description
bytearray

The bytearray containing the whole Harp message

length property #

The length parameter of the Harp message.

Returns:

Type Description
int

The length parameter of the Harp message

message_type property #

The message type.

Returns:

Type Description
MessageType

The message type

payload property #

The payload sent in the write Harp message.

Returns:

Type Description
Union[int, list[int]]

The payload sent in the write Harp message

payload_type property #

The payload type.

Returns:

Type Description
PayloadType

The payload type

port property writable #

Indicates the origin or destination of the Harp message in case the device is a hub of Harp devices. The value 255 points to the device itself (default value).

Returns:

Type Description
int

The port value

__repr__() #

Prints debug representation of the reply message.

Returns:

Type Description
str

The debug representation of the reply message

__str__() #

Prints friendly representation of a Harp message.

Returns:

Type Description
str

The representation of the Harp message

calculate_checksum() #

Calculates the checksum of the Harp message.

Returns:

Type Description
int

The value of the checksum

create(message_type, address, payload_type, value=None) staticmethod #

Creates a Harp message.

Parameters:

Name Type Description Default
message_type MessageType

The message type. It can only be of type READ or WRITE

required
address int

The address of the register that the message will interact with

required
payload_type PayloadType

The payload type

required
value Optional[int | list[int] | float | list[float]]

The payload of the message. If message_type == MessageType.WRITE, the value cannot be None

None

parse(frame) staticmethod #

Parses a bytearray to a (reply) Harp message.

Parameters:

Name Type Description Default
frame bytearray

The bytearray will be parsed into a (reply) Harp message

required

Returns:

Type Description
ReplyHarpMessage

The Harp message object parsed from the original bytearray

HarpReadException #

Bases: HarpException

Exception raised when there is an error reading from a register in the Harp device.

HarpWriteException #

Bases: HarpException

Exception raised when there is an error writing to a register in the Harp device.

LoadCellChannel #

Bases: IntEnum

Available target load cells to be targeted on threshold events.

Attributes:

Name Type Description
CHANNEL0 int

No description currently available

CHANNEL1 int

No description currently available

CHANNEL2 int

No description currently available

CHANNEL3 int

No description currently available

CHANNEL4 int

No description currently available

CHANNEL5 int

No description currently available

CHANNEL6 int

No description currently available

CHANNEL7 int

No description currently available

NONE int

No description currently available

LoadCellDataPayload dataclass #

LoadCellDataPayload(Channel0: int, Channel1: int, Channel2: int, Channel3: int, Channel4: int, Channel5: int, Channel6: int, Channel7: int)

Parameters:

Name Type Description Default
Channel0 int
required
Channel1 int
required
Channel2 int
required
Channel3 int
required
Channel4 int
required
Channel5 int
required
Channel6 int
required
Channel7 int
required

LoadCellEvents #

Bases: IntFlag

The events that can be enabled/disabled.

Attributes:

Name Type Description
LOAD_CELL_DATA int

No description currently available

DIGITAL_INPUT int

No description currently available

SYNC_OUTPUT int

No description currently available

THRESHOLDS int

No description currently available

LoadCells #

Bases: Device

LoadCells class for controlling the device.

read_acquisition_state() #

Reads the contents of the AcquisitionState register.

Returns:

Type Description
bool

Value read from the AcquisitionState register.

read_di0_trigger() #

Reads the contents of the DI0Trigger register.

Returns:

Type Description
TriggerConfig

Value read from the DI0Trigger register.

read_digital_input_state() #

Reads the contents of the DigitalInputState register.

Returns:

Type Description
DigitalInputs

Value read from the DigitalInputState register.

read_digital_output_clear() #

Reads the contents of the DigitalOutputClear register.

Returns:

Type Description
DigitalOutputs

Value read from the DigitalOutputClear register.

read_digital_output_set() #

Reads the contents of the DigitalOutputSet register.

Returns:

Type Description
DigitalOutputs

Value read from the DigitalOutputSet register.

read_digital_output_state() #

Reads the contents of the DigitalOutputState register.

Returns:

Type Description
DigitalOutputs

Value read from the DigitalOutputState register.

read_digital_output_toggle() #

Reads the contents of the DigitalOutputToggle register.

Returns:

Type Description
DigitalOutputs

Value read from the DigitalOutputToggle register.

read_do0_pulse_width() #

Reads the contents of the DO0PulseWidth register.

Returns:

Type Description
int

Value read from the DO0PulseWidth register.

read_do0_sync() #

Reads the contents of the DO0Sync register.

Returns:

Type Description
SyncConfig

Value read from the DO0Sync register.

read_do1_target_load_cell() #

Reads the contents of the DO1TargetLoadCell register.

Returns:

Type Description
LoadCellChannel

Value read from the DO1TargetLoadCell register.

read_do1_threshold() #

Reads the contents of the DO1Threshold register.

Returns:

Type Description
int

Value read from the DO1Threshold register.

read_do1_time_above_threshold() #

Reads the contents of the DO1TimeAboveThreshold register.

Returns:

Type Description
int

Value read from the DO1TimeAboveThreshold register.

read_do1_time_below_threshold() #

Reads the contents of the DO1TimeBelowThreshold register.

Returns:

Type Description
int

Value read from the DO1TimeBelowThreshold register.

read_do2_target_load_cell() #

Reads the contents of the DO2TargetLoadCell register.

Returns:

Type Description
LoadCellChannel

Value read from the DO2TargetLoadCell register.

read_do2_threshold() #

Reads the contents of the DO2Threshold register.

Returns:

Type Description
int

Value read from the DO2Threshold register.

read_do2_time_above_threshold() #

Reads the contents of the DO2TimeAboveThreshold register.

Returns:

Type Description
int

Value read from the DO2TimeAboveThreshold register.

read_do2_time_below_threshold() #

Reads the contents of the DO2TimeBelowThreshold register.

Returns:

Type Description
int

Value read from the DO2TimeBelowThreshold register.

read_do3_target_load_cell() #

Reads the contents of the DO3TargetLoadCell register.

Returns:

Type Description
LoadCellChannel

Value read from the DO3TargetLoadCell register.

read_do3_threshold() #

Reads the contents of the DO3Threshold register.

Returns:

Type Description
int

Value read from the DO3Threshold register.

read_do3_time_above_threshold() #

Reads the contents of the DO3TimeAboveThreshold register.

Returns:

Type Description
int

Value read from the DO3TimeAboveThreshold register.

read_do3_time_below_threshold() #

Reads the contents of the DO3TimeBelowThreshold register.

Returns:

Type Description
int

Value read from the DO3TimeBelowThreshold register.

read_do4_target_load_cell() #

Reads the contents of the DO4TargetLoadCell register.

Returns:

Type Description
LoadCellChannel

Value read from the DO4TargetLoadCell register.

read_do4_threshold() #

Reads the contents of the DO4Threshold register.

Returns:

Type Description
int

Value read from the DO4Threshold register.

read_do4_time_above_threshold() #

Reads the contents of the DO4TimeAboveThreshold register.

Returns:

Type Description
int

Value read from the DO4TimeAboveThreshold register.

read_do4_time_below_threshold() #

Reads the contents of the DO4TimeBelowThreshold register.

Returns:

Type Description
int

Value read from the DO4TimeBelowThreshold register.

read_do5_target_load_cell() #

Reads the contents of the DO5TargetLoadCell register.

Returns:

Type Description
LoadCellChannel

Value read from the DO5TargetLoadCell register.

read_do5_threshold() #

Reads the contents of the DO5Threshold register.

Returns:

Type Description
int

Value read from the DO5Threshold register.

read_do5_time_above_threshold() #

Reads the contents of the DO5TimeAboveThreshold register.

Returns:

Type Description
int

Value read from the DO5TimeAboveThreshold register.

read_do5_time_below_threshold() #

Reads the contents of the DO5TimeBelowThreshold register.

Returns:

Type Description
int

Value read from the DO5TimeBelowThreshold register.

read_do6_target_load_cell() #

Reads the contents of the DO6TargetLoadCell register.

Returns:

Type Description
LoadCellChannel

Value read from the DO6TargetLoadCell register.

read_do6_threshold() #

Reads the contents of the DO6Threshold register.

Returns:

Type Description
int

Value read from the DO6Threshold register.

read_do6_time_above_threshold() #

Reads the contents of the DO6TimeAboveThreshold register.

Returns:

Type Description
int

Value read from the DO6TimeAboveThreshold register.

read_do6_time_below_threshold() #

Reads the contents of the DO6TimeBelowThreshold register.

Returns:

Type Description
int

Value read from the DO6TimeBelowThreshold register.

read_do7_target_load_cell() #

Reads the contents of the DO7TargetLoadCell register.

Returns:

Type Description
LoadCellChannel

Value read from the DO7TargetLoadCell register.

read_do7_threshold() #

Reads the contents of the DO7Threshold register.

Returns:

Type Description
int

Value read from the DO7Threshold register.

read_do7_time_above_threshold() #

Reads the contents of the DO7TimeAboveThreshold register.

Returns:

Type Description
int

Value read from the DO7TimeAboveThreshold register.

read_do7_time_below_threshold() #

Reads the contents of the DO7TimeBelowThreshold register.

Returns:

Type Description
int

Value read from the DO7TimeBelowThreshold register.

read_do8_target_load_cell() #

Reads the contents of the DO8TargetLoadCell register.

Returns:

Type Description
LoadCellChannel

Value read from the DO8TargetLoadCell register.

read_do8_threshold() #

Reads the contents of the DO8Threshold register.

Returns:

Type Description
int

Value read from the DO8Threshold register.

read_do8_time_above_threshold() #

Reads the contents of the DO8TimeAboveThreshold register.

Returns:

Type Description
int

Value read from the DO8TimeAboveThreshold register.

read_do8_time_below_threshold() #

Reads the contents of the DO8TimeBelowThreshold register.

Returns:

Type Description
int

Value read from the DO8TimeBelowThreshold register.

read_enable_events() #

Reads the contents of the EnableEvents register.

Returns:

Type Description
LoadCellEvents

Value read from the EnableEvents register.

read_load_cell_data() #

Reads the contents of the LoadCellData register.

Returns:

Type Description
LoadCellDataPayload

Value read from the LoadCellData register.

read_offset_load_cell0() #

Reads the contents of the OffsetLoadCell0 register.

Returns:

Type Description
int

Value read from the OffsetLoadCell0 register.

read_offset_load_cell1() #

Reads the contents of the OffsetLoadCell1 register.

Returns:

Type Description
int

Value read from the OffsetLoadCell1 register.

read_offset_load_cell2() #

Reads the contents of the OffsetLoadCell2 register.

Returns:

Type Description
int

Value read from the OffsetLoadCell2 register.

read_offset_load_cell3() #

Reads the contents of the OffsetLoadCell3 register.

Returns:

Type Description
int

Value read from the OffsetLoadCell3 register.

read_offset_load_cell4() #

Reads the contents of the OffsetLoadCell4 register.

Returns:

Type Description
int

Value read from the OffsetLoadCell4 register.

read_offset_load_cell5() #

Reads the contents of the OffsetLoadCell5 register.

Returns:

Type Description
int

Value read from the OffsetLoadCell5 register.

read_offset_load_cell6() #

Reads the contents of the OffsetLoadCell6 register.

Returns:

Type Description
int

Value read from the OffsetLoadCell6 register.

read_offset_load_cell7() #

Reads the contents of the OffsetLoadCell7 register.

Returns:

Type Description
int

Value read from the OffsetLoadCell7 register.

read_sync_output_state() #

Reads the contents of the SyncOutputState register.

Returns:

Type Description
SyncOutputs

Value read from the SyncOutputState register.

write_acquisition_state(value) #

Writes a value to the AcquisitionState register.

Parameters:

Name Type Description Default
value bool

Value to write to the AcquisitionState register.

required

write_di0_trigger(value) #

Writes a value to the DI0Trigger register.

Parameters:

Name Type Description Default
value TriggerConfig

Value to write to the DI0Trigger register.

required

write_digital_output_clear(value) #

Writes a value to the DigitalOutputClear register.

Parameters:

Name Type Description Default
value DigitalOutputs

Value to write to the DigitalOutputClear register.

required

write_digital_output_set(value) #

Writes a value to the DigitalOutputSet register.

Parameters:

Name Type Description Default
value DigitalOutputs

Value to write to the DigitalOutputSet register.

required

write_digital_output_state(value) #

Writes a value to the DigitalOutputState register.

Parameters:

Name Type Description Default
value DigitalOutputs

Value to write to the DigitalOutputState register.

required

write_digital_output_toggle(value) #

Writes a value to the DigitalOutputToggle register.

Parameters:

Name Type Description Default
value DigitalOutputs

Value to write to the DigitalOutputToggle register.

required

write_do0_pulse_width(value) #

Writes a value to the DO0PulseWidth register.

Parameters:

Name Type Description Default
value int

Value to write to the DO0PulseWidth register.

required

write_do0_sync(value) #

Writes a value to the DO0Sync register.

Parameters:

Name Type Description Default
value SyncConfig

Value to write to the DO0Sync register.

required

write_do1_target_load_cell(value) #

Writes a value to the DO1TargetLoadCell register.

Parameters:

Name Type Description Default
value LoadCellChannel

Value to write to the DO1TargetLoadCell register.

required

write_do1_threshold(value) #

Writes a value to the DO1Threshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO1Threshold register.

required

write_do1_time_above_threshold(value) #

Writes a value to the DO1TimeAboveThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO1TimeAboveThreshold register.

required

write_do1_time_below_threshold(value) #

Writes a value to the DO1TimeBelowThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO1TimeBelowThreshold register.

required

write_do2_target_load_cell(value) #

Writes a value to the DO2TargetLoadCell register.

Parameters:

Name Type Description Default
value LoadCellChannel

Value to write to the DO2TargetLoadCell register.

required

write_do2_threshold(value) #

Writes a value to the DO2Threshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO2Threshold register.

required

write_do2_time_above_threshold(value) #

Writes a value to the DO2TimeAboveThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO2TimeAboveThreshold register.

required

write_do2_time_below_threshold(value) #

Writes a value to the DO2TimeBelowThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO2TimeBelowThreshold register.

required

write_do3_target_load_cell(value) #

Writes a value to the DO3TargetLoadCell register.

Parameters:

Name Type Description Default
value LoadCellChannel

Value to write to the DO3TargetLoadCell register.

required

write_do3_threshold(value) #

Writes a value to the DO3Threshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO3Threshold register.

required

write_do3_time_above_threshold(value) #

Writes a value to the DO3TimeAboveThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO3TimeAboveThreshold register.

required

write_do3_time_below_threshold(value) #

Writes a value to the DO3TimeBelowThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO3TimeBelowThreshold register.

required

write_do4_target_load_cell(value) #

Writes a value to the DO4TargetLoadCell register.

Parameters:

Name Type Description Default
value LoadCellChannel

Value to write to the DO4TargetLoadCell register.

required

write_do4_threshold(value) #

Writes a value to the DO4Threshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO4Threshold register.

required

write_do4_time_above_threshold(value) #

Writes a value to the DO4TimeAboveThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO4TimeAboveThreshold register.

required

write_do4_time_below_threshold(value) #

Writes a value to the DO4TimeBelowThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO4TimeBelowThreshold register.

required

write_do5_target_load_cell(value) #

Writes a value to the DO5TargetLoadCell register.

Parameters:

Name Type Description Default
value LoadCellChannel

Value to write to the DO5TargetLoadCell register.

required

write_do5_threshold(value) #

Writes a value to the DO5Threshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO5Threshold register.

required

write_do5_time_above_threshold(value) #

Writes a value to the DO5TimeAboveThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO5TimeAboveThreshold register.

required

write_do5_time_below_threshold(value) #

Writes a value to the DO5TimeBelowThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO5TimeBelowThreshold register.

required

write_do6_target_load_cell(value) #

Writes a value to the DO6TargetLoadCell register.

Parameters:

Name Type Description Default
value LoadCellChannel

Value to write to the DO6TargetLoadCell register.

required

write_do6_threshold(value) #

Writes a value to the DO6Threshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO6Threshold register.

required

write_do6_time_above_threshold(value) #

Writes a value to the DO6TimeAboveThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO6TimeAboveThreshold register.

required

write_do6_time_below_threshold(value) #

Writes a value to the DO6TimeBelowThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO6TimeBelowThreshold register.

required

write_do7_target_load_cell(value) #

Writes a value to the DO7TargetLoadCell register.

Parameters:

Name Type Description Default
value LoadCellChannel

Value to write to the DO7TargetLoadCell register.

required

write_do7_threshold(value) #

Writes a value to the DO7Threshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO7Threshold register.

required

write_do7_time_above_threshold(value) #

Writes a value to the DO7TimeAboveThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO7TimeAboveThreshold register.

required

write_do7_time_below_threshold(value) #

Writes a value to the DO7TimeBelowThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO7TimeBelowThreshold register.

required

write_do8_target_load_cell(value) #

Writes a value to the DO8TargetLoadCell register.

Parameters:

Name Type Description Default
value LoadCellChannel

Value to write to the DO8TargetLoadCell register.

required

write_do8_threshold(value) #

Writes a value to the DO8Threshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO8Threshold register.

required

write_do8_time_above_threshold(value) #

Writes a value to the DO8TimeAboveThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO8TimeAboveThreshold register.

required

write_do8_time_below_threshold(value) #

Writes a value to the DO8TimeBelowThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO8TimeBelowThreshold register.

required

write_enable_events(value) #

Writes a value to the EnableEvents register.

Parameters:

Name Type Description Default
value LoadCellEvents

Value to write to the EnableEvents register.

required

write_offset_load_cell0(value) #

Writes a value to the OffsetLoadCell0 register.

Parameters:

Name Type Description Default
value int

Value to write to the OffsetLoadCell0 register.

required

write_offset_load_cell1(value) #

Writes a value to the OffsetLoadCell1 register.

Parameters:

Name Type Description Default
value int

Value to write to the OffsetLoadCell1 register.

required

write_offset_load_cell2(value) #

Writes a value to the OffsetLoadCell2 register.

Parameters:

Name Type Description Default
value int

Value to write to the OffsetLoadCell2 register.

required

write_offset_load_cell3(value) #

Writes a value to the OffsetLoadCell3 register.

Parameters:

Name Type Description Default
value int

Value to write to the OffsetLoadCell3 register.

required

write_offset_load_cell4(value) #

Writes a value to the OffsetLoadCell4 register.

Parameters:

Name Type Description Default
value int

Value to write to the OffsetLoadCell4 register.

required

write_offset_load_cell5(value) #

Writes a value to the OffsetLoadCell5 register.

Parameters:

Name Type Description Default
value int

Value to write to the OffsetLoadCell5 register.

required

write_offset_load_cell6(value) #

Writes a value to the OffsetLoadCell6 register.

Parameters:

Name Type Description Default
value int

Value to write to the OffsetLoadCell6 register.

required

write_offset_load_cell7(value) #

Writes a value to the OffsetLoadCell7 register.

Parameters:

Name Type Description Default
value int

Value to write to the OffsetLoadCell7 register.

required

LoadCellsRegisters #

Bases: IntEnum

Enum for all available registers in the LoadCells device.

Attributes:

Name Type Description
ACQUISITION_STATE int

Enables the data acquisition.

LOAD_CELL_DATA int

Value of single ADC read from all load cell channels.

DIGITAL_INPUT_STATE int

Status of the digital input pin 0. An event will be emitted when DI0Trigger == None.

SYNC_OUTPUT_STATE int

Status of the digital output pin 0. An periodic event will be emitted when DO0Sync == ToggleEachSecond.

DI0_TRIGGER int

Configuration of the digital input pin 0.

DO0_SYNC int

Configuration of the digital output pin 0.

DO0_PULSE_WIDTH int

Pulse duration (ms) for the digital output pin 0. The pulse will only be emitted when DO0Sync == Pulse.

DIGITAL_OUTPUT_SET int

Set the specified digital output lines.

DIGITAL_OUTPUT_CLEAR int

Clear the specified digital output lines.

DIGITAL_OUTPUT_TOGGLE int

Toggle the specified digital output lines

DIGITAL_OUTPUT_STATE int

Write the state of all digital output lines. An event will be emitted when the value of any pin was changed by a threshold event.

OFFSET_LOAD_CELL0 int

Offset value for Load Cell channel 0.

OFFSET_LOAD_CELL1 int

Offset value for Load Cell channel 1.

OFFSET_LOAD_CELL2 int

Offset value for Load Cell channel 2.

OFFSET_LOAD_CELL3 int

Offset value for Load Cell channel 3.

OFFSET_LOAD_CELL4 int

Offset value for Load Cell channel 4.

OFFSET_LOAD_CELL5 int

Offset value for Load Cell channel 5.

OFFSET_LOAD_CELL6 int

Offset value for Load Cell channel 6.

OFFSET_LOAD_CELL7 int

Offset value for Load Cell channel 7.

DO1_TARGET_LOAD_CELL int

Target Load Cell that will be used to trigger a threshold event on DO1 pin.

DO2_TARGET_LOAD_CELL int

Target Load Cell that will be used to trigger a threshold event on DO2 pin.

DO3_TARGET_LOAD_CELL int

Target Load Cell that will be used to trigger a threshold event on DO3 pin.

DO4_TARGET_LOAD_CELL int

Target Load Cell that will be used to trigger a threshold event on DO4 pin.

DO5_TARGET_LOAD_CELL int

Target Load Cell that will be used to trigger a threshold event on DO5 pin.

DO6_TARGET_LOAD_CELL int

Target Load Cell that will be used to trigger a threshold event on DO6 pin.

DO7_TARGET_LOAD_CELL int

Target Load Cell that will be used to trigger a threshold event on DO7 pin.

DO8_TARGET_LOAD_CELL int

Target Load Cell that will be used to trigger a threshold event on DO8 pin.

DO1_THRESHOLD int

Value used to threshold a Load Cell read, and trigger DO1 pin.

DO2_THRESHOLD int

Value used to threshold a Load Cell read, and trigger DO2 pin.

DO3_THRESHOLD int

Value used to threshold a Load Cell read, and trigger DO3 pin.

DO4_THRESHOLD int

Value used to threshold a Load Cell read, and trigger DO4 pin.

DO5_THRESHOLD int

Value used to threshold a Load Cell read, and trigger DO5 pin.

DO6_THRESHOLD int

Value used to threshold a Load Cell read, and trigger DO6 pin.

DO7_THRESHOLD int

Value used to threshold a Load Cell read, and trigger DO7 pin.

DO8_THRESHOLD int

Value used to threshold a Load Cell read, and trigger DO8 pin.

DO1_TIME_ABOVE_THRESHOLD int

Time (ms) above threshold value that is required to trigger a DO1 pin event.

DO2_TIME_ABOVE_THRESHOLD int

Time (ms) above threshold value that is required to trigger a DO2 pin event.

DO3_TIME_ABOVE_THRESHOLD int

Time (ms) above threshold value that is required to trigger a DO3 pin event.

DO4_TIME_ABOVE_THRESHOLD int

Time (ms) above threshold value that is required to trigger a DO4 pin event.

DO5_TIME_ABOVE_THRESHOLD int

Time (ms) above threshold value that is required to trigger a DO5 pin event.

DO6_TIME_ABOVE_THRESHOLD int

Time (ms) above threshold value that is required to trigger a DO6 pin event.

DO7_TIME_ABOVE_THRESHOLD int

Time (ms) above threshold value that is required to trigger a DO7 pin event.

DO8_TIME_ABOVE_THRESHOLD int

Time (ms) above threshold value that is required to trigger a DO8 pin event.

DO1_TIME_BELOW_THRESHOLD int

Time (ms) below threshold value that is required to trigger a DO1 pin event.

DO2_TIME_BELOW_THRESHOLD int

Time (ms) below threshold value that is required to trigger a DO2 pin event.

DO3_TIME_BELOW_THRESHOLD int

Time (ms) below threshold value that is required to trigger a DO3 pin event.

DO4_TIME_BELOW_THRESHOLD int

Time (ms) below threshold value that is required to trigger a DO4 pin event.

DO5_TIME_BELOW_THRESHOLD int

Time (ms) below threshold value that is required to trigger a DO5 pin event.

DO6_TIME_BELOW_THRESHOLD int

Time (ms) below threshold value that is required to trigger a DO6 pin event.

DO7_TIME_BELOW_THRESHOLD int

Time (ms) below threshold value that is required to trigger a DO7 pin event.

DO8_TIME_BELOW_THRESHOLD int

Time (ms) below threshold value that is required to trigger a DO8 pin event.

ENABLE_EVENTS int

Specifies the active events in the device.

MessageType #

Bases: IntEnum

An enumeration of the allowed message types of a Harp message. More information on the MessageType byte of a Harp message can be found here.

Attributes:

Name Type Description
READ int

The value that corresponds to a Read Harp message (1)

WRITE int

The value that corresponds to a Write Harp message (2)

EVENT int

The value that corresponds to an Event Harp message (3). Messages of this type are only meant to be send by the device

READ_ERROR int

The value that corresponds to a Read Error Harp message (9). Messages of this type are only meant to be send by the device

WRITE_ERROR int

The value that corresponds to a Write Error Harp message (10). Messages of this type are only meant to be send by the device

PayloadType #

Bases: IntEnum

An enumeration of the allowed payload types of a Harp message. More information on the PayloadType byte of a Harp message can be found here.

Attributes:

Name Type Description
U8 int

The value that corresponds to a message of type U8

S8 int

The value that corresponds to a message of type S8

U16 int

The value that corresponds to a message of type U16

S16 int

The value that corresponds to a message of type S16

U32 int

The value that corresponds to a message of type U32

S32 int

The value that corresponds to a message of type S32

U64 int

The value that corresponds to a message of type U64

S64 int

The value that corresponds to a message of type S64

Float int

The value that corresponds to a message of type Float

Timestamp int

The value that corresponds to a message of type Timestamp. This is not a valid PayloadType, but it is used to indicate that the message has a timestamp.

TimestampedU8 int

The value that corresponds to a message of type TimestampedU8

TimestampedS8 int

The value that corresponds to a message of type TimestampedS8

TimestampedU16 int

The value that corresponds to a message of type TimestampedU16

TimestampedS16 int

The value that corresponds to a message of type TimestampedS16

TimestampedU32 int

The value that corresponds to a message of type TimestampedU32

TimestampedS32 int

The value that corresponds to a message of type TimestampedS32

TimestampedU64 int

The value that corresponds to a message of type TimestampedU64

TimestampedS64 int

The value that corresponds to a message of type TimestampedS64

TimestampedFloat int

The value that corresponds to a message of type TimestampedFloat

ReplyHarpMessage #

Bases: HarpMessage

A response message from a Harp device.

Attributes:

Name Type Description
payload Union[int, list[int]]

The message payload formatted as the appropriate type

timestamp float

The Harp timestamp at which the message was sent

is_error property #

Indicates if this HarpMessage is an error message or not.

Returns:

Type Description
bool

Returns True if this HarpMessage is an error message, False otherwise.

timestamp property #

The Harp timestamp at which the message was sent.

Returns:

Type Description
float

The Harp timestamp at which the message was sent

__init__(frame) #

Parameters:

Name Type Description Default
frame bytearray

The Harp message in bytearray format

required

payload_as_string() #

Returns the payload as a str.

Returns:

Type Description
str

The payload parsed as a str

SyncConfig #

Bases: IntEnum

Available configurations when using a digital output pin to report firmware events.

Attributes:

Name Type Description
NONE int

No description currently available

HEARTBEAT int

No description currently available

PULSE int

No description currently available

SyncOutputs #

Bases: IntFlag

Specifies the state output synchronization lines.

Attributes:

Name Type Description
DO0 int

No description currently available

TriggerConfig #

Bases: IntEnum

Available configurations when using a digital input as an acquisition trigger.

Attributes:

Name Type Description
NONE int

No description currently available

RISING_EDGE int

No description currently available

FALLING_EDGE int

No description currently available

harpdevice #

DigitalInputs #

Bases: IntFlag

Available digital input lines.

Attributes:

Name Type Description
DI0 int

No description currently available

DigitalOutputs #

Bases: IntFlag

Specifies the state of port digital output lines.

Attributes:

Name Type Description
DO1 int

No description currently available

DO2 int

No description currently available

DO3 int

No description currently available

DO4 int

No description currently available

DO5 int

No description currently available

DO6 int

No description currently available

DO7 int

No description currently available

DO8 int

No description currently available

LoadCellChannel #

Bases: IntEnum

Available target load cells to be targeted on threshold events.

Attributes:

Name Type Description
CHANNEL0 int

No description currently available

CHANNEL1 int

No description currently available

CHANNEL2 int

No description currently available

CHANNEL3 int

No description currently available

CHANNEL4 int

No description currently available

CHANNEL5 int

No description currently available

CHANNEL6 int

No description currently available

CHANNEL7 int

No description currently available

NONE int

No description currently available

LoadCellDataPayload dataclass #

LoadCellDataPayload(Channel0: int, Channel1: int, Channel2: int, Channel3: int, Channel4: int, Channel5: int, Channel6: int, Channel7: int)

Parameters:

Name Type Description Default
Channel0 int
required
Channel1 int
required
Channel2 int
required
Channel3 int
required
Channel4 int
required
Channel5 int
required
Channel6 int
required
Channel7 int
required

LoadCellEvents #

Bases: IntFlag

The events that can be enabled/disabled.

Attributes:

Name Type Description
LOAD_CELL_DATA int

No description currently available

DIGITAL_INPUT int

No description currently available

SYNC_OUTPUT int

No description currently available

THRESHOLDS int

No description currently available

LoadCells #

Bases: Device

LoadCells class for controlling the device.

read_acquisition_state() #

Reads the contents of the AcquisitionState register.

Returns:

Type Description
bool

Value read from the AcquisitionState register.

read_di0_trigger() #

Reads the contents of the DI0Trigger register.

Returns:

Type Description
TriggerConfig

Value read from the DI0Trigger register.

read_digital_input_state() #

Reads the contents of the DigitalInputState register.

Returns:

Type Description
DigitalInputs

Value read from the DigitalInputState register.

read_digital_output_clear() #

Reads the contents of the DigitalOutputClear register.

Returns:

Type Description
DigitalOutputs

Value read from the DigitalOutputClear register.

read_digital_output_set() #

Reads the contents of the DigitalOutputSet register.

Returns:

Type Description
DigitalOutputs

Value read from the DigitalOutputSet register.

read_digital_output_state() #

Reads the contents of the DigitalOutputState register.

Returns:

Type Description
DigitalOutputs

Value read from the DigitalOutputState register.

read_digital_output_toggle() #

Reads the contents of the DigitalOutputToggle register.

Returns:

Type Description
DigitalOutputs

Value read from the DigitalOutputToggle register.

read_do0_pulse_width() #

Reads the contents of the DO0PulseWidth register.

Returns:

Type Description
int

Value read from the DO0PulseWidth register.

read_do0_sync() #

Reads the contents of the DO0Sync register.

Returns:

Type Description
SyncConfig

Value read from the DO0Sync register.

read_do1_target_load_cell() #

Reads the contents of the DO1TargetLoadCell register.

Returns:

Type Description
LoadCellChannel

Value read from the DO1TargetLoadCell register.

read_do1_threshold() #

Reads the contents of the DO1Threshold register.

Returns:

Type Description
int

Value read from the DO1Threshold register.

read_do1_time_above_threshold() #

Reads the contents of the DO1TimeAboveThreshold register.

Returns:

Type Description
int

Value read from the DO1TimeAboveThreshold register.

read_do1_time_below_threshold() #

Reads the contents of the DO1TimeBelowThreshold register.

Returns:

Type Description
int

Value read from the DO1TimeBelowThreshold register.

read_do2_target_load_cell() #

Reads the contents of the DO2TargetLoadCell register.

Returns:

Type Description
LoadCellChannel

Value read from the DO2TargetLoadCell register.

read_do2_threshold() #

Reads the contents of the DO2Threshold register.

Returns:

Type Description
int

Value read from the DO2Threshold register.

read_do2_time_above_threshold() #

Reads the contents of the DO2TimeAboveThreshold register.

Returns:

Type Description
int

Value read from the DO2TimeAboveThreshold register.

read_do2_time_below_threshold() #

Reads the contents of the DO2TimeBelowThreshold register.

Returns:

Type Description
int

Value read from the DO2TimeBelowThreshold register.

read_do3_target_load_cell() #

Reads the contents of the DO3TargetLoadCell register.

Returns:

Type Description
LoadCellChannel

Value read from the DO3TargetLoadCell register.

read_do3_threshold() #

Reads the contents of the DO3Threshold register.

Returns:

Type Description
int

Value read from the DO3Threshold register.

read_do3_time_above_threshold() #

Reads the contents of the DO3TimeAboveThreshold register.

Returns:

Type Description
int

Value read from the DO3TimeAboveThreshold register.

read_do3_time_below_threshold() #

Reads the contents of the DO3TimeBelowThreshold register.

Returns:

Type Description
int

Value read from the DO3TimeBelowThreshold register.

read_do4_target_load_cell() #

Reads the contents of the DO4TargetLoadCell register.

Returns:

Type Description
LoadCellChannel

Value read from the DO4TargetLoadCell register.

read_do4_threshold() #

Reads the contents of the DO4Threshold register.

Returns:

Type Description
int

Value read from the DO4Threshold register.

read_do4_time_above_threshold() #

Reads the contents of the DO4TimeAboveThreshold register.

Returns:

Type Description
int

Value read from the DO4TimeAboveThreshold register.

read_do4_time_below_threshold() #

Reads the contents of the DO4TimeBelowThreshold register.

Returns:

Type Description
int

Value read from the DO4TimeBelowThreshold register.

read_do5_target_load_cell() #

Reads the contents of the DO5TargetLoadCell register.

Returns:

Type Description
LoadCellChannel

Value read from the DO5TargetLoadCell register.

read_do5_threshold() #

Reads the contents of the DO5Threshold register.

Returns:

Type Description
int

Value read from the DO5Threshold register.

read_do5_time_above_threshold() #

Reads the contents of the DO5TimeAboveThreshold register.

Returns:

Type Description
int

Value read from the DO5TimeAboveThreshold register.

read_do5_time_below_threshold() #

Reads the contents of the DO5TimeBelowThreshold register.

Returns:

Type Description
int

Value read from the DO5TimeBelowThreshold register.

read_do6_target_load_cell() #

Reads the contents of the DO6TargetLoadCell register.

Returns:

Type Description
LoadCellChannel

Value read from the DO6TargetLoadCell register.

read_do6_threshold() #

Reads the contents of the DO6Threshold register.

Returns:

Type Description
int

Value read from the DO6Threshold register.

read_do6_time_above_threshold() #

Reads the contents of the DO6TimeAboveThreshold register.

Returns:

Type Description
int

Value read from the DO6TimeAboveThreshold register.

read_do6_time_below_threshold() #

Reads the contents of the DO6TimeBelowThreshold register.

Returns:

Type Description
int

Value read from the DO6TimeBelowThreshold register.

read_do7_target_load_cell() #

Reads the contents of the DO7TargetLoadCell register.

Returns:

Type Description
LoadCellChannel

Value read from the DO7TargetLoadCell register.

read_do7_threshold() #

Reads the contents of the DO7Threshold register.

Returns:

Type Description
int

Value read from the DO7Threshold register.

read_do7_time_above_threshold() #

Reads the contents of the DO7TimeAboveThreshold register.

Returns:

Type Description
int

Value read from the DO7TimeAboveThreshold register.

read_do7_time_below_threshold() #

Reads the contents of the DO7TimeBelowThreshold register.

Returns:

Type Description
int

Value read from the DO7TimeBelowThreshold register.

read_do8_target_load_cell() #

Reads the contents of the DO8TargetLoadCell register.

Returns:

Type Description
LoadCellChannel

Value read from the DO8TargetLoadCell register.

read_do8_threshold() #

Reads the contents of the DO8Threshold register.

Returns:

Type Description
int

Value read from the DO8Threshold register.

read_do8_time_above_threshold() #

Reads the contents of the DO8TimeAboveThreshold register.

Returns:

Type Description
int

Value read from the DO8TimeAboveThreshold register.

read_do8_time_below_threshold() #

Reads the contents of the DO8TimeBelowThreshold register.

Returns:

Type Description
int

Value read from the DO8TimeBelowThreshold register.

read_enable_events() #

Reads the contents of the EnableEvents register.

Returns:

Type Description
LoadCellEvents

Value read from the EnableEvents register.

read_load_cell_data() #

Reads the contents of the LoadCellData register.

Returns:

Type Description
LoadCellDataPayload

Value read from the LoadCellData register.

read_offset_load_cell0() #

Reads the contents of the OffsetLoadCell0 register.

Returns:

Type Description
int

Value read from the OffsetLoadCell0 register.

read_offset_load_cell1() #

Reads the contents of the OffsetLoadCell1 register.

Returns:

Type Description
int

Value read from the OffsetLoadCell1 register.

read_offset_load_cell2() #

Reads the contents of the OffsetLoadCell2 register.

Returns:

Type Description
int

Value read from the OffsetLoadCell2 register.

read_offset_load_cell3() #

Reads the contents of the OffsetLoadCell3 register.

Returns:

Type Description
int

Value read from the OffsetLoadCell3 register.

read_offset_load_cell4() #

Reads the contents of the OffsetLoadCell4 register.

Returns:

Type Description
int

Value read from the OffsetLoadCell4 register.

read_offset_load_cell5() #

Reads the contents of the OffsetLoadCell5 register.

Returns:

Type Description
int

Value read from the OffsetLoadCell5 register.

read_offset_load_cell6() #

Reads the contents of the OffsetLoadCell6 register.

Returns:

Type Description
int

Value read from the OffsetLoadCell6 register.

read_offset_load_cell7() #

Reads the contents of the OffsetLoadCell7 register.

Returns:

Type Description
int

Value read from the OffsetLoadCell7 register.

read_sync_output_state() #

Reads the contents of the SyncOutputState register.

Returns:

Type Description
SyncOutputs

Value read from the SyncOutputState register.

write_acquisition_state(value) #

Writes a value to the AcquisitionState register.

Parameters:

Name Type Description Default
value bool

Value to write to the AcquisitionState register.

required
write_di0_trigger(value) #

Writes a value to the DI0Trigger register.

Parameters:

Name Type Description Default
value TriggerConfig

Value to write to the DI0Trigger register.

required
write_digital_output_clear(value) #

Writes a value to the DigitalOutputClear register.

Parameters:

Name Type Description Default
value DigitalOutputs

Value to write to the DigitalOutputClear register.

required
write_digital_output_set(value) #

Writes a value to the DigitalOutputSet register.

Parameters:

Name Type Description Default
value DigitalOutputs

Value to write to the DigitalOutputSet register.

required
write_digital_output_state(value) #

Writes a value to the DigitalOutputState register.

Parameters:

Name Type Description Default
value DigitalOutputs

Value to write to the DigitalOutputState register.

required
write_digital_output_toggle(value) #

Writes a value to the DigitalOutputToggle register.

Parameters:

Name Type Description Default
value DigitalOutputs

Value to write to the DigitalOutputToggle register.

required
write_do0_pulse_width(value) #

Writes a value to the DO0PulseWidth register.

Parameters:

Name Type Description Default
value int

Value to write to the DO0PulseWidth register.

required
write_do0_sync(value) #

Writes a value to the DO0Sync register.

Parameters:

Name Type Description Default
value SyncConfig

Value to write to the DO0Sync register.

required
write_do1_target_load_cell(value) #

Writes a value to the DO1TargetLoadCell register.

Parameters:

Name Type Description Default
value LoadCellChannel

Value to write to the DO1TargetLoadCell register.

required
write_do1_threshold(value) #

Writes a value to the DO1Threshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO1Threshold register.

required
write_do1_time_above_threshold(value) #

Writes a value to the DO1TimeAboveThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO1TimeAboveThreshold register.

required
write_do1_time_below_threshold(value) #

Writes a value to the DO1TimeBelowThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO1TimeBelowThreshold register.

required
write_do2_target_load_cell(value) #

Writes a value to the DO2TargetLoadCell register.

Parameters:

Name Type Description Default
value LoadCellChannel

Value to write to the DO2TargetLoadCell register.

required
write_do2_threshold(value) #

Writes a value to the DO2Threshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO2Threshold register.

required
write_do2_time_above_threshold(value) #

Writes a value to the DO2TimeAboveThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO2TimeAboveThreshold register.

required
write_do2_time_below_threshold(value) #

Writes a value to the DO2TimeBelowThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO2TimeBelowThreshold register.

required
write_do3_target_load_cell(value) #

Writes a value to the DO3TargetLoadCell register.

Parameters:

Name Type Description Default
value LoadCellChannel

Value to write to the DO3TargetLoadCell register.

required
write_do3_threshold(value) #

Writes a value to the DO3Threshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO3Threshold register.

required
write_do3_time_above_threshold(value) #

Writes a value to the DO3TimeAboveThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO3TimeAboveThreshold register.

required
write_do3_time_below_threshold(value) #

Writes a value to the DO3TimeBelowThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO3TimeBelowThreshold register.

required
write_do4_target_load_cell(value) #

Writes a value to the DO4TargetLoadCell register.

Parameters:

Name Type Description Default
value LoadCellChannel

Value to write to the DO4TargetLoadCell register.

required
write_do4_threshold(value) #

Writes a value to the DO4Threshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO4Threshold register.

required
write_do4_time_above_threshold(value) #

Writes a value to the DO4TimeAboveThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO4TimeAboveThreshold register.

required
write_do4_time_below_threshold(value) #

Writes a value to the DO4TimeBelowThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO4TimeBelowThreshold register.

required
write_do5_target_load_cell(value) #

Writes a value to the DO5TargetLoadCell register.

Parameters:

Name Type Description Default
value LoadCellChannel

Value to write to the DO5TargetLoadCell register.

required
write_do5_threshold(value) #

Writes a value to the DO5Threshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO5Threshold register.

required
write_do5_time_above_threshold(value) #

Writes a value to the DO5TimeAboveThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO5TimeAboveThreshold register.

required
write_do5_time_below_threshold(value) #

Writes a value to the DO5TimeBelowThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO5TimeBelowThreshold register.

required
write_do6_target_load_cell(value) #

Writes a value to the DO6TargetLoadCell register.

Parameters:

Name Type Description Default
value LoadCellChannel

Value to write to the DO6TargetLoadCell register.

required
write_do6_threshold(value) #

Writes a value to the DO6Threshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO6Threshold register.

required
write_do6_time_above_threshold(value) #

Writes a value to the DO6TimeAboveThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO6TimeAboveThreshold register.

required
write_do6_time_below_threshold(value) #

Writes a value to the DO6TimeBelowThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO6TimeBelowThreshold register.

required
write_do7_target_load_cell(value) #

Writes a value to the DO7TargetLoadCell register.

Parameters:

Name Type Description Default
value LoadCellChannel

Value to write to the DO7TargetLoadCell register.

required
write_do7_threshold(value) #

Writes a value to the DO7Threshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO7Threshold register.

required
write_do7_time_above_threshold(value) #

Writes a value to the DO7TimeAboveThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO7TimeAboveThreshold register.

required
write_do7_time_below_threshold(value) #

Writes a value to the DO7TimeBelowThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO7TimeBelowThreshold register.

required
write_do8_target_load_cell(value) #

Writes a value to the DO8TargetLoadCell register.

Parameters:

Name Type Description Default
value LoadCellChannel

Value to write to the DO8TargetLoadCell register.

required
write_do8_threshold(value) #

Writes a value to the DO8Threshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO8Threshold register.

required
write_do8_time_above_threshold(value) #

Writes a value to the DO8TimeAboveThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO8TimeAboveThreshold register.

required
write_do8_time_below_threshold(value) #

Writes a value to the DO8TimeBelowThreshold register.

Parameters:

Name Type Description Default
value int

Value to write to the DO8TimeBelowThreshold register.

required
write_enable_events(value) #

Writes a value to the EnableEvents register.

Parameters:

Name Type Description Default
value LoadCellEvents

Value to write to the EnableEvents register.

required
write_offset_load_cell0(value) #

Writes a value to the OffsetLoadCell0 register.

Parameters:

Name Type Description Default
value int

Value to write to the OffsetLoadCell0 register.

required
write_offset_load_cell1(value) #

Writes a value to the OffsetLoadCell1 register.

Parameters:

Name Type Description Default
value int

Value to write to the OffsetLoadCell1 register.

required
write_offset_load_cell2(value) #

Writes a value to the OffsetLoadCell2 register.

Parameters:

Name Type Description Default
value int

Value to write to the OffsetLoadCell2 register.

required
write_offset_load_cell3(value) #

Writes a value to the OffsetLoadCell3 register.

Parameters:

Name Type Description Default
value int

Value to write to the OffsetLoadCell3 register.

required
write_offset_load_cell4(value) #

Writes a value to the OffsetLoadCell4 register.

Parameters:

Name Type Description Default
value int

Value to write to the OffsetLoadCell4 register.

required
write_offset_load_cell5(value) #

Writes a value to the OffsetLoadCell5 register.

Parameters:

Name Type Description Default
value int

Value to write to the OffsetLoadCell5 register.

required
write_offset_load_cell6(value) #

Writes a value to the OffsetLoadCell6 register.

Parameters:

Name Type Description Default
value int

Value to write to the OffsetLoadCell6 register.

required
write_offset_load_cell7(value) #

Writes a value to the OffsetLoadCell7 register.

Parameters:

Name Type Description Default
value int

Value to write to the OffsetLoadCell7 register.

required

LoadCellsRegisters #

Bases: IntEnum

Enum for all available registers in the LoadCells device.

Attributes:

Name Type Description
ACQUISITION_STATE int

Enables the data acquisition.

LOAD_CELL_DATA int

Value of single ADC read from all load cell channels.

DIGITAL_INPUT_STATE int

Status of the digital input pin 0. An event will be emitted when DI0Trigger == None.

SYNC_OUTPUT_STATE int

Status of the digital output pin 0. An periodic event will be emitted when DO0Sync == ToggleEachSecond.

DI0_TRIGGER int

Configuration of the digital input pin 0.

DO0_SYNC int

Configuration of the digital output pin 0.

DO0_PULSE_WIDTH int

Pulse duration (ms) for the digital output pin 0. The pulse will only be emitted when DO0Sync == Pulse.

DIGITAL_OUTPUT_SET int

Set the specified digital output lines.

DIGITAL_OUTPUT_CLEAR int

Clear the specified digital output lines.

DIGITAL_OUTPUT_TOGGLE int

Toggle the specified digital output lines

DIGITAL_OUTPUT_STATE int

Write the state of all digital output lines. An event will be emitted when the value of any pin was changed by a threshold event.

OFFSET_LOAD_CELL0 int

Offset value for Load Cell channel 0.

OFFSET_LOAD_CELL1 int

Offset value for Load Cell channel 1.

OFFSET_LOAD_CELL2 int

Offset value for Load Cell channel 2.

OFFSET_LOAD_CELL3 int

Offset value for Load Cell channel 3.

OFFSET_LOAD_CELL4 int

Offset value for Load Cell channel 4.

OFFSET_LOAD_CELL5 int

Offset value for Load Cell channel 5.

OFFSET_LOAD_CELL6 int

Offset value for Load Cell channel 6.

OFFSET_LOAD_CELL7 int

Offset value for Load Cell channel 7.

DO1_TARGET_LOAD_CELL int

Target Load Cell that will be used to trigger a threshold event on DO1 pin.

DO2_TARGET_LOAD_CELL int

Target Load Cell that will be used to trigger a threshold event on DO2 pin.

DO3_TARGET_LOAD_CELL int

Target Load Cell that will be used to trigger a threshold event on DO3 pin.

DO4_TARGET_LOAD_CELL int

Target Load Cell that will be used to trigger a threshold event on DO4 pin.

DO5_TARGET_LOAD_CELL int

Target Load Cell that will be used to trigger a threshold event on DO5 pin.

DO6_TARGET_LOAD_CELL int

Target Load Cell that will be used to trigger a threshold event on DO6 pin.

DO7_TARGET_LOAD_CELL int

Target Load Cell that will be used to trigger a threshold event on DO7 pin.

DO8_TARGET_LOAD_CELL int

Target Load Cell that will be used to trigger a threshold event on DO8 pin.

DO1_THRESHOLD int

Value used to threshold a Load Cell read, and trigger DO1 pin.

DO2_THRESHOLD int

Value used to threshold a Load Cell read, and trigger DO2 pin.

DO3_THRESHOLD int

Value used to threshold a Load Cell read, and trigger DO3 pin.

DO4_THRESHOLD int

Value used to threshold a Load Cell read, and trigger DO4 pin.

DO5_THRESHOLD int

Value used to threshold a Load Cell read, and trigger DO5 pin.

DO6_THRESHOLD int

Value used to threshold a Load Cell read, and trigger DO6 pin.

DO7_THRESHOLD int

Value used to threshold a Load Cell read, and trigger DO7 pin.

DO8_THRESHOLD int

Value used to threshold a Load Cell read, and trigger DO8 pin.

DO1_TIME_ABOVE_THRESHOLD int

Time (ms) above threshold value that is required to trigger a DO1 pin event.

DO2_TIME_ABOVE_THRESHOLD int

Time (ms) above threshold value that is required to trigger a DO2 pin event.

DO3_TIME_ABOVE_THRESHOLD int

Time (ms) above threshold value that is required to trigger a DO3 pin event.

DO4_TIME_ABOVE_THRESHOLD int

Time (ms) above threshold value that is required to trigger a DO4 pin event.

DO5_TIME_ABOVE_THRESHOLD int

Time (ms) above threshold value that is required to trigger a DO5 pin event.

DO6_TIME_ABOVE_THRESHOLD int

Time (ms) above threshold value that is required to trigger a DO6 pin event.

DO7_TIME_ABOVE_THRESHOLD int

Time (ms) above threshold value that is required to trigger a DO7 pin event.

DO8_TIME_ABOVE_THRESHOLD int

Time (ms) above threshold value that is required to trigger a DO8 pin event.

DO1_TIME_BELOW_THRESHOLD int

Time (ms) below threshold value that is required to trigger a DO1 pin event.

DO2_TIME_BELOW_THRESHOLD int

Time (ms) below threshold value that is required to trigger a DO2 pin event.

DO3_TIME_BELOW_THRESHOLD int

Time (ms) below threshold value that is required to trigger a DO3 pin event.

DO4_TIME_BELOW_THRESHOLD int

Time (ms) below threshold value that is required to trigger a DO4 pin event.

DO5_TIME_BELOW_THRESHOLD int

Time (ms) below threshold value that is required to trigger a DO5 pin event.

DO6_TIME_BELOW_THRESHOLD int

Time (ms) below threshold value that is required to trigger a DO6 pin event.

DO7_TIME_BELOW_THRESHOLD int

Time (ms) below threshold value that is required to trigger a DO7 pin event.

DO8_TIME_BELOW_THRESHOLD int

Time (ms) below threshold value that is required to trigger a DO8 pin event.

ENABLE_EVENTS int

Specifies the active events in the device.

SyncConfig #

Bases: IntEnum

Available configurations when using a digital output pin to report firmware events.

Attributes:

Name Type Description
NONE int

No description currently available

HEARTBEAT int

No description currently available

PULSE int

No description currently available

SyncOutputs #

Bases: IntFlag

Specifies the state output synchronization lines.

Attributes:

Name Type Description
DO0 int

No description currently available

TriggerConfig #

Bases: IntEnum

Available configurations when using a digital input as an acquisition trigger.

Attributes:

Name Type Description
NONE int

No description currently available

RISING_EDGE int

No description currently available

FALLING_EDGE int

No description currently available