FHEM Forum

FHEM - Hardware => Einplatinencomputer => Thema gestartet von: klausw am 18 Juni 2014, 13:48:37

Titel: I2C für Raspi BBB Cubie etc.
Beitrag von: klausw am 18 Juni 2014, 13:48:37
Hallo zusammen,

wird das Modul RPII2C auch auf anderen Systemen genutzt außer dem Raspberry Pi?

Wenn ja, ist eine Umbenennung sicher sinnvoll.
Außerdem kann ich noch systemspezifische Vorbereitungsmaßnamen zur Beschreibung hinzufügen.

Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: RogerBE am 18 Juni 2014, 16:19:50
Hallo,

Ja auf dem Cubieboard A10

Gruß
Roger
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: klausw am 18 Juni 2014, 17:07:10
Zitat von: RogerBE am 18 Juni 2014, 16:19:50
Ja auf dem Cubieboard A10

sind spezielle Konfigurationen nötig? Rechte anpassen, etc.?
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: RogerBE am 18 Juni 2014, 20:49:18
WiringPI braucht man nicht.
Die Module so wie in der "commandref" installieren
Dazu müssen folgende Einträge noch in der FHEM Start-Datei (init.d)

sudo chown fhem /dev/i2c-*
sudo chgrp dialout /dev/i2c-*
sudo chmod +t /dev/i2c-*
sudo chmod 660 /dev/i2c-*


Siehe Beitrag:
http://forum.fhem.de/index.php/topic,20468.msg150780.html#msg150780
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: klausw am 23 Juni 2014, 10:35:16
Hallo Roger,

Zitat von: RogerBE am 18 Juni 2014, 20:49:18
WiringPI braucht man nicht.
Die Module so wie in der "commandref" installieren
Dazu müssen folgende Einträge noch in der FHEM Start-Datei (init.d)

sudo chown fhem /dev/i2c-*
sudo chgrp dialout /dev/i2c-*
sudo chmod +t /dev/i2c-*
sudo chmod 660 /dev/i2c-*


Siehe Beitrag:
http://forum.fhem.de/index.php/topic,20468.msg150780.html#msg150780
Jetzt erinnere ich mich wieder  8)
Ok, das ist recht übersichtlich.

Ich weiss nicht, wie es beim cubie ist. Beim raspberry sind i2c-0 und i2c-1 in der usergruppe i2c.
Vielleicht reicht es auch den user fhem in diese Gruppe mit einzutragen.
Könntest Du das mal testen?

Dann werde ich die commandref vervollständigen und im modul das logging bei fehlendem wiringpi entfernen.

Grüße
Klaus
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: Billy am 23 Juni 2014, 19:58:40
Hallo Klaus,
Rückmeldung zum BBB.
Ich hatte bisher nichts mit I2C am Hut, aber dein Beitrag hat mich neugierig gemacht.
Habe mir mal kurzerhand einen BMP180 bestellt und an eines meiner BBB angeschlossen.

Vorab das hat mit deinem RPII2C Modul super geklappt! :)

Vorgehensweise:
Rechte setzen in /etc/rc.local, damit damit die I2c Module von fhem ausgeführt werden koennen!
WiringPI braucht man nicht.

Einfach folgendes in /etc/rc.local eintragen. (Bei mir wird fhem über rc.local aufgerufen)
chown fhem /dev/i2c-*
chgrp dialout /dev/i2c-*
chmod +t /dev/i2c-*
chmod 660 /dev/i2c-*


Dann wie in "commandref" beschrieben die Module installieren.

RPII2C <I2C Bus Number> ist bei mir 1 für BBB i2c2: pins P9 19,20 (and 21,22)

Gruss Billy
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: klausw am 24 Juni 2014, 23:20:37
danke für die Rückmeldungen, ich habe die Beschreibung angepasst.
Ausserdem wird per default nicht mehr Device::SMBus genutzt sondern IOCTL und systread/syswrite.
Damit würde die Installation von SMBus entfallen (kann aber immer noch aktiviert werden).

Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: Billy am 25 Juni 2014, 07:57:09
Hallo Klaus,

bekomme im fhem Log die Meldung:

file /usr/local/bin/gpio doesnt exist

Kommt die von dir?

Habe nur RPII2C und I2C_BMP180 definiert!

Gruß Billy
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: Billy am 25 Juni 2014, 08:43:27
Hallo Klaus,

habe jetzt mal Device::SMBus + libmoose-perl deinstalliert um das zu testen:

Ausserdem wird per default nicht mehr Device::SMBus genutzt sondern IOCTL und systread/syswrite.

Danach kommt
ERROR:
Cannot load module RPII2C Please define I2C_BB first BMP180: unknown IODev specified
Scheint also bei mir nicht ohne diese Packete zu laufen.

