Input

How inputs are handled in the NUbots codebase.
Ysobel Sims GitHub avatarLiam Craft GitHub avatar
Updated 1 Oct 2023

Input to the system includes cameras, Game Controller and NatNet.

Cameras

The cameras used on the NUgus robot are Flir Blackfly S USB3's.

The Spinnaker SDK is FLIR's Genicam API library which includes a GUI program called SpinView, used to operate the cameras from a PC, as well as extensive documentation.

The cameras have the following parameters that are used by the object detection algorithm.

ParameterTypeDescription
serial_numberstringThe serial number of the camera. This is used to identify the camera and distinguish it from other cameras in the robot.
lens.projectionstringThe lens projection type. Can be rectilinear, equidistant or equisold.
lens.focal_lengthfloatThe normalised focal length. It is defined as focal length in pixels divided by image width. The focal length is the angle of view and magnification.
lens.center2-dimensional vectorThe normalised image centre offset. Represents the pixels from the centre of the image to the optical axis, divided by the image width
k2-dimensional vectorThe polynomial distortion coefficients for the length
fovfloat (radians)Field of view. The angular diameter that the lens covers (the area that light hits on the sensor).
Hpc4x4 matrixHomogeneous transform from the rigid platform this camera is attached to (pitch servo) to the camera's virtual focal point.

The following settings are applied to the cameras on startup. (Note: These are the camera settings we currently use, but there are many more. See the full list at the bottom of this page.)

ParameterTypeDescription
PixelFormatEnumerationFormat of the pixel provided by the camera
WidthIntegerWidth of the source image
HeightIntegerHeight of the source image
OffsetXIntegerHorizontal offset from the origin to the ROI (in pixels)
OffsetYIntegerVertical offset from the origin to the ROI (in pixels)
ExposureAutoEnumerationSets the automatic exposure mode
GainAutoEnumerationSets the automatic gain mode. In automatic modes, the camera adjusts the gain to maximize the dynamic range.
BalanceWhiteAutoEnumerationCompensates for colour shifts caused by different lighting conditions.
AcquisitionFrameRateEnableBooleanAllows manual control of the frame rate
AcquisitionFrameRateFloatUser controlled acquisition frame rate in hertz

These parameters are set for each camera as configuration values in the Camera module. Configuration files stored in the config/Cameras directory are common to all robots, and configs that are specific to a particular robot are located in that robot's respective directory. The values for the left camera on the robot will be stored in Left.yaml. The values for the right camera on the robot will be stored in Right.yaml.

The parameters are used in the Camera module to find and set up the cameras. The Camera module emits Image messages.

The projection tool, based on panotools' fisheye projection calculations, maps a portion of the surface of a sphere to a flat image. The type of projection is specified by the above parameter lens.projection.

Click here to see a full list of camera settings

This file is a print out directly from the cameras using the arv-tool-0.8 command line utility. This list was produced by running the command arv-tool-0.8 features with a camera connected to the computer via USB. Run arv-tool-0.8 -h for more command information.

