SCC Busware 1101 unter Buster lite nicht mehr zu öffnen

Begonnen von Sonic, 06 Dezember 2019, 22:37:07

Vorheriges Thema - Nächstes Thema

isy

Stimmt. Habe ich auch gesucht und einen Eintrag von 2015 gefunden.
Der Parameter galt nur bis zum PI2.
Seltsam, dass damit die alte SSD lief..........

Theorie und Praxis  8) :P :-\ ;)
Ein Weg wird erst zu einem Weg, wenn man ihn geht

isy

Hallo zusammen,
ich habe noch etwas getestet.

Mit dem Parameter
core_freq=250
läuft der alte SCC stabiler.
Mit 500 MHz gibt es seitens Homematic schon mal Probleme mit Themen wie
ERR__protocol: CmdDel:1,ResndFail:1

Die treten bei 250 MHz nicht auf.

Gruß Helmut
Ein Weg wird erst zu einem Weg, wenn man ihn geht

DerHerbert

#92
Hi,
bin gerade dabei, einen RPi4 und CoC v1 mit FHEM einzurichten und auf Eure Diskussion gestoßen.
Da muss ich mal meinen Senf dazu geben  8)

Zitat von: Otto123 am 19 Dezember 2019, 16:02:47
sudo su
echo 17 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio17/direction
echo 1 > /sys/class/gpio/gpio17/value


Sollte GPIO 18 nicht auch auf 1 gesetzt werden? So war es zumindest in meinem alten Skript und in der Doku von busware (http://busware.de/tiki-print.php?page=COC_Installation_V1 -- Kapitel "Resetting / Booting the COC").
In der Doku zum SCC steht: "LOW level at GPIO18 is used to call the (avr109) bootloader. For normal operation leave it untouched or pull HIGH!". Mein Skript-Vorschlag müsste also beim CoC-v1_1  und beim SCC funktionieren.

Ich hatte auch Probleme (Fehlermeldungen) und folgendes gefunden:
https://elinux.org/RPi_GPIO_Code_Samples#Shell
For operating system versions prior to the raspbian Jessie release, the export and unexport of pins must be done as root. Since the raspbian Jessie release the pi user is a member of the group "gpio" and so control of the GPIO no longer requires a change to the root user. With Jessie, if using a script as in the code below, you'll need to put a 'sleep 1' command in between your 'export' and 'direction' commands to allow time for the operating system to set up the GPIO number specific direction file.

Ein "sudo su" ist also nicht nötig (fhem ist aber in die Gruppe "gpio" aufzunehmen) und ein "sleep 1" müsste noch nach dem "export" rein.

Der Code müsste dann also so ausschauen (das I2C-Interface muss mit raspi-config freigeschaltet sein und die i2c-tools müssen installiert sein, damit die Modell-Erkennung funktioniert):

#!/bin/ksh
MODEL=$(i2cdump -r 0x00-0x1f -y 1 0x50 b | awk -F "    " 'NR > 1 { L1=$2; getline; L2=(L1 $2); sub("..$", "", L2); print L2 }')
echo "found extension: ${MODEL}"
echo "resetting extension..."
if test ! -d /sys/class/gpio/gpio17; then echo 17 > /sys/class/gpio/export; fi
if test ! -d /sys/class/gpio/gpio18; then echo 18 > /sys/class/gpio/export; fi
sleep 1
echo out > /sys/class/gpio/gpio17/direction
echo out > /sys/class/gpio/gpio18/direction
echo 1 > /sys/class/gpio/gpio18/value
echo 0 > /sys/class/gpio/gpio17/value
sleep 1
echo 1 > /sys/class/gpio/gpio17/value
sleep 1


ABER: GPIO access via this legacy sysfs interface has been deprecated since version 4.8 of the Linux kernel (https://www.kernel.org/doc/Documentation/gpio/sysfs.txt). It will removed from kernel in 2020. The new way of doing GPIO is via the "descriptor-based" character device ABI (Application Binary Interface). You should do a research for Libgpiod (Library General Purpose Input/Output device) and start at https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/about/

Das kleine Skript müsste dann so ausschauen (Paket gpiod muss vorhanden sein, siehe Infos dazu: https://www.acmesystems.it/gpiod):

#!/bin/ksh
MODEL=$(i2cdump -r 0x00-0x1f -y 1 0x50 b | awk -F "    " 'NR > 1 { L1=$2; getline; L2=(L1 $2); sub("..$", "", L2); print L2 }')
echo "found extension: ${MODEL}"
echo "resetting extension..."
gpioset --background --mode=signal `gpiofind "GPIO18"`=1
gpioset --mode=time --sec=1 `gpiofind "GPIO17"`=0
gpioset --background --mode=signal `gpiofind "GPIO17"`=1
sleep 1


Was nicht so schön ist: Änderungen durch gpioset sind nicht persistent. Daher wird der Ausgang gesetzt und gpioset in den Hintergrund geschickt.

Grüße H.

Edit: Skripte getestet und angepasst.
Edit2: Hinweis auf GPIO18 beim SCC. Mein Skript-Vorschlag müsste also beim CoC-v1_1  und beim SCC funktionieren.
Edit3: Im Skript den Modelltyp des CoC/SCC auslesen und anzeigen. Das I2C-Interface muss mit raspi-config freigeschaltet sein und die i2c-tools müssen installiert sein, damit die Modell-Erkennung funktioniert, weil ein String aus dem eeprom ausgelesen wird.

Otto123

Hallo Herbert,

klingt interessant und richtig - allerdings alles im Konjunktiv :)

Ich habe die Wiki Artikel seinerzeit mit Hilfe einer "Trockenübung" und diesen beiden Threads erneuert :) ich habe selbst die betreffende Hardware nicht.
Am liebsten wäre mir, Du testest das aus und ergänzt das Wiki. Oder ich teste das später mal - habe aber auch keinen Pi4, das ist aber vielleicht nicht relevant.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

DerHerbert

#94
Hi Otto,

Zitat von: Otto123 am 08 Oktober 2020, 19:54:50
klingt interessant und richtig - allerdings alles im Konjunktiv :)

