Metadata-Version: 1.1
Name: smbus-cffi
Version: 0.2
Summary: This Python module allows SMBus access through the I2C /dev interface on Linux hosts. The host kernel must have I2C support, I2C device interface support, and a bus adapter driver.
Home-page: https://github.com/bivab/smbus-cffi
Author: David Schneider
Author-email: david.schneider@bivab.de
License: GPLv2
Description: smbus-cffi
        ==========
        
        This Python module allows SMBus access through the I2C /dev interface on Linux
        hosts. The host kernel must have I2C support, I2C device interface support, and
        a bus adapter driver.
        
        This module is a cffi-based python reimplementation of the python-smbus C-extension
        (http://www.lm-sensors.org/browser/i2c-tools/trunk/py-smbus/) and works on PyPy
        and CPython 2.7.
        
        
        Notes
        -----
        
        Currently cffi, the module used for the bindings to the smbus library, is
        rather slow loading a module. It might take a moment to load smbus, in
        particular on slow devices like a Raspeberry Pi. This behaviour will change in
        future releases of cffi.
        
        The SMBus methods read_block_data and block_process_call are not fully tested,
        and might not work correctly, see note below.
        
        *Note of caution for Raspberry Pi users*: when calling read_block_data and
        block_process_call the underlying i2c/smbus library/driver causes a kernel
        panic on the Raspberry Pi. Testing these features on other hardware would be a
        great way to contribute.
        
        
        Example
        -------
        
        Assuming you have a device connected at address 4 on the bus
        
        ::
        
          >>> from smbus import SMBus
        
          >>> bus = SMBus(4)
        
          >>> bus.write_quick()
        
          >>> some_reg = 123
        
          >>> bus.write_i2c_block_data(4, some_reg, [1, 4, 7])
        
        
        
        Installation
        ------------
        
        There are several methods to install the package. *Note:* unfortunately when
        installing using pip or setup.py on CPython you first need to make sure that
        the cffi package is installed.
        
        1. pip install from PyPi
        ::
        
          pip install smbus-cffi
        
        2. pip install from git
        ::
        
          pip install git+https://github.com/bivab/smbus-cffi.git
        
        3. Clone the repository and run setup.py
        ::
        
          git clone https://github.com/bivab/smbus-cffi.git
          python setup.py install
        
        
        Bug Reporting
        -------------
        
        To submit a bugreport use the GitHub bugtracker for the project:
        
          https://github.com/bivab/smbus-cffi/issues
        
        
        Development
        -----------
        
        You can get the latest version from the repository hosted at GitHub
        https://github.com/bivab/smbus-cffi
        The file requirements.txt contains the list of dependencies needed to work with
        smbus-cffi.
        
        The project uses py.test for testing and tox to test on pypy and python 2.7.
        
        The file test/test_smbus_integration.py contains a set of integration tests for
        the smbus wrapper. To run the integrations tests you need an Arduino board
        flashed with the sketch provided in test/test_sketch.  The serial port and the
        i2c pins of the Arduino board need to be connected to the machine running the
        tests. The sketch implements the counterpart of the smbus protocol that reads
        and writes data for each test using smbus and the serial port.
        
        
        Dependencies
        ------------
        
        To install smbus-cffi you will need:
        
        * A C compiler
        * i2c development headers
        * PyPy or CPython development headers
        
        
        Authors
        -------
        
        * David Schneider
        
        Author of the original smbus C extension:
        
        * Mark M. Hoffman
        
        
        Copyright
        ---------
        
        This program is free software; you can redistribute it and/or modify
        it under the terms of the GNU General Public License as published by
        the Free Software Foundation; version 2 of the License.
        
        See LICENSE for full license text
        
Platform: UNKNOWN
Classifier: License :: OSI Approved :: GNU General Public License v2 (GPLv2)
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: End Users/Desktop
Classifier: Intended Audience :: System Administrators
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: System :: Hardware
