Products for USB Sensing and Control Canada flag
Products for USB Sensing and Control

sales inquiries

quotes, distributor information, purchase orders
sales@phidgets.com

technical inquiries

support, advice, warranty, returns, misshipment
support@phidgets.com

website inquiries

corrections or suggestions
web@phidgets.com

Address

Unit 1 - 6115 4 St SE
Calgary AB  T2H 2H9
Canada

PHIDGETS Inc.

Unit 1 - 6115 4 St SE
Calgary AB  T2H 2H9
Canada
+1 403 282-7335

PhidgetInterfaceKit 0/16/16

ID: 1012_3

Use it to check the state of switches and push buttons, and/or to switch relays, solenoids, and LEDs.

$95.00

Quantity Available: 1000+

Qty Price
5 $90.25
10 $85.50
25 $76.00
50 $66.50
100 $61.75
250 $57.00
500 $52.25
1000 $47.50
50+...

For new systems and projects, we recommend using the following VINT products instead of this one. If you need more digital inputs than the five remaining ports on the VINT Hub, you can also add a Digital Input Phidget to your system.

Note: The 1012_3 is functionally the same as the 1012_2B, but some of the specifications have changed due to components shortages changing the parts we use. See the Specifications tab for more information.

The PhidgetInterfaceKit 0/16/16 has sixteen digital inputs and sixteen digital outputs.

The Digital Inputs are activated by an external voltage source, triggering on a wide voltage range: 4 to 30VDC. They provide built-in filtering, to eliminate false triggering from electrical noise. They can be used to convey the state of on/off devices, such as push buttons, limit switches, relays.

The Digital Outputs can be used to directly control substantial devices, switching up to 30VDC at up to 2 Amps. The Output acts as a low-side switch to a shared ground, so the circuit you're switching will need an external power supply. Each output is protected from transient voltages typical when switching inductive devices - relays, solenoids, motors. The Outputs can be used to directly control devices requiring substantial power such as incandescent lights, high power LEDs, relays, solenoids, motors.

Features

  • 16 digital inputs that can withstand up to 30V DC
  • 16 solid state low-side switch outputs
  • Plugs directly into your computer via USB
  • Mounting hardware included

Guides

Enclosures

You can protect your board from dust and debris by purchasing an enclosure. An enclosure will also prevent unintentional shorts caused by objects touching the pins on the bottom of the board or any terminal screws.

Product Physical Properties
Part Number Price Material
3801_2
Acrylic Enclosure for the 1012
$8.50 Clear Acrylic

USB Cables

Use a USB cable to connect this Phidget to your computer. We have a number of different lengths available, although the maximum length of a USB cable is 5 meters due to limitations in the timing protocol. For longer distances, we recommend that you use a Single Board Computer to control the Phidget remotely.

Product Physical Properties
Part Number Price Connector A Connector B Cable Length
3017_1
USB-A to Mini-B Cable 28cm 24AWG
$3.00 USB Type A USB Mini-B 280 mm
CBL4011_0
USB-A to Mini-B Cable 28cm Right Angle
$3.50 USB Type A USB Mini-B (90 degree) 280 mm
3036_0
USB-A to Mini-B Cable 60cm 24AWG
$3.50 USB Type A USB Mini-B 600 mm
CBL4020_0
USB-C to Mini-B Cable 60cm 28AWG
$5.00 USB Type C USB Mini-B 600 mm
CBL4012_0
USB-A to Mini-B Cable 83cm Right Angle
$4.50 USB Type A USB Mini-B (90 degree) 830 mm
3037_0
USB-A to Mini-B Cable 120cm 24AWG
$4.00 USB Type A USB Mini-B 1.2 m
3018_0
USB-A to Mini-B Cable 180cm 24AWG
$4.00 USB Type A USB Mini-B 1.8 m
CBL4021_0
USB-C to Mini-B Cable 180cm 28AWG
$6.00 USB Type C USB Mini-B 1.8 m
3020_0
USB-A to Mini-B Cable 450cm 20AWG
$12.00 USB Type A USB Mini-B 4.5 m


Getting Started

Welcome to the 1012 user guide! In order to get started, make sure you have the following hardware on hand:


Next, you will need to connect the pieces:

1012 2 Connecting The Hardware.jpg
  1. Digital Inputs: By connecting a power supply and a switch (or the 5V pin of the 1012 and a switch) you can test the digital inputs of the 1012.
  2. Open Collector Digital Outputs: Connect a load (like a light bulb or LED) in series with a power supply and connect one end of the series to a digital output and the other to ground, as pictured.
  3. Connect the Phidget to your computer using the USB cable


Now that you have everything together, let's start using the 1012!


Using the 1012

Phidget Control Panel

In order to demonstrate the functionality of the 1012, the Phidget Control Panel running on a Windows machine will be used.


The Phidget Control Panel is available for use on both macOS and Windows machines.

Windows

To open the Phidget Control Panel on Windows, find the Ph.jpg icon in the taskbar. If it is not there, open up the start menu and search for Phidget Control Panel

Windows PhidgetTaskbar.PNG

macOS

To open the Phidget Control Panel on macOS, open Finder and navigate to the Phidget Control Panel in the Applications list. Double click on the Ph.jpg icon to bring up the Phidget Control Panel.


For more information, take a look at the getting started guide for your operating system:


Linux users can follow the getting started with Linux guide and continue reading here for more information about the 1012.

First Look

After plugging the 1012 into your computer and opening the Phidget Control Panel, you will see something like this:

1012 Panel.jpg


The Phidget Control Panel will list all connected Phidgets and associated objects, as well as the following information:

  • Serial number: allows you to differentiate between similar Phidgets.
  • Channel: allows you to differentiate between similar objects on a Phidget.
  • Version number: corresponds to the firmware version your Phidget is running. If your Phidget is listed in red, your firmware is out of date. Update the firmware by double-clicking the entry.


The Phidget Control Panel can also be used to test your device. Double-clicking on an object will open an example.

Digital Input

Double-click on a Digital Input object in order to run the example:

1012 DigitalInputAL Example.jpg


General information about the selected object will be displayed at the top of the window. You can also experiment with the following functionality:

  • This is an active-high device, therefore, it will be true when connected to a high input and false when connected to ground.


Digital Output

Double-click on a Digital Output object in order to run the example:

1012 DigitalOutput Example.jpg


General information about the selected object will be displayed at the top of the window. You can also experiment with the following functionality:

  • Toggle the state of the digital output by pressing the button. Remember, the 1012 simply acts as a switch to ground.

Finding The Addressing Information

Before you can access the device in your own code, and from our examples, you'll need to take note of the addressing parameters for your Phidget. These will indicate how the Phidget is physically connected to your application. For simplicity, these parameters can be found by clicking the button at the top of the Control Panel example for that Phidget.

The locate Phidget button is found in the device information box

In the Addressing Information window, the section above the line displays information you will need to connect to your Phidget from any application. In particular, note the Channel Class field as this will be the API you will need to use with your Phidget, and the type of example you should use to get started with it. The section below the line provides information about the network the Phidget is connected on if it is attached remotely. Keep track of these parameters moving forward, as you will need them once you start running our examples or your own code.

All the information you need to address your Phidget

Using Your Own Program

You are now ready to start writing your own code for the device. The best way to do that is to start from our Code Samples.

Select your programming language of choice from the drop-down list to get an example for your device. You can use the options provided to further customize the example to best suit your needs.

Code Sample Choose Language.png


Once you have your example, you will need to follow the instructions on the page for your programming language to get it running. To find these instructions, select your programming language from the Programming Languages page.

Technical Details

Open Collector Digital Outputs

For more information on the 1012's digital outputs, see the Open Collector Digital Output Guide.

General

All of the digital inputs have built-in filtering. This helps to eliminate false triggering from electrical noise. The input is first RC filtered by a 10k/100nF node, which will reject noise of higher frequency than 1kHz. This filter generally eliminates the need to shield the digital input from inductive and capacitive coupling that is likely to occur in the wiring harnesses.

