Communicates with devices connected to the local system using the I2C bus.
This adapter should work on Linux boards like the Raspberry Pi, C.H.I.P., BeagleBone or Intel Edison.
Before installing, please read the installation guide of the i2c-bus module.
Especially make sure, that you have properly configured and enabled I2C on your system (if needed):
After you have enabled and configured I2C, you can install this adapter via ioBroker Admin:
- Start the adapter (it must run for the discovery to work)
- Open instance config dialog
- Press the "Search Devices" button to discover all connected I2C devices - this will take some time, be patient!
- Configure all found devices in their respective tabs.
- Save the configuration (this will restart the adapter)
Depending on the age of your ioBroker installation, the iobroker
user (or under whatever user ioBroker is running) might not have the proper rights to access I2C.
If you have connected a device and it is not showing up in the configuration screen, please make sure the user is added to the i2c
group:
sudo usermod -G i2c iobroker
Note: if don't have a standard installation, replace iobroker
in the above command with the user running your ioBroker installation (check with ps
).
This is the number of the I2C bus/adapter to open, 0 for /dev/i2c-0, 1 for /dev/i2c-1, ...
On Raspberry Pi 3, this is "1".
The following devices are currently supported. The numbers in parenthesis are the known addresses of the device in hexadecimal format (without the read bit).
Texas Instruments 4x 3.3-kSPS, 12-Bit ADCs with Internal Reference.
Texas Instruments 4x 860-SPS, 16-Bit ADCs with Internal Reference.
Bosch Digital Humidity, Pressure and Temperature Sensor.
Microchip 8-Bit I/O Expander with Serial Interface.
Microchip 16-Bit I/O Expander with Serial Interface.
Texas Instruments Remote 8-Bit I/O Expander for I2C Bus.
Texas Instruments Remote 8-Bit I/O Expander for I2C Bus.
Compatibility has been tested with Raspberry Pi 3.
Please use the GitHub repository to report any bugs or request new features.
If you require a missing devcies, please provide the type of IC (brand, model, ...) and its address(es) as reported in the adapter configuration.
- Support interrupts instead of only polling for MCP230xx and PCF8574
- (UncleSamSwiss) Added support for BME280.
- (UncleSamSwiss) Added support for ADS1015 / ADS1115.
- (UncleSamSwiss) Added support for MCP23008.
- (UncleSamSwiss) Improved stability of MCP23017.
- (Apollon77) Latest ioBroker utils and testing including node 10.
- (UncleSamSwiss) Added support for MCP23017.
- (UncleSamSwiss) Added support for inverting PCF8574 inputs and outputs.
- (UncleSamSwiss) Initial version
This project is based on the i2c-bus NPM module. Thanks to fivdi for his great module!
The BME280 code is based on https://github.com/skylarstein/bme280-sensor:
MIT License
Copyright (c) 2016 Skylar Stein
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
The ADS1x15 code is based on https://github.com/alphacharlie/node-ads1x15/blob/master/index.js
node-ads1x15 itself is based on https://github.com/adafruit/Adafruit_Python_ADS1x15
The MIT License (MIT)
Copyright (c) 2016 Adafruit Industries
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.