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

Thumbstick Phidget

ID: HIN1100_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.

Make a custom controller for your project with this thumbstick. Two-axis with a center pushbutton, it plugs into a VINT port.

$20.00

Quantity Available: 645

Qty Price
5 $19.00
10 $18.00
25 $16.00
50 $14.00
100 $13.00
250 $12.00
500 $11.00
1000 $10.00

Does your project need a high degree of control from your users? The Thumbstick Phidget provides a familiar 2-axis thumbstick similar to those on a video game controller. The stick springs back to the neutral position when released. It can also be pressed down with a click, which will register in software and can be tied to a function in your software. The HIN1100 connects to a port on a VINT Hub. See the Connection & Compatibility tab for a list of hubs.



How it Works

The two axes of the thumbstick correspond to two VoltageRatioInput software objects which each range from -1.0 to 1.0, with zero being in the neutral position. These two numbers can be combined and converted into an angle and a magnitude in your software to be more useful. When the stick is pressed down, a DigitalInput object will change from false to true, so your program can use the change event to trigger a function or feature of your project.

VINT Hubs

This Phidget is a smart device that must be controlled by a VINT Hub. For more information about VINT, have a look at the VINT Primer. You can use a Phidget Cable to simply and easily connect the two devices. Here's a list of all of the different VINT Hubs currently available:

Product Board
Image Part Number Price Number of VINT Ports
HUB0000_0 $30.00 6
SBC3003_0 $120.00 6

Phidget Cables

Use a Phidget cable to connect this device to the 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
3034_0 $1.50 150 mm
3038_0 $2.25 1.2 m
3039_0 $2.75 1.8 m


Getting Started

Next, you will need to connect the pieces:

HIN1100-functional.jpg
  1. Connect the VINT Hub to your computer with a USB cable.
  2. Connect the HIN1100 to the VINT Hub using the Phidget Cable.


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

Using the HIN1100

Phidget Control Panel

In order to demonstrate the functionality of the HIN1100, 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 HIN1100.

First Look

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

HIN1100 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 (Button)

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

HIN1100 DigitalInput 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:

  • You can click down on the middle of the thumbstick to activate the digital input.

Voltage Ratio Input (Axis)

Double click on a Joystick Axis object in order to run the example:

HIN1100 VoltageRatioSensor 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:

  • At the top of the window, information about your device and the properties of this particular channel will be listed.
  • On the left, change trigger and/or data interval can be changed. For more information on these settings, see the Data Rate/Change Trigger page.
  • On the right, the voltage ratio is reported in volts per volt. In this case, a value of 1.0 corresponds to the maximum tilt in one direction of the axis, and a value of -1.0 corresponds to the maximum tilt in the other direction. Note: The stick will not be able to fully reach the -1.0 or 1.0 position while inside the enclosure.


Joystick Axes

Each axis on the joystick is represented as its own VoltageRatioInput object. Axis 0 and Axis 1 are mapped to channels 0 and 1, respectively. You will have to open both channels to fully track the joystick's position.

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 examples:

This Phidget is compatible with the VoltageRatioInput Examples and the DigitalInput Examples.

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 Software Overview page.

Technical Details

Converting to Polar Coordinates

HIN1100 Polar.jpg

For some applications, you may want to convert the 2-axis data of the Thumbstick Phidget into an angle and magnitude. This can be helpful if you want to use it like a video game controller. You can use the following formulas:

Where r is the magnitude, ϕ is the angle, and x and y are the two axis values. Atan2 is the 2-argument arctangent function, which you can find in most math libraries. For example, in C# you could use Math.Atan2(x,y). Depending on your language, ϕ may be in radians or degrees.

Since x and y range from -1.0 to 1.0, the resulting r will range from to , so you may also want to modify the first formula like so:

This way, your r will range from 0 to 1, which is more intuitive than to .

Current Consumption

The current consumption of the HIN1100 depends on the data interval being used:

HIN1100-current.jpg

What to do Next

  • Software Overview - Find your preferred programming language here and learn how to write your own code with Phidgets!
  • Phidget22 API - The API is a universal library of all functions and definitions for programming with Phidgets. Just select your language and device and it'll give you a complete list of all properties, methods, events, and enumerations that are at your disposal.

Product Specifications

Sensor Properties
Controlled By VINT
VoltageRatio Input Resolution 0.0021
Electrical Properties
Current Consumption (Unconfigured) 20 μA
Current Consumption Max * 1 mA
Physical Properties
Operating Temperature Min -40 °C
Operating Temperature Max 85 °C
* - Current consumption varies depending on the selected data interval. See the technical section of the User Guide for details.

Documents

Library & Driver Downloads

Code Samples

Language:

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

Product History

Date Board Revision Device Version Comment
September 20170104Product Release
January 20180105Library bug fixes

Software Objects

Channel NameAPIChannel
Thumbstick Axis VoltageRatioInput 0 - 1
Thumbstick Button DigitalInput 0

API


Back Forward
Print this API

Have a look at our other thumbsticks:

Product Sensor Properties
Image Part Number Price Controlled By
1113_0 $11.00 VoltageRatio Input, Digital Input (5V)
HIN1100_0 $20.00 VINT