Autor Thema: ESP8266-FastLED-IoT-Webserver mit mqtt  (Gelesen 176 mal)

Offline The-Holgi

  • Sr. Member
  • ****
  • Beiträge: 641
ESP8266-FastLED-IoT-Webserver mit mqtt
« am: 14 Januar 2021, 16:49:15 »
Hallo,
autocreate hat folgendes device angelegt:
defmod MQTT2_nanoleaf2 MQTT2_DEVICE nanoleaf2
attr MQTT2_nanoleaf2 IODev myBroker2
attr MQTT2_nanoleaf2 readingList nanoleaf2:homeassistant/light/nanoleafs/config:.* { json2nameValue($EVENT) }\
nanoleaf2:homeassistant/light/nanoleafs:.* { json2nameValue($EVENT) }
attr MQTT2_nanoleaf2 room MQTT2_DEVICE

setstate MQTT2_nanoleaf2 OFF
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 _ homeassistant/light/nanoleafs
setstate MQTT2_nanoleaf2 2021-01-14 16:45:53 autoplay 0
setstate MQTT2_nanoleaf2 2021-01-14 16:45:53 brightness 255
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 cmd_t ~/set
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 dev_ids 24:A1:60:3A:E1:B9
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 dev_mdl 0.4.4
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 dev_mf Surrbradl08
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 dev_name Nanoleafs
setstate MQTT2_nanoleaf2 2021-01-14 16:45:53 effect Solid Color
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_1 Pride
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_10 Water
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_11 Strobe
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_12 Rainbow Strobe
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_13 Smooth Rainbow Strobe
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_14 Rainbow Roll
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_15 Rainbow Beat
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_16 Palette Fades
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_17 Rainbow Chase
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_18 Rainbow Dots
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_19 Rainbow Fades
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_2 Color Waves
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_20 Police Lights
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_21 Glitter
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_22 Snow Flakes
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_23 Lightning
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_24 Rainbow Twinkles
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_25 Snow Twinkles
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_26 Cloud Twinkles
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_27 Incandescent Twinkles
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_28 Retro C9 Twinkles
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_29 Red & White Twinkles
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_3 Horizontal Rainbow
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_30 Blue & White Twinkles
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_31 Red, Green & White Twinkles
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_32 Fairy Light Twinkles
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_33 Snow 2 Twinkles
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_34 Holly Twinkles
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_35 Ice Twinkles
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_36 Party Twinkles
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_37 Forest Twinkles
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_38 Lava Twinkles
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_39 Fire Twinkles
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_4 Solid Rainbow
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_40 Cloud 2 Twinkles
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_41 Ocean Twinkles
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_42 Solid Volume Visualizer
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_43 Static Rainbow Volume Visualizer
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_44 Flowing Rainbow Volume Visualizer
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_45 Tri-Color Volume Visualizer
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_46 Wave Visualizer
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_47 Center Visualizer
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_48 Solid-Color Pair Bullet Visualizer
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_49 Solid-Color Complementary Bullet Visualizer
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_5 Confetti
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_50 Blue/Purple Bullet Visualizer
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_51 Beat-Bullet Visualization
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_52 Bass Ring Visualizer
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_53 Kick Ring Visualizer
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_54 Rainbow Band Visualizer
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_55 Single Color Band Visualizer
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_56 Nanoleaf Wave Visualizer
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_57 Nanoleaf Rainbow Band Visualizer
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_58 Nanoleaf Solid Color Band Visualizer
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_59 Solid Color
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_6 Sinelon
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_7 Beat
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_8 Juggle
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 effect_list_9 Fire
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 name Nanoleafs
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 rgb true
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 schema json
setstate MQTT2_nanoleaf2 2021-01-14 16:45:53 speed 255
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 stat_t ~
setstate MQTT2_nanoleaf2 2021-01-14 16:45:53 state OFF
setstate MQTT2_nanoleaf2 2021-01-14 16:32:43 subscriptions homeassistant/light/nanoleafs/set
setstate MQTT2_nanoleaf2 2021-01-14 16:32:44 uniq_id 24:A1:60:3A:E1:B9

