Using the Generic I/O Driver
  • 17 Sep 2022
  • 2 Minutes to read
  • Contributors

Using the Generic I/O Driver


Article Summary

Using the Generic I/O Driver

A guide to the Generic-IO Driver

This article describes the capabilities and configuration associated with the Generic I/O driver in Tulip.

Capabilities

The Generic I/O driver allows reading/monitoring digital inputs and writing digital outputs on GPIO-enabled Tulip Edge devices (I/O Gateway and Edge IO) in Tulip Apps.

The driver reports Pin up, Pin down, and Pin changed events to Tulip when the voltage on any of the digital inputs crosses a threshold. The I/O Gateway has 16 digital inputs compatible with devices operating at 3.3V - 24V. The Edge IO has 8 digital inputs compatible with devices operating at 5V - 36V.

This can be used in a Tulip App trigger as shown below:

The driver supports setting the output on the output pins to HIGH (24V) or LOW (0V) from an App in Tulip. The I/O Gateway has 8 output pins, and the Edge IO has 4 output pins. Each output pin is capable of sourcing 500mA, but note that the total output across all pins must remain below 1.5A. In this way, the output pins are meant for sending digital signals to relatively-high impedance devices as opposed to sending power. This can be used in a Tulip App Trigger as shown below:

Configuration

To configure your GPIO device to be used with Tulip, first ensure that everything is wired properly according to the device manufacturer's specifications and that the appropriate inputs or outputs are connected to the Tulip Edge Device.

Note that devices such as switches and breakbeams may require pull-up or pull-down resistors to function properly. Sparkfun has a great article that explains this concept.

Then, visit the Device Portal page for your Tulip Edge Device to configure the driver.

The relevant configuration screen is shown below.

The options are described in detail below:

  • Mute Pin-Up Events - By default, the Generic I/O driver emits a pin up event in Tulip every time a pin's voltage crosses the threshold moving from low to high. Checking this box prevents this event from being emitted.
  • Mute Pin-Down Events - By default, the Generic I/O driver emits a pin down event in Tulip every time a pin's voltage crosses the threshold moving from high to low. Checking this box prevents this event from being emitted.
  • Mute Pin-Changed Events - By default, the Generic I/O driver emits a pin up event in Tulip every time a pin's voltage crosses the threshold moving from low to high or high to low. Checking this box prevents this event from being emitted.

Was this article helpful?