I2C Portextender und PWM IC und physical. Modul für I2C Zugriff mit dem RasPi

Begonnen von klausw, 18 Februar 2014, 23:46:08

Vorheriges Thema - Nächstes Thema

klausw

Zitat von: Mitch am 02 März 2014, 22:29:23
Danke Klaus, das habe ich dazu gefunden:

Temp Messung starten: 0xF3
Hum Messung starten: 0xF5

Soft Reset: 0xFE

Aber mehr bzw. Auslesen habe ich noch nicht hinbekommen  :'(

Ich habe mit mal 2 SHT21 bestellt. Demnächst wird es ein Modul dafür geben.
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

klausw

Zitat von: Mitch am 02 März 2014, 22:29:23
Danke Klaus, das habe ich dazu gefunden:

Temp Messung starten: 0xF3
Hum Messung starten: 0xF5

Soft Reset: 0xFE

Aber mehr bzw. Auslesen habe ich noch nicht hinbekommen  :'(
Die Lektüre des Datenblattes hilft ungemein ;)
Du musst erst den Messvorgang anstoßen, kurz warten und dann die Daten holen.
Ich habe ein Modul dazu geschrieben: Klick Im gleichen Post ist auch das passende RPII2C Modul.
Sobald die letzten Fragen geklärt sind wir es zu FHEM dazugefügt.
Grüße
Klaus
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

klausw

Das Modul I2C_BMP180 (per update aus dem SVN) unterstützt jetzt auch die physical. Module für I2C Zugriff.
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Apollo

Jetzt bekomme ich den SMBus über CPAN gar nicht mehr installiert, weder mit libmoose-perl noch ohne.
Das bricht immer ab.
Going to write /root/.cpan/Metadata
Running install for module 'Device::SMBus'
Running make for S/SH/SHANTANU/Device-SMBus-1.06.tar.gz
Fetching with LWP:
http://cpan.noris.de/authors/id/S/SH/SHANTANU/Device-SMBus-1.06.tar.gz
Fetching with LWP:
http://cpan.noris.de/authors/id/S/SH/SHANTANU/CHECKSUMS
Checksum for /root/.cpan/sources/authors/id/S/SH/SHANTANU/Device-SMBus-1.06.tar.gz ok
Uncompressed /root/.cpan/sources/authors/id/S/SH/SHANTANU/Device-SMBus-1.06.tar.gz successfully
Using Tar:/bin/tar xf "Device-SMBus-1.06.tar":
Couldn't untar Device-SMBus-1.06.tar
Package seems to come without Makefile.PL.
  (The test -f "/root/.cpan/build/SHANTANU-TtqhAX/Makefile.PL" returned false.)
  Writing one on our own (setting NAME to DeviceSMBus)
  Had problems unarchiving. Please build manually
Running make test
  Make had some problems, won't test
Running make install
  Make had some problems, won't install


klausw

Zitat von: Apollo am 31 März 2014, 16:13:59
Going to write /root/.cpan/Metadata
Using Tar:/bin/tar xf "Device-SMBus-1.06.tar":
Couldn't untar Device-SMBus-1.06.tar


hat er die Datei überhaupt runtergeladen?
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Apollo

Ja, die Datei ist vorhanden. er hat ja auch geschrieben:
Checksum for /root/.cpan/sources/authors/id/S/SH/SHANTANU/Device-SMBus-1.06.tar.gz ok

jetzt schreibt er auch noch was anderes
pi@raspberrypi ~ $ sudo -s
root@raspberrypi:/home/pi# cpan -i  Device::SMBus
Going to read '/root/.cpan/Metadata'
  Database was generated on Mon, 31 Mar 2014 14:10:37 GMT
Running install for module 'Device::SMBus'
Running make for S/SH/SHANTANU/Device-SMBus-1.06.tar.gz
Checksum for /root/.cpan/sources/authors/id/S/SH/SHANTANU/Device-SMBus-1.06.tar.gz ok

  CPAN.pm: Going to build S/SH/SHANTANU/Device-SMBus-1.06.tar.gz

Warning: No success on command[/usr/bin/perl Makefile.PL INSTALLDIRS=site]
'YAML' not installed, will not store persistent state
  SHANTANU/Device-SMBus-1.06.tar.gz
  /usr/bin/perl Makefile.PL INSTALLDIRS=site -- NOT OK
Running make test
  Make had some problems, won't test
Running make install
  Make had some problems, won't install

klausw

Hast du sudo apt-get update gemacht?

Probiere mal:
sudo apt-get install libi2c-dev i2c-tools build-essential libmoose-perl
vielleicht fehlt noch ein Paket
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Apollo

Also ich weiß nicht wo das Problem ist, hab jetzt alles so gemacht, wie vor ein paar Tagen.

- frisches Raspbian (vom 07.01.2014)
- sudo dpkg-reconfigure tzdata (Europa- Berlin)
- sudo dpkg-reconfigure locales (de_DE.UTF-8 UTF-8)
- sudo apt-get -y update && sudo apt-get -y upgrade
- sudo reboot

FHEM Installation wie im Wiki beschrieben.
- sudo apt-get -y install perl libdevice-serialport-perl
- sudo apt-get -y install libio-socket-ssl-perl
- wget  http://fhem.de/fhem-5.5.deb
- sudo dpkg -i fhem-5.5.deb
- sudo apt-get -y install -f

Dann nach der Anleitung von Seite1.
- sudo apt-get -y install libi2c-dev i2c-tools build-essential
- echo "i2c-dev" | sudo tee -a /etc/modules
- echo "i2c-bcm2708" | sudo tee -a /etc/modules
- sudo sed -i 's/^blacklist i2c-bcm2708/#blacklist i2c-bcm2708/g' /etc/modprobe.d/raspi-blacklist.conf
- sudo apt-get install git-core
- git clone git://git.drogon.net/wiringPi
- cd wiringPi
- ./build
- sudo adduser fhem gpio
- sudo cpan -i  Device::SMBus

Nach einer Weile kommt der Abbruch siehe 4 Beiträge weiter oben.
Was mache ich falsch?

Bis auf das libmoose-perl waren schon alle Pakete installiert. Ich hab die Pakete aber noch mal installieren/prüfen lassen, aber keine Änderung, cpan bricht ab.

klausw

schau mal hier

bei mir ging es bisher immer, aber das entpacken lief bei deinem erstem post ja auch schief
vielleicht geht es manuell
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Apollo

ok, das war ja schon mal zum Teil erfolgreich.
Das manuelle Installieren ging scheinbar, das Modul RPII2C. Über dieses Modul kann ich den PCF8574 steuern.
Aber sobald ich diese Zeile
define busic I2C_PCF8574 20
eingebe, schmiert FHEM mit folgender Meldung (in der Konsole) ab:
Unable to open I2C Device File at Device::SMBus=HASH(0x3063800)->I2CBusDevicePath at reader Device::SMBus::I2CBusFileHandle (defined at /usr/local/lib/perl/5.14.2/Device/SMBus.pm line 36) line 7
(in cleanup) Unable to open I2C Device File at Device::SMBus=HASH(0x3063800)->I2CBusDevicePath at reader Device::SMBus::I2CBusFileHandle (defined at /usr/local/lib/perl/5.14.2/Device/SMBus.pm line 36) line 7

klausw

Die Fehler werden eigentlich vom Device::SMBus abgefangen.
Die Anleitung ist noch nicht ganz vollständig. Gib für eine Hexadresse bitte 0x20 ein
Hast Du nach der Installation neu gestartet?
Was passiert denn, wenn du im Modul RPII2C bei get die 20 einträgst?

Habe es gerade nachstellen können, allerdings nur mit einem nicht existierenden Device (2 für /dev/i2c-2)
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Apollo

Ah, OK. Du hast die Adresseingabe geändert. Mit der 32 hab ich jetzt Zugriff.
So, nun mach ich den RPI noch mal platt, hab so viel probiert, dass ich gar nicht mehr weiß, was alles notwendig ist.

danke für deine Unterstützung

klausw

ja, haben wir
steht hier auch irgendwo im thread
du kannst dezimal hexadezimal und binär eingeben allerdings muss das präfix stimmen.
die Beschreibung wird beim nächsten update angepasst

aber zum absturz bekomme ich es mit einer falschen i2c adresse nicht

wenn Du noch einen Fehler in der Installationsbeschreibung findest bitte hier posten
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Apollo

hier mal mein Installationsscript, vom frischen Raspbian zum laufenden FHEM mit I2C und GPIO
ssh: wget -q http://binichschondrin.info/install && chmod 755 install && ./install

Browser: http://<ip>:8083/fhem
Komandozeile: notice confirm update-20130127-001
Komandozeile: update

Apollo

lässt sich das bei der 52_I2C_PCF8574.pm eventuell einbauen, dass man gleich mehrere Ports schalten kann?
set PCF8574 Port0,Port2,Port4,Port6 on