Gruß Billy
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: klausw am 25 Juni 2014, 09:46:11
Zitat von: Billy am 25 Juni 2014, 07:57:09
Hallo Klaus,

bekomme im fhem Log die Meldung:

file /usr/local/bin/gpio doesnt exist

Kommt die von dir?

Habe nur RPII2C und I2C_BMP180 definiert!

Gruß Billy
Die kommt vom RPII2C Modul.
Die sollte bei der neuen Version eigentlich nicht mehr kommen.
Steht davor: file /dev/i2c-x not accessible try to use gpio utility to fix it?

Aber es funktioniert an sich?
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: klausw am 25 Juni 2014, 09:49:13
Zitat von: Billy am 25 Juni 2014, 08:43:27
habe jetzt mal Device::SMBus + libmoose-perl deinstalliert um das zu testen:

Ausserdem wird per default nicht mehr Device::SMBus genutzt sondern IOCTL und systread/syswrite.

Danach kommt
ERROR:
Cannot load module RPII2C Please define I2C_BB first BMP180: unknown IODev specified
Scheint also bei mir nicht ohne diese Packete zu laufen.
Kann es sein, das Du noch kein Update gemacht hast?
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: klausw am 25 Juni 2014, 09:58:31
Habe leider ein fehlerhaftes Modul committet. Bitte nicht updaten, wird heute noch gefixt
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: betateilchen am 25 Juni 2014, 20:16:28
*grmpf*

hättest Du das nicht in die Ankündigungen schreiben können?


Error messages while initializing FHEM:
configDB: I2C0: Error! I2C device not found: /dev/i2c-0. Please check kernelmodules must loaded: i2c_bcm2708, i2c_dev
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: klausw am 26 Juni 2014, 08:18:06
Gefixte Version online ...

Zitat von: betateilchen am 25 Juni 2014, 20:16:28
*grmpf*

hättest Du das nicht in die Ankündigungen schreiben können?

wenn ich gemerkt hätte, das die Version fehlerhaft ist dann wäre sie von mir nicht veröffentlicht worden  ;)
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: betateilchen am 26 Juni 2014, 09:32:32
scheint momentan zu funktionieren:

(http://up.picr.de/18734841yc.png)
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: betateilchen am 26 Juni 2014, 09:39:41
Allerdings habe ich auf der Console nun folgende Fehlermeldungen, die ich vorher nicht hatte:


Can't send data: Input/output error
Can't send data: Input/output error
Can't send data: Input/output error
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: klausw am 26 Juni 2014, 09:57:47
Zitat von: betateilchen am 26 Juni 2014, 09:39:41
Allerdings habe ich auf der Console nun folgende Fehlermeldungen, die ich vorher nicht hatte:


Can't send data: Input/output error
Can't send data: Input/output error
Can't send data: Input/output error


Steht etwas im Logfile?
Kannst Du herausfinden, bei welcher Operation das passiert?


Mit
attr <name> useHWLib SMBus
kannst du notfalls wieder zur SMBus Bibliothek zurück
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: Billy am 26 Juni 2014, 10:50:13
Hallo Klaus,

habe jetzt auch die neue Version auf dem BBB installiert.
Soweit läuft alles ohne Probleme.

Allerdings bekomme ich im FHEM-Log immer noch die Meldung beim Starten:
file /usr/local/bin/gpio doesnt exist

Gruß Billy
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: klausw am 26 Juni 2014, 13:23:10
Zitat von: Billy am 26 Juni 2014, 10:50:13
habe jetzt auch die neue Version auf dem BBB installiert.
Soweit läuft alles ohne Probleme.
super, auch mit deinstallierter Device::SMBus?
Das Attribut useHWLib wird eigentlich nicht benötigt. IOCTL wird per default genutzt.

Zitat von: Billy am 26 Juni 2014, 10:50:13
Allerdings bekomme ich im FHEM-Log immer noch die Meldung beim Starten:
file /usr/local/bin/gpio doesnt exist
Das verstehe ich im mom nicht.
Du kannst mit Deinen I2C Geräten kommunizieren?
Ich bekomme diese Meldung nur, wenn ich das Attribut swap_i2c0 setze.
Ist es die einzige Fehlermeldung? 
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: klausw am 26 Juni 2014, 13:44:52
Zitat von: Billy am 26 Juni 2014, 10:50:13
Allerdings bekomme ich im FHEM-Log immer noch die Meldung beim Starten:
file /usr/local/bin/gpio doesnt exist

du nutzt RPI_GPIO, richtig? ;)

Dort wird diese Fehlermeldung erzeugt.
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: Billy am 26 Juni 2014, 15:30:36
Hall Klaus!

Mit deinstallierter Device::SMBus sieht es jetzt so aus und funktioniert! :)
Deinstallieren von einem CPAN Modul ist ja etwas aufwändiger! :'(
----------------------------------------------
DEF   1
DeviceName         /dev/i2c-1
NAME                   I2C_BB
NOTIFYDEV          global
NR                       20
NTFY_ORDER       50-I2C_BB
STATE                  Ok
TYPE                    RPII2C
ioctl_ph_exists   1
-----------------------------------------------