Ich habe die Wiki Artikel seinerzeit mit Hilfe einer "Trockenübung" und diesen beiden Threads erneuert :) ich habe selbst die betreffende Hardware nicht.
Am liebsten wäre mir, Du testest das aus und ergänzt das Wiki. Oder ich teste das später mal - habe aber auch keinen Pi4, das ist aber vielleicht nicht relevant.

ich habe gerade nochmal meine Skripte getestet und daher mein Post angepasst.
Bei mir funktioniert es. Wie aber die Amis sagen: "Your mileage may vary".
Wer selbst testen will: es sollte zumindest buster sein, da ist die Kernel-Version immerhin schon bei 5.4.

Es gibt wohl Verwirrung, welche GPIO anzusteuern sind (GPIO17/18 bzw. nur GPIO17 oder GPIO 22/27). Ich habe jedenfalls die Version, bei dem der CC1101 direkt aufgelötet ist, da muss ich die GPIO17/18 nehmen. Es gibt noch eine Version, bei dem ein PIM-CC1101 aufgesteckt wird und es gibt noch den SCC (siehe Bilder für alle drei im Anhang). Alle nutzen sie den CC1101 von Texas Instruments (https://www.ti.com/lit/ds/symlink/cc1101.pdf).
Das müsste sich doch  auslesen lassen?
Ich bekomme :
pi@RPi-FHEM ~ $ sudo i2cdump -y 1 0x50 b
0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef
00: 43 4f 43 20 56 31 2e 31 20 52 41 44 49 4f 20 4f COC V1.1 RADIO O
10: 4e 4c 59 20 32 30 31 33 2d 30 31 2d 31 39 0a ff NLY 2013-01-19?.
20: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
40: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................



Grüße, H.

misave

Hallo Otto ,

Ich glaube, dass du mir hier auf einigen meiner Baustellen begegnen wirst. Natürlich habe ich auf dem alten raspi einen ssc busware laufen für meine FS20 Komponenten.

Ich habe jetzt etliches gelesen bin mir aber nicht sicher, ob es nun eine anfängertaugliche Anleitung gibt wie sie damals der Hersteller auf seiner Seite hatte, die aber unter Buster nicht mehr geht.

Passt der Code-Schnipsel aus diesem thread von weiter vorne? Nummer finde ich nicht mehr. Die serielle Schnittstelle hatte ich schon bei der Einrichtung einer Bluetooth anwesenheitserkennung umgestellt wie im Wiki bezogen auf miniuart beschrieben ist.

Erneut danke.
Michael aus Jüchen

Raspi 2, 2XHMLan, SCC Busware, diverse HM und FS20 Komponenten,
Rpi 3 mit Buster lite und FHEM 6.0
IoBroker auf separatem Raspi 2, zig bee CONZ Stick, Nextcloud auf raspi2

Otto123

#96
Hi,

im Zweifelsfall solltest Du hier anfangen

Dort gibt es dann einen Link zum passenden Artikel hier im Thread ;)

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Mellowback

Hallo zusammen,

habe alles Anhand der Anleitung befolgt, leider mit folgenden ergbnis beim start des fhem service:


Failed to start fhem.service: Unit fhem.service failed to load properly: Invalid argument.
See system logs and 'systemctl status fhem.service' for details.


Info: Pi 2 Buster neu aufgesetzt Scc von Busware

