Anfänger Problem mit Raspberry CUL

Begonnen von edition, 24 Mai 2016, 12:33:54

Vorheriges Thema - Nächstes Thema

edition

Hi

Also noch mal langsam.

Laut Busware soll ich beim PI 3 das SCC mit folgendem Befehl einbinden:
define SCC CUL /dev/ttyS0@38400 1234
Das hat nicht funktioniert, weil unter /dev kein ttyS0 vorhanden ist. Jetzt habe ich also eine neue SD Karte genommen und Raspbian Jessie darauf installiert. Die Karte in den Rspberry gesteckt und gestartet. Nach dem Start alles auf deutsch gestellt, WLAN eingerichtet und neu gestartet. Dann habe ich unter /dev nachgesehen, ob ttys0 vorhanden ist. Es war da. Dann habe ich update ausgefüht, neugestartet und wieder nachgesehen. ttyS0 ist immer noch vorhanden. Dann habe ich upgrade ausgeführt, neugestartet und wieder nachgesehen. Jetzt ist ttyS0 weg!

Die Datei /etc/initab ist unter Jessie nicht vorhanden. Da kann ich also nix löschen. Warum werde ich also darauf hingewiesen?
Die Datei /boot/cmdline.txt ist vorhanden. Auch da steht nix von ttyAMA0. Da kann ich also auch nix löschen. Den "if test !.... Text habe ich in /boot/cmdline.txt eingefügt.
Nach einem Neustart blinkt jetzt die LED auf dem Transreceiver. Wenn ich nun unter fhem
define SCC CUL /dev/ttyS0@38400 1234
eingebe und Enter drücke, stürzt die Anwendug ab!
Was ist jetzt wieder? Ich verzweifel hier langsam.

edition

KölnSolar

wird schon  werden ;)
jetzt blinkt die LED und Du jetzt hast Du das ttyS0 device ? Was stürzt ab ? FHE,M oder ? Dann schau mal ins Log von fhem, was als letztes passiert ist und bevor Du den fhem-Befehl absetzt nochmal über die geposteten Linux-commands nachsehen, was nun dort angezeigt wird.
Grüße, Markus
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Wernieman

Wenn Du ein upgrade machst, WAS wird denn upgegraded? apt-get (oder auch aptitude o.Ä.) sag es Dir ausführlich ....
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

edition

Hallo

Nur um es noch mal klar zu stellen: Ich arbeite gerade mit eier Art "Testinstallation" auf einer älteren 8GB SD Karte. Ich wollte herausfinden, warum ich auf meiner ursprünglichen Installation unter /dev kein ttyS0 mehr befindet. Das scheit zu verschwinden, wenn ich apt-get upgrade ausführe. Nach apt-get update war es noch vorhanden. Apitude update/upgrade habe ich nicht ausgeführt. ttyS0 ist zur Zeit auch noch vorhanden.
Zwischenzeitlich habe ich mich allerdings durch eine Anleitung führen lassen, die ich hier im Forum gefunden habe, die sich auf PI 3 und Jessie bezieht. Da wird die serielle Schnittstelle abgeschaltet. Dann kommt es zum "einfrieren" von fhem, wenn ich das SCC definiere. Schalte ich die serielle Schnittstelle wieder ein, ist das SCC wieder disconnectet.
Ich werde morgen früh noch mal alles auf Null setzen. Auch will ich sicherstellen, das ich überhaupt eine Firmware auf dem SCC habe. Da bin ich mir nämlich auch nicht so sicher. Da ich damit ja 433MHz Intertechno schalten will, soll ohnehin die dafür optimierte Variante drauf. Hier muss die Verbindung ja auch stimmen. Vielleicht komme ich ja da auf den Fehler.

Gruß
edition

edition

So, ich habe mich nochmal daran gesetzt und bin nun nach dieser Anleitung vorgegangen, die am Ende aufgelistet ist:
https://forum.fhem.de/index.php?topic=47046.0
Jetzt habe ich das SCC definiert, wie es bei busware beschrieben ist:
define SCC CUL /dev/ttyS0@38400 1234
Unter /dev ist ttyS0 nun auch vorhanden.
Ist aber mal wieder disconnected!
Im Log erscheint:
2016.05.28 12:30:04 3: Opening SCC device /dev/ttyS0
2016.05.28 12:30:04 1: PERL WARNING: can't getattr: Eingabe-/Ausgabefehler at ./FHEM/DevIo.pm line 319.
2016.05.28 12:30:04 3: Can't open /dev/ttyS0: Eingabe-/Ausgabefehler

Also wieder ein neuer Fehler, mit dem ich nix anfangen kann! Toll

Wernieman

Wei sieht denn die Berechtigung von ttyS0 aus, bzw. welche Rechte hat fhem.
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

edition

Hm, mal sehen, ob ich das überhaupt beantworten kann.
Wenn ich mit Filezilla auf den Raspberry zugreife und ins /dev Verzeichniss wechsel, kann ich sehen, das ttyS0 die Rechte crw-rw----, oder 660 hat. Beim fhem Verzeichniss unter /opt sind die Rechte auf crwxrwxrwx, oder 777 gesetzt und beim darunter liegendem FHEM Verzeichniss auch.

