HUB0000 User Guide: Difference between revisions

From Phidgets Support
No edit summary
 
(24 intermediate revisions by 2 users not shown)
Line 1: Line 1:
__NOINDEX__
__NOTOC__
<metadesc>The core of our product line, the USB VINT Hub has 6 VINT ports allowing for endless possibilities for USB sensing and control.</metadesc>
<metadesc>The core of our product line, the USB VINT Hub has 6 VINT ports allowing for endless possibilities for USB sensing and control.</metadesc>
[[Category:UserGuide]]
[[Category:UserGuide]]
==Getting Started==
==Part 1: Setup==
{{UGIntro|HUB0000}}
<div class="phd-deck-sequence">
*[{{SERVER}}/products.php?product_id=HUB0000 HUB0000 - VINT Hub Phidget]
{{PT1_HUB0000_CHOOSE}}
* [{{SERVER}}/?view=comparetable&rel=Phidget%20Cables Phidget cable]
{{PT1_HUB0000_WIN}} {{PT1_HUB0000_MAC}} {{PT1_HUB0000_LNX}}
* USB cable and computer
</div>
* something to use with the HUB0000 (switches, leds, VINT device, etc.)


== Part 2: Using Your Phidget ==


Next, you will need to connect the pieces:
===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:


[[Image:HUB0000_Functional.jpeg|550px|link=|right]]
* 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)


# Connect the HUB0000 to your computer with a USB cable.
===Explore Your Phidget Channels Using the Control Panel===
# Connect any sensors, LEDs, or other testing devices to the HUB0000's ports


<br clear="all">
[[Image:HUB0000-panel.jpg|link=|center]]
{{UGIntroDone|HUB0000}}


==Using the HUB0000==
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:
{{UGcontrolpanel|HUB0000}}


{{ugVINTDevice}}
{{UGC-Start}}


{{ugDigitalInput|HUB0000|{{UGDigitalInputActiveLow}}}}
{{UGC-Entry|Intelligent VINT Devices|
|
[[Image:vint-v.jpg|350px|link=]]


{{ugDigitalOutput|HUB0000|}}
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.
*{{UGDigitalOutputDutyCycleDescription}}


{{ugVoltageInputSensor|HUB0000}}
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:


{{ugVoltageRatioSensor|HUB0000}}
[[Image:HUM1000_Panel.jpg|link=|center]]
}}


{{UGC-Entry|Digital Input:| read the state of a switch
|
[[Image:vint-di.jpg|350px|link=]]


==Technical Details==
'''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.


===VINT Ports===
If you open '''Digital Input Mode''' in the Control Panel you will be able to see the state of your button/switch.
For more information on the capabilities of the ports on the VINT Hub, see the [[What_is_VINT%3F|VINT Primer]].


===Setting the Device Label===
[[Image:HUB0000-di.jpg|link=]]
}}


When opening channels with Phidgets, you can set a number of properties to make sure you match the precise channel you want. The HUB0000 has a unique serial number which 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|Using_Multiple_Phidgets#Using_the_Label]] instead. You can customize the device label by using {{Code|writeDeviceLabel}} on the {{Code|Hub}} object after it's been opened.
{{UGC-Entry| Digital Output:| control LEDs, relays, digital circuits, and other simple electronics
|
[[Image:vint-do.jpg|350px|link=]]


Once a device label has been written, you can use it to address any of the VINT Hub's channels, or the channels of any VINT device connected to the hub.  
'''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.


{{UGnext|}}
[[Image:HUB0000-do.jpg|850px|link=]]
}}
 
{{UGC-Entry| Voltage Input:| Non-ratiometric Analog sensors and monitoring 5V digital circuits
|
[[Image:vint-vi.jpg|350px|link=]]
 
'''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.
 
[[Image:HUB0000-vi.jpg|850px|link=]]
}}
 
{{UGC-Entry| Voltage Ratio Input:| Analog ratiometric sensors
|
[[Image:vint-vr.jpg|350px|link=]]
 
'''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.
 
[[Image:HUB0000-vr.jpg|850px|link=]]
}}
 
{{UGC-End}}
 
{{UG-Part3}}
 
== Part 4: Advanced Topics and Troubleshooting ==
 
