Software Overview: Difference between revisions

From Phidgets Support
Line 34: Line 34:


Many languages also depend on the ''core drivers'' being installed as well.  These drivers can be found on the [[#Operating System Support|operating system pages]] above.
Many languages also depend on the ''core drivers'' being installed as well.  These drivers can be found on the [[#Operating System Support|operating system pages]] above.
Phidgets can be controlled using our [[General Phidget Programming|high level API]] which allows for either an [[General Phidget Programming#Event Driven Code|event driven]] style of code design, or by traditional [[General Phidget Programming#Logic Code|logic code]].  If you are flexible on what language you can use, we suggest choosing a language which supports event-driven code.
For those languages which only have examples for ''Some Devices'', please see the language page for which specific devices have examples.


Phidgets supports the following languages:
Phidgets supports the following languages:
Line 44: Line 40:
|-style="background: #f0f0f0" align=center  
|-style="background: #f0f0f0" align=center  
! Language || API || Code Samples || [[General Phidget Programming#Event Driven Code|Events]] || [[General Phidget Programming#Logic Code|Logic Code]] || Use via Direct USB* || [[Phidget Webservice]] || Native Library** || Phidget User Base
! Language || API || Code Samples || [[General Phidget Programming#Event Driven Code|Events]] || [[General Phidget Programming#Logic Code|Logic Code]] || Use via Direct USB* || [[Phidget Webservice]] || Native Library** || Phidget User Base
|-
|Core Languages
|-
|-


Line 60: Line 59:
|style="background: #abc1e6" align=center| All Devices  
|style="background: #abc1e6" align=center| All Devices  
|style="background: #abc1e6" align=center| All Devices
|style="background: #abc1e6" align=center| All Devices
|style="background: #abc1e6" align=center| ✓
|style="background: #abc1e6" align=center| ✓
|style="background: #abc1e6" align=center| ✓
|style="background: #abc1e6" align=center| ✓
|style="background: #abc1e6" align=center| ✓
|style="background: #abc1e6" align=center| Extensive
|-
|-


Line 65: Line 70:
|style="background: #abc1e6" align=center| All Devices  
|style="background: #abc1e6" align=center| All Devices  
|style="background: #abc1e6" align=center| All Devices
|style="background: #abc1e6" align=center| All Devices
|style="background: #abc1e6" align=center| ✓
|style="background: #abc1e6" align=center| ✓
|style="background: #abc1e6" align=center| ✓
|style="background: #abc1e6" align=center| ✓
|style="background: #abc1e6" align=center| ✓
|style="background: #abc1e6" align=center| Extensive
|-
|-


Line 70: Line 81:
|style="background: #abc1e6" align=center| All Devices  
|style="background: #abc1e6" align=center| All Devices  
|style="background: #abc1e6" align=center| All Devices
|style="background: #abc1e6" align=center| All Devices
|style="background: #abc1e6" align=center| ✓
|style="background: #abc1e6" align=center| ✓
|style="background: #abc1e6" align=center| ✓
|style="background: #abc1e6" align=center| ✓
|style="background: #abc1e6" align=center| ✓
|style="background: #abc1e6" align=center| Extensive
|-
|-



Revision as of 15:45, 16 December 2011

Phidgets’ philosophy is that you do not have to be an electrical engineer in order to do projects that use devices like sensors, motors, motor controllers, and interface boards. All you need to know is how to program.

We have developed a complete set of Application Programming Interfaces (API) that are supported for many different operating systems, and which can be used through many different programming languages.

We suggest starting with the Getting Started guide for your device. This will help you run a basic example to check your hardware and drivers.

The next step would be to choose your operating system below, and from there choose a language, learn about how to write code for your Phidget, and get API references for your programming language.

The APIs are covered in more detail in the API common to all devices and the API that pertains to your specific device.

Operating System Support

These operating system pages provide drivers for using Phidgets. They help you set up your system after following the Getting Started guide for your device. The operating systems links below are also on every Getting Started guide, so if you have not yet read the one for your device, head straight there.

Phidgets can be run either directly through USB or remotely over a network via the Phidget Webservice. Most operating systems below can run Phidgets directly, but a few can only control them over a network.

Phidgets can run either directly or over a network on these operating systems:

Phidgets can only be used over a network by these operating systems:

Language Support

We provide a variety of supported languages for using Phidgets. Each language has its own libraries, which may be found on the language pages below, along with code examples and an in-depth API.

Many languages also depend on the core drivers being installed as well. These drivers can be found on the operating system pages above.

Phidgets supports the following languages:

Language API Code Samples Events Logic Code Use via Direct USB* Phidget Webservice Native Library** Phidget User Base
Core Languages
C# All Devices All Devices Extensive
C/C++ All Devices All Devices Extensive
Java All Devices All Devices Extensive
Python All Devices All Devices Extensive
Adobe Director All Devices InterfaceKit Only
Applescript All Devices All Devices
AutoIt All Devices None
C# (.NET Compact) All Devices Some Devices
Cocoa All Devices All Devices
Delphi All Devices Some Devices
Flash AS3 All Devices All Devices
Flex AS3 All Devices All Devices
iOS All Devices InterfaceKit Only
Android Java All Devices InterfaceKit Only
LabVIEW All Devices All Devices
MATLAB All Devices Some Devices
LiveCode InterfaceKit Only InterfaceKit Only
Max/MSP All Devices All Devices
REALBasic All Devices None
Ruby All Devices All Devices
Simulink All Devices InterfaceKit Only
Visual Basic .NET All Devices All Devices
Visual Basic 6.0 All Devices All Devices
Visual Basic for Apps All Devices Some Devices
Visual Basic Script All Devices Some Devices

* A direct USB connection would be plugging the Phidget into a USB port and using it locally. This is the typical way to use a Phidget. However, some platforms (such as the iPhone platform) do not have USB ports and hence can only use a Phidget over a network, via the Phidget Webservice.

** Native library support means that the calls you make to a Phidget in this language are in the language as well. If the calls are non-native, the use of Phidgets is through an external library linker, such as callib() in MATLAB, for example. The core Phidget library is written in C, and most other languages use this library as their core, but a 'Native' interface cleanly hides this detail.