Servo an WemosD1 über Slider im FTUI steuern

Begonnen von myit, 02 Februar 2019, 12:59:55

Vorheriges Thema - Nächstes Thema

myit

Hallo Zusammen,

ich hätte da mal eine kleine Anfängerfrage.

Vor einiger Zeit hatte ich die Servos schon einmal erfolgreich über Servoblaster direkt an den Raspberry eingebunden, jedoch haben diese dann von dem einen auf den anderen Tag ihren Dienst eingestellt. Daher wollte ich jetzt mal den Versuch über einen EspEasy wagen.

Daher würde gerne einen Servo an einen WemosD1 mit ESPEasy über einen Slider im FTUI steuern. Leider stehe ich im Moment etwas auf dem Schlauch und komme nicht weiter.

Der Servo lässt sich ansteuern über http://192.168.2.114/control?cmd=Servo,1,12,60

Der Silder im UI ist:
<div class="cell">
                            <div data-type="slider" class="tab mini" data-device='dummy_servo1' data-get="state" data-min="0" data-max="100"></div>


Habe den ESP über ein Dummydevice in Fhem anlegen lassen:
define ESPEasy_ESP_Servo_Servo1 ESPEasy 192.168.2.114 80 espBridge ESPEasy_Servo_Servo1
setuuid ESPEasy_ESP_Servo_Servo1 5c54dc0a-f33f-c540-8e62-afcb19e3ecf3a171
attr ESPEasy_ESP_Servo_Servo1 IODev espBridge
attr ESPEasy_ESP_Servo_Servo1 Interval 300
attr ESPEasy_ESP_Servo_Servo1 group ESPEasy Device
attr ESPEasy_ESP_Servo_Servo1 presenceCheck 1
attr ESPEasy_ESP_Servo_Servo1 readingSwitchText 1
attr ESPEasy_ESP_Servo_Servo1 room ESPEasy
attr ESPEasy_ESP_Servo_Servo1 webCmd servo 1 12 0:servo 1 12 100:servo 1 12 9000


Dummy:
define dummy_servo1 dummy
attr dummy_servo1 setList state:slider,0,5,100
attr dummy_servo1 webCmd state


define Notify_servo_dummy1 notify dummy_servo1:state:.* "wget -q -O - 'http://192.168.2.114/control?cmd=Servo,1,12,$EVENT'"


Mittlerweile bekomme ich den Servo über das Fhem Device gesteuert, aber noch nicht über den Slider vom Dummy.

Hat da vielleicht jemand eine Idee?

Vielen Dank.

Edit: ok, ich glaube ich hab den Fehler selber gefunden. Damit funktioniert es:
DEF dummy_servo1:.* set ESPEasy_ESP_Servo_Servo1 servo 1 12 $EVENT

Vielleicht hat noch jemand einen Tipp für mich, wie ich servo 1 12 9000 noch mit ner Verzögerung von einer Sekunde hinterher schicken kann. Habe es so versucht, allerdings ist es irgendwie immer länger als eine Sekunde. Vielleicht gibt es da auch eine elegantere Lösung.

dummy_servo1:.* set ESPEasy_ESP_Servo_Servo1 servo 1 12 $EVENT; sleep 1; set ESPEasy_ESP_Servo_Servo1 servo 1 12 9000