Skip to content

Python Tools for the MCP23008 and MCP23017 I2C IO Expanders

Notifications You must be signed in to change notification settings

BoW2EviL/Python-MCP230XX

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

Python MCP230XX I2C IO Expander Tools
-------------------------------------

A couple of basic tools I knocked up while playing with the MCP23017 on my Raspberry Pi. More info on my blog here: http://nathan.chantrell.net


mcp23017.py
-----------
A simple command line tool for setting outputs as high or low.

Usage: mcp23017.py -b <bank> -o <output> -s <high|low>

eg. to set GPA1 high: mcp23017.py -b a -o 1 -s high

Response: Output GPA1 changed to high

Requires python-smbus


mcp23017.wsgi
-------------

A web interface using Python and modwsgi. Can be controlled through the built in web form or via GET requests with optional JSON like responses. 

eg. to set output GPA1 high: 
http://rpi/mcp23017.wsgi?bank=a&output=1&state=high&mode=json

Response: {"GPA1":"HIGH"}

Requires python-smbus and apache with mod-wsgi. Note that you will need to make sure your web server has permissions for the i2c bus, eg. /dev/i2c-0

To do: Extend to cater for input as well as output and report on the current state of the outputs.

About

Python Tools for the MCP23008 and MCP23017 I2C IO Expanders

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%