{"id":578,"date":"2026-10-23T08:48:42","date_gmt":"2026-10-23T06:48:42","guid":{"rendered":"https:\/\/www.richard-becker.net\/blog\/?p=578"},"modified":"2026-10-23T08:48:42","modified_gmt":"2026-10-23T06:48:42","slug":"kamstrup-flowiq-2200-warum-ich-tasmota-wieder-abgeschaltet-habe-und-jetzt-auf-ai-on-the-edge-setze","status":"publish","type":"post","link":"https:\/\/www.richard-becker.net\/blog\/2026\/10\/23\/kamstrup-flowiq-2200-warum-ich-tasmota-wieder-abgeschaltet-habe-und-jetzt-auf-ai-on-the-edge-setze\/","title":{"rendered":"Kamstrup flowIQ 2200: Warum ich Tasmota wieder abgeschaltet habe und jetzt auf AI on the Edge setze"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Manchmal funktioniert eine technische L\u00f6sung genau so, wie man sich das vorgestellt hat. Und trotzdem ist sie am Ende nicht die richtige. Willkommen in meinem Smart Home.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Vor Kurzem habe ich hier im Blog beschrieben, wie sich der Kamstrup flowIQ 2200 mit einem ESP8266, einem optischen IR-Lesekopf und Tasmota auslesen l\u00e4sst. Das Ganze funktionierte erstaunlich gut. Z\u00e4hlerstand abfragen, Batterierestlaufzeit auslesen, Werte per MQTT ins Smart Home \u00fcbertragen. Alles lokal, ohne Cloud und ohne die freundliche Unterst\u00fctzung meines Wasserversorgers.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Eigentlich perfekt. Eigentlich. Denn nach ungef\u00e4hr eineinhalb Tagen habe ich das Experiment wieder beendet. Nicht, weil etwas nicht funktioniert h\u00e4tte, sondern weil mir eine ganz bestimmte Frage keine Ruhe gelassen hat: <strong>Wie lange macht die Batterie des Wasserz\u00e4hlers das eigentlich mit?<\/strong><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Wenn eine funktionierende L\u00f6sung trotzdem Bauchschmerzen macht<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Der Kamstrup flowIQ 2200 ist ein batteriebetriebener Wasserz\u00e4hler. Seine Energieversorgung ist darauf ausgelegt, \u00fcber viele Jahre zuverl\u00e4ssig zu funktionieren. Schlie\u00dflich m\u00f6chte niemand regelm\u00e4\u00dfig seinen Wasserversorger anrufen m\u00fcssen, weil der digitale Wasserz\u00e4hler pl\u00f6tzlich keine Lust mehr hat.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">F\u00fcr meine Tasmota-L\u00f6sung hatte ich die optische Schnittstelle alle 120 Sekunden angesprochen. Dabei wurden sowohl der aktuelle Z\u00e4hlerstand als auch die gesch\u00e4tzte verbleibende Batterielaufzeit abgefragt. Das hat funktioniert und in meinen ungef\u00e4hr eineinhalb Tagen Testbetrieb konnte ich jedenfalls keine Probleme feststellen. Allerdings ist da ein kleiner Unterschied zwischen \u201efunktioniert eineinhalb Tage\u201c und \u201efunktioniert die n\u00e4chsten zehn oder f\u00fcnfzehn Jahre\u201c.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Jede aktive Kommunikation ben\u00f6tigt Energie. Und w\u00e4hrend es meinem ESP8266 ziemlich egal ist, wie oft er \u00fcber die serielle Schnittstelle irgendwelche Daten verschickt, sieht das beim Wasserz\u00e4hler etwas anders aus. Der h\u00e4ngt schlie\u00dflich nicht am Netzteil, sondern an seiner internen Batterie. Wie stark die regelm\u00e4\u00dfigen IR-Abfragen die tats\u00e4chliche Batterielebensdauer beeinflussen, kann ich nicht zuverl\u00e4ssig beziffern. Vielleicht w\u00e4re der zus\u00e4tzliche Verbrauch kaum relevant gewesen, vielleicht h\u00e4tte ich dem Z\u00e4hler damit aber auch einen Teil seiner vorgesehenen Lebensdauer genommen. Und genau dieses \u201eVielleicht\u201c hat mich gest\u00f6rt.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Die Sache mit der schlafenden Schnittstelle<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">In den Kommentaren zu meinem urspr\u00fcnglichen Beitrag kam au\u00dferdem eine interessante Frage auf: Schaltet der Kamstrup seine optische Schnittstelle nach einiger Zeit automatisch ab? Offenbar gibt es entsprechende Erfahrungen mit bestimmten Ger\u00e4ten, bei denen die Schnittstelle nach einer gewissen Zeit nicht mehr auf Abfragen reagieren soll. Ich hatte zuvor Hinweise gefunden, dass sich dieses Verhalten m\u00f6glicherweise durch ausreichend kurze Abfrageintervalle vermeiden l\u00e4sst. Auch unterschiedliche Modellvarianten des flowIQ 2200 k\u00f6nnten dabei eine Rolle spielen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Bei meinem eigenen Test ist die Schnittstelle jedenfalls nicht eingeschlafen. Allerdings lief das Ganze, wie gesagt, nur ungef\u00e4hr eineinhalb Tage, sodass ich daraus keine belastbare Aussage zum Dauerbetrieb ableiten kann. Und wenn man sich das einmal \u00fcberlegt, wird die Sache ohnehin etwas merkw\u00fcrdig: Da versucht man m\u00f6glicherweise, eine Schnittstelle durch regelm\u00e4\u00dfige Kommunikation wachzuhalten, w\u00e4hrend man gleichzeitig hofft, dass genau diese Kommunikation die Batterie nicht nennenswert belastet. Technisch interessant ist das auf jeden Fall, eine L\u00f6sung, bei der ich nachts besonders ruhig schlafe, aber eher nicht.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Warum nicht einfach den Z\u00e4hler fotografieren?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Irgendwann kam dann die eigentlich naheliegende Frage auf: Warum muss ich \u00fcberhaupt mit dem Wasserz\u00e4hler kommunizieren? Der aktuelle Z\u00e4hlerstand steht doch schlie\u00dflich direkt auf seinem Display. Statt den Wasserz\u00e4hler alle zwei Minuten per Infrarot nach seinem Verbrauch zu fragen, k\u00f6nnte ich doch einfach das ablesen, was er ohnehin anzeigt.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"https:\/\/www.richard-becker.net\/blog\/wp-content\/uploads\/2026\/10\/ESP32-CAM-und-Pinleisten-auf-Lederunterlage-1024x768.png\" alt=\"\" class=\"wp-image-581\" srcset=\"https:\/\/www.richard-becker.net\/blog\/wp-content\/uploads\/2026\/10\/ESP32-CAM-und-Pinleisten-auf-Lederunterlage-1024x768.png 1024w, https:\/\/www.richard-becker.net\/blog\/wp-content\/uploads\/2026\/10\/ESP32-CAM-und-Pinleisten-auf-Lederunterlage-300x225.png 300w, https:\/\/www.richard-becker.net\/blog\/wp-content\/uploads\/2026\/10\/ESP32-CAM-und-Pinleisten-auf-Lederunterlage-768x576.png 768w, https:\/\/www.richard-becker.net\/blog\/wp-content\/uploads\/2026\/10\/ESP32-CAM-und-Pinleisten-auf-Lederunterlage.png 1448w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Und damit sind wir bei <strong><a href=\"https:\/\/jomjol.github.io\/AI-on-the-edge-device-docs\/\" data-type=\"link\" data-id=\"https:\/\/jomjol.github.io\/AI-on-the-edge-device-docs\/\" target=\"_blank\" rel=\"noopener\">AI on the Edge Device<\/a><\/strong>. Das Open-Source-Projekt verfolgt einen ziemlich cleveren Ansatz: Eine <a href=\"https:\/\/www.google.com\/goto?url=CAESaQHrOzAVpW7Zw9Ag-DsGZYUYiWpdKRHmX2TNlkN7urmaDnSUKdty6AFtz_oSkSqyq9W9MvR7XR3a8bx-Im_ZZ4k1p-pr3qOPF-h4kVF8GHsXWG57Kcnv4QZuNjuDwuAQzXZYIQzzqJYiGw\" data-type=\"link\" data-id=\"https:\/\/www.google.com\/goto?url=CAESaQHrOzAVpW7Zw9Ag-DsGZYUYiWpdKRHmX2TNlkN7urmaDnSUKdty6AFtz_oSkSqyq9W9MvR7XR3a8bx-Im_ZZ4k1p-pr3qOPF-h4kVF8GHsXWG57Kcnv4QZuNjuDwuAQzXZYIQzzqJYiGw\" target=\"_blank\" rel=\"noopener\">kleine Kamera (&#8222;ESP32Cam&#8220;)<\/a> fotografiert die Anzeige eines Z\u00e4hlers und anschlie\u00dfend wird der angezeigte Wert direkt auf einem Mikrocontroller mithilfe einer Bilderkennung ausgewertet. Das funktioniert beispielsweise mit Wasserz\u00e4hlern, Stromz\u00e4hlern oder anderen Messger\u00e4ten, deren Werte auf einem Display oder Z\u00e4hlwerk sichtbar sind. Man macht also im Grunde genau das, was man fr\u00fcher selbst gemacht hat: auf den Z\u00e4hler schauen und den Wert ablesen. Nur eben automatisch und ohne daf\u00fcr jedes Mal mit einer Taschenlampe in den Keller zu laufen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">AI on the Edge statt aktiver IR-Kommunikation<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Der entscheidende Unterschied zu meiner urspr\u00fcnglichen Tasmota-L\u00f6sung ist die Art, wie die Daten erfasst werden. Bei Tasmota habe ich den Kamstrup aktiv \u00fcber seine optische Schnittstelle angesprochen. Der Wasserz\u00e4hler musste die Anfrage verarbeiten und eine entsprechende Antwort liefern. Bei AI on the Edge wird dagegen die ohnehin vorhandene Anzeige optisch erfasst. Der Wasserz\u00e4hler muss dazu keine zus\u00e4tzlichen Datentelegramme erzeugen oder irgendwelche Register auslesen, denn die eigentliche Arbeit \u00fcbernimmt die externe Hardware.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nat\u00fcrlich ben\u00f6tigt auch diese L\u00f6sung Strom. Kamera, Mikrocontroller und Bilderkennung laufen schlie\u00dflich nicht mit Luft und Liebe. Allerdings stammt diese Energie nicht aus der internen Batterie des Wasserz\u00e4hlers. <strong>Der Wasserz\u00e4hler wird damit nicht mehr aktiv ausgelesen, sondern lediglich beobachtet.<\/strong> Und genau das ist f\u00fcr mich der entscheidende Vorteil.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Eine wichtige Einschr\u00e4nkung gibt es dabei allerdings: Auch ein elektronisches Display ben\u00f6tigt nat\u00fcrlich Energie und nicht jedes Display zeigt seinen Wert dauerhaft an. Entscheidend ist deshalb, dass der Z\u00e4hlerstand ohne zus\u00e4tzliche Aktivierung durch die externe Hardware sichtbar und zuverl\u00e4ssig fotografierbar ist. Es geht mir also nicht darum, dass die neue L\u00f6sung \u00fcberhaupt keinen Strom verbraucht, sondern darum, die Energieversorgung des Wasserz\u00e4hlers m\u00f6glichst in Ruhe zu lassen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Funktioniert das auch mit einem digitalen Wasserz\u00e4hler?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">AI on the Edge ist urspr\u00fcnglich vor allem f\u00fcr die optische Erfassung von Z\u00e4hlerst\u00e4nden bekannt, beispielsweise von klassischen mechanischen Wasserz\u00e4hlern mit Zahlenrollen. Der Kamstrup flowIQ 2200 besitzt dagegen eine digitale Anzeige, aber das grunds\u00e4tzliche Prinzip bleibt gleich: Die Kamera nimmt ein Bild auf und die Bilderkennung versucht, daraus den angezeigten Zahlenwert zu ermitteln.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"831\" src=\"https:\/\/www.richard-becker.net\/blog\/wp-content\/uploads\/2026\/10\/aiontheedge-1024x831.png\" alt=\"\" class=\"wp-image-582\" srcset=\"https:\/\/www.richard-becker.net\/blog\/wp-content\/uploads\/2026\/10\/aiontheedge-1024x831.png 1024w, https:\/\/www.richard-becker.net\/blog\/wp-content\/uploads\/2026\/10\/aiontheedge-300x243.png 300w, https:\/\/www.richard-becker.net\/blog\/wp-content\/uploads\/2026\/10\/aiontheedge-768x623.png 768w, https:\/\/www.richard-becker.net\/blog\/wp-content\/uploads\/2026\/10\/aiontheedge-1536x1246.png 1536w, https:\/\/www.richard-becker.net\/blog\/wp-content\/uploads\/2026\/10\/aiontheedge-2048x1661.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Bei mir funktioniert das inzwischen sehr gut. Der Z\u00e4hlerstand l\u00e4sst sich auf diese Weise erfassen, ohne dass ich die optische Kommunikationsschnittstelle des Kamstrup verwenden muss. F\u00fcr mein Smart Home ist schlie\u00dflich nicht entscheidend, auf welchem technischen Weg die Zahl ermittelt wird. Entscheidend ist, dass ich einen zuverl\u00e4ssigen Z\u00e4hlerstand erhalte, den ich anschlie\u00dfend weiterverarbeiten kann.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Die Bilderkennung ist dabei nat\u00fcrlich nicht grunds\u00e4tzlich unfehlbar. Schlechte Beleuchtung, Reflexionen, eine ung\u00fcnstige Kameraposition oder Ver\u00e4nderungen an der Anzeige k\u00f6nnen zu fehlerhaften Erkennungen f\u00fchren. Aber das sind Probleme, die ich an meiner eigenen Hardware beheben kann, und das ist mir deutlich lieber, als \u00fcber die m\u00f6gliche Restlebensdauer einer fest verbauten Z\u00e4hlerbatterie nachzudenken.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Und was wird jetzt aus meiner Tasmota-Anleitung?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Die bleibt selbstverst\u00e4ndlich online, denn die urspr\u00fcngliche L\u00f6sung funktioniert. Wer einen Kamstrup flowIQ 2200 \u00fcber die optische Schnittstelle auslesen m\u00f6chte, findet dort weiterhin die notwendigen Informationen zur Verkabelung, zur Kommunikation und zum Tasmota-Skript. Ich m\u00f6chte damit lediglich eine wichtige Erg\u00e4nzung zu meinem urspr\u00fcnglichen Beitrag liefern: <strong>Nur weil sich etwas technisch umsetzen l\u00e4sst, bedeutet das nicht automatisch, dass es auch die beste L\u00f6sung f\u00fcr den dauerhaften Betrieb ist.<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wie stark regelm\u00e4\u00dfige Abfragen \u00fcber die optische Schnittstelle die Batterielebensdauer tats\u00e4chlich beeinflussen, wei\u00df ich nicht. Und ich m\u00f6chte auch nicht behaupten, dass mein urspr\u00fcnglicher Ansatz die Batterie zwangsl\u00e4ufig vorzeitig entladen h\u00e4tte. Mir pers\u00f6nlich war das Risiko beziehungsweise die Unsicherheit aber schlicht zu gro\u00df, zumal es inzwischen eine Alternative gibt, die f\u00fcr meinen Anwendungsfall sehr gut funktioniert.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Fazit: Manchmal ist weniger Kommunikation mehr<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Mein kleiner Ausflug in die Kamstrup-Kommunikation war trotzdem alles andere als umsonst. Im Gegenteil: Ich habe einiges \u00fcber das KMP-Protokoll, die optische Schnittstelle und die Verarbeitung der Messwerte mit Tasmota gelernt. Und ganz nebenbei gezeigt, dass sich der Z\u00e4hler auch ohne den vom Wasserversorger verweigerten AES-Schl\u00fcssel auslesen l\u00e4sst. Das war durchaus befriedigend.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">F\u00fcr den dauerhaften Betrieb habe ich mich nun aber f\u00fcr AI on the Edge entschieden. Keine regelm\u00e4\u00dfigen IR-Abfragen mehr, kein Versuch, eine Schnittstelle dauerhaft wachzuhalten und vor allem keine zus\u00e4tzlichen aktiven Kommunikationsvorg\u00e4nge, die m\u00f6glicherweise an der Batterie meines Wasserz\u00e4hlers zehren. Stattdessen schaut eine Kamera auf das Display und \u00fcberl\u00e4sst dem Wasserz\u00e4hler ansonsten seine Ruhe.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Manchmal ist die einfachere L\u00f6sung eben nicht diejenige mit dem interessanteren Protokoll, sondern diejenige, die einfach nur hinschaut.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Weiterf\u00fchrende Links:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.richard-becker.net\/blog\/2026\/10\/11\/kamstrup-flowiq-2200-auslesen-wasserzaehler-mit-tasmota-und-esp8266-smart-machen\/\">Mein urspr\u00fcnglicher Beitrag: Kamstrup flowIQ 2200 mit Tasmota und ESP8266 auslesen<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/jomjol.github.io\/AI-on-the-edge-device-docs\/\" target=\"_blank\" rel=\"noopener\">AI on the Edge Device \u2013 Projektdokumentation<\/a><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Manchmal funktioniert eine technische L\u00f6sung genau so, wie man sich das vorgestellt hat. Und trotzdem&hellip; <a class=\"read-more-link\" href=\"https:\/\/www.richard-becker.net\/blog\/2026\/10\/23\/kamstrup-flowiq-2200-warum-ich-tasmota-wieder-abgeschaltet-habe-und-jetzt-auf-ai-on-the-edge-setze\/\">[Weiterlesen]<\/a><\/p>\n","protected":false},"author":2,"featured_media":579,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[18,10,24,11,51,22,8,7,120],"class_list":["post-578","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technologie","tag-datenschutz","tag-hardware","tag-heimnetzwerk","tag-homeserver","tag-ki","tag-open-source","tag-selfhosting","tag-technologie","tag-wasserzaehler"],"_links":{"self":[{"href":"https:\/\/www.richard-becker.net\/blog\/wp-json\/wp\/v2\/posts\/578","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.richard-becker.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.richard-becker.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.richard-becker.net\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.richard-becker.net\/blog\/wp-json\/wp\/v2\/comments?post=578"}],"version-history":[{"count":2,"href":"https:\/\/www.richard-becker.net\/blog\/wp-json\/wp\/v2\/posts\/578\/revisions"}],"predecessor-version":[{"id":583,"href":"https:\/\/www.richard-becker.net\/blog\/wp-json\/wp\/v2\/posts\/578\/revisions\/583"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.richard-becker.net\/blog\/wp-json\/wp\/v2\/media\/579"}],"wp:attachment":[{"href":"https:\/\/www.richard-becker.net\/blog\/wp-json\/wp\/v2\/media?parent=578"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.richard-becker.net\/blog\/wp-json\/wp\/v2\/categories?post=578"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.richard-becker.net\/blog\/wp-json\/wp\/v2\/tags?post=578"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}