Information ausblenden
Das Digital Eliteboard ist ein Kostenloses Forum. Wenn du alle Bereiche sehen möchtest oder Fragen hast, musst du dich zunächst Registrieren.

Jetzt Registrieren

HowTo Rasperry Projekt Hausautomatik - Teil I Steuerung von Funksteckdosen

Dieses Thema im Forum "Raspberry Pi" wurde erstellt von lenny, 12. September 2012.

  1. facebraker
    Offline

    facebraker Newbie

    Registriert:
    22. Januar 2013
    Beiträge:
    16
    Zustimmungen:
    3
    Punkte für Erfolge:
    3
    AW: Rasperry Projekt Hausautomatik - Teil I Steuerung von Funksteckdosen

    Hallo,

    eine verdammt tolle Anleitung ich musste mir auch gleich das Zubehör holen/bestellen.
    Die Hardware ist da und alles schick verlötet, kein Problem.

    Aber: die Software-Seite macht mir Probleme, "git-core" ließ sich auf meinen Pi nicht installieren, brauche eine neuere Version von Git :-/ egal, habe mir das mit wget gezogen.

    2 Verzeichnisse unter /home/pi/ anglegt:

    rcswitch-pi
    wiringPi

    Bei beiden kommen Fehler:

    bei /home/pi/wiringPi
    sudo ./build

    wiringPi Build script - please wait...

    WiringPi library
    [UnInstall]
    make: Nothing to be done for `all'.
    [Install]

    GPIO Utility
    [Link]
    /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../libwiringPi.so: undefined reference to `i2c_smbus_write_byte'
    /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../libwiringPi.so: undefined reference to `i2c_smbus_read_byte'
    /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../libwiringPi.so: undefined reference to `i2c_smbus_write_byte_data'
    /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../libwiringPi.so: undefined reference to `i2c_smbus_write_word_data'
    /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../libwiringPi.so: undefined reference to `i2c_smbus_read_word_data'
    /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../libwiringPi.so: undefined reference to `i2c_smbus_read_byte_data'
    collect2: ld returned 1 exit status
    make: *** [gpio] Error 1
    [Install]
    cp: cannot stat `gpio': No such file or directory
    make: *** [install] Error 1

    Examples

    wiringPi Examples
    =================

    There are now too many examples to compile them all in a sensible time,
    and you probably don't want to compile or run them all anyway, so they
    have been separated out.

    To compile an individual example, just type

    make exampleName

    Where exampleName is one of:

    test1 test2 speed lcd wfi isr piface gertboard nes pwm tone servo
    delayTest serialRead serialTest okLed


    All Done.



    und bei /home/pi/rcswitch-pi/
    sudo make

    g++ RCSwitch.o send.o -o send -lwiringPi
    /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../libwiringPi.so: undefined reference to `i2c_smbus_write_byte_data'
    /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../libwiringPi.so: undefined reference to `i2c_smbus_read_byte_data'
    /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../libwiringPi.so: undefined reference to `i2c_smbus_read_byte'
    /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../libwiringPi.so: undefined reference to `i2c_smbus_read_word_data'
    /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../libwiringPi.so: undefined reference to `i2c_smbus_write_word_data'
    /usr/lib/gcc/arm-linux-gnueabihf/4.6/../../../libwiringPi.so: undefined reference to `i2c_smbus_write_byte'
    collect2: ld returned 1 exit status
    make: *** [send] Error 1


    libi2c-dev-Paket habe ich schon installiert.


    HAT SICH ERLEDIGT, ICH MUSSTE NACH DER INSTALLATION VON libi2c-dev bei wiringPi nur ein ./build clean und ./build uninstall machen, dann klappte ein
    ./build
    Und in rcswitch-pi habe ich ein make clean gemacht, danach funzte ein make.




    Würde ich unbedarft sagen, mehr oder weniger das gleiche Problem.

    Hat jemand eine Idee?

    Danke schon einmal!

    Gruß Alex
     
    Zuletzt bearbeitet: 25. Januar 2013
    #46
  2. regnets
    Offline

    regnets Newbie

    Registriert:
    16. Januar 2013
    Beiträge:
    9
    Zustimmungen:
    0
    Punkte für Erfolge:
    1
    AW: Rasperry Projekt Hausautomatik - Teil I Steuerung von Funksteckdosen

    Hast du die Software auf dem Pi auf den neusten Stand? (sudo apt-get update && apt-get upgrade).

    Hast du die Treiber für spidev geblacklistet?

    Ein # vor die beiden Zeilen in der Datei /etc/modprobe.d/raspi-blacklist.conf
    #blacklist spi-bcm2708
    #blacklist i2c-bcm2708

    Gruß

    regnets
     
    #47
  3. facebraker
    Offline

    facebraker Newbie

    Registriert:
    22. Januar 2013
    Beiträge:
    16
    Zustimmungen:
    3
    Punkte für Erfolge:
    3
    Hallo Regnets,

    es hat sich erledigt, ja das System war auf den neusten Stand, wie oben angedeutet brachte eine Nachinstallation von libi2c-dev Abhilfe, aber nicht sofort ich musste noch einmal alles bereinigen und neu erstellen.

    Danke für die Tipps.

    Jetzt funktioniert alles *freu*

    Gruß Alex





    Gesendet von meinem iPad mit Tapatalk HD
     
    #48
  4. regnets
    Offline

    regnets Newbie

    Registriert:
    16. Januar 2013
    Beiträge:
    9
    Zustimmungen:
    0
    Punkte für Erfolge:
    1
    AW: Rasperry Projekt Hausautomatik - Teil I Steuerung von Funksteckdosen

    Hast du meine zip genommen und nach /var/www entpackt? Würde mich über Feedback freuen...
     
    #49
  5. facebraker
    Offline

    facebraker Newbie

    Registriert:
    22. Januar 2013
    Beiträge:
    16
    Zustimmungen:
    3
    Punkte für Erfolge:
    3
    AW: Rasperry Projekt Hausautomatik - Teil I Steuerung von Funksteckdosen

    Hallo Regnets,

    ja ich habe deine ZIP geladen, die SocketControl-fix.zip.
    Die Installation lief sehr gut, ich muss nun die config.php anpassen, irgendwie läuft es nicht so, aber ich denke der
    Fehler liegt bei mir.
    Sage Dir bescheid.

    Gruß Alex
     
    #50
  6. facebraker
    Offline

    facebraker Newbie

    Registriert:
    22. Januar 2013
    Beiträge:
    16
    Zustimmungen:
    3
    Punkte für Erfolge:
    3
    AW: Rasperry Projekt Hausautomatik - Teil I Steuerung von Funksteckdosen

    Hallo Regnets,

    tut leider nicht, habe die send in /var/www kopiert, die Oberfläche konfiguriert , aber geht nicht.

    Muss ich noch Berechtigungen anpassen?
    Wie kann ich irgendwie debuggen?

    Gruß Alex
     
    Zuletzt bearbeitet: 25. Januar 2013
    #51
  7. regnets
    Offline

    regnets Newbie

    Registriert:
    16. Januar 2013
    Beiträge:
    9
    Zustimmungen:
    0
    Punkte für Erfolge:
    1
    AW: Rasperry Projekt Hausautomatik - Teil I Steuerung von Funksteckdosen

    Ich hoffe du kannst debuggen :)... Wenn nicht muss ich die aktuelle Version hochladen!

    Normaleweise solltest du so eine URL aufrufen können:
    http://<server>/send.php?name=1_1&state=1

    Dann solltest du die Commandline Ausgabe als Website sehen:
    sending systemCode[10000] unitCode[1] command[0]

    Mit der URL hast du nur gesagt, das der Name der Steckdose aus der Gruppe 1 kommt (aus dieser holt er sich dann den Systemcode, in meinen Fall 10000 / 1. Dip Schalter nach oben) und die Steckdose mit der ID 1 betrifft (DIP Schalter A nach oben). Der State ist 1 (=an) oder 0 (=aus).

    Falls es nicht klappt, hier meine aktuellen Dateien (bis auf die config.php, damit du dir die nicht überschreibst). Ich werde morgen noch etwas dokumentieren, damit man leichter versteht was zu tun ist und hoffentlich noch etwas weiter coden.

    Den Anhang 68621 betrachten

    Grüße

    regnets
     
    #52
  8. regnets
    Offline

    regnets Newbie

    Registriert:
    16. Januar 2013
    Beiträge:
    9
    Zustimmungen:
    0
    Punkte für Erfolge:
    1
    AW: Rasperry Projekt Hausautomatik - Teil I Steuerung von Funksteckdosen

    So ich habe jetzt mal das GitHub Repository befüllt... Jetzt könnt ihr auch gerne mir Änderungen senden, wenn ihr welche habt...

    Hier die URL:
    Du mußt dich Registrieren um diesen Link sehen zu können. Hier klicken und kostenlos Registrieren
     
    #53
  9. facebraker
    Offline

    facebraker Newbie

    Registriert:
    22. Januar 2013
    Beiträge:
    16
    Zustimmungen:
    3
    Punkte für Erfolge:
    3
    Hallo Regnets,

    Debuggern kann ich, aber ich stehe mit debuggen+PHP auf Kriegsfuss, das hat sich bei mir bisher immer auf Echo Ausgaben und var_dump() beschränkt.
    Ich liebe meinen Visual Studio .Net Debugger oder Xcode.
    Ich habe gestern versucht mit Echo oder var_dump was herauszufinden war sehr spät und nicht von Erfolg gekrönt.

    Leider bin ich heute und morgen unterwegs, werde es mir hoffentlich Sonntag Abend mal anschauen können. danke für deine Hilfe.

    Aber die Oberfläche sieht echt gut aus, auch auf dem iPhone mit den Icon sehr genial.

    Gruß Alex



    Gesendet von meinem iPad mit Tapatalk HD
     
    #54
  10. facebraker
    Offline

    facebraker Newbie

    Registriert:
    22. Januar 2013
    Beiträge:
    16
    Zustimmungen:
    3
    Punkte für Erfolge:
    3
    Hallo Regnets,

    die Zeile in der install.sh ist mir nicht klar:


    # Webserver zur Sudoers hinzufügen für den Befehl send
    sudo echo "asdf" >> /etc/sudoers

    Damit hängst du doch nur "asdf" als Zeichenfolge an die Datei?

    Muss das nicht die sudoers Zeile für www-data sein?

    Gruß Alex

    Gesendet von meinem iPad mit Tapatalk HD
     
    #55
  11. regnets
    Offline

    regnets Newbie

    Registriert:
    16. Januar 2013
    Beiträge:
    9
    Zustimmungen:
    0
    Punkte für Erfolge:
    1
    AW: Rasperry Projekt Hausautomatik - Teil I Steuerung von Funksteckdosen

    Die install.sh ist noch nicht fertig... ;). Ja das müsste die Zeile für www-data sein, wie in der ersten Seite beschrieben.

    Wie du an der ToDo.txt sehen kannst ist alles noch WIP...
     
    #56
  12. facebraker
    Offline

    facebraker Newbie

    Registriert:
    22. Januar 2013
    Beiträge:
    16
    Zustimmungen:
    3
    Punkte für Erfolge:
    3
    Oh Sorry, die ToDo.txt habe ich überlesen,
    Da hast du Dir richtig viel vorgenommen, das ist echt genial, bin gespannt.
    Ich ärgere mich grad dass ich gleich zu einen Geburtstag muss und nicht am RPI "spielen" kann :-/

    Viel Erfolg

    Gruß Alex


    Gesendet von meinem iPad mit Tapatalk HD
     
    #57
  13. regnets
    Offline

    regnets Newbie

    Registriert:
    16. Januar 2013
    Beiträge:
    9
    Zustimmungen:
    0
    Punkte für Erfolge:
    1
    AW: Rasperry Projekt Hausautomatik - Teil I Steuerung von Funksteckdosen

    Vielen Dank für die Blumen... Bastel nun auch mal gern und das ist ein noch "überschaubares Projekt", wenn du wieder da bist, gibs bestimmt schon was neues...
     
    #58
  14. facebraker
    Offline

    facebraker Newbie

    Registriert:
    22. Januar 2013
    Beiträge:
    16
    Zustimmungen:
    3
    Punkte für Erfolge:
    3
    AW: Rasperry Projekt Hausautomatik - Teil I Steuerung von Funksteckdosen

    Hallo,

    ich habe mir mal das Empfangen von den 433Mhz Signalen angesehen.
    Also sprich die RCSwitch.h also die Funktionen, habe in den Arduino Bibiliotheken gesucht und versucht zu portieren.
    Leider habe ich nicht die Hardware und nicht die 100%tigen Plattformkenntnisse, vielleicht kann es jemand mal probieren?

    Code:
    
    #include "RCSwitch.h"
    #include <stdlib.h>
    #include <stdio.h>
    
    
    int main() {
        
        int PIN = 7; //BCM GPIO = 4, GPIO7
        
        
         if (wiringPiSetup () == -1) return 1; //Keine Ahnung was das soll auch nicht in den Bibliotheken gefunden
         //*************************************************************************************************************************************************
         //In Arduino Bibliothek gefunden.
         /*
         #include <RCSwitch.h>
    
    
        RCSwitch mySwitch = RCSwitch();
    
    
        void setup() {
        Serial.begin(9600);
        mySwitch.enableReceive(0);  // Receiver on inerrupt 0 => that is pin #2
        }
    
    
        void loop() {
            if (mySwitch.available()) {
                output(mySwitch.getReceivedValue(), mySwitch.getReceivedBitlength(), mySwitch.getReceivedDelay(), mySwitch.getReceivedRawdata());
                mySwitch.resetAvailable(); }
        }*/
        //*************************************************************************************************************************************************
        //Versuch das in CPP zu portieren
        RCSwitch mySwitch = RCSwitch(); // neue Instanz
        
        //Serial.begin(9600) kann IMHO weggelassen werden, weil wir keine Serielle Terminalsitzung benötigen
        
        mySwitch.enableReceive(PIN);  // Receiver on inerrupt PIN 
        if (mySwitch.available()) {
                //output(mySwitch.getReceivedValue(), mySwitch.getReceivedBitlength(), mySwitch.getReceivedDelay(), mySwitch.getReceivedRawdata());
                //Versuch mit printf.
                printf(%s,mySwitch.getReceivedValue());
                printf(%i,mySwitch.getReceivedBitlength());
                printf(%i,mySwitch.getReceivedDelay());
                printf(%s,mySwitch.getReceivedRawdata());
                mySwitch.resetAvailable(); 
        }
        
    return(0);    
    }
    
    Kompilieren sollte so laufen:

    Code:
    [COLOR=#000000][FONT=Helvetica Neue]gcc -o receive receive.cpp[/FONT][/COLOR]
    [COLOR=#000000][FONT=Helvetica Neue]chmod 755 receive[/FONT][/COLOR]
    [COLOR=#000000][FONT=Helvetica Neue]./receive[/FONT][/COLOR]
    Bitte nicht schlagen ist nur eine Idee ...

    Gruß Alex
     
    #59
  15. facebraker
    Offline

    facebraker Newbie

    Registriert:
    22. Januar 2013
    Beiträge:
    16
    Zustimmungen:
    3
    Punkte für Erfolge:
    3
    AW: Rasperry Projekt Hausautomatik - Teil I Steuerung von Funksteckdosen

    Soo heute ist der 433MHZ Empfänger angekommen,
    ich versuche es morgen zu löten und auszuprobieren, ich mache mir nicht viel Hoffnung, wäre ja zu einfach, aber ein Anfang ist es sicher.

    Gruß Alex
     
    #60

Direkt Antworten

Überprüfung:
Der Entwurf wurde gespeichert Der Entwurf wurde gelöscht

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden