Products for USB Sensing and Control
Products for USB Sensing and Control

PHIDGETS Inc.

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

VINT Hub Phidget

ID: HUB0000_0
Recommended for new designs: This product (or a similar replacement with a compatible form, fit and function) is estimated to be available for ten years or more.

The core of our product line, the USB VINT Hub has 6 VINT ports allowing for endless possibilities for USB sensing and control.

$30.00

Quantity Available: 1000+

Qty Price
5 $28.50
10 $27.00
25 $24.00
50 $21.00
100 $19.50
250 $18.00
500 $16.50
1000 $15.00

The VINT Hub is one of the most commonly used Phidgets. Connect up to 6 devices to your computer through a single USB port.

Each VINT port can perform one of four roles:

  • Communicate with an intelligent VINT Device
  • Read a 0-5V Voltage or ratiometric sensor
  • Act as a digital output
  • Read switches as a digital input
  • The mode of each port is set in your program, allowing for flexible use in projects.

Technical details:

  • Plug and Program - Device is automatically discovered by the Phidget API when attached
  • Built-in Isolation - Maintain system stability
  • Pulse Width Modulation Enabled - Ports in DigitalOutput mode support PWM, useful for dimming LEDs and other simple components
  • Analog Sensor compatible - Each port is backward compatible with both ratiometric and non-ratiometric Phidget analog sensors
  • USB Voltage Supply - Each port has a power and ground pin providing direct access to the USB voltage supply

VINT Devices and More

For specific information about using the HUB0000_0 with other devices, please look at the User Guide tab, above.

FUNCTIONAL

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
Image Part Number Price Connector A Connector B Cable Length
3017_1 $3.00 USB Type A USB Mini-B 280 mm
3018_0 $4.00 USB Type A USB Mini-B 1.8 m
3020_0 $12.00 USB Type A USB Mini-B 4.5 m
3036_0 $3.50 USB Type A USB Mini-B 600 mm
3037_0 $4.00 USB Type A USB Mini-B 1.2 m

Phidget Cables

Use Phidget cables to connect sensors and VINT devices to this hub. You can solder multiple cables together in order to make even longer Phidget cables, but you should be aware of the effects of having long wires in your system.

Product Physical Properties
Image Part Number Price Cable Length
3002_0 $2.00 600 mm
3003_0 $1.50 100 mm
3004_0 $3.00 3.5 m
3038_0 $2.25 1.2 m
3039_0 $2.75 1.8 m
CBL4104_0 $1.75 300 mm
CBL4105_0 $2.00 900 mm
CBL4106_0 $2.50 1.5 m


Part 1: Setup

HUB0000 - Select OS

Select your Operating System:

«
»

HUB0000 - Windows

Step 1: Install Phidgets Library

Step 2: Connect Devices

Step 3: Verify Connection

Step 1: Install Phidgets Library

Before you begin using your Phidgets, you will need to install the Phidget Library.

1. Download the installer for your system:

● 32-bit Installer Download

● 64-bit Installer Download

If you're unsure which one you should get, press ⊞ WIN + Pause/Break:

Before installing our libraries, be sure to read our Software License.

Step 1: Install Phidgets Library

2. Open the download. If it asks you for permission, select Run

Step 1: Install Phidgets Library

3a. Select Next

Step 1: Install Phidgets Library

3b. Read the Licence Agreement. Select Next.

Step 1: Install Phidgets Library

3c. Choose Installation Location. Select Next.

Step 1: Install Phidgets Library

3d. Confirm Install

Step 1: Install Phidgets Library

3e. Wait for Installation to complete. This should only take a few moments.

Step 1: Install Phidgets Library

3f. Installation Complete. Close installation Window.

Step 2: Connect Devices

● Connect USB Cable to your Windows Computer

● Connect VINT Device(s)

Step 3: Verify Connection

1. Open the Phidgets Control Panel:

If your Control Panel does not open, look in your taskbar. Double click the Phidget Icon.

Step 3: Verify Connection

2. If connected, your Phidgets will appear in the Phidget Control Panel.

Done!

If you're able to see and interact with your devices in the Phidget Control Panel, you're done with the Setup part of this guide.

Scroll down to Part 2: Using Your Phidget for the next step.


For more help installing in Windows (e.g. manual install, using a VM, etc.), visit this page:

Windows Advanced Information

«
»

HUB0000 - MacOS

Step 1: Install Phidgets Library

Step 2: Connect Devices

Step 3: Verify Connection

