Beiträge von Adiamus
-
-
-
Moin Zusammen ,
ich hab auf meinem neuen 3b+ ein NFS Share eingebunden, owncloud 10 installiert und das Share als Speicherort für die Daten angegeben.
Owncloud funktioniert, habe meinen Admin account und einen User. Funktioniert alles, Daten rauf, Daten runter...
Nur wenn ich einen weiteren User anlege kann man sich mit dem nicht einloggen, nichtmal wenn ich ein Passwort vergebe und genau dieses versuche.
Im Webfronten erscheint nur die Meldung das das Passwort falsch wäre....
Jemand ne idee?
-
Moin Zusammen,
hat jemand eine Alternative dafür:
mac = commands.getstatusoutput('cat /sys/class/net/wlan0/address')
Ich komme mit dem subprocess modul nicht zurecht und commands.getstatusoutput war damals so schön einfach in der Handhabung.
-
Moin ,
wisst ihr noch vor Ewigkeiten als ich dieses kleine Projekt hatte?
Dachte mir ich gebe mal nach endloser Zeit Info über das was passiert ist.
Nun angefangen zu basteln hatte ich zu Begin meiner Ausbildung.
Nach 3 Jahren stand fest dass wir ein Gesellenstück in Form einer Projektarbeit abgeben müssen.
Ratet mal was ich gemacht habe
Da ich bis zu diesem Zeitpunkt keine Meilensteine erreicht hatte habe ich das Konzept abgespeckt und mir neue Hardware besorgt:
1 RaspiZero 1.0 (total überteuert für 40€ aus Polen)
1 BNO055 von Adafruit
weiter verwendet habe ich nur das Ultimate GPS
Wem jetzt noch nichts auffällt dem möchte ich hier das googlen ersparen:
Die verwendeten Pi's hatten alle einen Bug (weiß nicht ob er bei den neuen noch existiert).
Clockstretching ... der Pi erkennt das Signal des BNO auf der I2C Schnittstelle nicht und alle gelesenen Sensorwerte sind Müll.
(Warum benutzt er nicht UART??? ; (da hängt schon ein GPS Modul dran ))
Eine ebay Bestellung später war ich Besitzer von 5 Arduino Pro Mini (geiler Stoff )
Noch fix nen Sketch zusammengeklimpert und schon hatte ich anständige Werte.
Im Laufe unzähliger Bestellungen hatte ich mir ein USB OTG HUB mit 3 Ports und Ladeanschluss bestellt ... eine der Buchsen habe ich entfernt und fest einen UART USB Wandler aufgelötet (klein, dreckig und zuverlässig).
Auf das Skript in Pyton mit PyGame gehe ich hier nicht weiter ein aber Großen Dank an meigrafd, root und __deets__
Die Prüfung war im Februar 2017, das hier wollte ich dieses Jahr noch loswerden.
over and out
-
Moin ,
ich hoffe ich poste jetzt nicht im Falschen Teil des Forum aber ich vermute das es was mit dem pHAT DAC zu tun hat.
also:
Ein Pi Zero steckt auf einem pHAT DAC.
Der ist installiert und funktioniert super.und jetzt kommt pyttsx
espeak installiert, per pip install pyttsx installiert
und diesen code laufen lassen:
finde bei meiner googelei nichts, vieleicht wisst ihr ja mehr mit dieser Ausgabe anzufangen:
[code=php]running speech-test.py...
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.front
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround21
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround21
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround40
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround41
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround50
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround51
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround71
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.iec958
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.iec958
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.iec958
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
ALSA lib pulse.c:243:(pulse_connect) PulseAudio: Unable to connect: Connection refusedALSA lib pulse.c:243:(pulse_connect) PulseAudio: Unable to connect: Connection refused
ALSA lib pcm_direct.c:896:(snd1_pcm_direct_initialize_slave) slave plugin does not support mmap interleaved or mmap noninterleaved access
ALSA lib pcm_dmix.c:1034:(snd_pcm_dmix_open) unable to initialize slave
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started
[/php]der Pi macht übrigens sehr üble geräusche wenn das Script läuft...
-
So, ich hab' das jetzt mal selbst ausprobiert. Kannst meiner Stirnhoehlenentzuendung danken, wegen der ich im Bett liege & nix besseres zu tun habeDas ist ein Bug in pygame. Den man eigentlich melden sollte, vielleicht mache ich das, aber die sind irgendwie gerade im Umbruch. Wie dem auch sei, die sind nicht auf multi-threading vorbereitet. Darum gibt es die Fehlermeldung. Aber ich habe einen Weg gefunden, daran vorbei zu kommen.
Python
Alles anzeigenfrom functools import partial from gpiozero import Button import pygame, time, os OK_EVENT = pygame.USEREVENT+1 BACK_EVENT = pygame.USEREVENT+2 PIN_DOWN = {'State':'Down'} PIN_UP = {'State':'UP'} def post_event(event, sentinel=[]): if not sentinel: pygame.init() sentinel.append(True) pygame.event.post(event) def main(): ok = Button(24) #(ok/feuer) back = Button(25) #(zurueck/menue) ok.when_pressed = lambda _e: post_event(pygame.event.Event(OK_EVENT, PIN_UP)) ok.when_released = lambda _e: post_event(pygame.event.Event(OK_EVENT, PIN_DOWN)) pygame.display.init() screen = pygame.display.set_mode((400,400)) pygame.init() clock = pygame.time.Clock() while True: print('tick') pygame.display.update() pygame.event.pump() for event in pygame.event.get(): if event.type == pygame.QUIT: pygame.quit() quit() if event.type == OK_EVENT: print 'Feuer!' print(event.State) clock.tick(10) if __name__ == '__main__': main()
Ein Hinweis: dein Code haette einen anderen Fehler geworfen, weil du auf "message" zugreifst. Gibt's nicht. Das Event-Objekt hat einfach die Attribute des Dictionaries, welches da uebergeben wird. Siehe meinen Code.
Danke für deinen Einsatz trotz Krankheit. Zu dieser Lösung wäre ich nie gekommen. Gute Besserung :thumbs1:
-
Moin ,
um diverse Fehler durch alte Bibliotheken, falsche configs und alten Müll zu eliminieren, habe ich eine frische SD Karte aufgesetzt und meinen letzten Codeschnipsel und Meigrafs letzten Codeschnipsel getestet.
Das Ergebniss:pygame event's scheinen generell zu funktionieren unr die userevents nicht:
[code=php]pi@Mark2:~/python/rebuild $ sudo python gpio140117meigraf.py
und los gehts!
event's
event's
event's
event's
event's
event's
event's
Traceback (most recent call last):
File "gpio140117meigraf.py", line 50, in <module>
print event.message
AttributeError: 'Event' object has no attribute 'message'
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/gpiozero/pins/rpigpio.py", line 232, in <lambda>
callback=lambda channel: self._when_changed(),
File "/usr/lib/python2.7/dist-packages/gpiozero/mixins.py", line 315, in _fire _events
self._fire_deactivated()
File "/usr/lib/python2.7/dist-packages/gpiozero/mixins.py", line 348, in _fire _deactivated
super(HoldMixin, self)._fire_deactivated()
File "/usr/lib/python2.7/dist-packages/gpiozero/mixins.py", line 294, in _fire _deactivated
self.when_deactivated()
File "gpio140117meigraf.py", line 31, in <lambda>
back.when_released = lambda: pygame.event.post(GPIO_BACK_UP_event)
pygame.error: video system not initialized
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/gpiozero/pins/rpigpio.py", line 232, in <lambda>
callback=lambda channel: self._when_changed(),
File "/usr/lib/python2.7/dist-packages/gpiozero/mixins.py", line 315, in _fire _events
self._fire_deactivated()
File "/usr/lib/python2.7/dist-packages/gpiozero/mixins.py", line 348, in _fire _deactivated
super(HoldMixin, self)._fire_deactivated()
File "/usr/lib/python2.7/dist-packages/gpiozero/mixins.py", line 294, in _fire _deactivated
self.when_deactivated()
File "gpio140117meigraf.py", line 28, in <lambda>
ok.when_released = lambda: pygame.event.post(GPIO_OK_UP_event)
pygame.error: video system not initialized
[/php]ich teste jetzt mal statt USEREVENTS einfach Tastaturevents zu posten.
mal sehen ob dass was wird ... :s
Automatisch zusammengefügt:
Moin ,
um diverse Fehler durch alte Bibliotheken, falsche configs und alten Müll zu eliminieren, habe ich eine frische SD Karte aufgesetzt und meinen letzten Codeschnipsel und Meigrafs letzten Codeschnipsel getestet.
Das Ergebniss:pygame event's scheinen generell zu funktionieren unr die userevents nicht:
[code=php]pi@Mark2:~/python/rebuild $ sudo python gpio140117meigraf.py
und los gehts!
event's
event's
event's
event's
event's
event's
event's
Traceback (most recent call last):
File "gpio140117meigraf.py", line 50, in <module>
print event.message
AttributeError: 'Event' object has no attribute 'message'
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/gpiozero/pins/rpigpio.py", line 232, in <lambda>
callback=lambda channel: self._when_changed(),
File "/usr/lib/python2.7/dist-packages/gpiozero/mixins.py", line 315, in _fire _events
self._fire_deactivated()
File "/usr/lib/python2.7/dist-packages/gpiozero/mixins.py", line 348, in _fire _deactivated
super(HoldMixin, self)._fire_deactivated()
File "/usr/lib/python2.7/dist-packages/gpiozero/mixins.py", line 294, in _fire _deactivated
self.when_deactivated()
File "gpio140117meigraf.py", line 31, in <lambda>
back.when_released = lambda: pygame.event.post(GPIO_BACK_UP_event)
pygame.error: video system not initialized
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/gpiozero/pins/rpigpio.py", line 232, in <lambda>
callback=lambda channel: self._when_changed(),
File "/usr/lib/python2.7/dist-packages/gpiozero/mixins.py", line 315, in _fire _events
self._fire_deactivated()
File "/usr/lib/python2.7/dist-packages/gpiozero/mixins.py", line 348, in _fire _deactivated
super(HoldMixin, self)._fire_deactivated()
File "/usr/lib/python2.7/dist-packages/gpiozero/mixins.py", line 294, in _fire _deactivated
self.when_deactivated()
File "gpio140117meigraf.py", line 28, in <lambda>
ok.when_released = lambda: pygame.event.post(GPIO_OK_UP_event)
pygame.error: video system not initialized
[/php]ich teste jetzt mal statt USEREVENTS einfach Tastaturevents zu posten.
mal sehen ob dass was wird ... :s
-
die Description auf dieser Seite erklärt zumindest warum diese Zeile nicht funktioniert hat ...
-
Kann ich die Überschrift ändern?
Ich kam leider noch nicht dazu deinen Code zu testen ... aber deine Anmerkungen ergeben Sinn
Werde mir das virtualdisplay Modul mal ansehen ...
Eins noch: warum hast du pygame.event.pump() auskommentiert?
Automatisch zusammengefügt:
Ich habe noch nicht verstanden wie ich meine Anwendung dazu bekomme das andere Display zu nutzen (das virtuelle).
Aber ich werde das gefühl nicht los das etwas hiermit zu tun hat. :s -
Jain
also in meinem Fenster ist nichts drin.
Aber ich habe ja auch nichts rein geschrieben.
Wenn ich die Maus über das schwarze Fenster bewege laufen auf der Konsole etliche Maus Ereignisse etc... (das ist ja normal)Python
Alles anzeigenfrom gpiozero import Button import pygame, time, os #os.environ["SDL_VIDEODRIVER"] = "dummy" pygame.display.init() screen = pygame.display.set_mode((400,400)) pygame.init() clock = pygame.time.Clock() ok = Button(24) #(ok/feuer) back = Button(25) #(zurueck/menue) OK_EVENT = pygame.USEREVENT+1 BACK_EVENT = pygame.USEREVENT+2 PIN_DOWN = {'State':'Down'} PIN_UP = {'State':'UP'} GPIO_OK_UP_event = pygame.event.Event(OK_EVENT, PIN_UP) GPIO_OK_DOWN_event = pygame.event.Event(OK_EVENT, PIN_DOWN) GPIO_BACK_UP_event = pygame.event.Event(BACK_EVENT, PIN_UP) GPIO_BACK_DOWN_event = pygame.event.Event(BACK_EVENT, PIN_DOWN) ok.when_pressed = lambda: pygame.event.post(GPIO_OK_DOWN_event) ok.when_released = lambda: pygame.event.post(GPIO_OK_UP_event) back.when_pressed = lambda: pygame.event.post(GPIO_BACK_DOWN_event) back.when_released = lambda: pygame.event.post(GPIO_BACK_UP_event) pygame.display.update() print 'und los gehts!' while True: pygame.display.update() pygame.event.pump() for event in pygame.event.get(): print "event's" if event.type == pygame.QUIT: pygame.quit() quit() if event.type == OK_EVENT: print event.message print 'Feuer!' if event.type == BACK_EVENT: print event.message print 'Menue' print # print event # print event.message clock.tick(10)
Oh und mir ist noch aufgefallen, jetzt wo ich per Chinch an einem Fernseher hänge:
Starte ich das Skript direkt am Pi macht er ein Fenster auf.
Starte ich das Skript per ssh geht der Pi in den Vollbildmodus.und wenn kein xserver läuft macht er ihn einfach auf
-
oha jetzt wirds lustig...Eigentlich wollte ich den Pi im Text-Modus laufen lassen da kein Display angeschlossen ist/wird.
Das mit den events finde ich aber gar nicht mehr soooo schlimm/uninteressant.
Pygame brauchte ich um möglichst schnell und unkompliziert Sounds auszugeben - was an sich ja gut lief...
Nur das die "Interrupts" (die ja keine sind) nicht mehr funktioniert haben nachdem ich alle Sounds eingearbeitet hatte...
oh und die Kontrolle der Last und der Geschwindigkeit über die pygame clock fand ich auch nicht schlecht...Die Schwierigkeit besteht darin das ich diese zwei GPIO Taster mit mehreren Funktionen innerhalb des Programms ausstatten muss.
also je nachdem ob der Spieler gerade im Menü ist oder im Spiel. ist der Knopf in die eine Richtung mit OK und in die andere mit ZURÜCK belegt oder mit FEUER und MENÜ.
weg vom Spieler / zum Spieler
MENÜ / FEUER #im Spiel
ZURÜCK / OK #im Menüwenn du eine bessere Alternative zu Pygame für mich hast immer her damit -> kann gerade keinen code posten aber der Fehler besteht auch mit einem echten Fenster...
-
Werde das Morgen mal testen ...
Ich muss das erst vorbereiten.Kann ich das Später umgehen?
ich will eigentlich weder den xserver starten noch ein Fenster haben... -
Du musst den Typ auch schon mit dem Typ vergleichen. Nicht mit dem Event.Frohes Neues
CodePad ist leider grade offline.
Habe das geändert, erhalte aber jetzt sobald ich event.message im Code lasse, folgende Fehlermeldung nach dem betätigen:
Könnte das etwas mit dem nicht wirklich vorhandenen Display zu tun haben?
(es läuft kein xserver und ich habe auch kein Display/Fenster/etc ...)Python
Alles anzeigenfrom gpiozero import Button import pygame, time, os os.environ["SDL_VIDEODRIVER"] = "dummy" pygame.display.init() screen = pygame.display.set_mode((1,1)) pygame.init() clock = pygame.time.Clock() ok = Button(24) #(ok/feuer) back = Button(25) #(zurueck/menue) OK_EVENT = pygame.USEREVENT+1 BACK_EVENT = pygame.USEREVENT+2 PIN_DOWN = {'State':'Down'} PIN_UP = {'State':'UP'} GPIO_OK_UP_event = pygame.event.Event(OK_EVENT, PIN_UP) GPIO_OK_DOWN_event = pygame.event.Event(OK_EVENT, PIN_DOWN) GPIO_BACK_UP_event = pygame.event.Event(BACK_EVENT, PIN_UP) GPIO_BACK_DOWN_event = pygame.event.Event(BACK_EVENT, PIN_DOWN) ok.when_pressed = lambda: pygame.event.post(GPIO_OK_DOWN_event) ok.when_released = lambda: pygame.event.post(GPIO_OK_UP_event) back.when_pressed = lambda: pygame.event.post(GPIO_BACK_DOWN_event) back.when_released = lambda: pygame.event.post(GPIO_BACK_UP_event) print 'und los gehts!' while True: pygame.display.update() pygame.event.pump() for event in pygame.event.get(): print "event's" if event.type == OK_EVENT: # print event.message print 'Feuer!' if event.type == BACK_EVENT: # print event.message print 'Menue' print print event # print event.message clock.tick(10)
[code=php]
und los gehts!
event's
Traceback (most recent call last):
File "buttontest_neu.py", line 45, in <module>
print event.message
AttributeError: event member not defined
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/gpiozero/pins/rpigpio.py", line 232, in <lambda>
callback=lambda channel: self._when_changed(),
File "/usr/lib/python2.7/dist-packages/gpiozero/mixins.py", line 311, in _fire_events
self._fire_activated()
File "/usr/lib/python2.7/dist-packages/gpiozero/mixins.py", line 343, in _fire_activated
super(HoldMixin, self)._fire_activated()
File "/usr/lib/python2.7/dist-packages/gpiozero/mixins.py", line 289, in _fire_activated
self.when_activated()
File "buttontest_neu.py", line 29, in <lambda>
back.when_pressed = lambda: pygame.event.post(GPIO_BACK_DOWN_event)
pygame.error: video system not initialized
[/php] -
Ah zu früh gefreut doch noch ein Bug drin
-
Nachdem ich da noch mal naeher drauf geschaut habe, ist da noch viel mehr Murks drin. Warum hast du nicht mal das befolgt, was in dem von mir verlinkten Stackoverflow Artikel gemacht wird? Deine Event-IDs sind *nicht* aus dem Wertebereich von USEREVENT und groesser. Das faellt dir auf die Fuesse, das ist nicht einfach so gemacht. Und ebenso steht da drin, wie man auf den Typ zugreift. Mit "event.type". Und mit "event.message" auf die individuelle Nachricht.Sorry dein Post war mir entgangen - wir haben wohl zur selben Zeit geschrieben.
Schaue es mir gleich mal an
Automatisch zusammengefügt:
Ich sehe da einige Probleme.Das wichtigste: du registrierst keine callbacks, sondern rufst den event-post-code einfach auf, und das Ergebnis (wahrscheinlich None) wird dann als callback registriert. Das ist Unfug.
Hier in der Doku steht, was da rein muss: https://gpiozero.readthedocs.io/en/v1.3.1/api_…on.when_pressed
Und das waere in deinem Fall am einfachsten zu reparieren durch ein
Codebttn1.when_pressed = lambda: pygame.event.post(GPIO_24_DOWN_event) #event wenn button 1 gedrueckt
Das zweitwichtigste: dieser Registrierung erfolgt *einmal*, vor der Ereihnisschleife! Nicht permanent wieder. Dein Code aendert sich doch auch nicht permanent, oder? Das ist im uebrigen IMHO auch die Erklaerung, warum da was "prellt". Du feuerst einfach permanent Ereignisse.
Noch ein paar stilistische Anmerkungen: du schreibst nutzlose Kommentare wie den oben, in denen einfach noch mal steht, was die Zeile macht. Das sieht man auch so. Kommentare sollten erlaeutern, *warum* man etwas macht, und nicht offensichtliches ("hier wird was importiert!") wiederholen. Und das ueblicherweise an einer Stelle, wo das warum ein bisschen mehr Nachdenken erfordert.
Ausserdem solltest du statt der ewigen Durchnummerierung mal vernuenftige Namen fuer deine Ereignisse und Buttons benutzen. Die haben doch bestimmt einen definierten Zweck, oder? Dann sollte das *danach* benannt werden, so das man beim lesen des Codes nicht immer noch mental nachhalten muss, wofuer verdammt noch mal Button 1 mit Event 234373 gut war...
Last but not least wuerde ich die Software-Entprellung nutzen, das ist einfacher.
Ich kümmere mich drum =)
Die nutzlosen Kommentare sind ... Politik ... Diplomatie trifft es ganz gut - ich lasse die hier zukünftig raus muss sie am Ende aber wieder einarbeiten ... (ist nicht auf meinen Mist gewachsen)
Automatisch zusammengefügt:Zitat
Und das waere in deinem Fall am einfachsten zu reparieren durch ein
Codebttn1.when_pressed = lambda: pygame.event.post(GPIO_24_DOWN_event) #event wenn button 1 gedrueckt
Das zweitwichtigste: dieser Registrierung erfolgt *einmal*, vor der Ereihnisschleife! Nicht permanent wieder. Dein Code aendert sich doch auch nicht permanent, oder? Das ist im uebrigen IMHO auch die Erklaerung, warum da was "prellt". Du feuerst einfach permanent Ereignisse.
Ach das ist nur eine Registrierung! Jetzt dämmert mir etwas ...
Öhm was ist Lambda? #16:50 WIe Geil ist das denn bitte? Inlinefunktionen!
Hier der Neue Code
SCHWARZE MAGIE!
sau gut funktioniert reibungslos und zuverlässig - Wünsche? Anmerkungen? Vorschläge? -
Moin ,
jetzt bin ich mal wieder etwas ratlos.Ich definiere ja Userevents:
CodeGPIO_24_UP_event = pygame.event.Event(24, PIN_UP) GPIO_24_DOWN_event = pygame.event.Event(24, PIN_DOWN) GPIO_25_UP_event = pygame.event.Event(25, PIN_UP) GPIO_25_DOWN_event = pygame.event.Event(25, PIN_DOWN)
(hier mal die Ausgabe von print event : <Event(25-UserEvent {'State': 'Down'})> )
Laut Doku ist der Typ des Events also 24 und 25 oder 24-UserEvent und 25-UserEvent?
Jetzt wollte ich mit (Klick mich) pygame.event.EventType mir den Typ holen, weiß das aber nicht recht anzuwenden.... (syntax error)
jemand eine Idee?
-
Abend,
gerade habe ich gelernt das weniger manchmal mehr ist.Ich hatte zwei entprellte Taster (mit Kondensator und Widerstand) an dem Arduino. Der hat als Impulsformer gearbeitet und auf zwei Pins dann 10ms Impulse ausgegeben die ich dann über einen Pegelwandler und zwei Pulldowns auf den Pi gelegt habe. Nur Stress und unerklärliche Fehler mit diesem Aufbau. Jetzt habe ich Stück für Stück reduziert und habe nur noch einen 100kOhm Pulldown pro Taster. Und siehe da, sauberes tasten ohne Schnickschnack
-
Moin
so hier der Code.Allerdings rätsele ich im Moment noch darüber wie ich meine Events richtig auswerte.
Und (aber ich denke das liegt noch an der Entprellung werde da gleich ein bisschen was löten) der Code gibt im Moment einen Haufen Events von den GPIO's aus ohne das ich auch nur in ihre Nähe gekommen bin. -
Jetzt hast du mich verwirrt
Ich bin von pygame weg gegangen weil es nicht "thread safe" sein soll ...
SDL sah halt gut aus und pySDL2 hat einen ganz guten Eindruck gemacht ...Dann lass uns bitte festnageln wie ich das machen soll.
Wenn es sein muss hantiere ich dann halt auch mit mehreren queues.mir läuft halt nur leider die Zeit davon.
also: pygame und gpiozero ? oder lieber anders?
Deadline ist 30. Januar.
aber wenn ich die GPIO's im Griff habe kann ich ja arbeiten ...