Posts by Isegrimm_666

    Hallo,Dennis

    Ich kann mir auf die Schnelle keinen sinnvollen Einsatz dafür vorstellen. Ich habe die LED an einem Pin angeschlossen und während des Programmablaufs schließe ich an den Pin auch nichts anderes an. Wie beschrieben, zum "spielen" oder experimentieren kann es hilfreich sein.

    Grüße

    Dennis


    Genau in der Phase bin ich noch ... ich probiere, teste und versuche Python mit praktischer Anwendung zu lernen.


    Die Gpiozero-Dokumentation habe ich mir auch gebookmarked (und daraus auch das Grundgerüst meines Ursprungscripts übernommen). Sehr hilfreich und anspornend.


    Grüße

    Stefan

    So ....


    ... offensichtlich muss man erst mal was essen, damit alles klappt.


    Der neue - und nun fehlerfreie - Code:

    Das Problem war wirklich, dass ich einmal die Deklaration außerhalb der Schleife legte ... und damit im zweiten Durchlauf (nach den "close()"-Bedingungen) Python nicht mehr wusste, was eine led ist.

    Ich habe nun also die Deklaration an den Anfang gelegt und - auch hier dem Ratschlag folgend - nach den "close()"-Bedingungen der ersten Deklaration die zweite (mit dem Powermanagement) folgen lassen, bevor der Dimm-Prozess begann.


    Ergebnis:

    Die LEDs schalten jetzt in der Reihenfolge ... rot --> gelb --> grün --> alle aus ... und dimmen danach zusammen von 0 --> 100 auf.


    Nach dem ersten Durchlauf stellte ich fest, das der zweite Durchlauf nicht mit der Aufblinken der roten LED begann (wie er programmgemäß sollte und wie auch der erste begann), sondern mit der gelben. Ich bin dann das Script in Einzelschritten im Debugmodus durchgelaufen und konnte keinen Fehler feststellen. (Anfängerfehler: Ich hätte den Schleifenzähler vorher von 100 auf 10 setzen sollen ... X/ )


    Ich dachte mir, das die Anweisung "pwmledred.close()" wohl noch nicht korrekt abgearbeitet wurde (es kam aber auch keine Fehlermeldung) und verpasste dem Script am Ende eine Denkpause von einer Sekunde.

    Jetzt startet das Script auch korrekt mit der roten LED und läuft durch bis zum Sankt Nimmerleins-Tag.

    Danke für Eure Tipps und Anregungen.

    Greetz

    Stefan


    P.S. hyle : Ich werde im nächsten Schritt Deinen Hinweis mit dem pauschalen close testen ... hier war es mir sehr lehrreich, alle Schritte im einzelnen zu begreifen.

    Hi RaspiDan ...


    Ich habe mal zu Hause zwei Apachen unter einer DynDns-Adresse betrieben ... mit Sockets.

    Der erste Apache antwortete standardmäßig auf Anfragen auf Port 80 ... der andere auf Anfragen auf Port 555.

    Im Router werden die Anfragen dann auf die entsprechenden Maschinen mit den Portnummern gem. der Sockets umgeleitet:

    http://your.domain.dyndns.org ---> Apache 1 (offiz. Webserver)

    http://your.domain.dyndns.org:555 ---> Apache 2 (ein anderer Webserver)


    Greetz

    Stefan

    Ich hab in der Zwischenzeit (und jetzt ist mein Essen wieder kalt *g) das Script in Abschnitten in ein neues kopiert und den ersten Abschnitt mal laufen lassen ....:



    Deine Annahme war richtig.

    Das Statement "led17.close()" hat die Fehlermeldung hervorgerufen. Da ich am Ende die Variable schließe (so meine Erklärung), die Deklaration aber vor der Schleife kommt, kann er mit der nachfolgenden Bedingung "on" nichts anfangen ...

    Als ich die "close"-Anweisungen auskommentiert hatte, lief dieser Teil des Scripts einwandfrei durch ...

    Hi Bertthias ...

    Hab ich umgesetzt (wenn ich Dich richtig verstanden habe):


    Und trotzdem kommt die Fehlermeldung:

    Entweder habe ich Deinen Vorschlag falsch verstanden (und umgesetzt) ... oder DAS ... war's dann nich *g

    Greetz
    Stefan

    ... Mein Raspberry Pi lief über ein Jahr lang einwandfrei und wurde hauptsächlich für PiHole und Apache2 verwendet. ...

    Hi Buzhibi ...

    Mal kurz 'n Schuß ins Blaue dazu:

    Hast Du den Webserver mit einer externen Anbindung laufen ... also greifst Du von extern auf Deinen Webserver zu, ... oder ist er nur in Deinem lokalen Netz verfügbar?

    Falls Du den ersten Teil der Frage bejahst ...
    Hast Du Winnetou mit einer Firewall abgesichert und nur bestimmte Zugriffe zugelassen? (Die Verwendung in Kombination mit einem Pi-Hole lässt mich da eher anderes vermuten.)

    Meine Vermutung ist eher, das Du den Apachen "zu offen" nach außen hast und hier ggf. ein Bot versucht hat, den Apachen (und/oder das OS) zu kapern.

    Eine andere Möglichkeit wäre, dass die parallele Verwendung der beiden Dienste die Schreib-/Lesezugriffe stark ansteigen lässt, was der SD-Karte nicht wirklich gut tut ... hier sollten zwei RBs genutzt werden.


    Greetz
    Stefan

    Hallo zusammen ...

    ... mein erster Beitrag bei Euch ... und schon direkt die Anfrage nach Hilfe :)


    Leider hat die Nutzung der SuFu im Forum noch keine Klärung gebracht.


    Zu mir ... :

    Ich bin Informatiker, 58, alter Linuxer und beschäftige mich seit kurzem mit dem Raspberry (4B) und Python auf Beginner-Level. Ich bin da im Netz auf diverse Anfänger-Tutorials gestoßen die einen step-by-step durch die Anfänge führen ... ihr kennt die Links sicher in und auswendig.

    Begonnen habe ich mit dem Klassiker "LED on/off". Das ursprüngliche Script läuft auch absolut perfekt durch ... und - so wie der Spaß eben mit den kleinen Erfolgen kommt - habe ich das Script auf drei LEDs erweitert und dann mit einigen Snippets aus dem Netz erweitert.


    Das Problem ... :

    Auch meine Erweiterung zeigte - nach einigen anfänglichen Fehlern, die Kraft Netzrecherche behoben werden konnten - Erfolge ... alles lief gut durch. Nur wird mir zum Ende eine Fehlermeldung gezeigt, die ich nicht nachvollziehen kann. Außerdem wird auf eine Zeile in einer offiziellen Datei verwiesen, die ja eigentlich fehlerfrei sein müsste, aber wohl durch mein Script ein Interpretationsproblem hat. Und ... das - wie gesagt - verstehe ich nicht.

    Mein "Patchwork"-Script:


    Und hier die Fehlermeldung:

    Ich benutze auf dem Raspberry https://thonny.org/Thonny ... der mir als IDE für Python-Anfänger empfohlen wurde und bis jetzt auch sehr hilfreich war. (Falls bessere Vorschläge verfügbar sind ... ich bin da ganz Ohr).


    Ich habe die Datei, auf die Python in seiner Fehlermeldung referenziert, mal angehängt (ich wollte sie, wegen ihres Umfanges, nicht auch noch einfügen).

    Meine Fragen sind:

    Warum tritt die Fehlermeldung auf?
    Der GPIO (17) ist doch korrekt addressiert und wird auch wieder abgeschaltet ... die Ansprache der LEDs funktioniert auch.

    Was sagt die Fehlermeldung im zweiten Teil (also dem Verweis auf die Zeilen in der _init_.py) aus und ... warum tritt auch diese auf?

    Und ... wie kann ich sie (beide) verhindern? :)

    Vorab schon mal Danke für die Hilfe ...

    Gruß

    Stefan