Please enable JavaScript to view this site.

IDS peak 2.17.1 / uEye+ firmware 3.70

IDS Peak comfortSDK, genericSDK, IPL, and AFL developer manuals are external documents. Please contact us if you need them.

The UART functionality is only available for cameras that support UART communication on the hardware. This feature is only supported by the following uEye+ cameras.

USB 3 uEye+ XCP Rev. 1.2

USB 3 uEye+ XLE Rev. 1.2

USB 3 uEye+ XLS Rev. 1.2

The hardware must be Rev. 1.2 (or higher), as UART support is included from this hardware on. The description of the GPIO (General Purpose I/O) can be found in the camera manual of the respective camera family.

Specifies the UART receive mode.

Name

UartRxMode

Category

UartControl

Interface

Enumeration

Access

Read/Write

Unit

-

Visibility

Expert

Values

AutoRestartPackets

SinglePacket

Standard

IDS

Availability uEye+

icon-u3v

Availability uEye

-

Values description

AutoRestartPackets: Once a packet is completed, the UART Rx module automatically receives data again until reception is stopped with the UartRxStop command.

SinglePacket: A packet is received and UartRxStatus changes to "Idle" after the packet.

Code example

C++

// Determine the current UartRxMode
std::string value = nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("UartRxMode")->CurrentEntry()->SymbolicValue();
// Get a list of all available entries of UartRxMode
auto allEntries = nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("UartRxMode")->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 UartRxMode to "SinglePacket"
nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("UartRxMode")->SetCurrentEntry("SinglePacket");

C#

// Determine the current UartRxMode
string value = nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("UartRxMode").CurrentEntry().SymbolicValue();
// Get a list of all available entries of UartRxMode
allEntries = nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("UartRxMode").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 UartRxMode to "SinglePacket"
nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("UartRxMode").SetCurrentEntry("SinglePacket");

Python

# Determine the current UartRxMode (str)
value = nodeMapRemoteDevice.FindNode("UartRxMode").CurrentEntry().SymbolicValue()
# Get a list of all available entries of UartRxMode
allEntries = nodeMapRemoteDevice.FindNode("UartRxMode").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 UartRxMode to "SinglePacket" (str)
nodeMapRemoteDevice.FindNode("UartRxMode").SetCurrentEntry("SinglePacket")

© 2025 IDS Imaging Development Systems GmbH