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, advice, warranty, returns, misshipment
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

## PhidgetTemperatureSensor 4-Input

ID: 1048_1B

Read up to four thermocouples via USB with this board to measure the temperature of four different objects.

Replaced by 1048_2B
Due to parts and components going obsolete and becoming unavailable, the 1048_1B has moved to a new processor that is not supported under Phidget21. If you're using our old libraries you must upgrade to Phidget22 before you can make use of this Phidget.

The 1048 allows you to measure extreme temperatures with up to 4 thermocouples. It is great for measuring temperatures in enclosed spaces or in liquids. This Phidget connects to your computer via USB.

#### Features:

• Connects J, K, E or T type thermocouple, choose the type in software and convert to degrees Celsius automatically
• If you have other thermocouple types, you can open the channel in VoltageInput mode and convert it to Celsius manually.

#### Technical Details:

• Connection check - API will throw an error if the thermocouple wire becomes disconnected or breaks
• Measure from a distance - Thermocouples have been known to work with wire segments as long as 100m, while USB and other sensors suffer from voltage drops after 5 or 10m.

#### Thermocouples

You can connect up to four J,K,E or T type thermocouples to this Phidget. See the product page or data sheet for the thermocouple to determine which end plugs into the positive terminal on the Phidget. If you're not sure which end is which, it won't harm anything to try both configurations to determine which one is right. If the thermocouple is hooked up backward, you'll get erratic readings and the temperature will decrease when it should be increasing.

Product Temperature Sensor
Image Part Number Price Thermocouple Type Ambient Temperature Min Ambient Temperature Max Ambient Temperature Error Max
TMP4103_0 $5.00 K -40 °C 200 °C ± 0.75 °C TMP4104_0$10.00 K -40 °C 400 °C ± 0.75 °C
TMP4106_0 $16.00 K -40 °C 400 °C 3.3 °C TMP4107_0$16.00 K -40 °C 400 °C 3.3 °C

#### Thermocouple Accessories

Here are some handy accessories for working with thermocouples. Extension wire, adapters, and plugs can be found here.

#### 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 ## Part 1: Setup ### PhidgetTemperatureSensor - Select OS ## PhidgetTemperatureSensor Welcome to the 1048 user guide! In order to get started, make sure you have the following hardware on hand: • a 1048 Phidget Temperature Sensor • a USB cable and computer • a thermocouple ## Select your Operating System: ### PhidgetTemperatureSensor - 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 computer and PhidgetTemperatureSensor ● Connect the thermocouple(s) to the PhidgetTemperatureSensor ## 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: ### PhidgetTemperatureSensor - 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 computer and PhidgetTemperatureSensor ● Connect the thermocouple(s) to the PhidgetTemperatureSensor ## 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: ### PhidgetTemperatureSensor - 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: ## 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 PhidgetTemperatureSensor ● Connect the thermocouple(s) to the PhidgetTemperatureSensor ## 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. For more info installing in Linux (e.g. Udev rules, old versions, etc.), visit this page: ## Part 2: Using Your Phidget ### About The PhidgetTemperatureSensor with attached thermocouples allows you to measure extreme temperatures. This Phidget connects to a J, K, E, or T type thermocouple. Choose the thermocouple type in software and data will be converted to degrees Celsius automatically. If you have other thermocouple types, you can open the channel in VoltageInput mode and convert it to Celsius manually. ### Explore Your Phidget Channels Using The Control Panel You can use your Control Panel to explore your Phidget's channels. 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 a different channel class: Expand All Temperature Sensor (IC): Measures the ambient temperature In your Control Panel, double click on "Temperature Sensor (IC)": Thermocouple Input: Reports the probe temperature In your Control Panel, double click on "Thermocouple Input": Voltage Input: Measures the raw probe voltage In your Control Panel, double click on "Voltage Input": ## 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: 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. How can I plot or record sensor data? 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. 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. 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: 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. Cold Junction Compensation and Self-heating Thermocouples consist of two junctions, one where the thermocouple meets the Phidget and one where the two wires are welded together at the sensing end of the device. In simplified terms, a thermocouple works by detecting the temperature difference between these two junctions. To measure the temperature at the sensing end we need to know the temperature where the thermocouple connects to the Phidget. There is an ambient temperature sensor on the board. The thermocouple reading is automatically calculated using the data from the on board temperature sensor. An important thing to note is that the ambient temperature sensor measures the temperature of the board and the air around it, though not specifically at the junction. Generally you can assume the two locations are nearly the same temperature, however as the electronics heat up by being powered on, there can be some small error introduced. This is exacerbated by having the board in an enclosed space where normal airflow is restricted thereby increasing the effect of self-heating. As a result we recommend that the board be left in as open and well ventilated/cooled a place as possible to minimize this error source. For more information on thermocouples, check out the Thermocouple Primer. #### Product Specifications Board API Object Name TemperatureSensor Controlled By USB (Mini-USB) Number of Thermocouple Inputs 4 Thermocouple Input Temperature Update Rate 32 ms/sample Ambient Temperature Error Max ± 0.5 °C Thermocouple Error Max (K-Type) ± 2 °C Thermocouple Voltage Resolution 100 nV DC Thermocouple Temperature Resolution (K-Type) 0.003 °C Electrical Properties Current Consumption Max 25 mA USB Voltage Min 4.5 V DC USB Voltage Max 5.3 V DC USB Speed Full Speed Physical Properties Recommended Wire Size 16 - 26 AWG 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) #### Documents #### Product History Date Board Revision Device Version Packaging Revision Comment April 2010 0100Product Release May 2010 0101fixed setlabel May 2011 0102getLabelString fixed for labels longer than 7 characters October 2017 0102BAdded plastic shell enclosure, removed USB cable June 2021 1200BUpdated obsolete components on board; no longer supports Phidget21 January 2022 1204BImproved stability and minor optimizations #### Software Objects Channel NameAPIChannel Thermocouple Input TemperatureSensor 0 - 3 Temperature Sensor (IC) TemperatureSensor 4 Voltage Input VoltageInput 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  Choose a Language Choose a Device Serial Number: ? #### Example Options #### Downloads  Make your selections to display sample code.  #### Code Samples Language: APIDetailLanguageOS TemperatureSensor Visual Studio GUI C# Windows Download TemperatureSensor Java Android Download TemperatureSensor JavaScript Browser Download TemperatureSensor Objective-C macOS Download TemperatureSensor Swift macOS Download TemperatureSensor Swift iOS Download TemperatureSensor Visual Basic .NET Windows Download TemperatureSensor 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 #### Have a look at our thermocouple interfaces: Product Board Thermocouple Input Image Part Number Price Controlled By Number of Thermocouple Inputs Thermocouple Voltage Resolution 1048_2B$100.00 USB (Mini-USB) 4 100 nV DC
TMP1100_0 $30.00 VINT 1 1 μV DC TMP1101_1$35.00 VINT 4 1 μV DC