Hier noch der link dazu:
https://github.com/NimmLor/esp8266-fastled-iot-webserver/blob/master/Software_Installation.md
Da es hier noch keine templets für gibt, stehe ich gerade auf dem "Schlauch" wie ich die Led's über fhem ansteuern kann.
Vielleicht kann mir jemand einen Tipp geben.

Gruß Holger
HP T610 Thin Client; Docker Fhem 5.9; 2X CUL V3 868mhz; Max Heizungssteuerung; FS20kse; FS20UWS; FS20S8-3; 2 FS20DI; HM-CFG-LAN,HM-LC-SW1-PL,HM-SEC-SD, HM-SE1PBU-FM;
Harmony Hub;Hue-Bridge mit Iris, E27 Bulb & FLS-PP

Offline Beta-User

  • Developer
  • Hero Member
  • ****
  • Beiträge: 13207
  • "Developer"?!? Meistens doch eher "User"
Antw:ESP8266-FastLED-IoT-Webserver mit mqtt
« Antwort #1 am: 14 Januar 2021, 17:10:11 »
Ist zwar eine etwas andere Baustelle, aber ggf. schaust du erst mal das hier durch: https://forum.fhem.de/index.php/topic,117405.msg1117962.html#msg1117962

Danach sollte wenigstens das homeassistant-config-Zeug verschwunden sein und "wir" (also vorrangig du) wissen, ob man jsonMap braucht.

Was setList etc. angeht, gibt es "subscriptions" auf ein "Einheitstopic" (homeassistant/light/nanoleafs/set).
Ist daher vermutlich ähnlich wie bei wled_controller (#source post: https://forum.fhem.de/index.php/topic,98880.msg995308.html#msg995308), aber auf die Schnelle habe ich keine Hinweise auf die korrekte Syntax für die Payload gefunden, bitte bei Bedarf etwas exakter verlinken.
Server: HP-T620@Debian 10, aktuelles FHEM + ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | BT@OpenMQTTGateway
svn:MySensors, WeekdayTimer, RandomTimer, Twilight,  AttrTemplate => {mqtt2, mysensors, zwave}

Offline The-Holgi

  • Sr. Member
  • ****
  • Beiträge: 641
Antw:ESP8266-FastLED-IoT-Webserver mit mqtt
« Antwort #2 am: 14 Januar 2021, 18:52:34 »
Hm, so richtig komme ich damit nicht weiter. Finde auch auf der github site des Entwicklers keine näheren Infos über MQTT.
Wäre ja schon ein Anfang wenn ich über fhem an und aus schalten könnte.
Hatte schon mit setList rumexperimentiert, leider ohne Erfolg. Dachte es könnte so in der Art aussehen:
attr MQTT2_nanoleaf2 setList on homeassistant/light/nanoleafs/set /onFunktionuert leider nicht.
HP T610 Thin Client; Docker Fhem 5.9; 2X CUL V3 868mhz; Max Heizungssteuerung; FS20kse; FS20UWS; FS20S8-3; 2 FS20DI; HM-CFG-LAN,HM-LC-SW1-PL,HM-SEC-SD, HM-SE1PBU-FM;
Harmony Hub;Hue-Bridge mit Iris, E27 Bulb & FLS-PP

Offline Beta-User

  • Developer
  • Hero Member
  • ****
  • Beiträge: 13207
  • "Developer"?!? Meistens doch eher "User"
Antw:ESP8266-FastLED-IoT-Webserver mit mqtt
« Antwort #3 am: Gestern um 08:43:59 »
Also:
In dem anderen Thread war nicht nur erläutert, wie man die "aust-config-Infos" loswird, sondern auch, wie man sie anzeigt ;) . Vielleicht bekommst du darüber raus, wie das Teil die Infos haben will.

Meine Vermutung: JSON-encoded; wenn ja, kannst du dich ggf. an den zigbee2mqtt-Payloads orientieren.
Server: HP-T620@Debian 10, aktuelles FHEM + ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | BT@OpenMQTTGateway
svn:MySensors, WeekdayTimer, RandomTimer, Twilight,  AttrTemplate => {mqtt2, mysensors, zwave}

