while Schleife im script (Abfrage pilight-receive auf bestimmten Wert)

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • Hallo Galaxia99,
      Dein Ansatz ist genau die Lösung, die ich schon seit einer Weile suche: Empfangen von Signalen eines 433MHz Senders
      und entsprechende Reaktion des SHC.
      Zur CPU Belastung durch pilight-receive: Schau Dir bitte mal diesen "Rauschfilter" an:
      pilight manual
      low-pass_filter
      pilight_firmware/circuit.png at master · pilight/pilight_firmware · GitHub
      Ich habe den mal aufgebaut, und die CPU Belastung geht dramatisch zurück.
      ohne Filter: 42% CPU
      mit Filter: 0,7 % CPU
      pilight-receive funktioniert in beiden Fällen gleich.

      Mein Problem im Moment: Wenn ich den pilight Service starte kann ich mit dem SHC keine Steckdosen schalten.
      Wie hast Du das gelöst? Ist das irgendwo beschrieben, und ich habe es nur noch nicht gefunden?
      Gruß
      Burkhard
    • ich habe die gleiche Steckdose im SHC einmal mit rcswitch und einmal mit pilight konfiguriert.
      Normal funktioniert das send von rcswitch. Wenn ich für Versuche den pilight service starte,
      geht send nicht mehr, sonder es muß pilight-send genommen werden.
      Die Dienste schließen sich irgendwie gegenseitig aus. Frag mich nicht, was dahinter steckt.

      Geil ist aber die dramatische Reduzierung der CPU Last durch den oben beschrieben "Rauschfilter":
      PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
      28855 root 20 0 113456 2868 2484 S 0,7 0,6 0:02.20 pilight-dae+

      Gruß Burkhard
    • Ich glaube, wir weichen hier zu stark vom eigentlichen Thema dieses Beitrags ab.
      Ich werde im Forum unter "eigene Erweiterungen" hierzu einen eigenen Beitrag
      schreiben: pilight-receive + Reduzierung CPU load.

      Ich kann immer nicht so lange warten. Habe mir die ATTINY45-20PU PDIP-8 für 1,19€
      bei Conrad bestellt.

      Das send von rcswitch sendet auch parallel zu pilight. Mit pilight-receive sehe ich
      diverse Protokolle, aber nicht mehr das von mir benötigte ELRO.

    • Hi,

      ich habe das Script, welches hier genutzt wurde etwas für mich umgebaut.
      Wie so oft funktioniert es ohne SHC prima, habe jetzt nur ein klitze kleines Problem in SHC.

      Shell-Script

      1. #!/bin/bash
      2. echo "Alarmanlage schaft geschaltet" > /home/pi/alarm/alarmon.txt
      3. sleep 2
      4. while true
      5. do
      6. [ ! -f /home/pi/alarm/alarmon.txt ] && break
      7. sudo timeout 5s /usr/local/bin/pilight-receive >> /home/pi/alarm/pilight_00.txt
      8. if grep '341367\|338432\|word3' /home/pi/alarm/pilight_00.txt; then
      9. # /usr/bin/pushbullet.sh "Tuer offen"
      10. echo "Alarm Fenster 1 ausgelöst" > /home/pi/alarm/alarm_executed.txt
      11. sudo /home/pi/domoticz/scripts/leinwand_an.sh
      12. sudo rm /home/pi/alarm/alarmon.txt
      13. else
      14. sudo rm /home/pi/alarm/pilight_00.txt
      15. fi
      16. done
      Alles anzeigen

      Wenn man auf "AN" klickt, wird das Script gestartet, das funktioniert auch, man sieht es daran, das die alarmon.txt erstellt wird,
      ebenso wie die pilight_00.txt

      Jetzt das aber: SHC springt nicht auf "AN" mit dem Haken.
      Erst wen ich mit dem "AUS" (Script zum löschen der alarmon.txt) wieder schalte, springt der Haken auf "AN".
      Wahrscheinlich weil dann das Script erst erfolgreich gelaufen ist?
      Wie kann ich das denn umgehen? jemand eine Idee?
      Muss sonst ja auch immer zwei mal ausschalten, damit der Haken wieder auf "AUS" ist.

      Später sollen auch verschiedene Scripts wegen Alarmierung laufen,
      vielleicht will man ja die Alarmanlage scharf haben und trotzdem eine der Zonen nicht aktiv etc.
    • Ich nutze Chrome. Und leider nein, damit kenne ich mich nicht aus.
      Hangel mich gerade Stückweise mit google und Halbwissen voran ;)

      Ich habe es jetzt so probiert, das geht auch nicht:

      Start aus SHC ein Script so: sudo /home/pi/alarm/alarm_all_on.sh

      Dieses Script (alarm_all_on.sh) startet mit folgenden Befehl das besagte Schleifenscript:

      Shell-Script

      1. #!/bin/bash
      2. sudo /home/pi/alarm/alarmon_00.sh & sleep 3 | pkill -USR1 alarm_all_on.sh
      3. exit
      Das funktioniert auch, also das Startscript (alarm_all_on.sh) wird nach Ausführung beendet.
      Da hab ich mir gedacht, das dann auch der Haken springen müsste, aber nein, tut er nicht.

      Das andere Script wird aber wie erwartet weiter ausgeführt.

      Jetzt hört es bei mir auf, denn das Schleifenscript muss ja immer laufen...

      Drücke ich jetzt den "AUS" Knopf wird das Schleifenscript beendet und der Haken springt... Krise, kein Idee mehr

      Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von mastadook () aus folgendem Grund: Ergänzungen

    • premo schrieb:

      mastadook schrieb:

      Ansonsten hätte ich keine Idee wie das gehen soll.
      Bei mir sind 3 Öffnerkontakte direkt mit dem RPi verbunden.In SHC 3x Eingänge angelegt die auf ein Low Signal reagieren
      Dadurch wird pro Kontakt eine Led und Summer aktiviert.
      Bei Interesse würde ich ein Schaltbild mit Beschreibung
      erstellen.
      Das sind doch Funkkontakte, wie soll ich die auf Eingänge legen?
      Aber wenn Du was hast gerne, bin für alle Hilfe dankbar.
    • Quellcode

      1. Uncaught Error: no such method 'icons' for button widget instance
      2. at Function.error (http://192.168.1.68/shc/rwf/inc/style/web/all/1-jquery.js:2:1821)
      3. at HTMLButtonElement.<anonymous> (http://192.168.1.68/shc/rwf/inc/style/web/all/2-jquery_ui.js:6:9070)
      4. at Function.each (http://192.168.1.68/shc/rwf/inc/style/web/all/1-jquery.js:2:2880)
      5. at n.fn.init.each (http://192.168.1.68/shc/rwf/inc/style/web/all/1-jquery.js:2:847)
      6. at n.fn.init.e.fn.(anonymous function) [as button] (http://192.168.1.68/shc/rwf/inc/style/web/all/2-jquery_ui.js:6:8872)
      7. at HTMLButtonElement.eval (eval at globalEval (http://192.168.1.68/shc/rwf/inc/style/web/all/1-jquery.js:2:2536), <anonymous>:66:56)
      8. at HTMLButtonElement.handle (http://192.168.1.68/shc/rwf/inc/style/web/all/1-jquery.js:3:10107)
      9. at HTMLButtonElement.dispatch (http://192.168.1.68/shc/rwf/inc/style/web/all/1-jquery.js:3:6404)
      10. at HTMLButtonElement.r.handle (http://192.168.1.68/shc/rwf/inc/style/web/all/1-jquery.js:3:3179)
      11. 1-jquery.js:2 Uncaught Error: no such method 'icons' for button widget instance
      12. at Function.error (http://192.168.1.68/shc/rwf/inc/style/web/all/1-jquery.js:2:1821)
      13. at HTMLButtonElement.<anonymous> (http://192.168.1.68/shc/rwf/inc/style/web/all/2-jquery_ui.js:6:9070)
      14. at Function.each (http://192.168.1.68/shc/rwf/inc/style/web/all/1-jquery.js:2:2880)
      15. at n.fn.init.each (http://192.168.1.68/shc/rwf/inc/style/web/all/1-jquery.js:2:847)
      16. at n.fn.init.e.fn.(anonymous function) [as button] (http://192.168.1.68/shc/rwf/inc/style/web/all/2-jquery_ui.js:6:8872)
      17. at HTMLButtonElement.eval (eval at globalEval (http://192.168.1.68/shc/rwf/inc/style/web/all/1-jquery.js:2:2536), <anonymous>:66:56)
      18. at HTMLButtonElement.handle (http://192.168.1.68/shc/rwf/inc/style/web/all/1-jquery.js:3:10107)
      19. at HTMLButtonElement.dispatch (http://192.168.1.68/shc/rwf/inc/style/web/all/1-jquery.js:3:6404)
      20. at HTMLButtonElement.r.handle (http://192.168.1.68/shc/rwf/inc/style/web/all/1-jquery.js:3:3179)
      21. error @ 1-jquery.js:2
      22. (anonymous) @ 2-jquery_ui.js:6
      23. each @ 1-jquery.js:2
      24. each @ 1-jquery.js:2
      25. e.fn.(anonymous function) @ 2-jquery_ui.js:6
      26. (anonymous) @ VM53:66
      27. handle @ 1-jquery.js:3
      28. dispatch @ 1-jquery.js:3
      29. r.handle @ 1-jquery.js:3
      30. 1-jquery.js:2 Uncaught Error: no such method 'icons' for button widget instance
      31. at Function.error (http://192.168.1.68/shc/rwf/inc/style/web/all/1-jquery.js:2:1821)
      32. at HTMLButtonElement.<anonymous> (http://192.168.1.68/shc/rwf/inc/style/web/all/2-jquery_ui.js:6:9070)
      33. at Function.each (http://192.168.1.68/shc/rwf/inc/style/web/all/1-jquery.js:2:2880)
      34. at n.fn.init.each (http://192.168.1.68/shc/rwf/inc/style/web/all/1-jquery.js:2:847)
      35. at n.fn.init.e.fn.(anonymous function) [as button] (http://192.168.1.68/shc/rwf/inc/style/web/all/2-jquery_ui.js:6:8872)
      36. at HTMLButtonElement.eval (eval at globalEval (http://192.168.1.68/shc/rwf/inc/style/web/all/1-jquery.js:2:2536), <anonymous>:66:56)
      37. at HTMLButtonElement.handle (http://192.168.1.68/shc/rwf/inc/style/web/all/1-jquery.js:3:10107)
      38. at HTMLButtonElement.dispatch (http://192.168.1.68/shc/rwf/inc/style/web/all/1-jquery.js:3:6404)
      39. at HTMLButtonElement.r.handle (http://192.168.1.68/shc/rwf/inc/style/web/all/1-jquery.js:3:3179)
      40. error @ 1-jquery.js:2
      41. (anonymous) @ 2-jquery_ui.js:6
      42. each @ 1-jquery.js:2
      43. each @ 1-jquery.js:2
      44. e.fn.(anonymous function) @ 2-jquery_ui.js:6
      45. (anonymous) @ VM53:66
      46. handle @ 1-jquery.js:3
      47. dispatch @ 1-jquery.js:3
      48. r.handle @ 1-jquery.js:3
      Alles anzeigen
      habe die Entwicklertools in Chrome aktiviert.
      Das was oben steht, war unter Errors zu finden, 3 mal, wahrscheinlich, weil ich 3 mal geklickt habe.
      Kann jemand damit was anfangen?

      Die anderen Buttons funktionieren alle einwandfrei


      Hat der Chef keine Idee mehr wie ich das Problem gelöst bekomme?
      Am Smartphone habe ich die selben Symptome und am Linux (nutze Chromium) Laptop auch.
      Mir wäre schon wichtig, das gelöst zu bekommen.

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von mastadook ()