Skip to main content

pifacecommon

Common functions for interacting with PiFace products.

Documentation

[http://pifacecommon.readthedocs.org/](http://pifacecommon.readthedocs.org/)

You can also find the documentation installed at:

/usr/share/doc/python3-pifacecommon/

Install

Make sure you are using the lastest version of Raspbian:

$ sudo apt-get update $ sudo apt-get upgrade

Install pifacecommon (for Python 3 and 2) with the following command:

$ sudo apt-get install python{,3}-pifacecommon

You will also need to set up automatic loading of the SPI kernel module which can be done with the lastest version of raspi-config. Run:

$ sudo raspi-config

Then navigate to Advanced Options, SPI and select yes. Change Log ==========

v4.2.0

  • Added daemon flag for PortEventListener.

v4.1.2

  • Fixed bug with new Device Tree (Pi2) by changing GPIO_INTERRUPT_DEVICE from /sys/devices/virtual/gpio/ to /sys/class/gpio/ and changing udev rule.

v4.1.1

  • Support varying listeners.

v4.1.0

  • Added deregister to interrupts.

v4.0.1

  • Fixed SPI file descriptor bug when closing.

  • Fixed issue #14.

v4.0.0

  • Ignored “Interrupted system call” error in watch_port_events.

  • Rewrite main functions into chip specific (MCP23S17) class.

  • GPIOInterruptDevice class replacing core GPIO enable/disable functions.

  • SPIDevice class replacing spisend function. Can now add in spi_callback function which is called before each SPI write.

  • Updated installation instructions.

v3.1.1

  • Added IODIR_FALLING_EDGE and IODIR_RISING_EDGE to replace IODIR_ON and IODIR_OFF respectively. IODIR_ON and IODIR_OFF can still be used in the same way as before. Falling/Rising Edge are for physical level 1/0, On/Off are for logical (programmer) level 1/0.

    Physical Level (pifacecommon.read_bit):

    IODIR_FALLING_EDGE: 1 -> 0 IODIR_RISING_EDGE: 0 -> 1

    Logical Level (pifacedigitalio.PiFaceDigital().input_pins[0].value):

    IODIR_ON: 0 -> 1 IODIR_OFF: 1 -> 0

    Remember that PiFace Digital Inputs are active low:
    >>> pifacecommon.read_bit(0, INPUT_PORT)
    >>> 1  # physical
    >>> pifacedigitalio.PiFaceDigital().input_pins[0].value
    >>> 0  # logical
    
  • Fixed Debian package bug where setup script would not be executed.

v3.1.0

  • Added debouncing with adjustable settle time.

v3.0.0

  • Added timeout class (fixing Issue #2) in interrupts.

  • Added support for interrupts on multiple boards.

  • Interrupts must be enabled/disabled manually. Automatic handling of this broke interrupts from multiple boards.

v2.0.2

  • Moved version number to pifacecommon/version.py so that it can be read from setup.py and bin/uninstall.py.

  • Updated SPI help link to point to the new docs.

  • Moved installation scripts into single file for Debian packaging.

v2.0.1

  • Added version number in source.

  • Added uninstall script.

v2.0.0

  • Improved interrupts (different API, check the docs).

  • Reduced scope of global variables from package to individual modules. (Hiding namespaces from the end user is an attempt to simplify the interface for children. However this package is not intended for that audience and so messing with the namespaces only confuses things.)

v1.2.1

v1.2

  • Started using a change log!

  • Removed errors submodule, custom exceptions now go in their respective modules. This might change back in a future release.

  • Fixed DigitalInput value bugs

  • Fixed SPI transfer bug.. Function spisend now takes bytes as an argument instead of a list. This makes more sense, since it returns bytes.

  • Removed install.sh, everything is now handled by setup.py.

  • Updated docs.

Release files for pifacecommon 4.2.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pifacecommon 4.2.2
File Size Uploaded
pifacecommon-4.2.2.tar.gz 14.0 kB Details

Release files / pifacecommon-4.2.2.tar.gz

Download URL pifacecommon-4.2.2.tar.gz
Size 14.0 kB
Tags Source
SHA-256 checksum
How to use checksums
294627d4cf92149bce7f32711bbb1242574bfd1363df37dc60e058481c293b3c
BLAKE2b-256 checksum
How to use checksums
2f87235c9fd69ad2f7c8ff71548c767564a1f0e8e60fa3af933c6b0da692b9f4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via Python-urllib/3.7

Release history Release notifications | RSS feed

This release

4.2.2 This release

1 release file

4.1.2

1 release file

4.0.0

1 release file

2.0.0

2 release files

1.2.1

2 release files

1.2

2 release files

1.1

2 release files

1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page