Offline The-Holgi

  • Sr. Member
  • ****
  • Beiträge: 641
Antw:ESP8266-FastLED-IoT-Webserver mit mqtt
« Antwort #4 am: Gestern um 10:47:42 »
Moin,
habe noch ein paar Infos bekommen
For MQTT the topic is : homeassistant/light/nanoleafs
the last part being conditional on your settings in the firmware
to change the values using a message the message is sent to : topic/set
ex: homeassistant/light/nanoleafs/set
a payload example to load the pride effect is:
{"state": "ON", "effect": "Pride"}
a payload to set the nanoleafs as a red color is:
{"state": "ON", "color": {"r": 255, "g": 72, "b": 118}}

to change a pattern the only required ones are state and effect but you can send as many commands together as you like
This one for example would set the state to on, brightness to 31% (80/255), pattern to Horizontal Rainbow, Autoplay to off, and Speed to 63
{"state":"ON","brightness":80,"effect":"Horizontal Rainbow","autoplay":0,"speed":63}
HP T610 Thin Client; Docker Fhem 5.9; 2X CUL V3 868mhz; Max Heizungssteuerung; FS20kse; FS20UWS; FS20S8-3; 2 FS20DI; HM-CFG-LAN,HM-LC-SW1-PL,HM-SEC-SD, HM-SE1PBU-FM;
Harmony Hub;Hue-Bridge mit Iris, E27 Bulb & FLS-PP

Offline Beta-User

  • Developer
  • Hero Member
  • ****
  • Beiträge: 13207
  • "Developer"?!? Meistens doch eher "User"
Antw:ESP8266-FastLED-IoT-Webserver mit mqtt
« Antwort #5 am: Gestern um 11:05:19 »
OK, dann solltest du ja problemlos je einen on- und off-setter konstruieren können.

Was das mit color angeht, ist es etwas schwieriger, da kannst du dich ggf. bei zigbee2mqtt_light_rgb_rgb bedienen; die dort aufgerufene Funktion findest du in MQTT2_DEVICE, das müsstest du auf deine Bedürfnisse anpassen/ausschlachten (sollte noch als "one-liner" direkt in der setList-Zeile gehen).

Jetzt erst mal viel Spaß beim Zusammenpuzzeln, bin auf dein RAW-listing gespannt... ;)
Server: HP-T620@Debian 10, aktuelles FHEM + ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | BT@OpenMQTTGateway
svn:MySensors, WeekdayTimer, RandomTimer, Twilight,  AttrTemplate => {mqtt2, mysensors, zwave}

Offline The-Holgi

  • Sr. Member
  • ****
  • Beiträge: 641
Antw:ESP8266-FastLED-IoT-Webserver mit mqtt
« Antwort #6 am: Gestern um 13:43:28 »
Hm, wenn ich ehrlich sein soll stehe ich immer noch auf dem Schlauch. Versuche nun erfolglos wenigsten ein on und off zu senden.
HP T610 Thin Client; Docker Fhem 5.9; 2X CUL V3 868mhz; Max Heizungssteuerung; FS20kse; FS20UWS; FS20S8-3; 2 FS20DI; HM-CFG-LAN,HM-LC-SW1-PL,HM-SEC-SD, HM-SE1PBU-FM;
Harmony Hub;Hue-Bridge mit Iris, E27 Bulb & FLS-PP

Offline Beta-User

  • Developer
  • Hero Member
  • ****
  • Beiträge: 13207
  • "Developer"?!? Meistens doch eher "User"
Antw:ESP8266-FastLED-IoT-Webserver mit mqtt
« Antwort #7 am: Gestern um 14:13:21 »
Du musst kein "on" oder "off" _versenden_ sondern ein "on" und "off" in der setList anbieten und daraus eine Topic/Payload-Kombindation machen, wie sie dein Gerät versteht.

Das ist doch nicht dein erstes und einziges MQTT2_DEVICE, oder?

