Template:PT3 PYTHON LNX TRM: Difference between revisions

From Phidgets Support
(Created page with "<div class="phd-slide-deck" data-deck="PT3_PYTHON_LNX_TRM"> <div class="phd-slide-deck-header"><h3>Language - Python</h3></div> <div class="phd-slides"> <div class="phd-slide"...")
 
No edit summary
 
(2 intermediate revisions by the same user not shown)
Line 17: Line 17:


<div class="phd-slide">
<div class="phd-slide">
<h2>Requirements</h2>
<h2>Installing the Phidget Python Package</h2>


<p>First, make sure you have the following installed:</p>
<p>First, install <span>[https://www.python.org/downloads/ Python3]</span> if you haven't already.</p>


<p>● Phidgets Drivers for Linux (see Part 1 of this user guide)</p>
<p>
As of Python 3.11, you must use a virtual environment when installing externally managed packages. First, you need to install the virtual environment for your
python version:
</p>
 
<div class="phd-command-line"><code>apt-get install python3.12-venv</code></div>
 
<p>Next, create your virtual environment folder. We will name ours <b>PhidgetsExample</b>, but you can choose any name:</p>


<p><span>[https://www.python.org/downloads/ Python]</span> (2.7 and 3.6+ are both compatible with Phidgets)</p>
<div class="phd-command-line"><code>python3 -m venv PhidgetsExample</code></div>
</div>
 
<p>This creates a folder for your new project. To activate the virtual environment, use the following command:</p>


<div class="phd-slide">
<div class="phd-command-line"><code>source PhidgetsExample/bin/activate</code></div>
<h2>Installing the Phidget Python Module</h2>


<p>
<p>Now that you're in the virtual environment, install the Phidget22 Python package with PIP:</p>
Python versions 2.7.9+ and 3.4+ include PIP by default. To install the Phidget22 Python module with PIP, simply open the <b>Terminal</b> and enter the command:
</p>


<div class="phd-panels">
<div class="phd-panel phd-flex-column-align-left phd-flex-column-justify-top">
<p>Python 2.x :</p>
<div class="phd-command-line"><code>pip install Phidget22</code></div>
</div>
<div class="phd-panel phd-flex-column-align-left phd-flex-column-justify-top">
<p>Python 3.x :</p>
<div class="phd-command-line"><code>pip3 install Phidget22</code></div>
<div class="phd-command-line"><code>pip3 install Phidget22</code></div>
</div>
</div>
<p>If you don't use PIP, follow the manual installation instructions on the next slide.</p>
</div>
</div>


<div class="phd-slide">
<div class="phd-slide">
<h2>Installing the Phidget Python Module</h2>
<h2>Setting UDev Rules</h2>


<p>To install the Phidget22 Python module without PIP, you need to download it here:</p>
<p>
By default, Linux will not allow regular users to access physical hardware, as a security feature. This means that you must grant yourself root privileges via
sudo to run Phidgets code.
</p>


<p><span>[https://www.phidgets.com/downloads/phidget22/libraries/any/Phidget22Python.zip Phidget22 Python Module]</span></p>
<div class="phd-command-line"><code>sudo python3 Python_Example.py</code></div>


<p>After unpacking the Phidget Python module, open the terminal at folder location and enter the following command:</p>
<p>
To avoid having to use sudo every time, you can set up a rules file to allow it automatically using the vendor code for Phidget USB devices. Create a text file
called <b>99-libphidget22.rules</b> containing the following line:
</p>


<div class="phd-command-line"><code>python setup.py install</code></div>
<div class="phd-command-line"><code>SUBSYSTEMS=="usb", ACTION=="add", ATTRS{idVendor}=="06c2", ATTRS{idProduct}=="00[3-a][0-f]", MODE="666"</code></div>


<p>This will build the module and install the Python module files into your site-packages directory.</p>
<p>
 
Mode 666 means every user has permission to read and write to the specified devices. Next, move this file to <b>/etc/udev/rules.d</b>. Now you can run code that
<div class="phd-lazy-image" data-src="https://www.phidgets.com/decks/PT3_PYTHON_LNX_TRM/-x180/50/Python_linux_install.png"></div>
uses Phidgets as a regular user without sudo.
</p>
</div>
</div>


Line 87: Line 88:
<h2>Using the Code Samples</h2>
<h2>Using the Code Samples</h2>


<p>To run the example, open the command prompt at the location of the example and enter the following command:</p>
<p>Move the downloaded example into your virtual environment folder. If the virtual environment is still active, you can run the example:</p>


<div class="phd-panels">
<div class="phd-panel phd-flex-column-align-left phd-flex-column-justify-top">
<p>Python 2.x :</p>
<div class="phd-command-line"><code>python Python_Example.py</code></div>
</div>
<div class="phd-panel phd-flex-column-align-left phd-flex-column-justify-top">
<p>Python 3.x :</p>
<div class="phd-command-line"><code>python3 Python_Example.py</code></div>
<div class="phd-command-line"><code>python3 Python_Example.py</code></div>
</div>
</div>


<p>Success! Your program is now running with Phidgets!</p>
<p>Success! Your program is now running with Phidgets! If you want to exit the virtual environment, type <b>deactivate</b>.</p>
</div>
</div>



Latest revision as of 22:44, 17 January 2025

Linux with Terminal

Welcome to using Phidgets with Python! By using Python, you will have access to the complete Phidget22 API, including events.

The terminal is the default environment to make Python programs in Linux, since it's available immediately after installing Python.

Installing the Phidget Python Package

First, install Python3 if you haven't already.

As of Python 3.11, you must use a virtual environment when installing externally managed packages. First, you need to install the virtual environment for your python version:

apt-get install python3.12-venv

Next, create your virtual environment folder. We will name ours PhidgetsExample, but you can choose any name:

python3 -m venv PhidgetsExample

This creates a folder for your new project. To activate the virtual environment, use the following command:

source PhidgetsExample/bin/activate

Now that you're in the virtual environment, install the Phidget22 Python package with PIP:

pip3 install Phidget22

Setting UDev Rules

By default, Linux will not allow regular users to access physical hardware, as a security feature. This means that you must grant yourself root privileges via sudo to run Phidgets code.

sudo python3 Python_Example.py

To avoid having to use sudo every time, you can set up a rules file to allow it automatically using the vendor code for Phidget USB devices. Create a text file called 99-libphidget22.rules containing the following line:

SUBSYSTEMS=="usb", ACTION=="add", ATTRS{idVendor}=="06c2", ATTRS{idProduct}=="00[3-a][0-f]", MODE="666"

Mode 666 means every user has permission to read and write to the specified devices. Next, move this file to /etc/udev/rules.d. Now you can run code that uses Phidgets as a regular user without sudo.

Finding Code Samples

To find the code sample to use for your Phidget, navigate to the Code Samples page and select your device from the drop-down menu.

Once you select your device, the code sample generator will give you a working code sample, and a selection of options to customize it to your needs.

Using the Code Samples

Click the Download Example button to download a Java file with the sample code:

Using the Code Samples

Move the downloaded example into your virtual environment folder. If the virtual environment is still active, you can run the example:

python3 Python_Example.py

Success! Your program is now running with Phidgets! If you want to exit the virtual environment, type deactivate.

What's Next?

Now that you've set up Phidgets in your programming environment, you should read our guide on Phidget Programming Basics to learn the fundamentals of programming with Phidgets.

«
»