Step 1: Install Phidgets Library

Before you begin using your Phidgets, you will need to install the Phidget Library.

1. Download the installer for your system:

● OS X 10.11+: Installer Download

● Mac OS X 10.7 - OS X 10.10: Installer Download

● Mac OS X 10.5 - OS X 10.6: Installer Download


Before installing our libraries, be sure to read our Software License.

Step 1: Install Phidgets Library

2. Open the download and double click on Phidgets.pkg

Step 1: Install Phidgets Library

3a. Select Continue

Step 1: Install Phidgets Library

3b. Read and continue. Read the License and click Agree.

Step 1: Install Phidgets Library

3c. Here, you have the option to select the installation location. Select Install to continue.

Step 1: Install Phidgets Library

3d. MacOS may ask for permission to install. Enter your username and password and Install Software.

Step 1: Install Phidgets Library

3e. Wait for Installation to complete. This should only take a few moments.

Step 1: Install Phidgets Library

3f. You may see a message that the extension has been blocked. Select Open Security Preferences.

Step 1: Install Phidgets Library

3g. Beside the message for Phidgets Inc, Click Allow.

Step 1: Install Phidgets Library

3h. Installation Complete, Click Close.

Step 1: Install Phidgets Library

3i. To delete the installer, click Move to Trash.

Step 2: Connect Devices

● Connect USB Cable to your Mac

● Connect VINT Device(s)

Step 3: Verify Connection

1. Open the Phidgets Control Panel:

Step 3: Verify Connection

2. If connected, your Phidgets will appear in the Phidget Control Panel.

Done!

If you're able to see and interact with your devices in the Phidget Control Panel, you're done with the Setup part of this guide.

Scroll down to Part 2: Using Your Phidget for the next step.


For more info installing in MacOS (e.g. developer tools, driver extension, etc.), visit this page:

MacOS Advanced Information

«
»

HUB0000 - Linux

Step 1: Install Phidgets Library

Step 2: Connect Devices

Step 3: Verify Connection

Step 1: Install Phidgets Library

1. First, you need to install the libusb-1.0 development libraries. For example, in Debian based distributions:

apt-get install libusb-1.0-0-dev


You’ll also need a C compiler and builder, if you don’t already have one installed.

apt-get install gcc
apt-get install make

Step 1: Install Phidgets Library

2. Next, download and unpack the Phidgets library:

libphidget22

Step 1: Install Phidgets Library

3. Use the following commands in the location you unpacked to install the library:

./configure
make
sudo make install

Step 1: Install Phidgets Library

4. (Optional) You can also download and unpack the following optional packages:

phidget22networkserver - Phidget Network Server, which enables the use of Phidgets over your network

phidget22admin - Admin tool to track who is connected to your Phidgets when using the network server

libphidget22extra - Required for phidget22networkserver and phidget22admin

libphidget22java - The Java libraries for Phidget22


For installation instructions for these packages, see the README file included with each one.

Step 2: Connect Devices

● Connect USB Cable to your Linux Computer

● Connect VINT Device(s)

Step 3: Verify Connection

1. The easiest way to verify that your libraries are working properly is to compile and run an example program. Download and unpack this C example that will detect any Phidget:

HelloWorld C Example

Step 3: Verify Connection

2. Next, open the terminal in the location where you unpacked the example. Compile and run using:

gcc HelloWorld.c -o HelloWorld -lphidget22
sudo ./HelloWorld

ou should receive a “Hello” line for each Phidget channel that is discovered:

I don’t see any Phidgets show up in the HelloWorld example

You need to run it with sudo in order to be able to access USB devices. In order to use Phidgets without sudo, you need to set your udev rules. See the Advanced Information page on the final slide of this guide for details.

Done!

If you're able to see your devices in the Hello World example, you're done with the Setup part of this guide.

Scroll down to Part 2: Using Your Phidget for the next step.


For more info installing in Linux (e.g. Udev rules, old versions, etc.), visit this page:

Linux Advanced Information

«
»

Part 2: Using Your Phidget

About

The VINT Hub provides a stable interface to connect your devices to your computer via USB. The VINT Hub has 6 ports. Each port can:

  • Connect to a VINT Device
  • Read a 0-5V Voltage or ratiometric sensor (connect to Analog Input sensors)
  • Act as a digital output (control LEDs, relays, digital circuits, and other simple electronics)
  • Act as a digital input (read the state of a switch)

Explore Your Phidget Channels Using the Control Panel

HUB0000-panel.jpg

The VINT Hub is a connecting point between your computer and device allowing for simple communication. You can use your Control Panel to view your attached Phidgets. Explore the 5 types of connections bellow:

Expand All
Intelligent VINT Devices

Vint-v.jpg

VINT Devices like the TMP1101 or DCC1003 are Phidgets that digitally communicate with the VINT Hub. Each device will have unique features, so it is recommended you visit the individual product page for more details.

When attached correctly these Phidgets will appear by name in your Control Panel, with each channel listed below the name. For example, when the HUM1000 is attached you will see:

HUM1000 Panel.jpg
Digital Input: read the state of a switch

Vint-di.jpg

Digital Input is one of the VINT Hub’s built-in Channel Classes. Any of the these ports can act as an active-low digital input, making them useful for reading switches and buttons. The above image provides an example of how to wire a switch to be used with the VINT Hub.

If you open Digital Input Mode in the Control Panel you will be able to see the state of your button/switch.

HUB0000-di.jpg

Digital Output: control LEDs, relays, digital circuits, and other simple electronics

Vint-do.jpg

Digital Output is one of the VINT Hub’s built-in Channel Classes. Any of these ports can be used as a 3.3V digital output, making them useful for blinking LEDs. The above image demonstrates how to connect your LED to be used with the VINT Hub.

Open Digital Output Mode in the Control Panel to control the 3.3V output.

HUB0000-do.jpg

Voltage Input: Non-ratiometric Analog sensors and monitoring 5V digital circuits

Vint-vi.jpg

Voltage Input is one of the VINT Hub’s built-in Channel Classes. Any of these ports can be used to read voltage, making them great for reading non-ratiometric sensors and monitoring 5V digital circuits.

Open Voltage Input Mode in the Control Panel to view your device’s output voltage.

HUB0000-vi.jpg

Voltage Ratio Input: Analog ratiometric sensors

Vint-vr.jpg

Voltage Ratio Input is one of the VINT Hub’s built-in Channel Classes. Any of these ports can act as a Voltage Ratio Input comparing the voltage provided to the voltage returned by the device, making it useful for connecting ratiometric sensors. The voltage ratio is reported in Volts per Volt. For example, if the Phidget is providing 5V and the sensor is sending back 2.5V, the ratio will be 0.5V/V.

Open Voltage Ratio Input Mode in the Control Panel to view your device’s voltage ratio.

HUB0000-vr.jpg

Part 3: Create your Program

1. Setting up your Programming Environment

2. Phidget Programming Basics

Part 4: Advanced Topics and Troubleshooting

Expand All
How do I know what channel, serial number, or hub port to use in my program?

Before you open a Phidget channel in your program, you can set these properties to specify which channel to open. You can find this information through the Control Panel.

1. Open the Control Panel and double-click on the red map pin icon:

The locate Phidget button is found in the device information box

2. The Addressing Information window will open. Here you will find all the information you need to address your Phidget in your program.

All the information you need to address your Phidget


See the Phidget22 API for your language to determine exact syntax for each property.

How can I plot or record sensor data?

In the Phidget Control Panel, open the channel for your device and click on the Plot.jpg icon next to the data type that you want to plot. This will open up a new window:

Plot2.jpg

If you need more complex functionality such as logging multiple sensors to the same sheet or performing calculations on the data, you'll need to write your own program. Generally this will involve addressing the correct channel, opening it, and then creating an Event Handler and adding graphing/logging code to it.

The quickest way to get started is to download some sample code for your desired programming language and then search google for logging or plotting in that language (e.g. "how to log to csv in python") and add the code to the existing change handler.

Filtering

You can perform filtering on the raw data in order to reduce noise in your graph. For more information, see the Control Panel Graphing page.

Graph Type

You can perform a transform on the incoming data to get different graph types that may provide insights into your sensor data. For more information on how to use these graph types, see the Control Panel Graphing page.

Setting the Change Trigger and Data Interval

The Change Trigger is the minimum change in the sensor data needed to trigger a new data event. The Data Interval is the time (in ms) between data events sent out from your Phidget. You can modify one or both of these values to achieve different data outputs. You can learn more about these two properties here.

VINT Ports

For more information on the capabilities of the ports on the VINT Hub, see the VINT Primer.

Setting the Device Label

When opening channels with Phidgets, you can set several properties to make sure you are accessing the precise channel you want. The HUB0000 has a unique serial number that can be used to find its ports or any VINT devices connected to them. If you want something more customizable and human-readable, you can use the device label instead. You can customize the device label by using writeDeviceLabel on the Hub object after it has been opened.

