en:i2c
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
en:i2c [2014/12/20 13:48] – created fluktuacia | en:i2c [2014/12/21 00:37] – kaklik | ||
---|---|---|---|
Line 3: | Line 3: | ||
====== I²C bus as an MLAB's component ====== | ====== I²C bus as an MLAB's component ====== | ||
- | [[http:// | + | [[http:// |
- | Thanks to an advancement in computer technologies [[cs:arm|new possibilities]] arise allowing the use of the bus for direct communication between sensors and Linux systems. Furthermore, | + | Thanks to an advancement in computer technologies [[en:arm|new possibilities]] arise allowing the use of the bus for direct communication between sensors and Linux systems. Furthermore, |
- | + | ||
- | + | ||
===== Linking of I²C devices ===== | ===== Linking of I²C devices ===== | ||
Line 14: | Line 11: | ||
Although the I²C bus was originally designed to link devices on small scales (within the dimensions of PCB), using certain techniques it is possible to enlarge its range to tens of meters (( [[http:// | Although the I²C bus was originally designed to link devices on small scales (within the dimensions of PCB), using certain techniques it is possible to enlarge its range to tens of meters (( [[http:// | ||
- | Linking of I²C devices within MLAB is implemented on several levels according to extent of a network. Locally (on scale of several meters), the modules are connected by MLAB cables and separated by [[cs:i2chub]]. This module also solves the conversion between logic 3.3V and +5V. | + | Linking of I²C devices within MLAB is implemented on several levels according to extent of a network. Locally (on scale of several meters), the modules are connected by MLAB cables and separated by [[en:i2chub]]. This module also solves the conversion between logic 3.3V and +5V. |
Over more extensive distances the bus is linked through shielded signal cables ending in female connectors and connected to [[cs: | Over more extensive distances the bus is linked through shielded signal cables ending in female connectors and connected to [[cs: | ||
+ | |||
+ | In the case of extensive networks I²C is replaced by other physical layer (CAN, Ethernet) that interconnects individual I²C network segments. | ||
+ | |||
+ | |||
+ | |||
+ | ==== Pymlab package ==== | ||
+ | |||
+ | Pymlab represents a software package that enables a creation of network made of I²C devices and modules, which serve as routing points. It defines the structure of a network and addresses of individual nodes in a source file of a control program. Individual points in the network can than be accessed using simple python commands. | ||
+ | |||
+ | The installation of the [[en: | ||
+ | |||
+ | sudo pip install pymlab | ||
+ | |||
+ | In case of having some older version of pymlab already installed, it is enough to run: | ||
+ | |||
+ | sudo pip install --upgrade pymlab | ||
+ | |||
+ | Both commands are equivalent and use the python package manager that contains [[https:// | ||
+ | This procedure should also download other packages used by pymlab such as cython-hidapi (reffered only as hid module in python). However it does not install alelibusb, which must still be done manually using: | ||
+ | |||
+ | sudo apt-get install libudev-dev libusb-1.0-0-dev libhidapi-dev python-setuptools python-smbus cython | ||
+ | |||
+ | |||
+ | ===== Convertors to connect I²C to PC ===== | ||
+ | |||
+ | Although I²C is quite popular bus suitable to connect different sensors over short distances, it is not usually found and readily available on regular computers with exception of [[http:// | ||
+ | |||
+ | ==== USB interface ==== | ||
+ | |||
+ | Proprietary designs: | ||
+ | |||
+ | * [[http:// | ||
+ | * [[http:// | ||
+ | * [[http:// | ||
+ | |||
+ | These share a common problem with a quality of drivers. Furthermore, | ||
+ | |||
+ | ==== USB HID ==== | ||
+ | |||
+ | To connect without having to use drivers designed for specific hardware [[http:// | ||
en/i2c.txt · Last modified: 2014/12/21 10:42 (external edit)