OS - Linux: Difference between revisions

From Phidgets Support
No edit summary
Line 3: Line 3:
==Getting Started==
==Getting Started==


#Download libusb-0.1 and its development libraries
#Download '''libusb-0.1''' and its development libraries
#*Try <code>apt-cache search libusb</code> to find current packages
#*Try <code>apt-cache search libusb</code> in a terminal to find current packages
#*Or install from source, which includes development libraries
#*Or install [http://www.libusb.org/ from source], which includes development libraries
#Download <span style="color:red">Phidget Libraries</span> for Linux
#Download <span style="color:red">Phidget Libraries</span> for Linux
#*Unpack them, and in the main directory run:
#*Unpack them, and in the main directory run:
Line 11: Line 11:
#**<code>make</code>
#**<code>make</code>
#**<code>sudo make install</code>
#**<code>sudo make install</code>
#Compile and run the <code>HelloWorld.c</code> example in the library folder:
<div style="background-color: #f3f3f3; border-color: #1c9edb; border-width:1px; border-style: dashed;">
<font size="3">
<source lang=bash>
    gcc HelloWorld.c -o HelloWorld -lphidget21
    sudo ./HelloWorld
</source>
</font>
</div>
:(The sudo is needed for USB access for now)
The program will simply print out basic information for any device you plug in, and print a message upon unplugging the device.  For example, starting the program, plugging in an Interface Kit, unplugging the Interface Kit, and pressing Enter displays:
<div style="background-color: #f3f3f3; border-color: #1c9edb; border-width:1px; border-style: dashed;">
<font size="3">
<source lang=bash>
  $ sudo ./HelloWorld
 
  Opening...
  Press Enter to end
  Hello to Device Phidget InterfaceKit 8/8/8, Serial Number: 37299
  Goodbye Device Phidget InterfaceKit 8/8/8, Serial Number: 37299
  Closing...
</source>
</font>
</div>


==Recommended Languages==
==Recommended Languages==

Revision as of 21:55, 7 November 2011

Phidgets can run directly using USB on a Linux system with kernel 2.6 or later.

Getting Started

  1. Download libusb-0.1 and its development libraries
    • Try apt-cache search libusb in a terminal to find current packages
    • Or install from source, which includes development libraries
  2. Download Phidget Libraries for Linux
    • Unpack them, and in the main directory run:
      • ./configure
      • make
      • sudo make install
  3. Compile and run the HelloWorld.c example in the library folder:

     gcc HelloWorld.c -o HelloWorld -lphidget21
     sudo ./HelloWorld

(The sudo is needed for USB access for now)

The program will simply print out basic information for any device you plug in, and print a message upon unplugging the device. For example, starting the program, plugging in an Interface Kit, unplugging the Interface Kit, and pressing Enter displays:

   $ sudo ./HelloWorld 
   
   Opening...
   Press Enter to end

   Hello to Device Phidget InterfaceKit 8/8/8, Serial Number: 37299
   Goodbye Device Phidget InterfaceKit 8/8/8, Serial Number: 37299

   Closing...

Recommended Languages

We recommend the following languages for this OS:

Installing Libraries and Drivers

You can download the newest source below:

Phidgets requires Linux Kernel 2.6 or newer.

Once you've downloaded the source, build Phidget21.

There is no Phidgets Control Panel written for Linux, but there are C/C++ and Java code samples are available for all Phidgets which will compile and run on Linux without modification.

Notes:

  • Many Linux systems are now built with unsupported third party drivers. It may be necessary to uninstall these drivers for our libraries to work properly.
    • I don't think this is true. If you mean libusb, you need to install the 'libusb-dev' package. If you mean the kernel drivers - these don't interfere and are safe.
  • Phidget21 for Linux is a user-space library. Applications typically have to be run as root, or udev/hotplug must be configured to give permissions when the Phidget is plugged in.

Common Problems and Solutions

  • List relevant problems from "Common Problems and workarounds" doc
  • List common problems for this OS from support forums

Limitations

List any limitations associated with running Phidgets with this OS.