Monitoring a Switch

A simplified schematic of a digital input on the 1012 - Phidget InterfaceKit 0/16/16.
Full-Sized Image

To test your digital input, wire it up to a switch as shown in the diagram. The power supply VS1 needs to be within 4.2-30V DC in order to guarantee a response from the digital input when the switch is closed.


Monitoring the Position of a Relay

Monitoring the position of a double-pole relay.
Full-Sized Image

If you have a double-pole relay (that is, a relay that is designed to close two switches at once with the same control input), you can switch a load with one pole, and monitor the state of the relay with the other pole. This can come in handy as a safety feature- if the relay were to fail, your software would normally not have any way of knowing.



What to do Next

  • Programming Languages - Find your preferred programming language here and learn how to write your own code with Phidgets!
  • Phidget Programming Basics - Once you have set up Phidgets to work with your programming environment, we recommend you read our page on to learn the fundamentals of programming with Phidgets.


Product Specifications

Board Properties
Controlled By USB (Mini-USB)
API Object Name DigitalInput, DigitalOutput
USB Voltage Min 4.6 V DC
USB Voltage Max 5.5 V DC
Current Consumption Min 14 mA
Current Consumption Max 500 mA
Available External Current 394 mA
Recommended Wire Size 16 - 26 AWG
USB Speed Low Speed
Operating Temperature Min 0 °C
Operating Temperature Max 70 °C
Digital Inputs
Number of Digital Inputs 16
Digital Input Impedance 33 kΩ
Low Voltage Max (False) 900 mV DC
High Voltage Min (True) 4.2 V DC
Low Voltage Trigger Length Min 16 ms
High Voltage Trigger Length Min 4 ms
Digital Input Voltage Max ± 30 V DC
Digital Input Update Rate 125 samples/s
Relay Properties
Number of Relays 16
Series Resistance 50 mΩ
Open Collector Voltage Max 30 V DC
Digital Output Current Sinking Max (per channel) 2 A
Customs Information
Canadian HS Export Code 8471.80.00
American HTS Import Code 8471.80.40.00
Country of Origin CN (China)

Documents

Product History

Date Board Revision Device Version Packaging Revision Comment
January 2003 0600Product Release
January 2004 0601Added State Echoing
June 2006 0602Fixed flipped protocol bits
May 2007 0603
July 2007 0604
January 2008 0605Added Digital Input Filtering
September 20081605Added Digital Input Filtering
September 20102605Smaller Terminal blocks, Mini-USB connector, red Digital Outputs and green Digital Inputs LEDs, added two +5V terminal blocks
November 20172605BRemoved cable from packaging
May 2022 3606 Changed components due to chip shortages

Code Samples



Example Options


Downloads

				Make your selections to display sample code.
					

Code Samples

Language:

APIDetailLanguageOS
DigitalInput Visual Studio GUI C# Windows Download
DigitalInput JavaScript Browser Download
DigitalInput Multi-Channel Example JavaScript Browser Download
DigitalInput Objective-C macOS Download
DigitalInput Swift macOS Download
DigitalInput Swift iOS Download
DigitalInput Visual Basic .NET Windows Download
DigitalInput Max/MSP Multiple Download
DigitalOutput Visual Studio GUI C# Windows Download
DigitalOutput JavaScript Browser Download
DigitalOutput Multi-Channel Example JavaScript Browser Download
DigitalOutput Objective-C macOS Download
DigitalOutput Swift macOS Download
DigitalOutput Swift iOS Download
DigitalOutput Visual Basic .NET Windows Download
DigitalOutput Max/MSP Multiple Download

Software Objects

Channel NameAPIChannel
Digital Input DigitalInput 0 - 15
Digital Output DigitalOutput 0 - 15

API


Back Forward
Print this API

Have a look at our relay boards, which behave similarly to the outputs on the 1012:

Product Electrical Properties
Part Number Price Load Current Max (AC) Load Voltage Max (AC) Load Current Max (DC) Load Voltage Max (DC)
REL1101_1
16x Isolated Solid State Relay Phidget
$50.00 (per channel) 8 A (per channel) 30 V DC
REL1100_0
4x Isolated Solid State Relay Phidget
$25.00 (per channel) 8 A (per channel) 30 V DC
REL1000_0
4x Relay Phidget
$30.00 12 A 277 V AC 7 A * 30 V DC
1014_3
PhidgetInterfaceKit 0/0/4
$55.00 12 A 277 V AC 7 A * 30 V DC
1017_2
PhidgetInterfaceKit 0/0/8
$85.00 2 A 250 V AC 2 A 120 V DC
REL2001_0
Relay Phidget
$10.00 12 A 277 V AC 7 A * 30 V DC
REL2002_0
Signal Relay Phidget
$12.00 2 A 240 V AC 2 A 120 V DC
REL2103_0
Solid State Relay Phidget
$15.00 10 A 30 V AC * 10 A 30 V DC
3051_1B
Dual Relay Board
$17.00 12 A 277 V AC 7 A * 30 V DC
3053_0
Dual SSR Relay Board
$30.00 (per channel) 9 A 28 V AC (per channel) 9 A 40 V DC
1012_3
PhidgetInterfaceKit 0/16/16
$95.00
3054_0
SSR Relay Board 0.5A
$10.00 500 mA 28 V AC 500 mA 40 V DC
3052_1
SSR Relay Board 2.5A
$15.00 2.5 A 28 V AC 2.5 A 40 V DC
1014_2B
PhidgetInterfaceKit 0/0/4
$55.00 12 A 277 V AC 7 A * 30 V DC
1017_1B
PhidgetInterfaceKit 0/0/8
$85.00 2 A 250 V AC 2 A * 120 V DC

Here's a list of boards with digital inputs:

Product Digital Inputs
Part Number Price Number of Digital Inputs Low Voltage Max (False) Low Voltage Max (True) High Voltage Min (False) High Voltage Min (True)
HUB0002_0
VINT Hub Phidget
$40.00 6 (Shared) 1.3 V DC 1.8 V DC
HUB0007_0
1-Port VINT Hub Phidget
$24.00 1 (Shared) 1.3 V DC 1.7 V DC
HUB0001_0
VINT Hub Phidget
$35.00 6 (Shared) 1 V DC 2 V DC
HUB0000_1
VINT Hub Phidget
$30.00 6 (Shared) 1.3 V DC 1.8 V DC
HUB5000_0
Wireless VINT Hub
$60.00 6 (Shared) 1 V DC 1.8 V DC
DAQ1301_0
16x Isolated Digital Input Phidget
$50.00 16 1.3 V DC 2.5 V DC
DAQ1200_0
4x Digital Input Phidget
$12.00 4 1.5 V DC 3.5 V DC
DAQ1300_0
4x Isolated Digital Input Phidget
$20.00 4 1.3 V DC 2.5 V DC
1012_3
PhidgetInterfaceKit 0/16/16
$95.00 16 900 mV DC 4.2 V DC
1018_3B
PhidgetInterfaceKit 8/8/8
$80.00 8 1 V DC 1.8 V DC
1011_0
PhidgetInterfaceKit 2/2/2
$50.00 2 800 mV DC 2.1 V DC
1018_2B
PhidgetInterfaceKit 8/8/8
$80.00 8 900 mV DC 4.2 V DC
1010_0
PhidgetInterfaceKit 8/8/8 Mini-Format
$70.00 8 900 mV DC 4.2 V DC
1019_1B
PhidgetInterfaceKit 8/8/8 w/6 Port Hub
$110.00 8 900 mV DC 4.2 V DC
1065_1B
PhidgetMotorControl 1-Motor
$75.00 2 800 mV DC 2.1 V DC
1203_2B
PhidgetTextLCD 20X2 : White : Integrated PhidgetInterfaceKit 8/8/8
$70.00 8 900 mV DC 4.2 V DC