Was habe ich falsch gemacht ?

Grüße

Otto123

#98
Hi,

Du hast einen Fehler in der Datei fhem.service produziert.
Wie sieht die aus? Wie hast Du editiert?
Was steht in /var/log/syslog?

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Mellowback

die Fehlermeldung schaut wie folgt aus:


pi@raspberrypi:~ $ sudo systemctl start fhem.service
Job for fhem.service failed because the control process exited with error code.
See "systemctl status fhem.service" and "journalctl -xe" for details.


folgendes steht in der Ssyslog:


Feb 17 10:41:59 raspberrypi systemd[1]: Stopped FHEM Home Automation.
Feb 17 10:41:59 raspberrypi systemd[1]: Starting FHEM Home Automation...
Feb 17 10:41:59 raspberrypi bash[506]: /home/pi/SCC.sh: Zeile 1: /sys/class/gpio/export: Keine Berechtigung
Feb 17 10:41:59 raspberrypi bash[506]: /home/pi/SCC.sh: Zeile 2: /sys/class/gpio/gpio17/direction: Keine Berechtigung
Feb 17 10:41:59 raspberrypi bash[506]: /home/pi/SCC.sh: Zeile 3: /sys/class/gpio/gpio17/value: Keine Berechtigung
Feb 17 10:41:59 raspberrypi systemd[1]: fhem.service: Control process exited, code=exited, status=1/FAILURE
Feb 17 10:41:59 raspberrypi systemd[1]: fhem.service: Failed with result 'exit-code'.
Feb 17 10:41:59 raspberrypi systemd[1]: Failed to start FHEM Home Automation.
Feb 17 10:41:59 raspberrypi systemd[1]: fhem.service: Service RestartSec=100ms expired, scheduling restart.
Feb 17 10:41:59 raspberrypi systemd[1]: fhem.service: Scheduled restart job, restart counter is at 5.
Feb 17 10:41:59 raspberrypi systemd[1]: Stopped FHEM Home Automation.
Feb 17 10:41:59 raspberrypi systemd[1]: fhem.service: Start request repeated too quickly.
Feb 17 10:41:59 raspberrypi systemd[1]: fhem.service: Failed with result 'exit-code'.
Feb 17 10:41:59 raspberrypi systemd[1]: Failed to start FHEM Home Automation.
Feb 17 10:42:15 raspberrypi systemd[1]: dev-serial1.device: Job dev-serial1.device/start timed out.
Feb 17 10:42:15 raspberrypi systemd[1]: Timed out waiting for device /dev/serial1.
Feb 17 10:42:15 raspberrypi systemd[1]: Dependency failed for Configure Bluetooth Modems connected by UART.
Feb 17 10:42:15 raspberrypi systemd[1]: hciuart.service: Job hciuart.service/start failed with result 'dependency'.
Feb 17 10:42:15 raspberrypi systemd[1]: dev-serial1.device: Job dev-serial1.device/start failed with result 'timeout'.
Feb 17 10:42:15 raspberrypi systemd[1]: Reached target Multi-User System.
Feb 17 10:42:15 raspberrypi systemd[1]: Starting Update UTMP about System Runlevel Changes...
Feb 17 10:42:15 raspberrypi systemd[1]: systemd-update-utmp-runlevel.service: Succeeded.
Feb 17 10:42:15 raspberrypi systemd[1]: Started Update UTMP about System Runlevel Changes.
Feb 17 10:42:15 raspberrypi systemd[1]: Startup finished in 5.466s (kernel) + 1min 32.041s (userspace) = 1min 37.507s.
Feb 17 10:42:15 raspberrypi systemd[1]: hciuart.service: Job hciuart.service/start failed with result 'dependency'.
Feb 17 10:42:15 raspberrypi systemd[1]: dev-serial1.device: Job dev-serial1.device/start failed with result 'timeout'.
Feb 17 10:42:15 raspberrypi systemd[1]: Reached target Multi-User System.
Feb 17 10:42:15 raspberrypi systemd[1]: Starting Update UTMP about System Runlevel Changes...
Feb 17 10:42:15 raspberrypi systemd[1]: systemd-update-utmp-runlevel.service: Succeeded.
Feb 17 10:42:15 raspberrypi systemd[1]: Started Update UTMP about System Runlevel Changes.
Feb 17 10:42:15 raspberrypi systemd[1]: Startup finished in 5.466s (kernel) + 1min 32.041s (userspace) = 1min 37.507s.


Otto123

#100
Wobei die Meldung jetzt ganz anders aussieht als Deine Erste!

Gut ohne zu wissen was Du genau getan hast bleibt es ein Ratespiel  :'(
Vermutung 1:
ZitatWenn fhem nicht Mitglied der Gruppe gpio ist funktioniert es nicht

