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

sales inquiries

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

technical inquiries

support@phidgets.com

website inquiries

web@phidgets.com

Unit 1 - 6115 4 St SE Calgary AB  T2H 2H9 Canada
Projects Dealers Terms and Conditions Discontinued Products Phidget21 Documentation

PhidgetBridge 4-Input

ID: 1046_0

This board is needed to measure the output from a load cell. You can connect up to four load cells or strain gauges.

Replaced by 1046_0B

Replaced by the 1046_0B - PhidgetBridge 4-Input. It is the exact same device, but it comes pre-assembled in a plastic shell enclosure and you can now choose which cables you want to have included.

The PhidgetBridge lets you connect up to 4 un-amplified Wheatstone bridges, such as:

• Strain gauges
• Pressure sensors/Barometers
• Piezoresistive accelerometers
• Magnetoresistive sensors (Compasses)

The data rate and gain values can be configured in software.

Product Specifications

Board
Controlled By USB
API Object Name Bridge
Number of Bridge Inputs 4
Bridge Data Interval Min * 8 ms
Bridge Data Interval Max 1000 ms
Bridge Input Current Max ± 3 nA
Differential Voltage Resolution 24 bit
Electrical Properties
USB Voltage Min 4.5 V DC
USB Voltage Max 5.3 V DC
USB Speed Full Speed
Current Consumption Min 35 mA
Current Consumption Max 500 mA
Available External Current 465 mA
Input Voltage Limit Min Ground + 0.25V DC
Input Voltage Limit Max 5V Supply - 0.25V DC
Physical Properties
Recommended Wire Size 16 - 26 AWG
Operating Temperature Min 0 °C
Operating Temperature Max 70 °C
Customs Information
American HTS Import Code 8471.80.40.00
Country of Origin CN (China)
*The minimum data rate is 8ms though the board has a maximum sample rate of 122 samples a second (slightly less than the 125 an 8ms rate would have you believe).

Software Objects

Channel NameAPIChannel
Bridge Input VoltageRatioInput 0 - 3

API

 Choose a Language C C# / VB.NET Java JavaScript Max/MSP Python Swift Phidget Manager Networking NetworkConnection USBConnection Logging Dictionary

Back Forward
Print this API

Code Samples

Language:

APIDetailLanguageOS

Product History

Date Board Revision Device Version Comment
May 20110100Product Release
May 20110101getLabelString fixed for labels longer than 7 characters
February 20140102Various fixes: usb stack, gain switching, bad values after enable

PhidgetBridge

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

• a 1046 PhidgetBridge
• a USB cable and computer
• a load cell or other sensor to connect to the 1046

Step 1: Install Phidgets Library

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

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

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 computer and PhidgetBridge

● Connect a load cell or other wheatstone bridge sensor to the PhidgetBridge

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 help installing in Windows (e.g. manual install, using a VM, etc.), visit this page:

Step 1: Install Phidgets Library

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

Step 1: Install Phidgets Library

3a. Select Continue

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

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 computer and PhidgetBridge

● Connect a load cell or other wheatstone bridge sensor to the PhidgetBridge

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.

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

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 computer and PhidgetBridge

● Connect a load cell or other wheatstone bridge sensor to the PhidgetBridge

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:

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.

The PhidgetBridge reads up to four load cells, strain gauges or Wheatstone Bridge-based sensors. The Phidget reports results as a voltage ratio. To convert from voltage ratio to a quantity like weight or force, see the Calibration Guide in the Advanced Topics section.

Explore Your Phidget Channels Using the Control Panel

1. Open your Control Panel, and you will find the following channels:

2. Double click on a channel to open an example program. Each channel belongs to the Voltage Ratio Input channel class:

Expand All

In your Control Panel, double click on "Bridge Input":

Part 4: Advanced Topics and Troubleshooting

Expand All
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 icon next to the data type that you want to plot. This will open up a new window:

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.

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:

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

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

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

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

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:

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.

• 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.

Load cells are force sensors that can be used with the 1046. To get useful data from load cells, they will need to be calibrated. Fortunately this is a simple process outlined in our guide on Calibrating Load Cells

If no documentation is available for your strain gauge, it’s possible to use a multimeter to determine how to connect it, provided there are no electronics in the sensor. First, measure resistance between the 4 wires. There are 6 combinations - two combinations will have a resistance 20-40% higher than the other four. Choose one of these high-resistance combinations, and wire it into 5V and G on the 1046. Connect the other two wires into +/-. Apply a load, if the V/V responds in the opposite way to your expectations, flip the +/- wires.

Measuring RTDs

While we used to recommend using this product to measure RTDs, we now recommend using the TMP1200 - RTD Phidget.

Calibration

We have observed a 1.5% difference between a 1x gain and an 8x gain. This may require that each system (1046 and sensors) be calibrated as a whole. For maximum accuracy, decide on, and keep with a chosen gain before calibrating the system.

Expensive sensors will ship with a certificate of calibration specifying, often in mv/V, how the sensor responds to stimulus. Less expensive will have to be calibrated.

For sensors with a linear response, like load cells, look at our guide on Calibrating Load Cells.

Choosing a Gain Value

We report the measured voltage in a ratiometric unit known as V/V. This is how the maximum range of sensors that use strain gauges is usually specified. V/V is the output value in V of the measured sensor, scaled for a 1V sensor supply voltage. This value will correspond to the physical quantity that the sensor is measuring, regardless of the actual voltage supplied to the sensor.

 Gain Resolution Range 1 119 nV/V ± 1000 mV/V 8 14.9 nV/V ± 125 mV/V 16 7.45 nV/V ± 62.5 mV/V 32 3.72 nV/V ± 31.25 mV/V 64 1.86 nV/V ± 15.625 mV/V 128 0.93 nV/V ± 7.8125 mV/V

