Ankündigung

Einklappen
Keine Ankündigung bisher.

OpenHAB auf Raspbian Pi

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    OpenHAB auf Raspbian Pi

    Hi,

    hat jemand von Euch OpenHAB schon auf dem Raspbian Pi zum Laufen bekommen?
    Im Moment habe ich das Problem dort eine geeignete Java-Variante zu installieren, mit der OpenHAB startet. Wenn es jemanden gibt, der das schon hinbekommen hat, wie muß ich Java installieren und welches Image für das Raspbian Pi habt ihr verwendet?

    Gruß Jan

    #2
    Hi Jan,

    ja, das haben schon ein paar Leute hinbekommen, siehe HardwareFAQ - openhab - FAQ about hardware for the openHAB runtime - empowering the smart home - Google Project Hosting

    Viele Grüße,
    Kai

    Kommentar


      #3
      Hallo,

      ich hab das hier auch am laufen.
      Ich verwende Debian Wheezy, da das Soft-Flooted ist, also nicht den Mahtematischen Koprozessor nutzt.
      Dafür gibt es auf sun eine Java-sdk für arm. Leider nur Soft-Flooted. Die Installation ist für jemanden mit einfachen Linux-Kenntnissen einfach, denke ich (ich hab etwas mehr Linux-Kenntnisse).
      Damit läuft openhab sehr gut uns stabil.

      Gruß
      Daniel

      Kommentar


        #4
        Das sdk für arm habe ich gefunden. Kannst du mir sagen, wie die Installation abzulaufen hat? Ich habe nicht so die Kenntnisse wegen der entsprechenden Befehle.

        Kommentar


          #5
          meines Wissens wird das JDK nicht wirklich "installiert" sondern vielmehr an eine bestimmte Stelle (/opt/java/ oder so) ausgepackt. Das wars ...

          Gruß,

          Thomas E.-E.
          Visualisierung, Rule/Logic-Engine, Integrationsplattform mit openhab (Supportforum)

          Kommentar


            #6
            hier ist ne anleitung fürs java jdk home automation - D.I.Y. Home Automation Projects - Raspberry Pi - Installing Oracle Java Development Kit (JDK 1.7.0u6)

            Kommentar


              #7
              Hallo zusammen,

              ist man unbedingt auf Java von Sun angewiesen?

              Auf meiner aktuellem Maschine habe ich IcedTea und openJDK-6-jre installiert und openhab läuft. Das muss es doch auch für debian (Raspbian) geben.

              Den Paspberry PI habe ich mir vor Wochen auch bestellt, warte allerdings noch auf die Lieferung. Sobald Ich ihn habe, werde ich mich dort einarbeiten und auch mehr beitragen können.

              Vielleicht hilft dieser Link weiter:

              jvm - How can I run Java software? - Raspberry Pi Beta - Stack Exchange

              Kommentar


                #8
                Hi,

                Zitat von mepi0011 Beitrag anzeigen
                ist man unbedingt auf Java von Sun angewiesen?
                es gab mit anderen VMs für ARM immer mal Probleme. Ein Beispiel findest Du hier https://groups.google.com/forum/?fro...0/v5Wt_EOpGtIJ. Sollten sich die Problem inzwischen von alleine gelöst haben, wäre das natürlich toll.

                Insbesondere die Performance war wohl mit dem Oracle JDK wesentlich besser.

                Freue mich auf eine kurze Rückmeldung, wie es bei Dir geklappt hat.

                Gruß,

                Thomas E.-E.
                Visualisierung, Rule/Logic-Engine, Integrationsplattform mit openhab (Supportforum)

                Kommentar


                  #9
                  Also, ich habe jetzt diese Anleitung hier befolgt:
                  home automation - D.I.Y. Home Automation Projects - Raspberry Pi - Installing Oracle Java Development Kit (JDK*1.7.0u6)
                  Allerdings kommt bei dem Befehl java -version nur eine Fehlermeldung:
                  java: error while loading shared libraries: libjli.so: cannot open shared object file: No such file or directory
                  Ich bin genau nach Anleitung vorgegangen. Kann mir jemand sagen, was hier noch fehlt?

                  Gruß Jan

                  Kommentar


                    #10
                    Zwei Möglichkeiten.
                    Gib mal ldconfig als root ein. Vielleicht hiflt das. Damit werden die Shared Libaries neu eingelesen.

                    Ansonsten such mal nach der Lib, ob und wo die Installiert ist:

                    Code:
                    find / -name "libjli.so" 2> /dev/null
                    Das ganze sollte unter $JDKPATH/jre/lib/arm/jli/libjli.so liegen.
                    Dieser Pfad muss per ldconfig eingelesen werden.

                    Gruß,
                    Daniel

                    Kommentar


                      #11
                      Hi,
                      ich habe jetzt beide Dinge ausprobiert. Die Datei liegt dort, wo sie sein soll, allerdings funktioniert der Aufruf java -console immer noch nicht. Er bemängelt immer noch die selbe Datei.

                      Kommentar


                        #12
                        Hallo Jan0815,

                        habe vor ein paar Tagen nach der von fant2k aufgeführten Anleitung das Java Paket auf meinem Raspberry PI installiert. Wobei ich die Schritte "Add JAVA_HOME Enviroment Variable" nicht umgesetzt habe!

                        Vor der Installation habe ich noch ein Linux-Update, mit folgenden befehlen, durchgeführt:

                        Code:
                        sudo apt-get update
                        sudo apt-get upgrade
                        Bist du dir sicher dass du auch das Soft-float Debian verwendest?

                        Ich hatte mir das Image von der Raspberry Homepage heruntergeladen.
                        Downloads | Raspberry Pi

                        Gruß
                        mepi0011

                        Kommentar


                          #13
                          So, nach langem hin und her habe ich das Teil jetzt neu geflasht und das ganze nochmal versucht. Jetzt hat es geklappt. Anscheinend war wirklich das falsche Image drauf.
                          Java funktioniert nun. Jetzt habe ich aber schon das nächste Problem. Wie bekomme ich OpenHAB zum Laufen?
                          Die kompletten Einstellungen usw. habe ich 1:1 von meinem Windows Rechner in ein Verzeichnis unter /opt/OpenHAB kopiert. Wenn ich nun versuche den Befehl start.sh in die Bash eingebe kommt nur: bash: start: Kommando nicht gefunden.
                          Was mache ich jetzt schon wieder falsch?

                          Gruß Jan

                          Kommentar


                            #14
                            1. kontrolliere mal, ob das Startskript auch execute-Rechte (also ein x für den User gesetzt).
                            2. wenn nicht, dann bitte "sudo chmod a+x start.sh" ausführen
                            3. starte mal mit ./start.sh (./ voranstellen)

                            Gruß,

                            Thomas E.-E.
                            Visualisierung, Rule/Logic-Engine, Integrationsplattform mit openhab (Supportforum)

                            Kommentar


                              #15
                              Danke, jetzt funktioniert es. Allerdings habe ich schon das nächste Problem, sorry:
                              17:22:18.073 ERROR o.o.b.k.i.c.KNXConnection[:183] - Error connecting to KNX bus: Das Argument ist ungültig

                              Was unter Windows noch funktioniert hat scheint hier nicht zu klappen. Hier die OpenHAB.cfg:
                              Code:
                              ####################################################################################### 
                              #####                        General configurations                               #####
                              ####################################################################################### 
                              
                              # Configuration folders (must exist as a subdirectory of "configurations"; the value
                              # tells the number of seconds for the next scan of the directory for changes. A
                              # value of -1 deactivates the scan).
                              # A comma separated list can follow after the refresh value. This list defines a filter
                              # for valid file extensions for the models.
                              folder:items=10,items
                              folder:sitemaps=10,sitemap
                              folder:rules=10,rules
                              folder:scripts=10,script
                              folder:persistence=10,persist
                              
                              # configures the security options. The following values are valid:
                              # ON = security is switched on generally
                              # OFF = security is switched off generally
                              # EXTERNAL = security is switched on for external requests 
                              #            (e.g. originating from the Internet) only
                              # (optional, defaults to 'OFF')
                              #security:option=
                              
                              # the Netmask to define a range of internal IP-Addresses which doesn't require
                              # authorization (optional, defaults to '192.168.1.0/24')
                              #security:netmask=
                              
                              # The name of the default persistence service to use
                              persistence:default=db4o
                              
                              # The refresh interval for the main configuration file. A value of '-1' 
                              # deactivates the scan (optional, defaults to '-1' hence scanning is deactivated)
                              #mainconfig:refresh=
                              
                              ####################################################################################### 
                              #####                        Binding configurations                               #####
                              ####################################################################################### 
                              
                              ################################ KNX Binding ##########################################
                              # KNX gateway IP address (optional, if serialPort or connection type 'ROUTER' is specified)
                              knx:ip=10.0.0.4
                              
                              # KNX IP connection type. Could be either TUNNEL or ROUTER (optional, defaults to TUNNEL)
                              #knx:type=ROUTER
                              
                              # KNX gateway port (optional, defaults to 3671)
                              knx:port=3671
                              
                              # Local endpoint to specify the multicast interface, no port is used (optional)
                              #knx:localIp=
                              
                              # Serial port of FT1.2 KNX interface (ignored, if ip is specified)
                              # Valid values are e.g. COM1 for Windows and /dev/ttyS0 or /dev/ttyUSB0 for Linux
                              # knx:serialPort=
                              
                              # Pause in milliseconds between two read requests on the KNX bus during
                              # initialization (optional, defaults to 50)
                              # knx:pause=
                              
                              # Timeout in milliseconds to wait for a response from the KNX bus (optional, 
                              # defaults to 10000)
                              #knx:timeout
                              
                              # Number of read retries while initialization items from the KNX bus (optional,
                              # defaults to 3)
                              #knx:readRetries
                              
                              ############################# Bluetooth Binding #######################################
                              # Bluetooth refresh rate in seconds 
                              # (defines, how often a new device detection scan is performed)
                              #bluetooth:refresh=20
                              
                              ############################## OneWire Binding ########################################
                              # OwServer IP address 
                              #onewire:ip=
                              
                              # OwServer Port (optional, defaults to 4304)
                              #onewire:port=
                              
                              # refresh inverval in milliseconds (optional, defaults to 60000)
                              #onewire:refresh=
                              
                              ########################### NetworkHealth Binding #####################################
                              
                              # Default timeout in milliseconds if none is specified in binding configuration
                              # (optional, default to 5000)
                              #networkhealth:timeout=
                              
                              # refresh inverval in milliseconds (optional, default to 60000)
                              #networkhealth:refresh=
                              
                              ############################### HTTP Binding ##########################################
                              
                              # timeout in milliseconds for the http requests (optional, defaults to 5000)
                              #http:timeout=
                              
                              # the interval in milliseconds when to find new refresh candidates
                              # (optional, defaults to 1000)
                              #http:granularity=
                              
                              ############################# Fritz!Box Binding #######################################
                              
                              # Please note: To be able to connect to the monitor port, the "CallMonitor" must be
                              # activated by dialing "#96*5*" once on a telephone that is connected to the Fritz!Box.
                              
                              # IP address of Fritz!Box to connect to
                              #fritzbox:ip=
                              
                              ############################### Asterisk Binding ######################################
                              
                              # Please note: The Asterisk Management Interface (AMI) has to be activated in the
                              # manager.conf file of your Asterisk PBX.
                              
                              # hostname of the AMI
                              #asterisk:host=
                              
                              # the username and password to login to the AMI
                              #asterisk:username=
                              #asterisk:password=
                              
                              ################################ NTP Binding ##########################################
                              
                              # refresh interval in milliseconds (optional, defaults to 900000 [15 minutes])
                              #ntp:refresh=
                              
                              # the hostname of the timeserver
                              ntp:hostname=ptbtime1.ptb.de
                              
                              ################################ MPD Binding ##########################################
                              
                              # Host and port of the first MPD to control 
                              # mpd:<player-id-1>.host=
                              # mpd:<player-id-1>.port=
                              
                              # Host and port of the second MPD to control 
                              # mpd:<player-id-2>.host=
                              # mpd:<player-id-2>.port=
                              
                              ################################ VDR Binding ##########################################
                              
                              # Host and port of the first VDR to control 
                              # vdr:<vdr-id-1>.host=
                              # vdr:<vdr-id-1>.port=6419
                              
                              # Host and port of the second VDR to control 
                              # vdr:<vdr-id-2>.host=
                              # vdr:<vdr-id-2>.port=6419
                              
                              ################################ SNMP Binding #########################################
                              
                              # Listening Port (optional, defaults to '162')
                              #snmp:port=
                              
                              # The SNMP community to listen to (optional, defaults to 'public')
                              #snmp:community=
                              
                              ######################## Novelan (Siemens) Heatpump Binding ###########################
                              
                              # IP address of the Novelan (Siemens) Heatpump to connect to
                              #novelanheatpump:ip=
                              
                              # refresh inverval in milliseconds (optional, defaults to 60000)
                              #novelanheatpump:refresh=
                              
                              
                              ####################################################################################### 
                              #####                   I/O component configurations                              #####
                              ####################################################################################### 
                              
                              ############################ Mail configuration #######################################
                              # The SMTP server hostname, e.g. "smtp.gmail.com"
                              #mail:hostname=
                              
                              # the SMTP port to use (optional, defaults to 25 (resp. 587 for TLS))
                              #mail:port=
                              
                              # the username and password if the SMTP server requires authentication
                              #mail:username=
                              #mail:password=
                              
                              # The email address to use for sending mails
                              #mail:from=
                              
                              # set to "true", if TLS should be used for the connection
                              # (optional, defaults to false)
                              #mail:tls=
                              
                              # set to "true", if POP before SMTP (another authentication mechanism)
                              # should be enabled. Username and Password are taken from the above
                              # configuration (optional, default to false)
                              #mail:popbeforesmtp=
                              
                              ############################# XMPP configuration ######################################
                              
                              # The XMPP server to use, e.g. "jabber.org" or "talk.google.com"
                              #xmpp:servername=
                              
                              # The XMPP Proxyserver to use, e.g. "gmail.com"
                              #xmpp:proxy=
                              
                              # the server port to use (optional, defaults to 5222)
                              #xmpp:port=
                              
                              # the username and password for the sending XMPP account
                              #xmpp:username=
                              #xmpp:password=
                              
                              # a comma separated list of users that are allowed to use the XMPP console
                              #xmpp:consoleusers=
                              
                              ############################# Prowl configuration #####################################
                              
                              # the apikey for authentication (generated on the Prowl website)
                              #prowl:apikey=
                              
                              # the default priority of a Prowl notifications (optional, defaults to '0')
                              #prowl:defaultpriority=
                              
                              # the url of the Prowl public api
                              # (optional, defaults to 'https://prowl.weks.net/publicapi/') 
                              #prowl:url=
                              
                              ########################## Google Calendar configuration ##############################
                              
                              # the username and password for Google Calendar Account
                              #gcal:username=
                              #gcal:password=
                              
                              # the url of the calendar feed
                              #gcal:url=
                              
                              # refresh interval in milliseconds (optional, defaults to 900000 [15 minutes])
                              #gcal:refresh=
                              
                              # the offset (in days) new calendar entries will be created in future (optional,
                              # defaults to 14)
                              #gcal:offset=
                              
                              # the base script which is written to the newly created Calendar-Events by
                              # the GCal-based presence simulation. It must contain two format markers '%s'.
                              # The first marker represents the Item to send the command to and the second
                              # represents the State (optional, defaults to 
                              # '> if (PresenceSimulation.state == ON) sendCommand(%s,%s)')
                              #gcal:executescript=
                              
                              ############################# Dropbox configuration ###################################
                              
                              # Switch to activate/deactivate an initial upload of all matching data (filters
                              # apply) if dropbox' Delta mechanism requests a local reset (optional, defaults
                              # to 'true')
                              #dropbox:initialize=
                              
                              # the up- and download interval as Cron-Expression. See the Quartz-Tutorial
                              # http://quartz-scheduler.org/documentation/quartz-2.x/tutorials/tutorial-lesson-06
                              # for more information on how to use them best (optional, defaults to '0 0/5 * * * ?'
                              # which means every 5 minutes)
                              #dropbox:uploadInterval=
                              #dropbox:downloadInterval=
                              
                              # the AppKey, AppSecret combination (optional, defaults to official Dropbox-App
                              # Key-Secret-Combination)
                              #dropbox:appkey=
                              #dropbox:appsecret=
                              
                              # defines the mode how files are synchronized with dropbox. Valid SyncModes are
                              # 'DROPBOX_TO_LOCAL', 'LOCAL_TO_DROPBOX' and 'BIDIRECTIONAL' (optional, defaults
                              # to 'LOCAL_TO_DROPBOX')
                              #dropbox:syncmode=
                              
                              # the base directory to synchronize with openHAB, configure 'filter' to select
                              # files (optional, defaults to '.')
                              #dropbox:contentdir=
                              
                              # defines a comma separated list of regular expressions which matches the 
                              # filenames to upload to Dropbox (optional, defaults to '/configurations/.*,
                              # /logs/.*, /etc/.*')
                              #dropbox:uploadfilter=
                              
                              # defines a comma separated list of regular expressions which matches the 
                              # filenames to download from Dropbox (optional, defaults to '/configurations/.*')
                              #dropbox:downloadfilter=
                              
                              
                              ####################################################################################### 
                              #####                      Add-ons configurations                                 #####
                              ####################################################################################### 
                              
                              ################################## Drools #############################################
                              # refresh interval for rule evaluation (in ms) (optional, defaults to 200)
                              #drools:evalInterval=
                              
                              ######################## Open.Sen.se Persistence Service ##############################
                              
                              # the url of the Open.Sen.se public api (optional, defaults to 
                              # 'http://api.sen.se/events/?sense_key=') 
                              #sense:url=
                              
                              # the Open.Sen.se API-Key for authentication (generated on the Open.Sen.se website)
                              #sense:apikey=
                              
                              ######################### Logging Persistence Service #################################
                              
                              # the logback encoder pattern to use to write log entries
                              # see http://logback.qos.ch/manual/layouts.html#ClassicPatternLayout for all options
                              # the item name is available as the "logger" name, the state as the "msg"
                              logging:pattern=%date{ISO8601} - %-25logger: %msg%n
                              
                              ########################### Db4o Persistence Service ##################################
                              
                              # the backup interval as Cron-Expression (optional, defaults to '0 0 1 * * ?' 
                              # which means every morning at 1 o'clock)
                              #db4o:backupinterval=
                              	
                              # the commit interval in seconds (optional, default to '5')
                              #db4o:commitinterval=
                              
                              # the amount of backup files allowed in DB_FOLDER_NAME (optional, defaults
                              # to '7')
                              #db4o:maxbackups=

                              Kommentar

                              Lädt...
                              X