Ja ich nutze/teste  RPI_GPIO!

Und was mache ich jetzt mit der Fehlermeldung
file /usr/local/bin/gpio doesnt exist

Gruß Billy
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: klausw am 26 Juni 2014, 16:09:50
Hi Billy,

Zitat von: Billy am 26 Juni 2014, 15:30:36
Mit deinstallierter Device::SMBus sieht es jetzt so aus und funktioniert! :)
Deinstallieren von einem CPAN Modul ist ja etwas aufwändiger! :'(
Super!
Eben, daher hatte ich mich da nicht rangewagt.
Das ist grundsätzlich auch nicht nötig. Aber bei Neuinstallationen kann man sich Device::SMBus dann einfach sparen.
Ausserdem gab es da immer mal Probleme bei der Installation.


Zitat von: Billy am 26 Juni 2014, 15:30:36
Ja ich nutze/teste  RPI_GPIO!

Und was mache ich jetzt mit der Fehlermeldung
file /usr/local/bin/gpio doesnt exist

Die darfst Du behalten  8)
Du hast doch sicher sowieso eine mod Version, aus der Du das pud_resistor Attribut entfernt hast?

Wie gesagt, ich arbeite an einem Update von RPI_GPIO. Dann wird auch die Fehlermeldung weg sein.

ICh sehe gerade, das ich im letzten Post nur nen halben Satz am Ende geschrieben habe..also nochmal:
existiert bei euch eine Gruppe namens gpio.

grüße
Klaus
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: RogerBE am 27 Juni 2014, 23:04:27
Hallo Klaus,

Benutzer fhem in Gruppe i2c hinzugefügt: Läuft  :D

Gruß
Roger
Zitat von: klausw am 23 Juni 2014, 10:35:16
Hallo Roger,
Jetzt erinnere ich mich wieder  8)
Ok, das ist recht übersichtlich.

Ich weiss nicht, wie es beim cubie ist. Beim raspberry sind i2c-0 und i2c-1 in der usergruppe i2c.
Vielleicht reicht es auch den user fhem in diese Gruppe mit einzutragen.
Könntest Du das mal testen?

Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: klausw am 27 Juni 2014, 23:46:58
Hi Roger,
Zitat von: RogerBE am 27 Juni 2014, 23:04:27
Benutzer fhem in Gruppe i2c hinzugefügt: Läuft  :D
Ohne Modifikationen in rc.local?
Also nur hinzufügen zur Gruppe i2c und das war's?
Das macht's natürlich noch einfacherer 8)
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: Billy am 28 Juni 2014, 10:09:19
Zitat von: klausw am 26 Juni 2014, 16:09:50
Hi Billy,

ICh sehe gerade, das ich im letzten Post nur nen halben Satz am Ende geschrieben habe..also nochmal:
existiert bei euch eine Gruppe namens gpio.
grüße
Klaus

Also nochmal, eine Gruppe gpio existiert bei mir auf dem BBB nicht.
Allerdings habe ich eine Gruppe i2c:x:114:fhem
d.h. fhem ist Teil der Gruppe i2c ?

Gruß Billy
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: klausw am 28 Juni 2014, 12:41:51
Zitat von: Billy am 28 Juni 2014, 10:09:19
Also nochmal, eine Gruppe gpio existiert bei mir auf dem BBB nicht.
Allerdings habe ich eine Gruppe i2c:x:114:fhem
d.h. fhem ist Teil der Gruppe i2c ?
Genau, damit sollte das I2C Modul direkt funktionieren.
Die GPIO haben damit aber nix zu tun.
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: betateilchen am 11 Juli 2014, 13:38:10
nach dem Urlaub nun mal ein Update gemacht und weitergetestet:

Nach komplettem Entfernen der Hipi-Tools und der SMBus Perl Library funktioniert alles wie gewünscht. Auch das Swappen des I2C auf dem Raspberry. Gute Arbeit :)
Titel: Antw:I2C für Raspi BBB Cubie etc.
Beitrag von: klausw am 11 Juli 2014, 14:18:32
Zitat von: betateilchen am 11 Juli 2014, 13:38:10
nach dem Urlaub nun mal ein Update gemacht und weitergetestet:

Nach komplettem Entfernen der Hipi-Tools und der SMBus Perl Library funktioniert alles wie gewünscht. Auch das Swappen des I2C auf dem Raspberry. Gute Arbeit :)
Sehr schön, ich habe es inzwischen auch an einer frischen Installation getestet und konnte dabei noch ein paar Schritte aus der Vorbereitung entfernen.
Dann kann ich mich ja wieder an den usb-i2c Adapter machen ;)