{{UGC-Start}}
{{UGC-Addressing}}
{{UGC-Graphing}}
{{UGC-DataInterval}}
{{UGC-Firmware}}
{{UGC-NonPhidgetSensor}}
{{UGC-Entry|VINT Ports|
|
For more information on the capabilities of the ports on the VINT Hub, see the [[What_is_VINT%3F|VINT Guide]].}}
{{UGC-Entry|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 [[Addressing_Phidgets#Label|device label]] instead. You can customize the device label by using {{code|writeDeviceLabel}} on the {{code|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.}}
{{UGC-PortPower}}
{{UGC-End}}

Latest revision as of 22:03, 20 July 2023


Part 1: Setup

USB VINT Hub - Select OS

Select your Operating System:

«
»

USB VINT Hub - 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

«
»

USB VINT Hub - 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

«
»

USB VINT Hub - 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

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?

Note: Graphing and logging is currently only supported in the Windows version of the Phidget Control Panel.

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.

The Data Rate is the reciprocal of Data Interval (measured in Hz), and setting it will set the reciprocal value for Data Interval and vice-versa.

You can modify one or both of these values to achieve different data outputs. You can learn more about these properties here.

Upgrading or Downgrading Device Firmware

Firmware Upgrade

MacOS users can upgrade device firmware by double-clicking the device row in the Phidget Control Panel.

Linux users can upgrade via the phidget22admin tool (see included readme for instructions).

Windows users can upgrade the firmware for this device using the Phidget Control Panel as shown below.

ControlpanelFWup.jpg

Firmware Downgrade

Firmware upgrades include important bug fixes and performance improvements, but there are some situations where you may want to revert to an old version of the firmware (for instance, when an application you're using is compiled using an older version of phidget22 that doesn't recognize the new firmware).

MacOS and Linux users can downgrade using the phidget22admin tool in the terminal (see included readme for instructions).

Windows users can downgrade directly from the Phidget Control Panel if they have driver version 1.9.20220112 or newer:

ControlpanelFWdown.jpg

Firmware Version Numbering Schema

Phidgets device firmware is represented by a 3-digit number. For firmware patch notes, see the device history section on the Specifications tab on your device's product page.

FWversion.jpg

  • If the digit in the 'ones' spot changes, it means there have been bug fixes or optimizations. Sometimes these changes can drastically improve the performance of the device, so you should still upgrade whenever possible. These upgrades are backwards compatible, meaning you can still use this Phidget on a computer that has Phidget22 drivers from before this firmware upgrade was released.
  • If the digit in the 'tens' spot changes, it means some features were added (e.g. new API commands or events). These upgrades are also backwards compatible, in the sense that computers running old Phidget22 drivers will still be able to use the device, but they will not be able to use any of the new features this version added.
  • If the digit in the 'hundreds' spot changes, it means a major change has occurred (e.g. a complete rewrite of the firmware or moving to a new architecture). These changes are not backwards compatible, so if you try to use the upgraded board on a computer with old Phidget22 drivers, it will show up as unsupported in the Control Panel and any applications build using the old libraries won't recognize it either. Sometimes, when a Phidget has a new hardware revision (e.g. 1018_2 -> 1018_3), the firmware version's hundreds digit will change because entirely new firmware was needed (usually because a change in the processor). In this case, older hardware revisions won't be able to be upgraded to the higher version number and instead continue to get bug fixes within the same major revision.
Connecting Non-Phidgets Sensors
Analog Sensors (0-5V), 5V Power
UGanalogsensor.jpg

If the sensor requires 5V DC power and outputs a 0-5V signal, you can connect it directly to a VINT Port. The easiest way to connect it is to cut the end off of a Phidget Cable and solder the bare wires to the appropriate pins:

  • Black: Ground
  • Red: 5V Power
  • White: 0-5V Analog Signal

You should check the sensor's datasheet to determine if it is Ratiometric or Non-Ratiometric. Ratiometric sensors output a voltage proportional to the voltage on the 5V power line, so they're more resilient against noise and power fluctuations. Non-Ratiometric sensors have their own 5V regulator, and always output a voltage relative to that 5V reference point. You need to use the appropriate channel class when opening the sensor (i.e. the VoltageRatioInput class or the VoltageInput class), or else your sensor readings will be inaccurate.

You can tell a sensor is ratiometric if the output in the datasheet is specified in units of volts-per-volt (V/V) or in terms of its supply voltage ("Vcc"):

1128 datasheet output.jpg

This specification says the sensor outputs a voltage value of Vcc/512 for each inch of measurement, so it must be ratiometric.

Analog Sensors (0-5V), 12-24V Power

If the sensor outputs a 0-5V signal, but requires 12-24V DC power, the VINT Hub cannot provide the correct voltage by itself. You can use a DAQ1400, and then connect that to one of the ports on your VINT Hub. See the DAQ1400 product page and User Guide for details.

Digital Sensors (PNP/NPN), 5V Power

An NPN sensor with a power requirement of 5V DC can be connected directly to a port on your VINT Hub:

  • Black: Connect to sensor ground
  • Red: Connect to sensor power
  • White: Connect to sensor output

The easiest way to connect it is to snip the end off of a Phidget Cable and solder the wires to the sensor's wires.

A PNP sensor cannot be connected directly to a VINT Hub, because the digital inputs are active low. You'd need to use a pull-down resistor between the white and black wires of the Phidget cable that leads to the sensor in order for it to work.

Digital Sensors (PNP/NPN), 12-24V Power

Digital sensors that require 12V or 24V DC power can be used with the DAQ1400. See the DAQ1400 product page and User Guide for details.

4-20mA Output Sensors

Sensors with a 4-20mA output can also be interfaced with the DAQ1400. See the DAQ1400 product page and User Guide for details.

Serial/I2C Sensors

Sensors that use serial, I2C, or other digital communication protocols cannot easily be used with Phidgets. You should check the datasheet and pinout to see if they have an analog or 4-20mA output feature available.

VINT Ports

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

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.

Power Saving Options

Many VINT devices have power-saving automatically built-in, but you also have the ability to turn off the VINT ports entirely if they're not in use. The ports can be enabled and disabled in groups of three (Ports 0-1-2 and Ports 3-4-5). This is because those ports share the same power supply. You can toggle the port power using the PortPower property of the Hub object. For more details and a code snippet, visit the Phidget22 API page and select your language, device, and then USB and Hub API for the final two menus.