War das die Antwort auf die Frage, oder bin ich gerade schief gewickelt?

Wernieman

Bitte nicht mit Filezilla, sondern direkt per Konsole, d.h. "ls -lha" .. alles andere ist etwas .... vorsichtig zu handeln ...

Wir brauchen nicht nu die direkten Rechte, sondern auch, welcher User/Gruppen die Zugriffe haben.

Und wenn Du wisen willst, was fhem für rechte hat:
grep fhem /etc/passwd
grep fhem /etc/group
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

edition

OK

Also, wenn ich für das /dev Verzeichniss ls -iha ausführe, steht vor ttyS0 die Zahl 1107.

Bei grep fhem /etc/passwd kommt:
fhem:x:999:20::/opt/fhem:/bin/false
und bei grep fhem /etc/group komt nichts.

Da ist doch was falsch.

RaspiLED

Hi,
also der Befehl "ls -la /dev/ttyS*" listet uns die Rechte und die Dateien zur Hardware an. Hier sollte ttyS0 mit der dialout Gruppe und dem user root verknüpft sein (root:dialout).

Falls Sie nicht mit dialout verknüpft ist (root:root), kann fhem nicht darauf zugreifen.

Dann hilft für einen test ein "sudo chown root:dialout /dev/ttyS*".

Danach einmal fhem starten und dort im Log schauen ob das Device geöffnet werden kann.

Übrigens wird bei mir in der /etc/group Datei auch kein user fhem aufgeführt, aber der user pi ist in der gruppe dialout. Der Befehl "groups fhem" zeigt an in welchen Gruppen fhem ist. Der Befehl "groups" analog für den aktuellen Benutzer.

Gruß Arnd


FHEM auf Raspberry Pi, CUL, Signalduino, Intertechno, WifiLight2 mit H801 - ESP8266, ...
Raspberry Pi mit FHEM, CUL, Signalduino, MySensors, HomeBridge, Presence, WifiLight2, Bravia, ...

Wernieman

#25
Besser währe es , vor der Behebung erstmal zu wissen, WAS dort steht.

Kannst Du uns bitte den KOMPLETTEN output geben
ls -la /dev/ttyS*

Und bitte Zusätzlich:
grep 20 /etc/group

Wenn Dein Server Standard Debian, ist 20=dialout, aber besser prüfen.

Aber bitte nicht nur selber prüfen, sondern uns den Output geben. Besser zuviel posten als Zuwenig, denn:

Ohne Input kein Output
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

edition

OK

auf ls -la /dev/ttyS* folgt:
crw-rw---- 1 root dialout 4, 64 Mai 28 17:02 /dev/ttyS0

und auf  grep 20 /etc/group folgt:
dialout:x:20:pi

Sieht richtig aus, oder? Mehr kommt nicht.

Wernieman

Rechtemäßig sieht es gut aus .. aber
2016.05.28 12:30:04 1: PERL WARNING: can't getattr: Eingabe-/Ausgabefehler at ./FHEM/DevIo.pm line 319.
2016.05.28 12:30:04 3: Can't open /dev/ttyS0: Eingabe-/Ausgabefehler


Da muß ein Modulspezialist ran, ich kann es nicht ...
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

edition


Wernieman

Nur mal für die Fehlersuche, bei einem "echten" CUL muss bei folgendem ein Feedback kommen:

1) schalte fhem ab und kontrolliere, das es nicht "an" ist
ps aux | grep [f]hem

2) Mache 2! Konnektion (Terminal-Fenster) zum RasPI auf
3) bei folgenden den /dev/tty..... durch Deinen ersetzen
3a) Lese dauerhaft deinen CUL aus
tail -f /dev/tty.....
3b) Im 2. Fenster frage Deinen CUL nach der Version
echo "v" >/dev/tty....
4) im Fenster von 3a) soll eine Ausgabe erscheinen ...
z.B. bei mir (ist aber ein USB-Gerät)
[pcaSerial.10.1]

Available commands:
     ..,.. s    - send data packet
           l    - list devices
       <n> a    - turn activity LED on PB1 on or off
       <n> c    - config (0=fill, 1=load, 2=save, 3=erase)
       <n> d    - turn off device <n>
       <n> e    - turn on device <n>
  0x<hhhh> h    - set center frequency (Example 0xA6FE == Frequency - 868.9500MHz
       <n> p    - poll device <n>
       <n> r    - list recordings
       <n> q    - quiet mode (1=suppress TX and bad packets)
       <n> v    - version and configuration report

OK 24 1 4 6 200 148 0 0 0 0 0
OK 24 4 4 2 116 172 1 0 237 2 85
OK 24 2 4 13 60 22 1 5 152 1 0


Wenn das Kommt, hat Dein FHEM ein Problem. Wenn es NICHT kommt, Dein CUL ....

P.S: Bitte mit passenden Berechtigungen, hier also bitte als root
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html