Sensoren am Master und Slave

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

  • Den DHT musst Du nur am Slave anmelden. Die Susoers habe ich im Slave angepasst. Ob das nötig war, weiß ich nicht zu 100%.

    Auf jeden Fall muss auf dem Slave auch die DHT Adafruit Bibliothek installiert sein.

    Sensortransmitter am Slave konfigurieren. IP vom Master eingeben.

    Dann soll der Sensor im Master auftauchen.
    SHC Master B2+ WLAN sowie 1 Slave B2+, 2 Slave B+ und 2 Slave Raspi B. 5x Pi Cam; Imac mit OSX El Capitan; Iphone 6 plus; Ipad mini; Lenovo Android Tablet.
  • Die sudoers ist ja dafür da, dass entsprechende Kommandos mit root-Rechten ausgeführt werden, obwohl der aufrufende Benutzer nicht root ist.
    Da der Slave einen Schaltserver besitzt, musst du dort die sudoers auch dort entsprechend der dort verwendeten Funktionen anpassen.

    DHT...weiß ich grad nicht, da muss mal ein anderer was zu sagen. Ich würd aber sagen, dass du ihm am Slave anmelden musst, da ja laut Wiki beim Anmeldebefehl keine Information den verwendeten Raspberry (also eine IP) übergeben wird. Also kannst du davon ausgehen, dass wenn die Zeile am Master ausführst, dein DHT aber am Slave angeschlossen ist, das SHC das ja nicht riechen kann, und den DHT immer an dem Raspberry einträgt, an dem den Befehl ausführst.
    Gruß Dieter
    --------------
    Alle sagten: "Das geht nicht.". Dann kam einer, der wusste das nicht, und hat's einfach gemacht.
  • Hallo Dieter,

    das war jetzt aber mit der linken Hand am rechten Ohr gekratzt. :)

    Der Master ist der Empfänger und lauscht nur, was da so vorbei kommt. Der Slave sendet die Daten des DHT; DS; BMP oder was auch immer. Dafür müssen die entsprechenden Bibliotheken auf dem Slave vorhanden sein und im ST muss die IP des Empfänger, sprich Master stehen.
    Auf dem Master, wenn dort keine Sensoren angeschlossen sind, braucht man auch keine entsprechenden Bibliotheken.

    Aus dem Slave braucht man vermutlich die sudoers nicht. Ich habe sie zwar auf dem Slave angelegt, aber da als ST und SS auch ESP mit Sketchen gehen und es dort auch keine sudoers gibt, glaube ich, dass man sie nicht braucht auf dem Slave.
    SHC Master B2+ WLAN sowie 1 Slave B2+, 2 Slave B+ und 2 Slave Raspi B. 5x Pi Cam; Imac mit OSX El Capitan; Iphone 6 plus; Ipad mini; Lenovo Android Tablet.
  • Okay, also nochmal.

    In den sudoers sind die Kommandos eingetragen, die unter www-data ausgeführt ohne weiteres mit root-rechten laufen.
    Da nun der "Master" selbst keine Kommandos auf dem "Slave" ausführen kann, muss er also Befehle z.B. Neustart des Raspberry an den Schaltserver vom "Slave" übertragen und dieser führt nun den notwendigen Shellbefehl aus. Deswegen muss auch auf dem Slave in der sudoers auch die Berechtigung eingetragen werden, in diesem Fall

    Quellcode

    1. www-data ALL = NOPASSWD: /sbin/reboot, /sbin/halt
    Genauso muss (ich glaube das macht der Sensorempfänger) auf dem Slave die BMP.py und DHT.py zyklisch starten, und deren Results an den Master übermitteln. Also muss in den sudoers auf dem Slave auch

    Quellcode

    1. www-data ALL = NOPASSWD: /var/www/shc/shc/lib/external/python/dht.py
    2. www-data ALL = NOPASSWD: /var/www/shc/shc/lib/external/python/bmp.py
    rein, weil diese sonst dort vom Sensorempfänger nicht ausgeführt werden können.

    Genauso verhält es sich mit pilight, rcswitch, etc.
    Die sudoers muss immer auf dem Raspberry angepasst werden, wo auch die entsprechenden Kommandos gestartet werden.
    Wenn der Schaltserver und Sensorempfänger also auf einem Slave läuft, muss man das dort auch machen.

    Wenn der Master das alles per Remote-Shell selber machen könnte und würde, bräuchte man den Schaltserver und den Sensorempfänger auf dem Slave ja gar nicht starten.
    Gruß Dieter
    --------------
    Alle sagten: "Das geht nicht.". Dann kam einer, der wusste das nicht, und hat's einfach gemacht.
  • Das ist soweit richtig, bis auf den Sensorempfänger auf einem Slave. Den gibt es dort nicht. Den gibt es nur auf dem Master.

    Wenn wie bei mir der Master als reiner Master läuft, also ohne Sensoren, 433Mz Sender, dann brauch ich auf dem Master auch keine Sudeors für DHT, BMP, rcswitch
    SHC Master B2+ WLAN sowie 1 Slave B2+, 2 Slave B+ und 2 Slave Raspi B. 5x Pi Cam; Imac mit OSX El Capitan; Iphone 6 plus; Ipad mini; Lenovo Android Tablet.
  • rmjspa schrieb:

    Das ist soweit richtig, bis auf den Sensorempfänger auf einem Slave. Den gibt es dort nicht. Den gibt es nur auf dem Master.

    Wenn wie bei mir der Master als reiner Master läuft, also ohne Sensoren, 433Mz Sender, dann brauch ich auf dem Master auch keine Sudeors für DHT, BMP, rcswitch
    Dann halt der Sensorsender, ich hab ja geschrieben "ich glaube". Das ist letztlich auch für die generelle Aussage über die sudoers auch egal.

    aber du hattest oben geschrieben:

    rmjspa schrieb:

    Der Master ist der Empfänger und lauscht nur, was da so vorbei kommt. Der Slave sendet die Daten des DHT; DS; BMP oder was auch immer. Dafür müssen die entsprechenden Bibliotheken auf dem Slave vorhanden sein und im ST muss die IP des Empfänger, sprich Master stehen.
    Auf dem Master, wenn dort keine Sensoren angeschlossen sind, braucht man auch keine entsprechenden Bibliotheken.

    Aus dem Slave braucht man vermutlich die sudoers nicht. Ich habe sie zwar auf dem Slave angelegt, aber da als ST und SS auch ESP mit Sketchen gehen und es dort auch keine sudoers gibt, glaube ich, dass man sie nicht braucht auf dem Slave.
    Und das stimmt so nicht. Generell lauscht der "Master" nicht einfach so was vorbei kommt. Vielmehr empfängt er gezielt das, was ihm an seinem Port gesendet wird.
    In dieser Art der Installation, wie beim SHC, ist es eher so, dass ein Slave im Grunde fast das gleiche ist wie der Master, nur dass eben bestimmte Hintergundtask nicht gestartet werden (müssen), weil sie dort nicht benötigt werden (z.B. Redis, Webserver, Sheduler)
    Deswegen ist auch der Master gleichzeitig Slave, weil eben die auf dem Slave benötigten Prozesse (Schaltserver und Sensorsender) auch auf dem Master laufen, sofern eben dieser auch über entsprechenden Funktionen verfügen soll.
    Aber wenn man sich an die Installationsanleitung hält, laufen diese ja auch auf diesem.

    so, und da die Frage von dobi eben war, ob er die sudoers auch auf dem Slave benötigt, du aber geschrieben hat "Auf den Slave braucht man vermutlich die sudoers nicht", sah ich mich gezwungen das noch mal klar zustellen.

    Generell finde ich die Begriffe Master und Slave in diesem Zusammenhang nicht unbedingt glücklich, oder zumindest teilweise unglücklich.
    Die begriffe Sensorempfänger und sensorsender sind m.M.n. auch eher verwirrend, weil sie je nach Sichtweise nicht zweifelsfrei ihre Funktion durch ihre Bezeichnung klarstellen.
    Gruß Dieter
    --------------
    Alle sagten: "Das geht nicht.". Dann kam einer, der wusste das nicht, und hat's einfach gemacht.

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

  • Dieter,

    die Installation des Slave's ist grundlegend anders als die eines Masters. agent hat das hier im Forum mal vor ein paar Monaten geschrieben, aber es wurde nie in die Wiki aufgenommen und ist jetzt irgendwo in der Versenkung.

    Der SHC wird auf dem Slave z.B. gar nicht installiert. Es werden nur die Files vom Github kopiert. Ich habe das unter Anleitungen noch mal beschrieben.

    Die sudeors habe ich ja auch auf dem Slave, könnte mir aber vorstellen, dass man auch darauf verzichten könnte. Werde es bei Gelegenheit mal ausprobieren.

    Auf dem Master habe ich nur die sbin/halt. Da kein Sender, kein DHT, kein BMP und kein pilight installiert ist.

    Und der Master läuft wunderbar mit 5 Slaves, 1 ESP und 1 Arduino.
    SHC Master B2+ WLAN sowie 1 Slave B2+, 2 Slave B+ und 2 Slave Raspi B. 5x Pi Cam; Imac mit OSX El Capitan; Iphone 6 plus; Ipad mini; Lenovo Android Tablet.
  • rmjspa schrieb:

    Dieter,

    die Installation des Slave's ist grundlegend anders als die eines Masters. agent hat das hier im Forum mal vor ein paar Monaten geschrieben, aber es wurde nie in die Wiki aufgenommen und ist jetzt irgendwo in der Versenkung.

    Der SHC wird auf dem Slave z.B. gar nicht installiert. Es werden nur die Files vom Github kopiert. Ich habe das unter Anleitungen noch mal beschrieben.
    Das es hier irgendwo eine Anleitung für eine Slave gibt ist an mir vorbei gegangen. Das SHC auf dem Slave nicht installiert werden muss, ist ja irgendwie logisch, wenn man weiß, was bei der installation mit der install.php passiert und wie SHC z.Zt. funktioniert.
    Aber da die Installation selbst nicht im Wiki beschrieben steht, bin ich davon ausgegangen, dass dobi es ggf. einfach 2 mal installiert hat.

    Da DU auf dem Slave ja auch keine Sensoren usw. nutzt, kannst DU bestimmt darauf verzichten, da die ja auch nie ausgeführt werden. Aber dobi eben nicht.
    Gruß Dieter
    --------------
    Alle sagten: "Das geht nicht.". Dann kam einer, der wusste das nicht, und hat's einfach gemacht.