Point Grey Research-1E100115138C-0115138C (USB3)
Category : 'Root'
Category : 'AcquisitionControl'
Enumeration : [RW] 'AcquisitionMode'
EnumEntry : 'MultiFrame'
EnumEntry : 'SingleFrame'
EnumEntry : 'Continuous'
Command : [WO] 'AcquisitionStart'
Command : [WO] 'AcquisitionStop'
Integer : [RW] 'AcquisitionFrameCount'
Integer : [RW] 'AcquisitionBurstFrameCount'
Enumeration : [RW] 'ExposureMode'
EnumEntry : 'TriggerWidth'
EnumEntry : 'Timed'
Float : [RW] 'ExposureTime'
Enumeration : [RW] 'ExposureAuto'
EnumEntry : 'Continuous'
EnumEntry : 'Once'
EnumEntry : 'Off'
Float : [RW] 'AcquisitionFrameRate'
Float : [RO] 'AcquisitionResultingFrameRate'
Boolean : [RW] 'AcquisitionFrameRateEnable'
Float : [RW] 'AcquisitionLineRate'
Enumeration : [RW] 'TriggerSelector'
* TriggerMode
* TriggerSoftware
* TriggerSource
* TriggerActivation
* TriggerOverlap
* TriggerDelay
EnumEntry : 'FrameBurstStart'
EnumEntry : 'FrameStart'
EnumEntry : 'AcquisitionStart'
Enumeration : [RW] 'TriggerMode'
EnumEntry : 'On'
EnumEntry : 'Off'
Command : [WO] 'TriggerSoftware'
Enumeration : [RW] 'TriggerSource'
EnumEntry : 'LogicBlock1'
EnumEntry : 'LogicBlock0'
EnumEntry : 'Counter1End'
EnumEntry : 'Counter0End'
EnumEntry : 'Counter1Start'
EnumEntry : 'Counter0Start'
EnumEntry : 'UserOutput3'
EnumEntry : 'UserOutput2'
EnumEntry : 'UserOutput1'
EnumEntry : 'UserOutput0'
EnumEntry : 'Line3'
EnumEntry : 'Line2'
EnumEntry : 'Line0'
EnumEntry : 'Software'
Enumeration : 'TriggerActivation' (Not available)
EnumEntry : 'AnyEdge'
EnumEntry : 'RisingEdge'
EnumEntry : 'FallingEdge'
EnumEntry : 'LevelHigh'
EnumEntry : 'LevelLow'
Enumeration : [RW] 'TriggerOverlap'
EnumEntry : 'ReadOut'
EnumEntry : 'Off'
Float : [RW] 'TriggerDelay'
Enumeration : [RW] 'SensorShutterMode'
EnumEntry : 'Global'
Category : 'AnalogControl'
Enumeration : [RW] 'GainSelector'
* GainRaw
* Gain
EnumEntry : 'All'
Float : [RW] 'Gain'
Enumeration : [RW] 'GainAuto'
EnumEntry : 'Continuous'
EnumEntry : 'Once'
EnumEntry : 'Off'
Enumeration : [RW] 'BlackLevelSelector'
* BlackLevelRaw
* BlackLevel
EnumEntry : 'Digital'
EnumEntry : 'Analog'
EnumEntry : 'All'
Float : [RW] 'BlackLevel'
Enumeration : [RW] 'BalanceRatioSelector'
* BalanceRatio
EnumEntry : 'Blue'
EnumEntry : 'Red'
Float : [RW] 'BalanceRatio'
Enumeration : [RW] 'BalanceWhiteAuto'
EnumEntry : 'Continuous'
EnumEntry : 'Once'
EnumEntry : 'Off'
Float : [RW] 'Gamma'
Boolean : [RW] 'GammaEnable'
Boolean : 'SharpeningEnable' (Not available)
Boolean : 'SharpeningAuto' (Not available)
Float : 'Sharpening' (Not available)
Float : 'SharpeningThreshold' (Not available)
Category : 'ImageFormatControl'
Integer : [RO] 'SensorWidth'
Integer : [RO] 'SensorHeight'
Integer : [RO] 'WidthMax'
Integer : [RO] 'HeightMax'
Integer : [RW] 'Width'
Integer : [RW] 'Height'
Integer : [RW] 'OffsetX'
Integer : [RW] 'OffsetY'
Enumeration : [RW] 'PixelFormat'
EnumEntry : 'BGRa8'
EnumEntry : 'BGR8'
EnumEntry : 'YCbCr411_8'
EnumEntry : 'YCbCr422_8'
EnumEntry : 'YCbCr8'
EnumEntry : 'BayerBG12p' (Not available)
EnumEntry : 'BayerGB12p' (Not available)
EnumEntry : 'BayerRG12p'
EnumEntry : 'BayerGR12p' (Not available)
EnumEntry : 'Mono12p'
EnumEntry : 'YUV444Packed'
EnumEntry : 'YUV422Packed'
EnumEntry : 'YUV411Packed'
EnumEntry : 'BayerBG12Packed' (Not available)
EnumEntry : 'BayerGB12Packed' (Not available)
EnumEntry : 'BayerRG12Packed'
EnumEntry : 'BayerGR12Packed' (Not available)
EnumEntry : 'Mono12Packed'
EnumEntry : 'BayerBG16' (Not available)
EnumEntry : 'BayerGB16' (Not available)
EnumEntry : 'BayerRG16'
EnumEntry : 'BayerGR16' (Not available)
EnumEntry : 'BayerBG8' (Not available)
EnumEntry : 'BayerGB8' (Not available)
EnumEntry : 'BayerRG8'
EnumEntry : 'BayerGR8' (Not available)
EnumEntry : 'RGB8Packed'
EnumEntry : 'Mono16'
EnumEntry : 'Mono8'
Enumeration : [RO] 'PixelSize'
EnumEntry : 'Bpp96'
EnumEntry : 'Bpp64'
EnumEntry : 'Bpp48'
EnumEntry : 'Bpp36'
EnumEntry : 'Bpp32'
EnumEntry : 'Bpp30'
EnumEntry : 'Bpp24'
EnumEntry : 'Bpp20'
EnumEntry : 'Bpp16'
EnumEntry : 'Bpp14'
EnumEntry : 'Bpp12'
EnumEntry : 'Bpp10'
EnumEntry : 'Bpp8'
EnumEntry : 'Bpp4'
EnumEntry : 'Bpp2'
EnumEntry : 'Bpp1'
Enumeration : [RO] 'PixelColorFilter'
EnumEntry : 'BayerBG'
EnumEntry : 'BayerGR'
EnumEntry : 'BayerGB'
EnumEntry : 'BayerRG'
EnumEntry : 'None'
Integer : [RO] 'PixelDynamicRangeMin'
Integer : [RO] 'PixelDynamicRangeMax'
Boolean : [RW] 'IspEnable'
Enumeration : [RW] 'BinningSelector'
* BinningHorizontalMode
* BinningVerticalMode
* BinningHorizontal
* BinningVertical
EnumEntry : 'ISP'
EnumEntry : 'Sensor'
EnumEntry : 'All'
Enumeration : [RW] 'BinningHorizontalMode'
EnumEntry : 'Average'
EnumEntry : 'Sum'
Enumeration : [RW] 'BinningVerticalMode'
EnumEntry : 'Average'
EnumEntry : 'Sum'
Integer : [RW] 'BinningHorizontal'
Integer : [RW] 'BinningVertical'
Enumeration : [RW] 'DecimationSelector'
* DecimationHorizontalMode
* DecimationVerticalMode
* DecimationHorizontal
* DecimationVertical
EnumEntry : 'Sensor'
EnumEntry : 'All'
Enumeration : [RW] 'DecimationHorizontalMode'
EnumEntry : 'Discard'
Enumeration : [RW] 'DecimationVerticalMode'
EnumEntry : 'Discard'
Integer : [RW] 'DecimationHorizontal'
Integer : [RW] 'DecimationVertical'
Boolean : [RW] 'ReverseX'
Boolean : [RW] 'ReverseY'
Enumeration : [RW] 'TestPatternGeneratorSelector'
* TestPattern
EnumEntry : 'PipelineStart'
EnumEntry : 'Sensor'
Enumeration : [RW] 'TestPattern'
EnumEntry : 'SensorTestPattern'
EnumEntry : 'Increment' (Not available)
EnumEntry : 'Off'
Enumeration : [RW] 'AdcBitDepth'
EnumEntry : 'Bit10'
Category : 'DeviceControl'
Enumeration : [RO] 'DeviceScanType'
EnumEntry : 'Areascan'
StringReg : [RO] 'DeviceVendorName'
StringReg : [RO] 'DeviceModelName'
StringReg : [RO] 'SensorDescription'
StringReg : [RO] 'DeviceManufacturerInfo'
StringReg : [RO] 'DeviceVersion'
StringReg : [RO] 'DeviceFirmwareVersion'
StringReg : [RO] 'DeviceSerialNumber'
StringReg : [RO] 'DeviceID'
StringReg : [RW] 'DeviceUserID'
Enumeration : [RO] 'DeviceTLType'
EnumEntry : 'Custom'
EnumEntry : 'USB3Vision'
EnumEntry : 'CoaXPress'
EnumEntry : 'CameraLinkHS'
EnumEntry : 'CameraLink'
EnumEntry : 'GigEVision'
Integer : [RO] 'DeviceGenCPVersionMajor'
Integer : [RO] 'DeviceGenCPVersionMinor'
Integer : [RO] 'DeviceMaxThroughput'
Integer : [RO] 'DeviceLinkSpeed'
Integer : [RW] 'DeviceLinkThroughputLimit'
Float : [RW] 'DeviceLinkBandwidthReserve'
Integer : [RO] 'DeviceLinkCurrentThroughput'
Command : [WO] 'DeviceReset'
Enumeration : [RW] 'DeviceIndicatorMode'
EnumEntry : 'ErrorStatus'
EnumEntry : 'Active'
EnumEntry : 'Inactive'
Float : [RO] 'DeviceTemperature'
Integer : [RO] 'Timestamp'
Command : [WO] 'TimestampLatch'
Integer : [RO] 'TimestampIncrement'
Enumeration : [RW] 'DevicePowerSupplySelector'
* PowerSupplyVoltage
* PowerSupplyCurrent
EnumEntry : 'External'
Float : [RO] 'PowerSupplyVoltage'
Float : [RO] 'PowerSupplyCurrent'
Integer : [RO] 'DeviceUptime'
Integer : [RO] 'LinkUptime'
Integer : [RO] 'EnumerationCount'
Command : [WO] 'FactoryReset'
Integer : [RO] 'MaxDeviceResetTime'
Category : 'TransportLayerControl'
Integer : [RO] 'PayloadSize'
Integer : [RW] 'TLParamsLocked'
Category : 'USB3Vision'
Integer : [RO] 'U3VMaxDeviceResponseTime'
Integer : [RW] 'U3VMessageChannelID'
Integer : [RW] 'U3VAccessPrivilege'
Integer : [RO] 'U3VVersionMajor'
Integer : [RO] 'U3VVersionMinor'
Integer : [RO] 'U3VCPCapability'
* U3VCPSIRMAvailable
* U3VCPEIRMAvailable
* U3VCPIIDC2Available
Boolean : [RO] 'U3VCPSIRMAvailable'
Boolean : [RO] 'U3VCPEIRMAvailable'
Boolean : [RO] 'U3VCPIIDC2Available'
Integer : [RO] 'U3VMaxCommandTransferLength'
Integer : [RO] 'U3VMaxAcknowledgeTransferLength'
Integer : [RO] 'U3VNumberOfStreamChannels'
Enumeration : [RO] 'U3VCurrentSpeed'
EnumEntry : 'SuperSpeed'
EnumEntry : 'HighSpeed'
EnumEntry : 'FullSpeed'
EnumEntry : 'LowSpeed'
Integer : [RO] 'LinkErrorCount'
Integer : [RO] 'LinkRecoveryCount'
Category : 'SequencerControl'
Enumeration : [RW] 'SequencerMode'
EnumEntry : 'On'
EnumEntry : 'Off'
Enumeration : [RW] 'SequencerConfigurationMode'
EnumEntry : 'On'
EnumEntry : 'Off'
Enumeration : [RO] 'SequencerConfigurationValid'
EnumEntry : 'Yes'
EnumEntry : 'No'
Enumeration : [RW] 'SequencerFeatureSelector'
* SequencerFeatureEnable
EnumEntry : 'Height'
EnumEntry : 'Width'
EnumEntry : 'OffsetY'
EnumEntry : 'OffsetX'
EnumEntry : 'Gain'
EnumEntry : 'ExposureTime'
Boolean : [RW] 'SequencerFeatureEnable'
Integer : [RW] 'SequencerSetStart'
Integer : 'SequencerSetActive' (Not available)
Integer : [RW] 'SequencerSetSelector'
* SequencerSetValid
* SequencerSetSave
* SequencerSetLoad
* SequencerPathSelector
* SequencerTriggerSource
* SequencerTriggerActivation
* SequencerSetNext
Enumeration : [RO] 'SequencerSetValid'
EnumEntry : 'Yes'
EnumEntry : 'No'
Command : [RW] 'SequencerSetSave'
Command : [RW] 'SequencerSetLoad'
Integer : [RW] 'SequencerPathSelector'
* SequencerTriggerSource
* SequencerTriggerActivation
* SequencerSetNext
Enumeration : [RW] 'SequencerTriggerSource'
EnumEntry : 'FrameStart'
EnumEntry : 'Off'
Enumeration : 'SequencerTriggerActivation' (Not available)
EnumEntry : 'LevelLow' (Not available)
EnumEntry : 'LevelHigh' (Not available)
EnumEntry : 'AnyEdge' (Not available)
EnumEntry : 'FallingEdge' (Not available)
EnumEntry : 'RisingEdge' (Not available)
Integer : 'SequencerSetNext' (Not available)
Category : 'ColorTransformationControl'
Enumeration : 'ColorTransformationSelector' (Not available)
EnumEntry : 'RGBtoYUV' (Not available)
EnumEntry : 'RGBtoRGB' (Not available)
Boolean : 'ColorTransformationEnable' (Not available)
Enumeration : 'ColorTransformationValueSelector' (Not available)
EnumEntry : 'Offset2' (Not available)
EnumEntry : 'Offset1' (Not available)
EnumEntry : 'Offset0' (Not available)
EnumEntry : 'Gain22'
EnumEntry : 'Gain21'
EnumEntry : 'Gain20'
EnumEntry : 'Gain12'
EnumEntry : 'Gain11'
EnumEntry : 'Gain10'
EnumEntry : 'Gain02'
EnumEntry : 'Gain01'
EnumEntry : 'Gain00'
Float : 'ColorTransformationValue' (Not available)
Enumeration : [RW] 'RgbTransformLightSource'
EnumEntry : 'Custom'
EnumEntry : 'Shade8000K'
EnumEntry : 'Cloudy6500K'
EnumEntry : 'Daylight5000K'
EnumEntry : 'CoolFluorescent4000K'
EnumEntry : 'WarmFluorescent3000K'
EnumEntry : 'Tungsten2800K'
EnumEntry : 'General'
Boolean : 'SaturationEnable' (Not available)
Float : 'Saturation' (Not available)
Category : 'AutoAlgorithmControl'
Enumeration : [RW] 'AutoAlgorithmSelector'
* AasRoiEnable
* AasRoiOffsetX
* AasRoiOffsetY
* AasRoiWidth
* AasRoiHeight
EnumEntry : 'Ae'
EnumEntry : 'Awb'
Boolean : [RW] 'AasRoiEnable'
Integer : 'AasRoiOffsetX' (Not available)
Integer : 'AasRoiOffsetY' (Not available)
Integer : 'AasRoiWidth' (Not available)
Integer : 'AasRoiHeight' (Not available)
Enumeration : [RW] 'BalanceWhiteAutoProfile'
EnumEntry : 'Outdoor'
EnumEntry : 'Indoor'
Float : [RW] 'BalanceWhiteAutoLowerLimit'
Float : [RW] 'BalanceWhiteAutoUpperLimit'
Float : [RW] 'BalanceWhiteAutoDamping'
Enumeration : [RW] 'AutoExposureTargetGreyValueAuto'
EnumEntry : 'Continuous'
EnumEntry : 'Off'
Float : 'AutoExposureTargetGreyValue' (Not available)
Enumeration : [RW] 'AutoExposureLightingMode'
EnumEntry : 'Normal'
EnumEntry : 'Frontlight'
EnumEntry : 'Backlight'
Enumeration : [RW] 'AutoExposureMeteringMode'
EnumEntry : 'Partial'
EnumEntry : 'Spot'
EnumEntry : 'Average'
Float : [RW] 'AutoExposureExposureTimeLowerLimit'
Float : [RW] 'AutoExposureExposureTimeUpperLimit'
Float : [RW] 'AutoExposureGainLowerLimit'
Float : [RW] 'AutoExposureGainUpperLimit'
Float : [RW] 'AutoExposureGreyValueLowerLimit'
Float : [RW] 'AutoExposureGreyValueUpperLimit'
Float : [RW] 'AutoExposureEVCompensation'
Float : [RW] 'AutoExposureControlLoopDamping'
Enumeration : [RW] 'AutoExposureControlPriority'
EnumEntry : 'ExposureTime'
EnumEntry : 'Gain'
Category : 'FlatFieldCorrectionControl'
Boolean : [RW] 'FfcEnable'
Enumeration : [RW] 'FfcMode'
EnumEntry : 'Calibration'
EnumEntry : 'User'
EnumEntry : 'Factory'
Category : 'FfcUserTableControl'
Integer : 'FfcUserTableXCoordinate' (Not available)
Float : 'FfcUserGain' (Not available)
Integer : 'FfcUserOffset' (Not available)
Command : 'FfcUserTableReset' (Not available)
Command : 'FfcUserTableSave' (Not available)
Register : 'FfcUserGainAll' (Not available)
Register : 'FfcUserOffsetAll' (Not available)
Category : 'DefectivePixelCorrection'
Boolean : [RW] 'DefectCorrectStaticEnable'
Enumeration : [RW] 'DefectCorrectionMode'
EnumEntry : 'Highlight'
EnumEntry : 'Average'
Integer : [RW] 'DefectTablePixelCount'
Integer : [RW] 'DefectTableIndex'
* DefectTableCoordinateX
* DefectTableCoordinateY
Integer : [RW] 'DefectTableCoordinateX'
Integer : [RW] 'DefectTableCoordinateY'
Command : [RW] 'DefectTableApply'
Command : [WO] 'DefectTableSave'
Command : [RW] 'DefectTableFactoryRestore'
Category : 'UserSetControl'
Enumeration : [RW] 'UserSetSelector'
* UserSetLoad
* UserSetSave
EnumEntry : 'UserSet1'
EnumEntry : 'UserSet0'
EnumEntry : 'Default'
Command : [RW] 'UserSetLoad'
Command : [RW] 'UserSetSave'
Enumeration : [RW] 'UserSetDefault'
EnumEntry : 'UserSet1'
EnumEntry : 'UserSet0'
EnumEntry : 'Default'
Enumeration : [RW] 'UserSetFeatureSelector'
EnumEntry : 'Width'
EnumEntry : 'V3_3EnableLine3'
EnumEntry : 'V3_3EnableLine2'
EnumEntry : 'V3_3EnableLine1'
EnumEntry : 'V3_3EnableLine0'
EnumEntry : 'UserOutputValueAll'
EnumEntry : 'TriggerSourceFrameStart'
EnumEntry : 'TriggerSourceFrameBurstStart'
EnumEntry : 'TriggerSourceAcquisitionStart'
EnumEntry : 'TriggerOverlapFrameStart'
EnumEntry : 'TriggerOverlapFrameBurstStart'
EnumEntry : 'TriggerOverlapAcquisitionStart'
EnumEntry : 'TriggerModeFrameStart'
EnumEntry : 'TriggerModeFrameBurstStart'
EnumEntry : 'TriggerModeAcquisitionStart'
EnumEntry : 'TriggerDelayFrameStart'
EnumEntry : 'TriggerDelayFrameBurstStart'
EnumEntry : 'TriggerDelayAcquisitionStart'
EnumEntry : 'TriggerActivationFrameStart'
EnumEntry : 'TriggerActivationFrameBurstStart'
EnumEntry : 'TriggerActivationAcquisitionStart'
EnumEntry : 'TransferOperationMode'
EnumEntry : 'TransferControlMode'
EnumEntry : 'TransferBlockCount'
EnumEntry : 'TestPatternSensor'
EnumEntry : 'TestPatternPipelineStart'
EnumEntry : 'SharpeningThreshold'
EnumEntry : 'SharpeningEnable'
EnumEntry : 'SharpeningAuto'
EnumEntry : 'Sharpening'
EnumEntry : 'SensorShutterMode'
EnumEntry : 'SaturationEnable'
EnumEntry : 'Saturation'
EnumEntry : 'RgbTransformLightSource'
EnumEntry : 'ReverseY'
EnumEntry : 'ReverseX'
EnumEntry : 'PixelFormat'
EnumEntry : 'OffsetY'
EnumEntry : 'OffsetX'
EnumEntry : 'LogicBlockLUTOutputValueAllLogicBlock1Value'
EnumEntry : 'LogicBlockLUTOutputValueAllLogicBlock1Enable'
EnumEntry : 'LogicBlockLUTOutputValueAllLogicBlock0Value'
EnumEntry : 'LogicBlockLUTOutputValueAllLogicBlock0Enable'
EnumEntry : 'LogicBlockLUTInputSourceLogicBlock1Input3'
EnumEntry : 'LogicBlockLUTInputSourceLogicBlock1Input2'
EnumEntry : 'LogicBlockLUTInputSourceLogicBlock1Input1'
EnumEntry : 'LogicBlockLUTInputSourceLogicBlock1Input0'
EnumEntry : 'LogicBlockLUTInputSourceLogicBlock0Input3'
EnumEntry : 'LogicBlockLUTInputSourceLogicBlock0Input2'
EnumEntry : 'LogicBlockLUTInputSourceLogicBlock0Input1'
EnumEntry : 'LogicBlockLUTInputSourceLogicBlock0Input0'
EnumEntry : 'LogicBlockLUTInputActivationLogicBlock1Input3'
EnumEntry : 'LogicBlockLUTInputActivationLogicBlock1Input2'
EnumEntry : 'LogicBlockLUTInputActivationLogicBlock1Input1'
EnumEntry : 'LogicBlockLUTInputActivationLogicBlock1Input0'
EnumEntry : 'LogicBlockLUTInputActivationLogicBlock0Input3'
EnumEntry : 'LogicBlockLUTInputActivationLogicBlock0Input2'
EnumEntry : 'LogicBlockLUTInputActivationLogicBlock0Input1'
EnumEntry : 'LogicBlockLUTInputActivationLogicBlock0Input0'
EnumEntry : 'LineSourceLine3'
EnumEntry : 'LineSourceLine2'
EnumEntry : 'LineSourceLine1'
EnumEntry : 'LineSourceLine0'
EnumEntry : 'LineModeLine3'
EnumEntry : 'LineModeLine2'
EnumEntry : 'LineModeLine1'
EnumEntry : 'LineModeLine0'
EnumEntry : 'LineInverterLine3'
EnumEntry : 'LineInverterLine2'
EnumEntry : 'LineInverterLine1'
EnumEntry : 'LineInverterLine0'
EnumEntry : 'LineFilterWidthLine3Deglitch'
EnumEntry : 'LineFilterWidthLine3Debounce'
EnumEntry : 'LineFilterWidthLine2Deglitch'
EnumEntry : 'LineFilterWidthLine2Debounce'
EnumEntry : 'LineFilterWidthLine1Deglitch'
EnumEntry : 'LineFilterWidthLine1Debounce'
EnumEntry : 'LineFilterWidthLine0Deglitch'
EnumEntry : 'LineFilterWidthLine0Debounce'
EnumEntry : 'LUTEnable'
EnumEntry : 'IspEnable'
EnumEntry : 'Height'
EnumEntry : 'GammaEnable'
EnumEntry : 'Gamma'
EnumEntry : 'GainAuto'
EnumEntry : 'GainAll'
EnumEntry : 'FfcMode'
EnumEntry : 'FfcEnable'
EnumEntry : 'ExposureTime'
EnumEntry : 'ExposureMode'
EnumEntry : 'ExposureAuto'
EnumEntry : 'ExposureActiveMode'
EnumEntry : 'EventNotificationExposureEnd'
EnumEntry : 'EventNotificationError'
EnumEntry : 'EvCompensationRaw'
EnumEntry : 'DeviceLinkThroughputLimit'
EnumEntry : 'DeviceLinkBandwidthReserve'
EnumEntry : 'DeviceIndicatorMode'
EnumEntry : 'DefectCorrectionMode'
EnumEntry : 'DefectCorrectStaticEnable'
EnumEntry : 'DecimationVerticalAll'
EnumEntry : 'DecimationHorizontalAll'
EnumEntry : 'CounterTriggerSourceCounter1'
EnumEntry : 'CounterTriggerSourceCounter0'
EnumEntry : 'CounterTriggerActivationCounter1'
EnumEntry : 'CounterTriggerActivationCounter0'
EnumEntry : 'CounterResetSourceCounter1'
EnumEntry : 'CounterResetSourceCounter0'
EnumEntry : 'CounterResetActivationCounter1'
EnumEntry : 'CounterResetActivationCounter0'
EnumEntry : 'CounterEventSourceCounter1'
EnumEntry : 'CounterEventSourceCounter0'
EnumEntry : 'CounterEventActivationCounter1'
EnumEntry : 'CounterEventActivationCounter0'
EnumEntry : 'CounterDurationCounter1'
EnumEntry : 'CounterDurationCounter0'
EnumEntry : 'CounterDelayCounter1'
EnumEntry : 'CounterDelayCounter0'
EnumEntry : 'ColorTransformationEnable'
EnumEntry : 'ChunkModeActive'
EnumEntry : 'ChunkEnableAll'
EnumEntry : 'BlackLevelAll'
EnumEntry : 'BinningVerticalMode'
EnumEntry : 'BinningVerticalAll'
EnumEntry : 'BinningHorizontalMode'
EnumEntry : 'BinningHorizontalAll'
EnumEntry : 'BalanceWhiteAutoUpperLimit'
EnumEntry : 'BalanceWhiteAutoProfile'
EnumEntry : 'BalanceWhiteAutoLowerLimit'
EnumEntry : 'BalanceWhiteAutoDamping'
EnumEntry : 'BalanceWhiteAuto'
EnumEntry : 'BalanceRatioRed'
EnumEntry : 'BalanceRatioBlue'
EnumEntry : 'AutoExposureTargetGreyValueAuto'
EnumEntry : 'AutoExposureTargetGreyValue'
EnumEntry : 'AutoExposureMeteringMode'
EnumEntry : 'AutoExposureLightingMode'
EnumEntry : 'AutoExposureGreyValueUpperLimit'
EnumEntry : 'AutoExposureGreyValueLowerLimit'
EnumEntry : 'AutoExposureGainUpperLimit'
EnumEntry : 'AutoExposureGainLowerLimit'
EnumEntry : 'AutoExposureExposureTimeUpperLimit'
EnumEntry : 'AutoExposureExposureTimeLowerLimit'
EnumEntry : 'AutoExposureEVCompensation'
EnumEntry : 'AutoExposureControlPriority'
EnumEntry : 'AutoExposureControlLoopDamping'
EnumEntry : 'AdcBitDepth'
EnumEntry : 'AcquisitionMode'
EnumEntry : 'AcquisitionLineRate'
EnumEntry : 'AcquisitionFrameRateEnable'
EnumEntry : 'AcquisitionFrameRate'
EnumEntry : 'AcquisitionFrameCount'
EnumEntry : 'AcquisitionBurstFrameCount'
EnumEntry : 'AasRoiWidthAwb'
EnumEntry : 'AasRoiWidthAe'
EnumEntry : 'AasRoiOffsetYAwb'
EnumEntry : 'AasRoiOffsetYAe'
EnumEntry : 'AasRoiOffsetXAwb'
EnumEntry : 'AasRoiOffsetXAe'
EnumEntry : 'AasRoiHeightAwb'
EnumEntry : 'AasRoiHeightAe'
EnumEntry : 'AasRoiEnableAwb'
EnumEntry : 'AasRoiEnableAe'
Boolean : [RO] 'UserSetFeatureEnable'
Category : 'ChunkDataControl'
Boolean : [RW] 'ChunkModeActive'
Enumeration : [RW] 'ChunkSelector'
* ChunkEnable
EnumEntry : 'SequencerSetActive'
EnumEntry : 'Timestamp'
EnumEntry : 'PixelFormat'
EnumEntry : 'BlackLevel'
EnumEntry : 'Gain'
EnumEntry : 'ExposureTime'
EnumEntry : 'Height'
EnumEntry : 'Width'
EnumEntry : 'OffsetY'
EnumEntry : 'OffsetX'
EnumEntry : 'FrameID'
EnumEntry : 'CRC'
EnumEntry : 'Image'
Boolean : [RW] 'ChunkEnable'
Integer : [RO] 'ChunkImage'
Integer : [RO] 'ChunkCRC'
Integer : [RO] 'ChunkFrameID'
Integer : [RO] 'ChunkOffsetX'
Integer : [RO] 'ChunkOffsetY'
Integer : [RO] 'ChunkWidth'
Integer : [RO] 'ChunkHeight'
Enumeration : [RO] 'ChunkPixelFormat'
EnumEntry : 'YCbCr601_422_8_CbYCrY'
EnumEntry : 'BayerBG8'
EnumEntry : 'BayerGB8'
EnumEntry : 'BayerRG8'
EnumEntry : 'BayerGR8'
EnumEntry : 'YUV422Packed'
EnumEntry : 'RGB8Packed'
EnumEntry : 'Mono16'
EnumEntry : 'Mono12Packed'
EnumEntry : 'Mono8'
Float : [RO] 'ChunkExposureTime'
Enumeration : [RW] 'ChunkGainSelector'
* ChunkGain
EnumEntry : 'Blue'
EnumEntry : 'Green'
EnumEntry : 'Red'
EnumEntry : 'All'
Float : [RO] 'ChunkGain'
Enumeration : [RW] 'ChunkBlackLevelSelector'
* ChunkBlackLevel
EnumEntry : 'All'
Float : [RO] 'ChunkBlackLevel'
Integer : [RO] 'ChunkTimestamp'
Integer : [RO] 'ChunkSequencerSetActive'
Category : 'LUTControl'
Enumeration : [RW] 'LUTSelector'
* LUTEnable
* LUTIndex
* LUTValue
* LUTValueAll
EnumEntry : 'LUT1'
Boolean : [RW] 'LUTEnable'
Integer : [RW] 'LUTIndex'
* LUTValue
Integer : [RW] 'LUTValue'
Register : [RW] 'LUTValueAll'
Category : 'EventControl'
Enumeration : [RW] 'EventSelector'
* EventNotification
EnumEntry : 'ExposureEnd'
EnumEntry : 'Error'
Enumeration : [RW] 'EventNotification'
EnumEntry : 'Off'
EnumEntry : 'On'
Category : 'EventExposureEndData'
Integer : [RO] 'EventExposureEnd'
Integer : [RO] 'EventExposureEndTimestamp'
Integer : [RO] 'EventExposureEndFrameID'
Category : 'EventErrorData'
Integer : [RO] 'EventError'
Integer : [RO] 'EventErrorTimestamp'
Integer : [RO] 'EventErrorFrameID'
Integer : [RO] 'EventErrorCode'
Category : 'EventTestData'
Integer : [RO] 'EventTest'
Integer : [RO] 'EventTestTimestamp'
Category : 'CounterAndTimerControl'
Enumeration : [RW] 'CounterSelector'
* CounterEventSource
* CounterEventActivation
* CounterDuration
* CounterDelay
* CounterValue
* CounterTriggerSource
* CounterTriggerActivation
* CounterResetSource
* CounterResetActivation
* CounterValueAtReset
* CounterStatus
EnumEntry : 'Counter1'
EnumEntry : 'Counter0'
Enumeration : [RW] 'CounterEventSource'
EnumEntry : 'FrameTriggerWait'
EnumEntry : 'ExposureEnd'
EnumEntry : 'ExposureStart'
EnumEntry : 'LogicBlock1'
EnumEntry : 'LogicBlock0'
EnumEntry : 'Counter1End'
EnumEntry : 'Counter0End'
EnumEntry : 'Counter1Start'
EnumEntry : 'Counter0Start'
EnumEntry : 'UserOutput3'
EnumEntry : 'UserOutput2'
EnumEntry : 'UserOutput1'
EnumEntry : 'UserOutput0'
EnumEntry : 'Line3'
EnumEntry : 'Line2'
EnumEntry : 'Line0'
EnumEntry : 'MHzTick'
EnumEntry : 'Off'
Enumeration : 'CounterEventActivation' (Not available)
EnumEntry : 'AnyEdge'
EnumEntry : 'RisingEdge'
EnumEntry : 'FallingEdge'
EnumEntry : 'LevelHigh'
EnumEntry : 'LevelLow'
Integer : [RW] 'CounterDuration'
Integer : [RO] 'CounterValue'
Integer : 'CounterValueAtReset' (Not available)
Enumeration : [RW] 'CounterTriggerSource'
EnumEntry : 'FrameTriggerWait'
EnumEntry : 'ExposureEnd'
EnumEntry : 'ExposureStart'
EnumEntry : 'LogicBlock1'
EnumEntry : 'LogicBlock0'
EnumEntry : 'Counter1End'
EnumEntry : 'Counter0End'
EnumEntry : 'Counter1Start'
EnumEntry : 'Counter0Start'
EnumEntry : 'UserOutput3'
EnumEntry : 'UserOutput2'
EnumEntry : 'UserOutput1'
EnumEntry : 'UserOutput0'
EnumEntry : 'Line3'
EnumEntry : 'Line2'
EnumEntry : 'Line0'
EnumEntry : 'Off'
Enumeration : [RW] 'CounterTriggerActivation'
EnumEntry : 'AnyEdge'
EnumEntry : 'RisingEdge'
EnumEntry : 'FallingEdge'
EnumEntry : 'LevelHigh'
EnumEntry : 'LevelLow'
Enumeration : 'CounterResetSource' (Not available)
EnumEntry : 'FrameTriggerWait'
EnumEntry : 'ExposureEnd'
EnumEntry : 'ExposureStart'
EnumEntry : 'LogicBlock1'
EnumEntry : 'LogicBlock0'
EnumEntry : 'Counter1End'
EnumEntry : 'Counter0End'
EnumEntry : 'Counter1Start'
EnumEntry : 'Counter0Start'
EnumEntry : 'UserOutput3'
EnumEntry : 'UserOutput2'
EnumEntry : 'UserOutput1'
EnumEntry : 'UserOutput0'
EnumEntry : 'Line3'
EnumEntry : 'Line2'
EnumEntry : 'Line0'
EnumEntry : 'Off'
Enumeration : 'CounterResetActivation' (Not available)
EnumEntry : 'AnyEdge'
EnumEntry : 'RisingEdge'
EnumEntry : 'FallingEdge'
EnumEntry : 'LevelHigh'
EnumEntry : 'LevelLow'
Enumeration : [RO] 'CounterStatus'
EnumEntry : 'CounterOverflow'
EnumEntry : 'CounterCompleted'
EnumEntry : 'CounterActive'
EnumEntry : 'CounterTriggerWait'
EnumEntry : 'CounterIdle'https://github.com/AravisProject/aravis
Category : 'TestControl'
Integer : [RW] 'TestPendingAck'
Command : [WO] 'TestEventGenerate'
Integer : [RW] 'Test0001'
Integer : [RO] 'GuiXmlManifestAddress'
Command : [WO] 'TriggerEventTest'
Category : 'LogicBlockControl'
Enumeration : [RW] 'LogicBlockSelector'
* LogicBlockLUTSelector
EnumEntry : 'LogicBlock1'
EnumEntry : 'LogicBlock0'
Enumeration : [RW] 'LogicBlockLUTSelector'
* LogicBlockLUTOutputValueAll
* LogicBlockLUTInputSelector
* LogicBlockLUTRowIndex
EnumEntry : 'Enable'
EnumEntry : 'Value'
Enumeration : [RW] 'LogicBlockLUTInputSelector'
* LogicBlockLUTInputSource
* LogicBlockLUTInputActivation
EnumEntry : 'Input2'
EnumEntry : 'Input1'
EnumEntry : 'Input0'
Enumeration : [RW] 'LogicBlockLUTInputSource'
EnumEntry : 'AcquisitionActive'
EnumEntry : 'FrameTriggerWait'
EnumEntry : 'ExposureEnd'
EnumEntry : 'ExposureStart'
EnumEntry : 'LogicBlock1'
EnumEntry : 'LogicBlock0'
EnumEntry : 'Counter1End'
EnumEntry : 'Counter0End'
EnumEntry : 'Counter1Start'
EnumEntry : 'Counter0Start'
EnumEntry : 'UserOutput3'
EnumEntry : 'UserOutput2'
EnumEntry : 'UserOutput1'
EnumEntry : 'UserOutput0'
EnumEntry : 'Line3'
EnumEntry : 'Line2'
EnumEntry : 'Line0'
EnumEntry : 'Zero'
Enumeration : [RW] 'LogicBlockLUTInputActivation'
EnumEntry : 'AnyEdge'
EnumEntry : 'RisingEdge'
EnumEntry : 'FallingEdge'
EnumEntry : 'LevelHigh'
EnumEntry : 'LevelLow'
Integer : [RW] 'LogicBlockLUTOutputValueAll'
Integer : [RW] 'LogicBlockLUTRowIndex'
* LogicBlockLUTOutputValue
Boolean : [RW] 'LogicBlockLUTOutputValue'
Category : 'DigitalIOControl'
Enumeration : [RW] 'LineSelector'
* LineMode
* V3_3Enable
* LineInverter
* LineStatus
* LineInputFilterSelector
* LineSource
* LineFormat
EnumEntry : 'Line3'
EnumEntry : 'Line2'
EnumEntry : 'Line1'
EnumEntry : 'Line0'
Enumeration : [RW] 'LineMode'
EnumEntry : 'Input'
Boolean : 'V3_3Enable' (Not available)
Boolean : [RW] 'LineInverter'
Boolean : [RO] 'LineStatus'
Integer : [RO] 'LineStatusAll'
Enumeration : [RW] 'LineInputFilterSelector'
* LineFilterWidth
EnumEntry : 'Debounce'
EnumEntry : 'Deglitch'
Float : [RW] 'LineFilterWidth'
Enumeration : [RW] 'LineSource'
EnumEntry : 'Off'
Enumeration : [RO] 'LineFormat'
EnumEntry : 'OpenDrain' (Not available)
EnumEntry : 'OptoCoupled'
EnumEntry : 'TriState' (Not available)
EnumEntry : 'NoConnect' (Not available)
Enumeration : [RW] 'UserOutputSelector'
* UserOutputValue
EnumEntry : 'UserOutput3'
EnumEntry : 'UserOutput2'
EnumEntry : 'UserOutput1'
EnumEntry : 'UserOutput0'
Boolean : [RW] 'UserOutputValue'
Integer : [RW] 'UserOutputValueAll'
Category : 'FileAccessControl'
Enumeration : [RW] 'FileSelector'
* FileOperationSelector_Val
* FileOpenMode_Val
* FileSize_Val
EnumEntry : 'UserFile1'
EnumEntry : 'UserSet1'
EnumEntry : 'UserSet0'
EnumEntry : 'UserSetDefault'
Enumeration : [RW] 'FileOperationSelector'
* FileOperationExecute_Val
* FileAccessOffset_Val
* FileAccessLength_Val
* FileOperationStatus_Val
* FileOperationResult_Val
EnumEntry : 'Delete'
EnumEntry : 'Write'
EnumEntry : 'Read'
EnumEntry : 'Close'
EnumEntry : 'Open'
Command : [WO] 'FileOperationExecute'
Enumeration : [RW] 'FileOpenMode'
EnumEntry : 'ReadWrite'
EnumEntry : 'Write'
EnumEntry : 'Read'
Register : [RW] 'FileAccessBuffer'
Integer : [RW] 'FileAccessOffset'
Integer : [RW] 'FileAccessLength'
Enumeration : [RO] 'FileOperationStatus'
EnumEntry : 'Failure'
EnumEntry : 'Success'
Integer : [RO] 'FileOperationResult'
Integer : [RO] 'FileSize'
Category : 'TransferControl'
Enumeration : [RW] 'TransferControlMode'
EnumEntry : 'UserControlled'
EnumEntry : 'Automatic'
EnumEntry : 'Basic'
Enumeration : 'TransferOperationMode' (Not available)
EnumEntry : 'MultiBlock' (Not available)
EnumEntry : 'Continuous'
Integer : 'TransferBlockCount' (Not available)
Integer : [RO] 'TransferQueueMaxBlockCount'
Integer : [RO] 'TransferQueueCurrentBlockCount'
Integer : [RO] 'TransferQueueOverflowCount'
Enumeration : 'TransferQueueMode' (Not available)
EnumEntry : 'FirstInFirstOut'
Command : 'TransferStart' (Not available)
Command : 'TransferStop' (Not available)
Foundations
Director
Subsystems
Odometry
NUbots acknowledges the traditional custodians of the lands within our footprint areas: Awabakal, Darkinjung, Biripai, Worimi, Wonnarua, and Eora Nations. We acknowledge that our laboratory is situated on unceded Pambalong land. We pay respect to the wisdom of our Elders past and present.
Copyright © 2024 NUbots - CC-BY-4.0
Deploys by Netlify