Metadata-Version: 1.1
Name: RPiMCP23S17
Version: 0.2.3
Summary: A module to access GPIO expanders MCP23S17 from a Raspberry Pi.
Home-page: http://github.com/petrockblog/RPi-MCP23S17
Author: Florian Mueller
Author-email: contact@petrockblock.com
License: MIT
Description: RPiMCP23S17
        ============
        
        This is a Python module that abstracts the GPIO expander MCP23S17. It is intended for the use on a Raspberry Pi.
        
        Provided Functions
        ------------------
        
        As a quick overview, the module provides the following functions. Refer to the module documentation for details:
        
         - open
         - close
         - setPullupMode
         - setDirection
         - digitalRead
         - digitalWrite
         - writeGPIO
         - readGPIO
        
        Installation
        ------------
        
        If not already done, you need to install PIP via::
        
            sudo apt-get install python-pip
        
        Install from `PyPI <https://pypi.python.org/pypi/RPiMCP23S17>`_::
        
            pip install RPiMCP23S17
        
        Example
        -------
        
        The following demo peridically toggles all pins of two MCP23S17 components::
        
            from RPiMCP23S17.MCP23S17 import MCP23S17
            import time
        
            mcp1 = MCP23S17(bus=0x00, ce=0x00, deviceID=0x00)
            mcp2 = MCP23S17(bus=0x00, ce=0x00, deviceID=0x01)
            mcp1.open()
            mcp2.open()
        
            for x in range(0, 16):
                mcp1.setDirection(x, mcp1.DIR_OUTPUT)
                mcp2.setDirection(x, mcp1.DIR_OUTPUT)
        
            print "Starting blinky on all pins (CTRL+C to quit)"
            while (True):
                for x in range(0, 16):
                    mcp1.digitalWrite(x, MCP23S17.LEVEL_HIGH)
                    mcp2.digitalWrite(x, MCP23S17.LEVEL_HIGH)
                time.sleep(1)
        
                for x in range(0, 16):
                    mcp1.digitalWrite(x, MCP23S17.LEVEL_LOW)
                    mcp2.digitalWrite(x, MCP23S17.LEVEL_LOW)
                time.sleep(1)
                
                # the lines below essentially have the same effect as the lines above
                mcp1.writeGPIO(0xFFF)
                mcp2.writeGPIO(0xFFF)
                time.sleep(1)
                
                mcp1.writeGPIO(0x000)
                mcp2.writeGPIO(0x0000)
                time.sleep(1)
        
        
        
        Change Log
        ----------
        
        0.2.3
        
         - Fixed error "NameError: global name 'MCP23S17_GPIOB' is not defined" in function digitalRead
        
        0.2.2
        
         - Fixed example in documentation
        
        0.2.1
        
         - Updated documentation
        
        0.2.0
        
         - Reorganized module structure
        
        0.1.1
        
         - Enhanced package setup script setup.py
         - Updated documentation
        
        
        0.1.0
        
         - Initial release
Keywords: Raspberry Pi GPIO MCP23S17 SPI
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Operating System :: POSIX :: Linux
Classifier: License :: OSI Approved :: MIT License
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Software Development
Classifier: Topic :: Home Automation
Classifier: Topic :: System :: Hardware
