Ankündigung

Einklappen
Keine Ankündigung bisher.

erste Logik klappt nicht

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

    #16
    Beim start von sh.py mal darauf achten, ob es parse/syntax fehler in der Logik gibt. Ich denke da an einrückungen etc.

    Kommentar


      #17
      wie schon vermiutet, die Logik wird nicht aufgerufen, sonst müsste doch unter /var/log ein Eintrag kommen, oder?
      Aber warum?
      never fummel a running system...

      Kommentar


        #18
        !/usr/bin/env python

        logger.info('oeffnung.py Logik triggered by {}, source {}, value {}, dest {}'.format(trigger['by'],trigger['source'],trigger['value'],trigger['dest']))

        if sh.licht.wohnen.decke1():
        sh.licht.wohnen.decke2(1)
        logger.info('Licht Decke 2 --> EIN')

        (übrigens, wie macht ihr den grau hinterlegten Text?)

        never fummel a running system...

        Kommentar


          #19
          Sorry, aber könntest Du bitte die Fragen mal beantworten? Hier haben einige Leute schon die Zeit in Dein Problem gestellt und irgendwie antwortest Du immer das Gleiche, aber nie auf die Frage. Das graue kommt via CODE (Button mit #) einfügen.
          Nochmal die Frage: Was passiert wenn Du via CLI ein "up licht.wohnen.decke1=1" oder "up licht.wohnen.decke1=0" machst. Meine Vermutung: Nichts passiert oder Fehlermeldung. Du hast ja bis dato Deine Item-Conf nicht veröffentlicht und ich denke Deine Struktur ist einfach anders und drum passt nix. ... und nun bitte nicht wieder antworten mit "über die Visu läufts", denn dann poste bitte die verwendete basic.button(...) Zeile.

          Kommentar


            #20
            Hi Peter,

            ich habe hier mal einen Guide zusammengestellt mit Ansätzen zur Problemlösung beim smarthome. Hast Du Dein smarthome nach den Änderungen denn auch noch mal brav neugestartet?

            Gruß,
            Bernd

            Kommentar


              #21
              zunächst vielen Dank für die Geduld. Sandmann60 Du hast Recht, beim CLI passiert nichts.
              Sieht irgendwer nen Fehler?

              Der Item:
              Code:
              [licht]
              [[wohnen]]
                  [[[decke1]]]
                      [[[[schalten]]]]
                          type = bool
                          visu_acl = rw
                          knx_dpt = 1
                          knx_listen = 1/1/6
                          knx_send = 1/1/6
                          knx_init = 1/1/6
                  [[[decke2]]]
                      [[[[schalten]]]]
                          type = bool
                          visu_acl = rw
                          knx_dpt = 1
                          knx_listen = 1/1/7
                          knx_send = 1/1/7
                          knx_init = 1/1/7
              [[essen]]
                  [[[Pendelleuchte]]]
                      [[[[schalten]]]]
                          type = bool
                          visu_acl = rw
                          knx_dpt = 1
                          knx_listen = 1/1/9
                          knx_send = 1/1/9
                          knx_init = 1/1/9
              und der item aus de VISU:
              Code:
              <tr><td align="left" width="100px">&nbsp; {{ basic.switch('switch1', 'licht.wohnen.decke1.schalten', icon1~'light_light.png', icon0~'light_light.png') }} </td><td>Wohnzimmmer Decke 1</td></tr>
                  <tr><td align="left" width="100px">&nbsp; {{ basic.switch('switch2', 'licht.wohnen.decke2.schalten', icon1~'light_light.png', icon0~'light_light.png') }} </td><td>Wohnzimmmer Decke 1</td></tr>
                  <tr><td align="left" width="100px">&nbsp; {{ basic.switch('switch3', 'licht.essen.Pendelleuchte.schalten', icon1~'light_light.png', icon0~'light_light.png') }} </td><td>Pendel Essen</td></tr>

              never fummel a running system...

              Kommentar


                #22
                .schalten !

                Kommentar


                  #23
                  Ah, schalten....
                  als mit Telnet geht es direkt.

                  Code:
                  licht.wohnen.decke1.schalten=1
                  aber in der Logik,
                  Code:
                  if sh.licht.wohnen.decke1.schalten():
                      sh.licht.wohnen.decke2.schalten(1)
                      logger.info('Licht Decke 2 --> EIN')
                  auch nach Neustart des Py gehts eben leider noch nicht... ratlos, oder muss der Befehl in der Logik anders aussehen?
                  never fummel a running system...

                  Kommentar


                    #24
                    Geht decke2 per telnet? Debug log bitte anhängen ab neustart. Genaue Beschreibung deiner Aktionen dazu

                    Kommentar


                      #25
                      Fehlt in der logic.conf beim watch_item evtl. auch noch das ".schalten"?
                      Viele Grüße
                      Martin

                      There is no cloud. It's only someone else's computer.

                      Kommentar


                        #26
                        Das Schalten mußt Du natürlich auch in Deiner logic.conf als watch-Item ergänzen... Schon gemacht? Dann in der CLI ein reload der Logik machen via "rl...."

                        Kommentar


                          #27
                          Alle beiden licht wohnen.decke(1|2).schalten =(0|1) gehen per telnet.

                          die etc/logic.conf sieht so aus:
                          Code:
                          [TESTAUFBAU]
                              filename=oeffnung.py
                              watch_item=licht.wohnen.decke1.schalten
                              visu_acl=yes
                          log seit dem reboot des Py
                          Code:
                          2016-03-26 17:18:15 ERROR    Connections  KNX: could not connect to 127.0.0.1:6720 (TCP): [Errno 111] Verbindungsaufbau abgelehnt
                          Init SmartHome.py 1.0-45-g02cf972
                          2016-03-26 17:23:43 ERROR    Connections  KNX: could not connect to 127.0.0.1:6720 (TCP): [Errno 111] Verbindungsaufbau abgelehnt
                          hier scheint der smarthome.py schneller zu sein als die startskripts. Wenn ich dann aber /etc/init.d/eibd restart eingebe läuft das offensichtlich.... Im log steht dazu nichts. deshalb die Frage nach dem Debuglevel.
                          never fummel a running system...

                          Kommentar


                            #28
                            update... Jungs, Ihr seid klasse! VIELEN DANK, jetzt läufts.
                            natürlch muss man den Befehl in der logic.conf auch case-sensitive richtig schreiben.
                            jetzt nur noch die frage nach dem Neustart, kann ich da eine "latenzzeit" von 2 Sekunden einrichten? oder liegt das auch an einer Einstellung meinerseits?
                            never fummel a running system...

                            Kommentar


                              #29
                              Na also.... Wegen dem Neustart...Wie startest Du denn neu? Ich mache das immer via "smarthome.py -s && smarthome.py" und kenne die beschriebene Fehlermeldung eigentlich nicht....

                              Kommentar


                                #30
                                ich muss gestehen, ich weiss es nicht. Die Installation habe ich nach der Anleitung gemacht;
                                https://knx-user-forum.de/forum/supp...u-13-10-server

                                Code:
                                 
                                 cd /etc/init.d sudo nano smarthome
                                Code:
                                 
                                 #!/bin/sh ### BEGIN INIT INFO # Provides:          smarthome # Required-Start:    $syslog $network # Required-Stop:     $syslog $network # Should-Start:      eibd owserver # Should-Stop:       eibd owserver # Default-Start:     2 3 4 5 # Default-Stop:      0 1 6 # Short-Description: Start SmartHome.py ### END INIT INFO  export LANG=en_US.UTF-8  DESC="SmartHome.py" NAME=smarthome.py SH_ARGS="-q" SH_UID='smarthome'  PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/bin DAEMON=/usr/smarthome/bin/$NAME SCRIPTNAME=/etc/init.d/$NAME PIDFILE=/usr/smarthome/var/run/smarthome.pid  [ -x "$DAEMON" ] || exit 0 [ -r /etc/default/$NAME ] && . /etc/default/$NAME      DAEMON_ARGS="$SH_ARGS"  do_start() {     sudo -u $SH_UID $DAEMON $DAEMON_ARGS     ps ax | grep $DAEMON | grep -v grep | awk '{print $1}' > $PIDFILE } do_stop() {     sudo -u $SH_UID $DAEMON --stop     rm -f $PIDFILE }  do_reload() {     sudo -u $SH_UID $DAEMON --reload     return 0 }  case "$1" in     start)         do_start         ;;     stop)         do_stop         ;;     #reload|force-reload)         #echo "Reloading $DESC" "$NAME"         #do_reload         #log_end_msg $?         #;;     restart)         #         # If the "reload" option is implemented then remove the         # 'force-reload' alias         #         echo "Restarting $DESC" "$NAME"         do_stop         sleep 1         do_start         ;;     *)         echo "Usage: $SCRIPTNAME {start|stop|restart}" >&2         exit 3         ;; esac  exit 0
                                Dateirechte richtig setzen und automatisches Starten aktivieren
                                Code:
                                 sudo chmod 755 smarthome sudo update-rc.d smarthome defaults
                                never fummel a running system...

                                Kommentar

                                Lädt...
                                X