Als Hilfestellung mal der relevante Auszug zu dem bereits zitierten zigbee2mqtt_light_rgb_rgb aus https://svn.fhem.de/trac/browser/trunk/fhem/FHEM/lib/AttrTemplate/mqtt2.template
Zitat
256    name:zigbee2mqtt_light_rgb_rgb
257    filter:TYPE=MQTT2_DEVICE:FILTER=CID~zigbee.*
258    desc: A dimmable rgb light connected via zigbee2mqtt <br>rgb values will be sent as individual values r,g and b<br>Experimental, still untested
259    order:L_02c
260    par:BASE_TOPIC;base topic set in configuration.yaml of the zigbee2mqtt bridge;{ AttrVal("DEVICE","devicetopic",AttrVal("DEVICE","readingList","")) =~ m,[\b]?([^/:]+)[/].+, ? $1 : undef }
261    par:DEV_ID;name of the device in the zigbee2mqtt bridge;{ AttrVal("DEVICE","devicetopic",AttrVal("DEVICE","readingList","")) =~ m,[^/]+[/]([^/:]+).*, ? $1 : undef }
262    par:ICON;ICON as set, defaults to hue_filled_white_and_color_e27_b22;{ AttrVal("DEVICE","icon","hue_filled_white_and_color_e27_b22") }
263    attr DEVICE icon ICON
264    attr DEVICE stateFormat {lc ReadingsVal($name,"state",0)}
265    attr DEVICE devStateIcon {zigbee2mqtt_devStateIcon255($name)}
266    attr DEVICE webCmd toggle:on:off:brightness:color
267    attr DEVICE devicetopic BASE_TOPIC/DEV_ID
268    attr DEVICE readingList $\DEVICETOPIC:.* { json2nameValue($EVENT) }
269    attr DEVICE setList \
270      on:noArg $\DEVICETOPIC/set {"state":"ON"}\
271      off:noArg $\DEVICETOPIC/set {"state":"OFF"}\
272      brightness:colorpicker,BRI,0,5,255 $\DEVICETOPIC/set {"state":"on","$EVTPART0":"$EVTPART1"}\
273      color:colorpicker,RGB {"$\DEVICETOPIC/set ".zigbee2mqtt_RGB2JSON($EVTPART1)}
274    set DEVICE attrTemplate speechcontrol_type_light_255
275    attr DEVICE model zigbee2mqtt_light_rgb_rgb
276    setreading DEVICE attrTemplateVersion 20200904
Habe ehrlich Mühe zu verstehen, warum es soooo schwer sein soll, das vollends anzupassen, nachdem ich dich schon (aus meiner Warte gefühlt) direkt mit der Nase draufschubse...

(das einzige, was da etwas "seltsam" sein mag, und daher schwer zu deuten, ist der "escape"-Schrägstrich vor den "DEVICE"-Teilen, die durch AttrTemplate nicht durch den Device-Namen ersetzt werden sollen (betr. $DEVICETOPIC)).
Server: HP-T620@Debian 10, aktuelles FHEM + ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | BT@OpenMQTTGateway
svn:MySensors, WeekdayTimer, RandomTimer, Twilight,  AttrTemplate => {mqtt2, mysensors, zwave}

Offline The-Holgi

  • Sr. Member
  • ****
  • Beiträge: 641
Antw:ESP8266-FastLED-IoT-Webserver mit mqtt
« Antwort #8 am: Gestern um 19:33:55 »
Hm, bin wohl zu blöd das zu verstehen. Habe aber tatsächlich nur 5 oder 6 Mqtt devices. Dafür gab es aber passende templates.
Erstmal besten Dank für deine Mühe, muß mir das wohn nochmal in Ruhe ansehen.

Gruß Holger
HP T610 Thin Client; Docker Fhem 5.9; 2X CUL V3 868mhz; Max Heizungssteuerung; FS20kse; FS20UWS; FS20S8-3; 2 FS20DI; HM-CFG-LAN,HM-LC-SW1-PL,HM-SEC-SD, HM-SE1PBU-FM;
Harmony Hub;Hue-Bridge mit Iris, E27 Bulb & FLS-PP