Please enable JavaScript to view this site.

IDS peak 2.8.0 / uEye+ firmware 3.33

hint_info

This function is supported by the following models:

U3 models

PCB version uEye+ LE USB 3.1 Rev. 1.2 (requires USB3 Vision firmware 3.2 or higher)

uEye+ LE USB 3.1 Rev. 1.2 AF (requires USB3 Vision firmware 3.2 or higher)

USB 3 uEye+ ACP

GV models

GigE uEye+ ACP

UI models

PCB version uEye LE USB 3.1 Gen 1

PCB version USB 3 uEye LE

PCB version USB uEye LE

GigE uEye LE

Selects the operation for the I2C communication. This operation is executed when I2COperationExecute is called.

The I2C operation is targeted at the register with IC2RegisterAddress of the device with I2CDeviceAddress.

Name

I2COperationSelector

Category

I2CControl

Interface

Enumeration

Access

Read/Write

Unit

-

Visibility

Expert

Values

Read

Write

Standard

IDS

Availability uEye+

icon-gev icon-u3v

Availability uEye

icon-ui-gige icon-ui-usb2 icon-ui-usb3

Values description

Read: I2C read command. Reads the data from the selected register of the device into I2CTransmitBuffer (or I2CData).

Write: I2C write command. Writes the data from I2CTransmitBuffer (or I2CData) into the selected register of the device.

Code example

C++

// Determine the current I2COperationSelector
std::string value = nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("I2COperatoionSelsctor")->CurrentEntry()->SymbolicValue();
// Get a list of all available entries of I2COperationSelector
auto allEntries = nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("I2COperatoionSelsctor")->Entries();
std::vector<std::shared_ptr<peak::core::nodes::EnumerationEntryNode>> availableEntries;
for(const auto & entry : allEntries)
{
  if ((entry->AccessStatus()!=peak::core::nodes::NodeAccessStatus::NotAvailable)
          && (entry->AccessStatus()!=peak::core::nodes::NodeAccessStatus::NotImplemented))
  {
      availableEntries.emplace_back(entry);
  }
}
// Set I2COperationSelector to "Write"
nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("I2COperatoionSelsctor")->SetCurrentEntry("Write");

C#

// Determine the current I2COperationSelector
string value = nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("I2COperatoionSelsctor").CurrentEntry().SymbolicValue();
// Get a list of all available entries of I2COperationSelector
allEntries = nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("I2COperatoionSelsctor").Entries();
List<string> availableEntries = new List<string>();
for(int i = 0; i < allEntries.Count(); ++i)
{
  if ((allEntries[i].AccessStatus() != peak.core.nodes.NodeAccessStatus.NotAvailable)
          && (allEntries[i].AccessStatus() != peak.core.nodes.NodeAccessStatus.NotImplemented))
  {
      availableEntries.Add(allEntries[i].SymbolicValue());
  }
}
// Set I2COperationSelector to "Write"
nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("I2CI2COperatoionSelsctorMode").SetCurrentEntry("Write");

Python

# Determine the current I2COperationSelector (str)
value = nodeMapRemoteDevice.FindNode("I2COperatoionSelsctor").CurrentEntry().SymbolicValue()
# Get a list of all available entries of I2COperationSelector
allEntries = nodeMapRemoteDevice.FindNode("I2COperatoionSelsctor").Entries()
availableEntries = []
for entry in allEntries:
  if (entry.AccessStatus() != ids_peak.NodeAccessStatus_NotAvailable
          and entry.AccessStatus() != ids_peak.NodeAccessStatus_NotImplemented):
      availableEntries.append(entry.SymbolicValue())
 
# Set I2COperationSelector to "Write" (str)
nodeMapRemoteDevice.FindNode("I2COperatoionSelsctor").SetCurrentEntry("Write")

© 2024 IDS Imaging Development Systems GmbH