Da FHEM jetzt angestartet wird  (versucht in Schleife zu starten?) bräuchte man auch die letzten Zeilen im FHEM Log.
https://wiki.fhem.de/wiki/FHEM_startet_nicht_-_Tipps_zur_Fehlersuche
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Mellowback

schwierig, da der Service im Moment nicht läuft, aber folgendes waren die letzten Zeichen:



pi@raspberrypi:~ $ tail -n 20 /opt/fhem/log/fhem-$(date '+%Y-%m').log
2021.02.17 10:38:40 3: CUL_HM set SZ_Fenster statusRequest noArg
2021.02.17 10:38:43 3: CUL_HM set SZ_Licht_L statusRequest noArg
2021.02.17 10:38:44 3: CUL_HM set SZ_Licht_R statusRequest noArg
2021.02.17 10:38:45 3: CUL_HM set SZ_Terrasse_Tuer statusRequest noArg
2021.02.17 10:38:46 3: CUL_HM set Arbeitszimmer_Fenster pct 100
2021.02.17 10:38:46 3: CUL_HM set SchaltaktorFussbodenheizung_Sw_01 statusReques                                                     t noArg
2021.02.17 10:38:47 3: CUL_HM set SchaltaktorFussbodenheizung_Sw_02 statusReques                                                     t noArg
2021.02.17 10:38:48 3: CUL_HM set SchaltaktorFussbodenheizung_Sw_03 statusReques                                                     t noArg
2021.02.17 10:38:49 3: CUL_HM set SchaltaktorFussbodenheizung_Sw_04 statusReques                                                     t noArg
2021.02.17 10:38:53 3: CUL_HM set Solarheizung statusRequest noArg
2021.02.17 10:38:53 1: No Logdevice /FileLog_PV/
2021.02.17 10:38:56 3: CUL_HM set WZ_Fenster statusRequest noArg
2021.02.17 10:38:57 3: CUL_HM set WZ_TerrasseFenster statusRequest noArg
2021.02.17 10:38:58 3: CUL_HM set WZ_TerrasseTuer statusRequest noArg
2021.02.17 10:38:59 3: CUL_HM set Wasserpumpe statusRequest noArg
2021.02.17 10:39:06 3: CUL_HM set BWlinks getConfig noArg
2021.02.17 10:39:24 3: CUL_HM set Arbeitszimmer_Fenster getConfig noArg
2021.02.17 10:40:01 3: CUL_HM set BWrechts getConfig noArg
2021.02.17 10:40:19 3: CUL_HM set Bad_Fenster_links getConfig noArg
2021.02.17 10:40:30 0: Server shutdown



ich habe übrignes nach deiner Anleitung gearbeitet (18 Dezember 2019, 09:43:39).

Danke schon mal für deine Unterstützung

Otto123

Na gut, das sieht nach einem geordneten shutdown aus?  :-[

Du meinst den Beitrag? https://forum.fhem.de/index.php/topic,106060.msg1002964.html#msg1002964
Das war aber nicht der Weisheit letzter Schluss!?
groups fhem
Wie sieht die Datei fhem.service aus?
Wie sieht die Datei /home/pi/SCC.sh aus?
Wie hast Du editiert?
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Mellowback

fhem.service:


# $Id: fhem.service 19235 2019-04-21 13:26:17Z betateilchen $

[Unit]
Description=FHEM Home Automation
Wants=network.target
After=network.target
#Requires=postgresql.service
#After=postgresql.service
#Requires=mysql.service
#After=mysql.service

[Service]
Type=forking
User=fhem
Group=dialout
WorkingDirectory=/opt/fhem
ExecStartPre=/bin/bash /home/pi/SCC.sh
ExecStart=/usr/bin/perl fhem.pl fhem.cfg
#ExecStart=/usr/bin/perl fhem.pl configDB
Restart=always

[Install]
WantedBy=multi-user.target


SCC.sh:


if test ! -d /sys/class/gpio/gpio17; then echo 17 > /sys/class/gpio/export; fi
echo out > /sys/class/gpio/gpio17/direction
echo 1 > /sys/class/gpio/gpio17/value


editiert habe ich über console nano.

Mellowback

Zitat von: Otto123 am 17 Februar 2021, 10:56:17
Wobei die Meldung jetzt ganz anders aussieht als Deine Erste!

Gut ohne zu wissen was Du genau getan hast bleibt es ein Ratespiel  :'(
Vermutung 1:
Da FHEM jetzt angestartet wird  (versucht in Schleife zu starten?) bräuchte man auch die letzten Zeilen im FHEM Log.
https://wiki.fhem.de/wiki/FHEM_startet_nicht_-_Tipps_zur_Fehlersuche

was muss ich bei der Gruppe machen ?