The Phidget WebService is a background process that broadcasts all events and data from a USB Phidget over the network:
It uses link local addressing which allows you to use simple server names in your code. The link local addressing is provided by the programs Bonjour, avahi, or mDNSResponder, depending on your system, and the correct program is either installed already or with the Phidget libraries.
You can listen to the Phidget data and control the Phidgets over the network using one or more computers. You can still use the Phidget on the computer it is directly connected to, just by using a remote version of the
open() call in your local code:
Since Phidgets supports many operating systems, the listening and controlling computer doesn't have to be a computer.... it could be an Android phone or an iOS iPhone/iPad:
The WebService runs on a local network. It is relatively durable because it uses link local addressing, which - depending on your operating system and router settings - will often work in the absence of DHCP. Link local addressing will often persist even when access to the global Internet fails or is not available.
WebService on the Phidget Single Board Computer
The Phidget Single Board Computer (SBC) can provide a compact, inexpensive way to easily run the WebService. It runs the WebService in the background automatically from the moment you turn it on, and allows you to read from and control all Phidgets attached to it:
This can allow for a compact, mobile-based system like this:
Using The WebService
Each Operating System page has a section on how to use the WebService on that operating system:
The operating systems pages have complete examples on how to set up a running webservice process and controlling remote program. The pages also tell you how to start and stop the WebService on your computer, and how to run it with or without mDNS (Bonjour, avahi, etc).
We also have a couple of code snippets in C and Java on the General Phidget Programming page to show examples of opening a Phidget remotely.
Note: When using the WebService, both the client and server should have the same version of the WebService installed. The easiest way to ensure this is to update your libraries on both ends.
For other troubleshooting tips, try our General Troubleshooting page, in its WebService section.