Skip to main content

Interfaces for various GPIO devices on Raspberry PI

Project description


GPIO One is an unofficial user-created set of modules to allow you to easily use various input/output devices on your Raspberry Pi when the default library and GPIOzero don't have any useful code. It hopes to fill in some of the blanks that keep you from getting your projects up and running quickly and smoothly.

It currently provides interfaces to:

  • Three colored RGB Leds.
  • Seven Segement LED displays such as single-element 5161AS and 4-element SH5461AS
  • LCD Displays such as the 1602A
  • Shift registers such as 74HC595
  • Analog-to-Digital via the MCP3008/4 chip line. And built on top of the raw ADC, interfaces for:
    • Analog Joysticks
    • Thermistors


The example files use environment variables to set pins so that we will not accidentally send something down the wrong pin and damage equipment. So for example, if you have a Common-cathode RGB LED set up with the Cathode tied to ground, and the Red, Green, and Blue pins to GPIO 4, 5, and 6 (with a 220 Ohm Resistor in between each connection!) then you can simply go to the examples directory, run RED=4 GREEN=5 BLUE=6 python3 and the LED should come to life.

Each example can be run without environment variables for instructions and a description:

pi@raspberrypi:~/src/gpioone/examples $ python3 
Couldn't find required environment setting fo RED pin.

Simple examples with RGB LEDs.

It will first turn on the LEDs one by one, then enter a color cycle mode that uses software PWM to create a glowing light.

These are the required settings which should correspond to pins on devices:

    RED - Red Pin
    GREEN - Green Pin
    BLUE - Blue Pin

Example Usage:

    RED=1 GREEN=2 BLUE=3 python3 /home/pi/src/gpioone/gpioone/

pi@raspberrypi:~/src/gpioone $ 


Gpioone was primarily written to help the author learn more about interfacing various hardware with the Raspberry Pi. I have made attempts to write clear, easy-to-follow code that should be generally reusable. How useful this is to anyone else remains to be seen. Let me know if you find it helpful!

  • Grant

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for gpioone, version 0.1.0
Filename, size File type Python version Upload date Hashes
Filename, size gpioone-0.1.0.tar.gz (8.2 kB) File type Source Python version None Upload date Hashes View
Filename, size gpioone-0.1.0-py3-none-any.whl (10.7 kB) File type Wheel Python version py3 Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page