433mhz Steckdosen Steuerung

  • In die Config.php musst du den Server, Datenbanknamen, Benutzer und Passwort eintragen


    <?php
    class config{
    static $dbserver="localhost";
    static $dbuser="root";
    static $dbpwd="123456789";
    static $dbdb="homeauto";
    }
    ?>

  • Heyho,


    ich steuer jetzt schon seit einiger Zeit meine Steckdosen per Shell, funzt einwandfrei : D


    Ich wollte jetzt mal das Script von Bizkit83 probieren, hab aber ein kleines Problem. Mit Mysql bin ich leider noch nicht so bewandert. Wenn ich über phpmyadmin das .sql script importieren will bekomm ich immer folgenden Error zurück:



    Code
    MySQL meldet: 
    
    
    #1046 - No database selected


    Der Fehler hier tauch auch immer in der syslog auf wenn ich mich mit Test/Test einloggen will:

    Code
    [Sat Apr 20 23:18:37 2013] [error] [client 192.168.2.200] PHP Fatal error:  Uncaught exception 'Exception' with message 'Can't get user for authentication' in /var/www/homeauto/dbfunc.p
    0 /var/www/homeauto/login.php(14): dbfunc->getuserpwd('Test')\n#1 {main}\n  thrown in /var/www/homeauto/dbfunc.php on line 18, referer: http://192.168.2.204/homeauto/index.php?f=1



    Kann jemand von euch was damit anfangen? : D

  • Hallo FerretOutOfHell,


    Code
    #1046 - No database selected


    Wie die Fehlermeldung schon sagt hast du keine Datenbank ausgewählt. Man kann eine Tabelle nur in einer Datenbank erstellen. Entweder du musst vorher noch eine Datenbank erstellen oder eine bestehende Datenbank selektieren bevor du die Tabelle erstellst.


    Code
    [Sat Apr 20 23:18:37 2013] [error] [client 192.168.2.200] PHP Fatal error:  Uncaught exception 'Exception' with message 'Can't get user for authentication' in /var/www/homeauto/dbfunc.p
    0 /var/www/homeauto/login.php(14): dbfunc->getuserpwd('Test')\n#1 {main}\n  thrown in /var/www/homeauto/dbfunc.php on line 18, referer: http://192.168.2.204/homeauto/index.php?f=1


    Wie es scheint versuchen die PHP-Skripte auf die MySQL-Datenbank mit einem falschen Account zuzugreife. Hast du vielleicht vergessen den Benutzer in der zu diesen PHP-Skripten gehörenden Konfigurationsdatei zu ändern? Hier solltest du einen Benutzer angeben, welchen du vorher natürlich unter MySQL erstellt hast und welcher auch die nötigen Rechte auf die Datenbank/Tabellen besitzt.


    Gruß Georg

  • Ich habe eine fhem Integration für rcswitch (und andere Lösungen gebaut). Mit fhem bekommt man ein Webinterface und alle Möglichkeiten einer Timersteuerung etc. Das mag hier für den einen oder anderen spannend sein.


    Einfach die anhängende 00_GenShellSwitch.pm mit sudo nach /opt/fhem/FHEM kopieren und fhem neu starten ( sudo service fhem stop und dann sudo service fhem start).


    Danach kann man rcswitch basierte Kommandos wie folge absetzen:

    Code
    ### WOHZIMMER LESELAMPE ###
    define Wohnzimmer_Leselampe GenShellSwitch /home/pi/rcswitch-pi/send 11111 1 1 0
    attr Wohnzimmer_Leselampe group Licht
    attr Wohnzimmer_Leselampe room Licht



    Dabei definieren die letzen zwei Argumente den on/off Syntax und die Zeichen davor ein Kommando. Für on wird dann "Kommando on" und für off "Kommando off" zusammengebaut. Das ist so natürlich auch für andere Lösungen als rcswitch einsetzbar. GenShellSwitch erlaubt natürlich die Kommandos on und off, aber darüber hinaus auch toggle (umschalten) sowie on-for-timer (x Sekunden anschalten und dann wieder aus).


    Das Ganze geht natürlich auch mit der in Beitrag 53 geposteten Adaption von rcswitch, die dann alternativ auch den Intertechno Syntax erlaubt:

    Code
    ### WOHZIMMER LESELAMPE ###
    define Wohnzimmer_Leselampe GenShellSwitch /home/pi/rcswitch-pi/send a 1 1 1 0
    attr Wohnzimmer_Leselampe group Licht
    attr Wohnzimmer_Leselampe room Licht



    send muss für Nicht-Root ausführbar sein. Ich habe das ohne die Fummelei in sudoers per setuid-Bit gelöst:

    Code
    cd rcswitch-pi
    sudo chown root ./send
    sudo chmod 4711 ./send


    Damit wird send als root ausgeführt, auch wenn man es einfach per ./send aufruft.


    Die Datei muss ich mal die Tage im fhem Forum uploaden. Getestet habe ich mit der aktuellen fhem 5.4

  • Hallo zusammen,


    ich habe das Watterot-Funbkmodul am laufen und wollte nun die Reichweite erhöhen in dem ich mit einem externen Netzteil die Spannung von 5V auf 12V erhöhe.


    Das funktioniert aber nicht.


    Was mach ich denn falsch?

  • Hey Leute,


    ich habe mich auch an der Schaltung versucht, aber habe trotz der vielen Tipps immernoch Probleme.


    Zunächst mal mein System:

    • Elro AB440S/3C mit Hauscode 10101
    • RaspberryPi V2, 512MB


    Ich habe Schritt für Schritt die Anleitung befolgt, d.h. 5V Pin mit +, GND Pin mit - und GPIO17 (Pin 11) mit P1 auf der Fernbedienung verbunden (mit 8,2 kOhm und ca 5 kOhm und anschließend auch mit Batterie getestet). Zusätzlich wiringPi und rcswitch-pi installiert.


    Wenn ich jetzt Befehle wie "send 10101 1 1" schicke, sehe ich an der LED der Fernbedienung, dass etwas ankommt, allerdings tut sich bei den Steckdosen nichts.


    Eine Besonderheit: Ich habe nebenbei noch einen apache2 (für die spätere Web- bzw Appsteuerung) und xbmc auf dem Pi laufen.


    Was habe ich da übersehen, wo steckt der Fehler? Liegt es tatsächlich am Timing, was durch xbmc gestört werden könnte?


    NACHTRAG:
    Ich habe es auf einem zweiten Pi (ohne xbmc) probiert, und es hat auf Anhieb geklappt.
    Hat jemand von euch eine Idee wie ich die Steckdosensteuerung und xbmc vereinen kann, dass beides läuft?

  • Hallo Community,


    erstmal vielen Dank für das Tutorial von Bizkit83. Finde ich persönlich sehr gut.


    Trotzdem habe ich ein Problem:


    Ich habe den Webserver wie Hier in der Anleitung beschrieben installiert.


    Verbindung zur Datenbank habe ich, der Webserver läuft auch super. Jetzt ist das Problem das ich das Python-Script nicht ans laufen bekomme.


    Wo muss ich denn die PythonScripts hinkopieren und wie installiere ich sie?



    Sorry, aber ich bekomm es einfach nicht zum laufen. Was muss denn unter den "Systeminformationen" auf der Webseite für Zustände aktiv sein?
    Zur Zeit ist bei mir "ScriptExecute" aktiv.



    Ich hoffe Ihr könnt mir helfen.:danke_ATDE:

  • Hi,


    also ich habe diese WebIDE von Adafruit zur Programmierung von Python installiert.
    Zusätzlich UND wichtig ist, das du noch ein "plugin/addon" installierst, damit Python auch auf die SQL-DB zugreifen kann.


    Gruß Simon

  • Hi,


    vielen Dank, ich habe es gerade selbst ans laufen bekommen. Probiere aber gleich die WebIDE von Adafruit aus.:thumbs1:


    Ich finde Dein Projekt richtig Klasse, deswegen wollte ich mal nachfragen ob Du mit dem Timer schon weiter gekommen bist?


    Schöne Grüße

  • Ja bin ich.
    Werde bald mal das ganze nochmals Posten damit auch der Komplette Quellcode hier ist und die erweiterte Datenbank

  • Erweiterte Datenbank...


    Hört sich ja ziemlich cool an. Bin auf jeden Fall gespannt. Finde die Datenbankanbindung eine super Sache, einfach zu erweitern etc...

  • So, endlich habe ich es geschafft.


    Im Archive im Anhang findet ihr:


    homeAuto.sql -> Script für die DB
    homeAutoWeb (Verz) -> Html Dateien für den Webserver
    pythonProg (Verz) -> hier sind die neuen Python Scripte drin.


    Ihr müsst nur die Passwörter für root und DB-Namen anpassen und evtl beim DB-Script die User-Tabelle raus lassen.


    Gruß Simon

  • Hallo,


    ich möchte auch gerne meine Funksteckdosen per Rpi steuern lassen und habe mir daher von jemanden das nach dieser Anleitung umbauen lassen:


    http://www.xn--c-lmb.net/2012/…-dem-raspberry-pi_16.html


    Er hat es mir nun gestern vorbeigebracht und ich wollte es nun testen, doch irgendwie funktioniert das nicht.


    Sehe ich doch richtig, das die LED auf der Fernbedienung auch leuchten sollte, wenn ich mit ./send einen Befehl abschicke, oder?


    Das tut sie leider nicht, daher kann ich doch davon ausgehen das mit der Schaltung was nicht stimmt, oder?

  • Ich wollte mich hier nur bedanken für dieses großartige Projekt. Es hat mir die Basis zur Heimautomatisierung gegeben! THX! ;)
    Es laufen hier nun 7+3 Steckdosen (3 sind unterwegs). Einfach top!


    Habe übrigens die FHEM Integration benutzt, bietet alles was man braucht :)

    Edited once, last by betz0r ().

  • Hallo Nick,


    vielen Dank für das 00_GenShellSwitch script, funktioniert wunderbar um diverse Funksteckdosen anzusprechen.


    Noch toller waere es aber, wenn es neben "on-for-timer" auch noch "on-till" unterstützen wurde.
    Ich habe mal in den Code geschaut, aber Perl ist nicht so mein Ding, ich mache seit Jahren alles nur noch mit python.
    Und in die Innereien von FHEM habe ich mich auch noch nicht so richtig eingearbeitet.


    Koenntest Du diese Erweiterung noch einbauen?


    Tschau

    Kai

  • Guten Morgen,


    ich bin neu hier im Forum und komme gleich schon mit einer Frage um die Ecke :s


    wenn ich in der Konsole


    Code
    cd /root/rcswitch-pi
    ./send 11111 1 1



    eingebe, schaltet die Funksteckdose ein


    wenn ich aber in der FHEM Config


    Code
    ### WOHZIMMER LESELAMPE ###
    define Wohnzimmer_Leselampe GenShellSwitch /root/rcswitch-pi/send 11111 1 1 0
    attr Wohnzimmer_Leselampe group Licht
    attr Wohnzimmer_Leselampe room Licht


    eingebe, bleibt die Lampe dunkel... (/opt/fhem/FHEM/00_GenShellSwitch.pm hat 0666 Rechte)


    Hat jemand vielleicht eine Idee?


    Gruß rookee