[gelöst] Probleme mit GPIO beim Raspberry

Begonnen von andies, 25 November 2020, 08:08:38

Vorheriges Thema - Nächstes Thema

andies

Ich bin gerade dabei, mir mit GPIOs einen Schalter zu bauen (andere Möglichkeiten wie Homematic etc. sind an der Stelle praktisch nicht möglich, ein RPi ist da aber). Nur blöderweise geht das nicht. Der GPIO soll mit python geschaltet werden, reagiert aber erst Sekunden (?) später. Ein Zugriff auf /sys/class/gpio/gpio27 etc ist nicht möglich. Ich habe schon den GPIO gewechselt, Anschluss neu gelötet: selbes Ergebnis.

Das ist alles merkwürdig. Es sieht nach einem Softwareproblem aus. Hat sich denn an den GPIOs mit Buster irgendwas geändert? Im Netz finde ich nichts.

cat /etc/os-release
PRETTY_NAME="Raspbian GNU/Linux 10 (buster)"
NAME="Raspbian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"

uname -a
Linux rasp 5.4.72-v7+ #1356 SMP Thu Oct 22 13:56:54 BST 2020 armv7l GNU/Linux

vcgencmd version
Oct 22 2020 14:07:06
Copyright (c) 2012 Broadcom
version 74e754ff8947c58d2773253f77f6f68a303188f8 (clean) (release) (start_x)
FHEM 6.1 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

andies

Raspbian neu installiert, Problem verschwunden.
FHEM 6.1 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

andies

#2
Und Problem wieder da. Ich bin mir inzwischen sicher, dass das ein Softwareproblem ist. Es entsteht, wenn mehrere Pakete installiert sind. Richtig einschränken konnte ich das noch nicht. Ich habe einen PullDown von 5k an dem GPIO und am GPIO die Spannung gemessen. Es ist alles wie im Lehrbuch: ,,On" sind 3,3V und ,,Off" sind 0,2V. Wenn man von 0 nach 1 schaltet, reagiert der GPIO sofort (sowohl 17 als auch 27; auch die Kontakte habe ich mir genau angeschaut); im Gegenzug erst nach bis zu 13 Sekunden. Das trifft auch auf den Befehl gpio readall zu.

Derzeit schaue ich mir pigpio an um zu sehen, ob man das verwenden kann. (Das Problem besteht dort nach wie vor.)

Sehr merkwürdig. Da ist das für das Gartentor verwenden will, kommt es eigentlich auf die genauen Sekunden nicht an. Aber woher weiß ich, ob das Problem nicht im Laufe der Zeit immer schlimmer wird?
FHEM 6.1 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

Adimarantis

Ist die GPIO richtig Konfiguriert (Interrupt)? Du scheinst das jetzt nicht in FHEM machen zu wollen, aber bei mir funktioniert ein einfacher Taster (schaltet die Beleuchtung meines LCD ein) so:
define GPIO25 RPI_GPIO 25
attr GPIO25 active_low yes
attr GPIO25 alias Taster
attr GPIO25 direction input
attr GPIO25 interrupt both


Gruß,
Jörg
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU) + RfxTrx433XL + 2xRaspberry 1
Module: 50_Signalbot, 52_I2C_ADS1x1x , 58_RPI_1Wire, (50_SPI_MAX31865)

andies

Danke für die Hilfe, Jörg. Das ist ein zweiter RPi, auf dem kein FHEM ist. Ich nutze sowohl gpio (via bash) und pigpio (mit python). Ich hatte noch ein weiteres Paket ausprobiert (RPi.GPIO), das hatte dasselbe Problem.
FHEM 6.1 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

Adimarantis

Also ich hab das gerade schnell auf meinem Raspberry Pi 1 der sowieso gerade zum Basteln auf dem Tisch stand getestet.
GPIO25 auf "IN", dann einfach mit 3.3v verbunden -> geht in gpio readall sofort auf 1 -> wieder weg -> geht sofort auf 0

Pfuscht dir hier irgendein anderer Prozess rein?. Habe dann leider auch keine Idee mehr.

Gruß,
Jörg
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU) + RfxTrx433XL + 2xRaspberry 1
Module: 50_Signalbot, 52_I2C_ADS1x1x , 58_RPI_1Wire, (50_SPI_MAX31865)

andies

ja, da muss ein anderer prozess dabei sein. Ich habe nur den RPi neu aufgesetzt und fast nichts installiert, deshalb wundert mich das.
Eventuell nehme ich mal einen anderen Pi. Ich muss schauen, ob ich noch einen habe. Dann wäre das eine hardware Sache, wenn es dann weg ist.
FHEM 6.1 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

andies

Ich habe ein wenig weiter gespielt und
raspi-gpio get 27
verwendet. Dieses Programm greift wohl direkt auf die GPIO zu. Wieder dasselbe: Wenn LOW auf HIGH, wird sofort gemeldet. Wenn HIGH auf LOW, dauert bis zu 20 Sekunden. Damit liegt es nicht an der Software, die ich verwende. Ich schaue mir jetzt mal raspi-gpio raw an, ich muss aber erstmal kapieren, was mir da ausgegeben wird.
FHEM 6.1 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

andies

So, ich habe die Ursache. Ich habe wiringPi deinstalliert und lese den GPIO mit
pigs get r 27
aus. Der Befehl reagiert sofort in beide Richtungen.
FHEM 6.1 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

Wernieman

hatte wiringPI nicht einige Probleme? Und Weiterentwicklung wurde eingestellt?
- 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

andies

FHEM 6.1 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

Frank_Huber

Zitat von: Wernieman am 28 November 2020, 15:19:36
hatte wiringPI nicht einige Probleme? Und Weiterentwicklung wurde eingestellt?
Ja, allerdings gibt es nur mit dem Pi4 Probleme mit den PullUp / PullDown.
Ansonsten lüppt das.