{"id":8064,"date":"2024-02-23T16:46:59","date_gmt":"2024-02-23T15:46:59","guid":{"rendered":"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/?p=8064"},"modified":"2024-02-27T14:00:07","modified_gmt":"2024-02-27T13:00:07","slug":"tv-deckenhalterung-motorisiert-ueber-homeassistant-steuern","status":"publish","type":"post","link":"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/2024\/02\/23\/tv-deckenhalterung-motorisiert-ueber-homeassistant-steuern\/","title":{"rendered":"TV-Deckenhalterung motorisiert \u00fcber Homeassistant steuern"},"content":{"rendered":"<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_8064\" class=\"pvc_stats all  \" data-element-id=\"8064\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n<p style=\"text-align: justify\">Seit ich mich mit Home Automatisierungen besch\u00e4ftige soll nat\u00fcrlich so viel wie m\u00f6glich optimiert, vereinfacht und unter den Aspekten der neuen Schlagworte &#8222;Green Electronics&#8220;, &#8222;Nachhaltigkeit&#8220;, &#8222;Energiesparend&#8220; &#8230; usw. angepasst und realisiert werden. So schalten bei mir Ger\u00e4te bei Nichtbenutzung oder Nichtbeachtung ab, Stand-by Energieverbrauch wird weitgehend vermieden und auch die menschliche Vergesslichkeit (Fenster offen gelassen im Winter, oder vergessen Licht aus zu schalten) verhindert die IOT &#8211; Technologie. Wie die Leser des Blogs mittlerweile schon wissen habe ich hier Systeme wie HomeMatic, NodeRed und seit einiger Zeit Homeassistant mit ESPHome, Zigbee2Mqtt usw. in Verwendung. Das Ziel ist nat\u00fcrlich auch, alles Systeme Cloudfrei zu halten. Ich will nicht, dass die Daten den Umweg \u00fcber irgendwelche Server in Fernost nehmen um bei mir ein Licht ein und aus zu schalten. Also soll m\u00f6glichst alles im Kreis meines eigenen Netzwerks stattfinden und nicht nach au\u00dfen &#8222;telefonieren&#8220; und auch funktionieren wenn ich die Datenleitung kappe.<\/p>\n<p style=\"text-align: justify\">Bei diversen Lieferanten gibts es seit langem, ein, f\u00fcr die Bequemlichkeit im elterlichen Ruheraum, \u00e4u\u00dfert praktisches Ger\u00e4t. Ich spreche da von einer platzsparenden M\u00f6glichkeit, die Flimmerkiste (heute auch Flat-TV genannt) im Raum unterzubringen. Ich nenne hier nur Bezeichnungen wie:<\/p>\n<p style=\"text-align: justify\">Speaka Professional TV-Deckenhalterung elektrisch motorisiert (1439178) oder MyWall HL46ML &#8230; etc. Manche von diesen Gr\u00e4ten sind mit einer Funkfernbedienung steuerbar, andere wiederum \u00fcber die CloudApp von Tuya. Man kann die Tuya App zwar \u00fcber die Tuya IOT Entwicklungsumgebung umgehen und diese Ger\u00e4te \u00fcber die Integration &#8222;TuyaLocal&#8220; in seinen Homeassistant bringen &#8211; geht zwar &#8211; ist aber eher eine &#8222;NUR&#8220;- L\u00f6sung. Die ideale L\u00f6sung ist aus meiner Sicht, die Integration dieser Ger\u00e4te ins ESPHome System.&nbsp; Am Beispiel der Speaka Professional TV Deckenhalterung zeige ich, wie diese mit einer kleinen Erweiterung ins ESPHome Netz und somit im Homeassistant integriert werden kann. Diese Ausf\u00fchrung des SpeaKa Teils hat keine Internet Anbindung und wird nur \u00fcber eine Funkfernbedienung gesteuert.<\/p>\n<div id=\"attachment_8070\" style=\"width: 484px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-3-scaled.jpg\"><img fetchpriority=\"high\" decoding=\"async\" aria-describedby=\"caption-attachment-8070\" class=\"wp-image-8070 size-large\" src=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-3-1024x627.jpg\" alt=\"\" width=\"474\" height=\"290\" srcset=\"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-3-1024x627.jpg 1024w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-3-300x184.jpg 300w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-3-768x471.jpg 768w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-3-1536x941.jpg 1536w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-3-2048x1255.jpg 2048w\" sizes=\"(max-width: 474px) 100vw, 474px\" \/><\/a><p id=\"caption-attachment-8070\" class=\"wp-caption-text\">TV Deckenhalter mit ge\u00f6ffneter Abdeckung<\/p><\/div>\n<p style=\"text-align: justify\">Mit ein wenig reverse Engineering haben wir (Kollege Werner und meiner einer) das bestehende Ger\u00e4tewerk analysiert. Das System ist in etwa so aufgebaut:<\/p>\n<div id=\"attachment_8066\" style=\"width: 484px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-1-scaled.jpg\"><img decoding=\"async\" aria-describedby=\"caption-attachment-8066\" class=\"wp-image-8066 size-large\" src=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-1-1024x768.jpg\" alt=\"\" width=\"474\" height=\"356\" srcset=\"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-1-1024x768.jpg 1024w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-1-300x225.jpg 300w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-1-768x576.jpg 768w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-1-1536x1152.jpg 1536w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-1-2048x1536.jpg 2048w\" sizes=\"(max-width: 474px) 100vw, 474px\" \/><\/a><p id=\"caption-attachment-8066\" class=\"wp-caption-text\">Platine in der Deckenhalterung<\/p><\/div>\n<p>&nbsp;<\/p>\n<div id=\"attachment_8119\" style=\"width: 908px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/systemdiagram.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-8119\" class=\"wp-image-8119 size-full\" src=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/systemdiagram-e1708696072848.jpg\" alt=\"\" width=\"898\" height=\"501\" srcset=\"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/systemdiagram-e1708696072848.jpg 898w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/systemdiagram-e1708696072848-300x167.jpg 300w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/systemdiagram-e1708696072848-768x428.jpg 768w\" sizes=\"(max-width: 898px) 100vw, 898px\" \/><\/a><p id=\"caption-attachment-8119\" class=\"wp-caption-text\">Systemdiagramm<\/p><\/div>\n<p style=\"text-align: justify\">Das Systemdiagramm oben zeigt wie die Platine aufgebaut ist. Die Stromversorgung kommt von einem Steckernetzteil mit DC 24V Ausgang bei 1,5A. Auf der Platine erkennt man noch einen unbest\u00fcckten Bereich, dessen L\u00f6tpads mit +3V3, GND und RX, TX Leitungen passend f\u00fcr einen ESP8266 beschaltet sind. Ebenso ist eine USB Buchse zu erkennen. Diese beiden Schnittstellen sind im Diagramm nicht ber\u00fccksichtigt. Untersucht haben wir die RX\/TX Leitungen, die von den unbest\u00fcckten L\u00f6tpads (ESP8266) zum Microcontroller (1301 X 016B) geroutet sind. Doch hier waren keinerlei Signale zu messen. (Vermutlich ist die Schnittstelle in der geflashten Programmversion nicht aktiviert).<\/p>\n<div id=\"attachment_8074\" style=\"width: 484px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-5-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-8074\" class=\"wp-image-8074 size-large\" src=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-5-1024x770.jpg\" alt=\"\" width=\"474\" height=\"356\" srcset=\"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-5-1024x770.jpg 1024w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-5-300x226.jpg 300w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-5-768x578.jpg 768w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-5-1536x1155.jpg 1536w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-5-2048x1540.jpg 2048w\" sizes=\"(max-width: 474px) 100vw, 474px\" \/><\/a><p id=\"caption-attachment-8074\" class=\"wp-caption-text\">&#8222;Debug&#8220; Dr\u00e4hte an den RX\/TX und am RF-Chip<\/p><\/div>\n<p style=\"text-align: justify\">Dieser Weg bringt uns also nicht weiter. Im n\u00e4chsten Schritt haben wir uns angesehen wo die Steuersignale der Funkfernbedienung herkommen, bzw. wie sie in weiterer Folge umgesetzt werden. Der RF-Empf\u00e4nger Chip hat 16 Pins und leider keinerlei Beschriftung. Oder wurde sie entfernt. Die Versorgungsspannung des RF-Chips liegt an Pin1 und Pin16 an, Pin2 und Pin3 ist mit einem Quarz beschaltet und von Pin9 ist eine Leitung zum Microcontroller geroutet. Das muss also der Datenausgang sein. Mit Hilfe der Software &#8222;PulseView&#8220; von Sigrok und einem Fernost Logicanalyzer haben wir diesen Ausgang mitgesnifft. Und siehe da, hier offenbarten sich Datenpakete mit einer Dauer von 10.3ms. Die Software PulseView konnte das Protokoll nach einigen Versuchen mit unterschiedlichen analysierten Datenraten als RS232 Protokoll erkennen. So war es dann ein leichtes die empfangenen und dekodierten Steuerbefehle zum Microcontroller zu protokollieren.<\/p>\n<div id=\"attachment_8072\" style=\"width: 484px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-4-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-8072\" class=\"wp-image-8072 size-large\" src=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-4-1024x770.jpg\" alt=\"\" width=\"474\" height=\"356\" srcset=\"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-4-1024x770.jpg 1024w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-4-300x226.jpg 300w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-4-768x578.jpg 768w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-4-1536x1155.jpg 1536w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-4-2048x1540.jpg 2048w\" sizes=\"(max-width: 474px) 100vw, 474px\" \/><\/a><p id=\"caption-attachment-8072\" class=\"wp-caption-text\">RF-Chip mit angeschlossener &#8222;Sniffer&#8220; Leitung<\/p><\/div>\n<p>Die Baudrate des RS232 Ports am RF-Chip Ausgangs betr\u00e4gt 9600 bei 8N1. Es werden bei jedem gesendeten Befehl 10 Bytes in HEX empfangen. Hier die Liste der Kommandos: (fehlende Byte folgen&#8230;)<\/p>\n<table style=\"height: 351px\" width=\"562\">\n<tbody>\n<tr>\n<td colspan=\"3\" width=\"240\">Befehl<\/td>\n<td width=\"80\">Byte0<\/td>\n<td width=\"80\">Byte1<\/td>\n<td width=\"80\">Byte2<\/td>\n<td width=\"80\">Byte3<\/td>\n<td width=\"80\">Byte4<\/td>\n<td width=\"80\">Byte5<\/td>\n<td width=\"80\">Byte6<\/td>\n<td width=\"80\">Byte7<\/td>\n<td width=\"80\">Byte8<\/td>\n<td width=\"80\">Byte9<\/td>\n<\/tr>\n<tr>\n<td colspan=\"3\">UP<\/td>\n<td>0xAA<\/td>\n<td>0x06<\/td>\n<td>0x04<\/td>\n<td>0x25<\/td>\n<td>0x03<\/td>\n<td>0xD5<\/td>\n<td>0x01<\/td>\n<td>0x00<\/td>\n<td>0x02<\/td>\n<td>0x55<\/td>\n<\/tr>\n<tr>\n<td colspan=\"3\">DOWN<\/td>\n<td>0xAA<\/td>\n<td>0x06<\/td>\n<td>0x04<\/td>\n<td>0x25<\/td>\n<td>0x03<\/td>\n<td>0xD5<\/td>\n<td>0x00<\/td>\n<td>0x10<\/td>\n<td>0x11<\/td>\n<td>0x55<\/td>\n<\/tr>\n<tr>\n<td colspan=\"3\">LEFT<\/td>\n<td>0xAA<\/td>\n<td>0x06<\/td>\n<td>0x04<\/td>\n<td>0x25<\/td>\n<td>0x03<\/td>\n<td>0xD5<\/td>\n<td>&nbsp;<\/td>\n<td>&nbsp;<\/td>\n<td>&nbsp;<\/td>\n<td>0x55<\/td>\n<\/tr>\n<tr>\n<td colspan=\"3\">RIGHT<\/td>\n<td>0xAA<\/td>\n<td>0x06<\/td>\n<td>0x04<\/td>\n<td>0x25<\/td>\n<td>0x03<\/td>\n<td>0xD5<\/td>\n<td>&nbsp;<\/td>\n<td>&nbsp;<\/td>\n<td>&nbsp;<\/td>\n<td>0x55<\/td>\n<\/tr>\n<tr>\n<td colspan=\"3\">BUTTON1<\/td>\n<td>0xAA<\/td>\n<td>0x06<\/td>\n<td>0x04<\/td>\n<td>0x25<\/td>\n<td>0x03<\/td>\n<td>0xD5<\/td>\n<td>&nbsp;<\/td>\n<td>&nbsp;<\/td>\n<td>&nbsp;<\/td>\n<td>0x55<\/td>\n<\/tr>\n<tr>\n<td colspan=\"3\">BUTTON2<\/td>\n<td>0xAA<\/td>\n<td>0x06<\/td>\n<td>0x04<\/td>\n<td>0x25<\/td>\n<td>0x03<\/td>\n<td>0xD5<\/td>\n<td>0x00<\/td>\n<td>0x08<\/td>\n<td>0x09<\/td>\n<td>0x55<\/td>\n<\/tr>\n<tr>\n<td colspan=\"3\">MEM1<\/td>\n<td>0xAA<\/td>\n<td>0x06<\/td>\n<td>0x04<\/td>\n<td>0x25<\/td>\n<td>0x03<\/td>\n<td>0xD5<\/td>\n<td>&nbsp;<\/td>\n<td>&nbsp;<\/td>\n<td>&nbsp;<\/td>\n<td>0x55<\/td>\n<\/tr>\n<tr>\n<td colspan=\"3\">MEM2<\/td>\n<td>0xAA<\/td>\n<td>0x06<\/td>\n<td>0x04<\/td>\n<td>0x25<\/td>\n<td>0x03<\/td>\n<td>0xD5<\/td>\n<td>&nbsp;<\/td>\n<td>&nbsp;<\/td>\n<td>&nbsp;<\/td>\n<td>0x55<\/td>\n<\/tr>\n<tr>\n<td colspan=\"3\">OK<\/td>\n<td>0xAA<\/td>\n<td>0x06<\/td>\n<td>0x04<\/td>\n<td>0x25<\/td>\n<td>0x03<\/td>\n<td>0xD5<\/td>\n<td>0x00<\/td>\n<td>0x40<\/td>\n<td>0x41<\/td>\n<td>0x55<\/td>\n<\/tr>\n<tr>\n<td colspan=\"3\">SET<\/td>\n<td>xx<\/td>\n<td>xx<\/td>\n<td>xx<\/td>\n<td>xx<\/td>\n<td>xx<\/td>\n<td>xx<\/td>\n<td>xx<\/td>\n<td>xx<\/td>\n<td>xx<\/td>\n<td>xx<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><a href=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-10-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8084 size-large\" src=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-10-1024x770.jpg\" alt=\"\" width=\"474\" height=\"356\" srcset=\"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-10-1024x770.jpg 1024w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-10-300x226.jpg 300w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-10-768x578.jpg 768w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-10-1536x1155.jpg 1536w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-10-2048x1540.jpg 2048w\" sizes=\"(max-width: 474px) 100vw, 474px\" \/><\/a><\/p>\n<p style=\"text-align: justify\">Nachdem mit dem Logikanalyzer das Datenprotokoll gefunden war, versuchten wir \u00fcber ein Terminalprogramm und einen USB zu TTL232 Converter die Daten an den Microcontroller zu senden. Dazu wurde der RF-Chip entfernt. Er zog den Pegel im Ruhezustand auf VCC und verhinderte ein paralleles Betreiben der &#8222;RS232 Transmitter&#8220;.<\/p>\n<div id=\"attachment_8094\" style=\"width: 484px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-15-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-8094\" class=\"wp-image-8094 size-large\" src=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-15-1024x781.jpg\" alt=\"\" width=\"474\" height=\"362\" srcset=\"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-15-1024x781.jpg 1024w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-15-300x229.jpg 300w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-15-768x585.jpg 768w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-15-1536x1171.jpg 1536w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-15-2048x1561.jpg 2048w\" sizes=\"(max-width: 474px) 100vw, 474px\" \/><\/a><p id=\"caption-attachment-8094\" class=\"wp-caption-text\">RF-Chip entfernt<\/p><\/div>\n<div id=\"attachment_8090\" style=\"width: 484px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-13-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-8090\" class=\"wp-image-8090 size-large\" src=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-13-1024x770.jpg\" alt=\"\" width=\"474\" height=\"356\" srcset=\"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-13-1024x770.jpg 1024w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-13-300x226.jpg 300w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-13-768x578.jpg 768w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-13-1536x1155.jpg 1536w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-13-2048x1540.jpg 2048w\" sizes=\"(max-width: 474px) 100vw, 474px\" \/><\/a><p id=\"caption-attachment-8090\" class=\"wp-caption-text\">Board ohne Chip mit Debugleitung<\/p>\n<dd><\/p><\/div>\n<p>&nbsp;<\/p>\n<div style=\"width: 484px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-11-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-8086 size-large\" src=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-11-1024x770.jpg\" alt=\"\" width=\"474\" height=\"356\" srcset=\"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-11-1024x770.jpg 1024w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-11-300x226.jpg 300w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-11-768x578.jpg 768w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-11-1536x1155.jpg 1536w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-11-2048x1540.jpg 2048w\" sizes=\"(max-width: 474px) 100vw, 474px\" \/><\/a><p class=\"wp-caption-text\">USB UART zum Senden der Befehle<\/p><\/div>\n<p style=\"text-align: justify\">Die Steuerbefehle aus oben dargestellter Tabelle konnten per Terminal Programm erfolgreich gesendet werden. Jetzt musste nur noch ein ESP32 Board diese Aufgabe \u00fcbernehmen. Ein ESP32 NodeMCU Board aus dem Fundus wurde mit einem Basis ESPHome-Image best\u00fcckt und ins Homeassistant Netzwerk integriert. Dem ESPHome Knoten war jetzt nur noch beizubringen, \u00fcber den TX Pin des ESP32 die Bytefolge bei entsprechendem Trigger im Homeassistant zu senden. Dazu wurde das ESP32 Board in auf der Platine befestigt und die VCC3V3, GND und TX Leitung zum PIN9 des ehemaligen RF Chip gel\u00f6tet.<\/p>\n<div style=\"width: 484px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-20-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-8104 size-large\" src=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-20-950x1024.jpg\" alt=\"\" width=\"474\" height=\"511\" srcset=\"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-20-950x1024.jpg 950w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-20-278x300.jpg 278w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-20-768x828.jpg 768w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-20-1425x1536.jpg 1425w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-20-1900x2048.jpg 1900w\" sizes=\"(max-width: 474px) 100vw, 474px\" \/><\/a><p class=\"wp-caption-text\">ESP32 am Board des Speaka Deckenhalters<\/p><\/div>\n<p>&nbsp;<\/p>\n<div id=\"attachment_8106\" style=\"width: 484px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-21-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-8106\" class=\"wp-image-8106 size-large\" src=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-21-1024x770.jpg\" alt=\"\" width=\"474\" height=\"356\" srcset=\"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-21-1024x770.jpg 1024w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-21-300x226.jpg 300w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-21-768x578.jpg 768w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-21-1536x1155.jpg 1536w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-21-2048x1540.jpg 2048w\" sizes=\"(max-width: 474px) 100vw, 474px\" \/><\/a><p id=\"caption-attachment-8106\" class=\"wp-caption-text\">Wieder im Deckenhalter eingebaut<\/p><\/div>\n<p style=\"text-align: justify\">In der ESPHome Webumgebung ist nun das folgende yaml Script hinzuzuf\u00fcgen.<\/p>\n<pre style=\"font-family: arial;font-size: 12px;border: 1px dashed #CCCCCC;width: 99%;height: auto;overflow: auto;background: #f0f0f0;;background-image: url('http:\/\/2.bp.blogspot.com\/_z5ltvMQPaa8\/SjJXr_U2YBI\/AAAAAAAAAAM\/46OqEP32CJ8\/s320\/codebg.gif');padding: 0px;color: #000000;text-align: left;line-height: 20px\"><code style=\"color: #000000\"> esphome:  \r\n  name: tvhalterung  \r\n  friendly_name: TVHalterung  \r\n   \r\n esp32:  \r\n  board: esp32dev  \r\n  framework:  \r\n   type: arduino  \r\n   \r\n # Enable logging  \r\n logger:  \r\n   \r\n # Enable Home Assistant API  \r\n api:  \r\n  encryption:  \r\n   key: \"hier dein key beim Anlegen des device\"  \r\n   \r\n ota:  \r\n  password: \"hier dein ota password\"  \r\n   \r\n wifi:  \r\n  ssid: !secret wifi_ssid  \r\n  password: !secret wifi_password  \r\n   \r\n  # Enable fallback hotspot (captive portal) in case wifi connection fails  \r\n  ap:  \r\n   ssid: \"Tvhalterung Fallback Hotspot\"  \r\n   password: \"hier wieder deins\"  \r\n   \r\n captive_portal:  \r\n   \r\n uart:  \r\n  tx_pin: 4  \r\n  rx_pin: 5  \r\n  baud_rate: 9600  \r\n   \r\n # Example button configuration  \r\n button:  \r\n  - platform: template  \r\n   name: TV Halterung UP  \r\n   id: tv_up  \r\n   icon: \"mdi:arrow-up-bold-outline\"  \r\n   on_press:  \r\n    - logger.log: \"Button pressed TV Up\"  \r\n    - uart.write: [0xAA,0x06,0x04,0x25,0x03,0xD5,0x01,0x00,0x02,0x55]  \r\n    \r\n  - platform: template  \r\n   name: TV Halterung OK  \r\n   id: tv_ok  \r\n   icon: \"mdi:stop-circle-outline\"  \r\n   on_press:  \r\n    - logger.log: \"Button pressed TV OK\"  \r\n    - uart.write: [0xAA,0x06,0x04,0x25,0x03,0xD5,0x00,0x40,0x41,0x55]  \r\n   \r\n  - platform: template  \r\n   name: TV Halterung DOWN  \r\n   id: tv_down  \r\n   icon: \"mdi:arrow-down-bold-outline\"  \r\n   on_press:  \r\n    - logger.log: \"Button pressed TV Down\"  \r\n    - uart.write: [0xAA,0x06,0x04,0x25,0x03,0xD5,0x00,0x10,0x11,0x55]  \r\n   \r\n  - platform: template  \r\n   name: TV Halterung Button1  \r\n   id: tv_button1  \r\n   icon: \"mdi:numeric-1-circle-outline\"  \r\n   on_press:  \r\n    - logger.log: \"Button pressed TV Button1\"  \r\n    - uart.write: [0xAA,0x06,0x04,0x25,0x03,0xD5,0x00,0x20,0x21,0x55]  \r\n   \r\n  - platform: template  \r\n   name: TV Halterung Button2  \r\n   id: tv_button2  \r\n   icon: \"mdi:numeric-2-circle-outline\"  \r\n   on_press:  \r\n    - logger.log: \"Button pressed TV Button2\"  \r\n    - uart.write: [0xAA,0x06,0x04,0x25,0x03,0xD5,0x00,0x08,0x09,0x55]  \r\n    \r\n  - platform: template  \r\n   name: TV Halterung Left  \r\n   id: tv_left  \r\n   icon: \"mdi:arrow-left-bold-outline\"  \r\n   on_press:  \r\n    - logger.log: \"Button pressed TV Left\"  \r\n    - uart.write: [0xAA,0x06,0x04,0x25,0x03,0xD5,0x00,0x20,0x21,0x55]  \r\n   \r\n  - platform: template  \r\n   name: TV Halterung Right  \r\n   id: tv_right  \r\n   icon: \"mdi:arrow-right-bold-outline\"  \r\n   on_press:  \r\n    - logger.log: \"Button pressed TV Right\"  \r\n    - uart.write: [0xAA,0x06,0x04,0x25,0x03,0xD5,0x00,0x20,0x21,0x55]  \r\n    \r\n  - platform: template  \r\n   name: TV Halterung MEM1  \r\n   id: tv_mem1  \r\n   icon: \"mdi:alpha-m-circle-outline\"  \r\n   on_press:  \r\n    - logger.log: \"Button pressed TV MEM1\"  \r\n    - uart.write: [0xAA,0x06,0x04,0x25,0x03,0xD5,0x00,0x01,0x02,0x55]  \r\n   \r\n  - platform: template  \r\n   name: TV Halterung MEM2  \r\n   id: tv_mem2  \r\n   icon: \"mdi:alpha-m-circle-outline\"  \r\n   on_press:  \r\n    - logger.log: \"Button pressed TV MEM2\"  \r\n    - uart.write: [0xAA,0x06,0x04,0x25,0x03,0xD5,0x00,0x01,0x02,0x55]  \r\n<\/code><\/pre>\n<p style=\"text-align: justify\">Ist das yaml Script dann kompiliert und zum ESP hochgeladen, gibt es ein neues ESPHome Device mit dem Namen TV-Halter in der Homeassistant Umgebung. Hier sind nun die Tasten f\u00fcr die Steuerung als Entit\u00e4ten gelistet. Hat alles gekplappt, sollte sich die TV-Halterung \u00fcber den Homeassistant jetzt steuern lassen.<\/p>\n<p>(Es sind noch nicht alles Steuerkommandos richtig implementiert &#8211; die korrekten Codes werden in der Tabelle noch erg\u00e4nzt)<\/p>\n<p><a href=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-22-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8108 size-large\" src=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-22-1024x578.jpg\" alt=\"\" width=\"474\" height=\"268\" srcset=\"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-22-1024x578.jpg 1024w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-22-300x169.jpg 300w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-22-768x434.jpg 768w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-22-1536x867.jpg 1536w, https:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-22-2048x1156.jpg 2048w\" sizes=\"(max-width: 474px) 100vw, 474px\" \/><\/a><\/p>\n<p><a href=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-25-scaled.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8114 size-large\" src=\"http:\/\/blog.fh-kaernten.at\/ingmarsretro\/files\/2024\/02\/TVLiftMod-25-946x1024.jpg\" alt=\"\" width=\"474\" height=\"513\"><\/a><\/dd>\n","protected":false},"excerpt":{"rendered":"<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_8064\" class=\"pvc_stats all  \" data-element-id=\"8064\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n<p>Seit ich mich mit Home Automatisierungen besch\u00e4ftige soll nat\u00fcrlich so viel wie m\u00f6glich optimiert, vereinfacht und unter den Aspekten der neuen Schlagworte &#8222;Green Electronics&#8220;, &#8222;Nachhaltigkeit&#8220;, &#8222;Energiesparend&#8220; &#8230; usw. angepasst und realisiert werden. So schalten bei mir Ger\u00e4te bei Nichtbenutzung oder Nichtbeachtung ab, Stand-by Energieverbrauch wird weitgehend vermieden und auch die menschliche Vergesslichkeit (Fenster offen gelassen&hellip; <br \/> <a class=\"read-more\" href=\"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/2024\/02\/23\/tv-deckenhalterung-motorisiert-ueber-homeassistant-steuern\/\">Weiterlesen<\/a><\/p>\n","protected":false},"author":86,"featured_media":8106,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"ngg_post_thumbnail":0,"footnotes":""},"categories":[1,57],"tags":[2521,2509,2527,2525,2528,2524,2529,2523,2526,2520,2522],"class_list":["post-8064","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-allgemeines","category-elektronikbastler","tag-hack-my-tv-halterung","tag-homeassistant","tag-mod-fuer-homeassistant","tag-plb-m0544","tag-pulseview","tag-raus-aus-der-cloud","tag-sigrock","tag-speaka-professional","tag-tv-deckenhalterung-elektrisch","tag-tv-deckenhalterung-motorisiert","tag-umbau-tv-deckenhalterung-fuer-homeassistant"],"a3_pvc":{"activated":true,"total_views":600,"today_views":0},"_links":{"self":[{"href":"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/wp-json\/wp\/v2\/posts\/8064","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/wp-json\/wp\/v2\/users\/86"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/wp-json\/wp\/v2\/comments?post=8064"}],"version-history":[{"count":0,"href":"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/wp-json\/wp\/v2\/posts\/8064\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/wp-json\/wp\/v2\/media\/8106"}],"wp:attachment":[{"href":"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/wp-json\/wp\/v2\/media?parent=8064"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/wp-json\/wp\/v2\/categories?post=8064"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.fh-kaernten.at\/ingmarsretro\/wp-json\/wp\/v2\/tags?post=8064"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}