With the device label, you can address any of the VINT Hub's channels, or any connected VINT device channels. The device label will remain after the VINT Hub is unplugged as it is stored in flash memory.


Product Specifications

Board
Controlled By USB (Mini-USB)
Number of VINT Ports 6
Electrical Properties
USB Voltage Min 4.5 V DC
USB Voltage Max 5.3 V DC
USB Speed High Speed
Current Consumption Min 32.5 mA
Available External Current 470 mA
Voltage Inputs
Voltage Input Resolution * 16 bit
Sensor Input Impedance 324 kΩ
Input Voltage Min (DC) 0 V DC
Input Voltage Max (DC) 5 V DC
Voltage Input Noise ± 630 μV DC
Sampling Interval Max 60 s/sample
Number of Voltage Inputs 6 (Shared)
Sampling Interval Min 1 ms/sample
Digital Inputs
Pull-up Resistance 124 kΩ
Low Voltage Max (True) 1 V DC
High Voltage Min (False) 1.8 V DC
Low Voltage Trigger Length Min 3 ms
High Voltage Trigger Length Min 3 ms
Digital Input Voltage Max 5.5 V DC
Digital Input Type Switch (Active Low)
Number of Digital Inputs 6 (Shared)
Digital Outputs
Series Resistance 510 Ω
Digital Output Available Current 8.1 mA
Digital Output Voltage Min 0 V DC
Digital Output Voltage Max 3.3 V DC
PWM Frequency Max 50 kHz
PWM Resolution 0.8 %
Number of Digital Outputs 6 (Shared)
Physical Properties
Operating Temperature Min -40 °C
Operating Temperature Max 85 °C
Customs Information
Canadian HS Export Code 8471.80.00
American HTS Import Code 8471.80.40.00
Country of Origin CN (China)

*Voltage measured with a 10-bit ADC, oversampled to 16-bits.

Documents

Product History

Date Board Revision Device Version Comment
June 2017 0 117 Product Release
July 2017 0 118 USB Bug fix, sometimes can't communicate on attach
June 2018 0 119 Fixed issue that caused spurious detach events
January 2019 0 121 Increased voltage input range to 5.25V
August 2019 0 122 Fixed USB bug that caused watchdog reset
August 2019 0 123 Fixed bug that caused a send timeout in the library
August 2019 0 124 Fixed USB bugs, mostly affecting macOS
August 2019 0 125 Fixed USB bug that caused "IN" packets to get lost
September 2019 0 126 Fixed bug that reported false detaches
April 2020 0 127 Added gap between wakeup pulse and sending data
December 2021 0 128 Added failsafe functionality to API for digital outputs

Software Objects

Channel NameAPIChannel Hub Port
Hub Port - Digital Input Mode
Digital Input DigitalInput 0 0 - 5
Hub Port - Digital Output Mode
Digital Output DigitalOutput 0 0 - 5
Hub Port - Voltage Input Mode
Voltage Input VoltageInput 0 0 - 5
Hub Port - Voltage Ratio Mode
Voltage Ratio Input VoltageRatioInput 0 0 - 5
6-Port USB VINT Hub Phidget
VINT Hub Hub 0  

API


Back Forward
Print this API

Code Samples



Example Options


Downloads

				Make your selections to display sample code.
					

Code Samples

Language:

APIDetailLanguageOS
DigitalInput Visual Studio GUI C# Windows Download
DigitalInput Java Android 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 Java Android 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
VoltageInput Visual Studio GUI C# Windows Download
VoltageInput Java Android Download
VoltageInput Multi-Channel Example JavaScript Browser Download
VoltageInput JavaScript Browser Download
VoltageInput Objective-C macOS Download
VoltageInput Swift macOS Download
VoltageInput Swift iOS Download
VoltageInput Visual Basic .NET Windows Download
VoltageInput Max/MSP Multiple Download
VoltageRatioInput Visual Studio GUI C# Windows Download
VoltageRatioInput Load Cell Calibrator C# Windows Download
VoltageRatioInput Java Android Download
VoltageRatioInput JavaScript Browser Download
VoltageRatioInput Objective-C macOS Download
VoltageRatioInput Swift macOS Download
VoltageRatioInput Swift iOS Download
VoltageRatioInput Visual Basic .NET Windows Download
VoltageRatioInput Max/MSP Multiple Download