When choosing the Gain setting, it's best to use the highest gain possible that can still measure the full range of your sensor. For an individual unit, you can apply the maximum stimulus to the sensor, and ensure the voltage ratio reported is well within the range for the gain setting you have chosen. If many units are being deployed, it’s best to consult the data sheet for the strain gauge and look for maximum offset.

Some wheatstone bridges, most often those produced from silicon and used in pressure sensors, will have a very wide offset, and large manufacturing variation in the offset. This will restrict the gain to lower settings, particularly if the application must support a number of deployed systems with the expected variation. Fortunately, the very high precision electronics used in the 1046 means that in many application, higher gain is not necessary to get adequate accuracy and resolution.

Measurement Considerations

The 1046 is designed to measure voltages as a ratio of the supply voltage - it’s not practical to make measurements of absolute voltages with this product.

For maximum accuracy, all wires from the 1046 to the sensor should be the same length and thickness. Changes in temperature will change the resistance of the wires - if they are all the same, the errors will cancel out.

Each bridge input can be powered down, reducing power consumption with 1046 sensors, and useful for reducing heating of sensors, which can introduce errors.

The number I’m getting back from the 1046 is really small

Load cells output a small voltage proportional to the amount of strain they are currently experiencing. The rated output for most load cells at full load is in the order of millivolts, so when you’re only straining the load cell at a fraction of its full load, you will get very small values. In order to convert to meaningful units like grams or newtons, you need to calibrate the load cell.

The DataInterval doesn't match the actual rate of incoming data

Due to limitations in the hardware, the actual DataInterval must be a multiple of 8. If you try to set a DataInterval that isn't a multiple of 8, the library will automatically round down to the nearest multiple of 8. So if you set DataInterval to 31, you'll end up with an actual interval of 24ms.

You can connect up to four load cells to the PhidgetBridge in order to measure the amount of strain in the cell. See the product page or manual for your load cell to learn how to hook it up. We have a variety of types available to measure different types of strain: shear, compression, and tension. See the Load Cell Primer for more information.

Product Sensor Properties
Part Number Price Sensor Type Weight Capacity Max Creep Zero Balance Cell Repeatability Error Max Cell Non-Linearity Max Cell Hysteresis Max
$6.00 Shear Load Cell 780 g 1.6 g/hr ± 11.7 g ± 390 mg 390 mg 390 mg Micro Load Cell (0-5kg)$7.00 Shear Load Cell 5 kg 5 g/hr ± 75 g ± 2.5 g 2.5 g 2.5 g
$7.00 Shear Load Cell 20 kg 20 g/hr ± 300 g ± 10 g 10 g 10 g Micro Load Cell (0-50kg)$7.00 Shear Load Cell 50 kg 50 g/hr ± 750 g ± 25 g 25 g 25 g
$45.00 Compression Load Cell 50 kg 20 g/hr ± 500 g ± 100 g 100 g Button Load Cell (0-200kg)$45.00 Compression Load Cell 200 kg * 40 g/hr * ± 2 kg * ± 200 g * 400 g
$45.00 Compression/Tension Load Cell 100 kg Micro Load Cell (0-100g)$7.00 Shear Load Cell 100 g ± 50 mg 50 mg 50 mg
$50.00 Compression/Tension Load Cell 500 kg Button Load Cell (0-1000kg)$50.00 Compression Load Cell 1 Mg
$7.00 Shear Load Cell 780 g 7.8 g/hr ± 78 g ± 390 mg 390 mg 390 mg Micro Load Cell (0-5kg)$7.00 Shear Load Cell 5 kg 50 g/hr ± 500 g ± 2.5 g 2.5 g 2.5 g
$7.00 Shear Load Cell 25 kg 250 g/hr ± 2.5 kg ± 12.5 g 12.5 g 12.5 g Strain Gauges Strain gauges are ideal for situations where you want to monitor the strain in a material that's already a part of your project. By attaching strain gauges in a strategic way, you can effectively turn a load-bearing member into a custom load cell. You can read strain gauges using the PhidgetBridge by connecting them as described in the Strain Gauge Primer. Product Sensor Properties Electrical Properties Part Number Price Sensor Type Strain Gauge Mount Type Resistance Value Half-bridge Aluminum Torque Strain Gauge (Bag of 2)$12.50 Torque Half-bridge Strain Gauge Aluminum (per quarter-bridge) 1 kΩ
Half-bridge Steel Strain Gauge (Bag of 2)
$15.00 Half-bridge Strain Gauge Steel (per quarter-bridge) 1 kΩ Half-bridge Aluminum Strain Gauge (Bag of 2)$15.00 Half-bridge Strain Gauge Aluminum (per quarter-bridge) 1 kΩ

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
Mini-USB Cable 28cm 24AWG
$3.00 USB Type A USB Mini-B 280 mm Mini-USB Cable 180cm 24AWG$4.00 USB Type A USB Mini-B 1.8 m
Mini-USB Cable 450cm 20AWG
$12.00 USB Type A USB Mini-B 4.5 m Mini-USB Cable 60cm 24AWG$3.50 USB Type A USB Mini-B 600 mm
Mini-USB Cable 120cm 24AWG
$4.00 USB Type A USB Mini-B 1.2 m Mini-USB Cable 83cm Right Angle$4.50 USB Type A USB Mini-B (90 degree) 830 mm

Here are our Bridge Interfaces:

Product Board
Part Number Price Controlled By Number of Bridge Inputs
PhidgetBridge 4-Input
$90.00 USB (Mini-USB) 4 Wheatstone Bridge Phidget$30.00 VINT 2