Software Overview

From Phidgets Support
Revision as of 21:26, 31 October 2018 by Jdecoux (Talk | contribs)

Jump to: navigation, search

This page outlines the general concepts needed to write code for a Phidget.

We have created a complete set of Application Programming Interfaces (APIs) for the most popular programming languages, and our software libraries are compatible with all major operating systems.

If you are new to Phidgets, we suggest starting with What is a Phidget?, followed by Phidget Programming Basics, and the user guide for your device. If you are looking for more information, try one of our overview pages:

Overview Pages

What is a phidget icon.jpg

What is a Phidget? - Here we discuss the very basics of what Phidgets are, and how they can be powerful tools in making your applicaiton.

Phidget programming basics.jpg

Phidget Programming Basics - Here you can find the basic concepts to help you get started with making your own programs that use Phidgets.

Addressing phidgets icon.jpg

Addressing Phidgets - Learn the various ways you can ensure your program connects to the right Phidgets.

Using multiple phidgets.jpg

Using Multiple Phidgets - Here we'll show you how simple it is to use multiple Phidgets in your program, as well as some less obvious tips and tricks.

Polling events.jpg

Polling vs. Events - Your program can gather data in either a polling-driven or event-driven manner. Learn the difference to determine which is best for your application.

Data interval change trigger.jpg

Data Interval/Change Trigger - Learn about these two properties that control how much data comes in from your sensors.

Logging exceptions errors.jpg

Logging, Exceptions, and Errors - Learn about all the tools you can use to debug your program.

Best practices icon.jpg

Best Phidgets Practices - Good programming habits that will save you from common problems when writing code for your Phidgets.

Network service icon.jpg

Phidget Network Server - Phidgets can be controlled and communicated with over your network- either wirelessly or over ethernet.

Phidget dictionary icon.jpg

Phidget Dictionary - Share information over the network using the Phidgets API.

Phidget manager icon.jpg

Phidget Manager - Keep track of all available Phidgets using the Phidget Manager.

Operating System Support

We provide support for all major operating systems. Select your operating system from the table below and follow the Getting Started guide in order to set up your machine. If you need to access non-current versions of our drivers you can find them here. You can find the driver changelog here.

Operating System Drivers and Libraries Direct USB Control Remote Network Control Supported Version
Desktop OSes
OS - WindowsWindows Quick Downloads Checkmark.png Checkmark.png Vista or Newer
OS - macOSmacOS Quick Downloads Checkmark.png Checkmark.png OS X 10.5 or newer
OS - LinuxLinux Quick Downloads Checkmark.png Checkmark.png Kernel 2.6 or newer
Mobile/Wireless OSes
OS - Phidget SBCPhidget SBC Quick Downloads Checkmark.png Checkmark.png All versions
OS - iOSiOS Quick Downloads X Checkmark.png 8.0 or newer
OS - Android Android Quick Downloads Checkmark.png Checkmark.png 4.1 (Jellybean) or newer

Language Support

We provide support for a variety of programming languages. Each language has code samples for you to use as well as an in-depth API for you to reference. If you aren't sure which language to use, we recommend using Python, because it is quick to learn.

Language Libraries Code Samples OS Support
C Sharp C# Quick Downloads All Devices OS - Windows OS - OS X OS - Linux
C C Quick Downloads All Devices OS - Windows OS - OS X OS - Linux
Python Python Quick Downloads All Devices OS - Windows OS - OS X OS - Linux
Java Java Quick Downloads All Devices OS - Windows OS - OS X OS - Linux OS - Android
javascript JavaScript Quick Downloads All Devices OS - Windows OS - OS X OS - Linux
Visual Basic .NET Visual Basic .NET Quick Downloads All Devices OS - Windows
Cocoa Swift Quick Downloads All Devices OS - OS XOS - iOS
ObjC Objective C Quick Downloads Some Devices* OS - OS XOS - iOS
LabVIEW LabVIEW Quick Downloads All Devices OS - Windows
Max/MSP Max/MSP Quick Downloads All Devices OS - Windows OS - OS X

* Objective C has examples for all devices in macOS, but only some devices in iOS. If you're developing an Objective C program for iOS, we recommend that you use the existing examples while referencing the macOS examples for the devices that don't have iOS examples.