Hallo, Ist nicht ganz der selbe String. Nach dem Protokoll von Dreamcatcher hätte ich eine Software fertig gehabt. SG
Hallo Zusammen, Bezgl. dem errechnen des Pelletsverbauch hätte ich noch ein Frage. Ich hoffe Hugo schaut hier noch ab und zu vorbei. Sie haben geschrieben : Die Förderrate der Einschubschnecke ist in % der Zeit angegeben. Im 10s Intervall wird bei mir eingeschoben, z.B. 30% heißt 3s Einschub, 7s Pause. Lief da die Fördereinschubschnecke echte 3 Sek. lang durch? Ich habe mal bei meiner Heizung überprüft wie das abläuft mit dem Einschub. Auch wenn ich FS-Rate 40% habe läuft die Schnecke nur so an die 1 Sek. sollte dann ja eigtl. 4Sek. lang sein, oder? Bei mir werden auch alle 10Sek. die Pellets eingeschoben. Meine Einschub Fördermenge ist laut Handbuch 9,3kg/h. BTW: bei mir ist doch die FS-Rate im Pakett 14.(keine Ahnung wo ich damals hingeschaut hab :) SG Andi
Hallo, gibt's denn die Software von Hogi irgendwo für den üblichen AVM FritzBox IP-Raum von 192.168.178.xxx ? Wäre sehr dankbar, Hogi scheint ja selbst nicht erreichbar zu sein Andreas
Hallo Andi, >Die Förderrate der Einschubschnecke ist in % der Zeit angegeben. >Im 10s Intervall wird bei mir eingeschoben, z.B. 30% heißt 3s Einschub, >7s Pause. >Lief da die Fördereinschubschnecke echte 3 Sek. lang durch? ja tatsächlich, und bei 70% auch echte 7s / 3s Pause. Gruß, Hugo
Hallo Pelletsheizer, Das mit dem raspberry möchte ich auch so machen. Mit welchem Programm ist den Skript geschrieben? Ist das immer noch Pearl? Danke hengi-m
Hallo zusammen, ich würde ebenfalls gerne die Daten einer Hargassner-Pelletheizung loggen. Es ist eine ältere Anlage (2003), Typ WTH mit 55 kW und Lambda Hatronic Steuerung. Habe diesen Thread jetzt fast komplett durchgelesen, bin aber leider noch unsicher wie das ganze jetzt wirklich funktioniert oder funktionieren kann. Ich bin mir nicht mal sicher ob die Lambda-Hatronic eine RS232-Schnittstelle hat, von der hier die Rede ist. Könnte mir jemand kurz beschreiben welches Equipment und welche Software nötig ist um die Daten des Hargassner zu erfassen und ob dies ohne all zu viel Vorkenntnisse möglich ist? Zeit mich in die Materie einzuarbeiten hätte ich.. Hier noch ein Foto der Platine (allerdings noch mit Schutzplatten davor). Vielen Dank und viele Grüße Matthias
Hallo Matthias, Schwer zu sehen ob hier eine Schnittstelle verfügbar ist auf deiner Platine. Mach mal die Schutzplatten ab. Vielleicht sieht man dann was. Andi
Hallo Matthias, Eine RS-232 Schnittstele erkennst Du daran, daß sie 9 Buchsen hat und eine Trapezförmige Form. Die Form ähnelt einem VGA-Anschluß, das ist der Anschluß des Monitors an einem älteren PC. Hoffe das hilft etwas. Grüße Roger
Hallo Reiser, das ist bei Hargassner nicht unbedingt der Fall. Hier ein Bild vom HSV, es ist eine RJ45, aber keine Netzwerkbuchse. http://www.mikrocontroller.net/attachment/preview/63274.jpg Belegung: RJ45 <---> RS232 Pin 6 <---> Pin2 Pin 8 <---> Pin5 Gruß, Hugo
Hallo Reiser, hier ist das Bild von Christian Schlappinger besser http://www.mikrocontroller.net/attachment/preview/63274/page_snapshots/001.png Gruß, Hugo
Hallo Lieber Hugo, danke für den Tipp. Ich hoffe das hilft auch Matthias, denn dem wollte ich helfen die Com-Schnittstelle der Hargassner Heizung zu finden. Wenn es eine RJ-45 Buchse ist, dann benötigt er ein Adapterkabel. Hargasssner ist nicht gerade sehr kommunikativ, was die Schnittstellen betrifft. Anfragen dort, werden mit "Nicht-Beantworten" beantwortet. Gruß Roger
Hallo Roger, es gibt wohl bei älteren Geräten auch einen 10-pol. Pfostenstecker als Serielle. Am besten einmal diesen ganzen Thread durchsuchen. Gruß, Hugo
Hallo Hugo, danke für Deine Mühe, aber ich brauche die info zum seriellen Port nicht, da ich mittlerweile einen Touch-Controller habe, der die daten per LAN-Schnittstelle ins Netzwerk postet. Grüße Roger
Halle Roger, darf ich fragen, was die Umrüstung auf 'Touch' gekostet hat und ob es problemlos funktionierte? Vielen Dank, Jürgen
Hallo Jürgen, ich habe eine 15KV Anlage und der Umbau hat ca. € 1000,00 gekostet. Der Umbau dauerte etwa 4 Stunden. Habe ich aber von Hargassner durchführen lassen. Ob das ein Standardpreis war kann ich nicht sagen. Bei mir war die ursprüngliche Platine defekt und ich hatte diese auf Garantie getauscht bekommen, da die Heizung unter Wartung steht. Ich habe mich aber dann für das Touch entschieden, da hier wesentlich mehr Info und auch übersichtlicher bereits an der Heizung zur Verfügung stehen. Es musste die komplette Platine getauscht werden. aber anschließend funktionierte alles einwandfrei. Gruß Roger
Super, Danke für die Info. Ich überlege mir den Umbau auch, weil es ja von Hargassner seit letzter Woche eine (Android/Iphone) App gibt. Und die sieht richtig gut aus, geht aber nur mit der Touchsteuerung... Die zusätzlich notwendige Hardware kostet nochmal ca. 100 Euro. Viele Grüße, Jürgen
Hallo zusammen, entschuldigt die späte Rückmeldung - ich hatte gar nicht gemerkt, dass es hier doch noch rege Diskussionen zu den verschiedenen Platinen gibt ;-) Vielen Dank für die Rückmeldungen! Was Roger schreibt kann ich nur bestätigen - von Hargassner kann man keine Hilfe erwarten... Bei meiner Platine handelt es sich glaube ich um eine ziemlich alte Version auf der weder ein RJ45-Anschluss noch 10-Pin-Pfosten-Stecker vorhanden sind (siehe Fotos). Otti (der auch hier im Thread unterwegs war/ist) hatte jedoch die Idee "ein Flachbandkabel mit 4 Pfostensteckern anzufertigen um von dort aus die Daten anzuzapfen". Bin mal gespannt was daraus wird und ob das funktioniert. Viele Grüße Matthias
Hallo zusammen, bei mir klappt es jetzt endlich auch geklappt die Daten des Hargassner zu erfassen. Und das trotz ziemlich alter Lambda-Hatronic die überhaupt keine Schnittstelle vorgesehen hat (weder RS232, noch RJ-45). Habe mir jedoch ein entsprechendes Kabel gebastelt und dann war die Vorgehensweise identisch wie bei Otti damals. Danke nochmal an die Leute hier im Thread und besonders an Otti! Viele Grüße Matthias
Hallo, ich habe auch eine Hargassner Heizung mit Lamdatronic und wäre sehr an eurer Lösung interessiert mazzdh und otti. Was/Wie bekommt ihr die Informationen aus der Heizung? Ist dies nun RS232 oder I2C? Für eure Hilfe/Informationen wäre ich dankbar. Vielen Dank schon mal und einen schönen Abend noch. bingo
Hallo Bingo, die Schnittstelle ist RS232. Falls du noch Informationen brauchst kannst du mir mailen: mazzdh@gmail.com Viele Grüße
Ich habe auch eine Hargassner-Heizung (Hackschnitzelanlage WTH-110) und möchte die Betriebsdaten erfassen. Da ich grade noch so die alte Anlage ohne Netzwerkanschluss erwischt habe (wir gingen im September in Betrieb), war hierfür Basteln angesagt. Auch durch diesen Blog-post (übrigens einer von sehr, sehr wenigen im weiten Internet) habe ich Mut gefasst, das zu versuchen. Da ich später auch Störungen in unseren Wohnhäusern erkennen sollte und auch die Betriebsdaten der Wohnhäuser abgreifen möchte, habe ich mich zunächst am CAN-Bus-Interface versucht. Meine bisherigen Ergebnisse habe ich in meinem Blog erfasst: https://www.bwurst.org/archives/219-Betriebsdaten-einer-Hargassner-Hackschnitzelheizung-erfassen.html Mein Code (Python für Raspberry-Pi) liegt auf github unter https://github.com/bwurst/hargassner-monitor Ich danke allen die in diesem Thread ihre Erkenntnisse veröffentlicht haben!
!!Benutzen der folgenden Informationen auf eigenen Gefahr!! Hallo zusammen, hab mir eine Heizungsvisualisierung für eine Hargassner Heizung HSV22 Touch gebaut. Webseite zur Pelletheizung HSV22 https://www.hargassner.at/pelletheizung-heizkessel-HSV_9-22kW.html Ich bin kein Programmierer, das Script hat sicherlich noch Verbesserungspotenzial. Die Daten Kesseltemperatur, HK1 ist, HK1 soll, Außentemperatur, Boilertemperatur, Raumtemperatur, Puffertemperatur und der Pelletverbrauch werden auf einer Webseite als Zahlen und per Grafik dargestellt. Als Grundgerüst habe ich das Perl Script von Pelletheizer verwendet. Vielen Dank an Pelletheizer für die Veröffentlichung des Scripts und vielen Dank an alle, die sich bei diesem Thema so reinhängen! Anbei die Informationen zum Projekt: Hardware: Raspberry Pi 2 Model B Made in UK - Neuste Generation - (2015) + Exclusives Gehäuse (Black Slim Edition) Case Rydges SpeedPower® High-Quality PC Netzteil 2A Transcend TS32GUSDHC10E Class 10 Extreme-Speed microSDHC 32GB Speicherkarte Preis ca. 80 Euro Installierte Software: Ubuntu installiert Ubuntu MATE 15.04 Beta Version MATE Desktop Environment 1.8.2 rrdtool installiert apt-get install librrds-perl rrdtool Datenbank heizung.rrd angelegt Quellcode rrdtool create heizung.rrd --start 1254815700 --step 300 DS:kessel:GAUGE:600:U:U DS:aussen:GAUGE:600:U:U DS:hk1ist:GAUGE:600:U:U DS:hk1soll:GAUGE:600:U:U DS:boiler:GAUGE:600:U:U DS:raum:GAUGE:600:U:U DS:foerder:GAUGE:600:U:U DS:puffer:GAUGE:600:U:U RRA:AVERAGE:0.5:1:288 RRA:AVERAGE:0.5:3:10080 RRA:AVERAGE:0.5:12:8640 Alte Anleitung unter Beitrag "Re: Hargassner Pelletheizung Betriebsdatenerfassung" FTP Server installiert: vsftpd http://wiki.ubuntuusers.de/vsftpd Apache2 installiert. Script Status.pl angepasst und unter /home/heizung/Heizung abgelegt. Das Script liest Heizungsdaten die regelmässig per Telnet auf die Festplatte geschrieben werden ein Die Daten liegen unter /home/Heizung/heizung.log im folgenden Format So sieht der neue Datensatz der HSV22 Toch aus (Stand Mitte 2015) pm 1 1.3 8.5 33 0 33 27 25 52 120 120 52 120 58 0 25 -20 0 20 -20 0 23 140 0 0 25 20 57 0 -20 -20 0 0 20 20 -20 0 -20 -20 0 0 20 20 -20 0 20 20 20 20 20 20 20 0 0 53 82 0 0 0 0 0 0 50 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 1 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 532 4628 1 1 1 1 1 1 1 0 0 0 0 38 115 0 909 2961 0 0 0 0 0 0 0 0 0 0 0 0 0.0 109.1 0.0 0.0 0.0 -20 0 4 -3 20.0 24.6 20.0 20.0 20.0 20.0 20.0 0003 0000 0000 0000 0000 0010 0000 0000 Das Script erzeugt eine HTML Datei mit Grafik (Tagesübersicht) mit Temperaturdaten. wie z.B. hier http://www.404-not-found.de/status.html (Webseite von Pelletheizer) In der ZIP Datei hab ich eine Beispieldatei abgelegt. Das Script findet ihr im Anhang mit der benötigten Ordnerstruktur. Damit die Daten ausgelesen werden, müssen noch folgenden Befehle in der crontab -e eingetragen werden. Bitte denkt an das Anpassen der IP Adresse. Eventuell müssen die Pfade an eure Umgebung angepasst werden. Ich habe es nur unter dem User zum laufen bekommen, unter Root läuft es bei mir nicht. # Statusabfrage jede Minute >> /home... ist zur Diagnose, kann später weg gelassen werden! */1 * * perl /home/heizung/Heizung/Status.pl >> /home/heizung/Heizung/status.log # Abfrage der Heizungsdaten per netcat (nc) IP der Heizung noch eintragen! */1 * * nc -d -q 10 192.168.xxx.xxx 23 > /home/heizung/Heizung/Heizung.log # Pelletverbrauch jeden Tag um 00:01 zurücksetzen auf 0 1 0 * cp /home/heizung/Heizung/Pelletverbrauch/pelletverbrauchtagleer.txt /home/heizung/Heizung/Pelletverbrauch/pelletverbrauchtag.txt # Pelletverbrauch jeden ersten im Monat um 00:01 zurücksetzen auf 0 1 0 1 cp /home/heizung/Heizung/Pelletverbrauch/pelletverbrauchmonatleer.txt /home/heizung/Heizung/Pelletverbrauch/pelletverbrauchmonat.txt Viel Spaß mit den aktuellen Daten der Heizung. Falls noch jemand Ideen hat wie man das Ganze verbessern kann, bitte melden. Ich finde es sehr schade, dass die Firma Hargassner nicht selbst die Möglichkeit bietet diese Informationen zur Verfügung zu stellen... Ich hoffe in der Richtung tut sich auch noch etwas. Gruß Robert !!Benutzen der Informationen auf eigenen Gefahr!!
Hi zusammen, klasse Arbeit die Ihr hier geleistet habt. Das hat meinen Ergeiz geweckt mich hier einzubringen. Nur ich scheitere gerade schon ganz vorne. Ich habe eine Hargassner Nano Pelletskessel. Und wo findet man bei dieser eine LAN-Schnittstelle oder eine serielle Schnittstelle? Kann jemand helfen? Danke und Gruß Gert aka SolarPellet
ok --- habs gefunden neben dem display ist eine Abdeckung, die sich abziehen läßt darunter ist eine RJ45 Buchse und ein SD-Card Slot (sieht zumindest aufs erste so aus) An die RJ45 habe ich ein LAN Kabel angechlossen und siehe da ... per http://ip-der-heizung:23 bekomme ich alle 500ms (?) pm 1 1.2 7.5 50 0 46 -1 1 47 -20 43 47 51 32 0 28 -20 0 20 -20 0 40 26 40 26 20 20 56 0 -20 -20 0 0 20 20 -20 0 -20 -20 0 0 20 20 -20 0 20 16 16 20 20 20 20 0.0 0 93 34 0.0 0 3 3 0 0 51 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 2 72 70 0 3 3 0 0 0 0 0 0 0 0 2 0 0 85 374 1 1 1 1 1 1 1 0 0 0 40 26 25 0 99 5365 0 0 0 0 0 0 0 0 0 0 0 0 4.9 116.6 0.0 0.0 0.0 -20 0 4 -4 20.0 20.0 20.0 20.0 20.0 20.0 20.0 0 0 0 0 0 0 0 0 0 0 0.0 512 347 7.2 360 0.4 83.2 347.1 112 14.3 87.8 048B 0000 0000 0000 4000 0170 0000 0000 So nun gehts ans auswerten - gibt es eine vollständige Parameterbeschreibung irgendwo? Gibt es eigentlich noch irgendwo im Inneren der Anlage eine weitere RJ45 - wäre günstiger für die Verkabelung :-) Danke und Gruß Gert aka SolarPellet
und am Display von innen ist eine mit Ethernet beschriftete Buchse - ist abegedeckt mit einer Plastikkappe - habs noch nicht ausprobiert, wird aber wohl das gleiche sein wie vorne ..... Gert aka SolarPellet
Hallo Solarpellet, also bei meiner HSV Classic 14 mit TouchPanel aus 2013 ist das so. Die RJ45 Buchse auf der Rückseite ist gleichwertig. Habe auch im Sommer das Kabel von der Front auf die Rückseite verlegt. Wegen der Zuordnung: Da ist es wohl so das die Datenzuordnung von Anlage zu Anlage immer wieder anders ist. Wie ich sehe liefert deine Anlage auch keine Kommastelle bei den Temperaturen. Nach Softwareupdate waren die Komma-Stellen bei den Temperaturen verschwunden. Gruß Benedikt
Benedikt H. schrieb: > Dafür kann man jetzt die IP-Adresse einstellen. > > Schöne Grüße > Benedikt Hi Benedikt, du schreibst weier oben, dass man die IP-Adresse einstellen kann. Wie machst du das bei deinem Kessel. ich habe eine Hargassner Nano. Danke und Gruß Gert aka SolarPellet
Hallo zusammen, Da ich selbst im Besitz einer Rennergy Pelletsanlage bin, die Baugleich mit den Hargassner Systemen ist, lese ich hier schon eine weile aufmerksam mit. Die Jungs von Rennergy scheinen mir etwas aufgeschlossener und versuchen wenigstens eine Lösung zu finden. Da meine Anlage noch kein Touch Panel besitzt bleibt mir nur der Can Bus oder die Serielle Schnittstelle. Hargassner bietet doch eine externe Seriell to Modbus RTU Lösung an, deren Beschreibung selbst auch ganz ordentlich ist. In der Beschreibung zu finden sind zum einen Analoge Werte zum lesen als auch digitale zum lesen und schreiben. Wäre es denn nicht möglich solch ein Gerät zu beschaffen und die RS232 Schnittstelle mit zu loggen??? Gruß Steffen
Hallo, Erst mal vielen Dank für die tolle Pionierarbeit die hier geleistet wurde! Dank eurer Hilfe konnte ich endlich meine Hargassner HSV 12-15 Pelletheizung in mein Netzwerk integrieren. Ich habe dazu einen Raspberry Pi zusammen mit einem RS232-USB Konverter verwendet, was dank der hier gefundenen Angaben nahezu auf Anhieb geklappt hat! Meine Anlage, welche 2012 installiert wurde, hat die Epromversion 4.3ea. Sie spuckt auf der seriellen Schnittstelle (X1) im Sekundentakt diverse Daten aus, die in etwa so aussehen:
1 | tm 2016-03-07 09:26:27 |
2 | pm 10 18.3 60 89 3.6 3.2 39.8 140.0 40.9 0.0 60 125 0 50 100.0 100.0 0 0.0 0.0 0.0 0 10.6 0 66 57 140 140 140.0 140.0 0.0 0.0 100.0 100.0 140 140 140.0 140.0 0.0 0.0 100.0 100.0 140 0.00 0.00 0.0 0.00 0.00 0.00 140.00 0 0 0 202 218 234 250 200 216 232 248 1 6 200 1 0 0 0 0 0 0 0 0 0 0 0 0 10 11 0 8b ffff 900 900 0 |
Zwischendurch kommen immer mal wieder "Spezial"-Meldungen in der Art:
1 | z 09:07:19 Kessel Schieberost Init |
2 | z 09:07:19 Rost Check zu |
3 | z 09:07:22 Rost aus |
4 | z 09:07:22 Gluterhaltung |
5 | z 22:00:01 Kessel Aus |
Kennt hier jemand die gesamte Liste der möglichen Meldungen? Vor allem würde mich interessieren, ob es eine Meldung gibt, wenn die Ascheschublade voll ist und wie diese exakt lautet. Vielleicht weiss ja jemand, wie dieser Zustand (Ascheschublade voll) von der Heizung gemessen wird bzw. wie man diesen simulieren könnte? Ich bin gerade dabei ein Python-Programm zu schreiben bzw. das von Bernd Wurst anzupassen, das mich bei entsprechenden Meldungen per Email benachrichtigt.
Hallo Alexander Grein, weiter oben hatte ich einmal Statuswerte und Meldungen veröffentlicht. Beitrag "Re: Hargassner Pelletheizung Betriebsdatenerfassung" Ob die so bei neuen Anlagen noch gültig sind ...? Der Zustand "Aschelade voll" wird soviel ich weiß, über die Stromaufnahme des Linearmotors für den Schieberost detektiert. Der Schieberost hat eine "Verteilerklappe", und bei voller Aschelade ist der Schub-Widerstand der Klappe in der Asche entsprechend. Gruß, Hugo
Hallo zusammen, zuerst auch von mir herzlichen Dank für die erarbeiteten Infos hier! Ich lese diesen Thread schon seit Jahren mit, konnte mich aber bis jetzt noch nicht überwinden das Auslesen der Heizung anzugehen, was ich jetzt ändern möchte. Ich habe eine WTH45 Hackschnitzelheizung mit einer Lambda Hatronic. Da die Heizung im Sommer 2013 erweitert wurde, wurden die Steuerplatinen ausgetauscht auf die V5.1d mit einer RJ45 PC-Schnittstelle. Ein Bild der Steuerplatine mit der PC-Schnittstelle ist angehängt. Da ich bis jetzt keinerlei Erfahrung mit RS232 habe, möchte ich vorab gerne nochmals die richtige Pinbelegung erfragen. Im Beitrag Beitrag "Re: Hargassner Pelletheizung Betriebsdatenerfassung" sind ja zwei verschiedene Möglichkeiten angegeben, welche ist nun die richtige? Kann ich das vorab irgendwie messen? Und eine weitere Frage zur Verkabelung: Muss/soll/darf die Schirmung des Sub-D 9 Steckers mit der Schirmung des RJ45 Steckers verbunden werden? Besten Dank schonmal im Voraus! Ich wünsche noch einen schönen Restsonntag, Grüße Stefan
Hallo, die Belegung in diesem Beitrag: Beitrag "Re: Hargassner Pelletheizung Betriebsdatenerfassung" Wichtig, Zählfolge für die Pin-Nr. LAN-Stecker beachten! Die Schirmung vom Lan-Stecker ausgehend schirmt die Leitung ausreichend. Besser nicht auf den Metallkragen des SUB-D aufschalten. Könnte Symptome wie "Brummschleifen" bei Audio Leitungen erzeugen. Bei mir funktioniert das ohne Schirm-Durchschaltung. Gruß, Hugo
Hallo, hab mich am WE mal ans Werk gemacht. Folgende Pinbelegung hat auf Anhieb funktioniert: RJ45 <---> RS232 Pin 6 <---> Pin2 Pin 8 <---> Pin5 In folgendem Beitrag ist eine Zeichnung eines Haico-Kabels ersichtlich: http://www.haustechnikdialog.de/Forum/t/16721/Guntamatic-BMK?page=2 (Die Steuerung von Hargassner scheint ja wie bei Guntamatic von Haico zu sein) Dort ist auch Pin 3 (Sub-D Stecker) mit Pin 5 (RJ45 Stecker) verbunden. Hab ich jetzt mal nicht gemacht, scheint aber ein Indiz zu sein, dass man da wohl auch schreiben und nicht nur lesen kann... Schöne Grüße, Stefan
Auch von mir vielen Dank, für die umfangreiche und tolle Arbeit. Da ich im Gegensatz zu vielen Anderen einen Vergaser mein Eigen nenne, würde ich mich freuen, wenn mich jemand bei der Anpassung des ganzen unterstützen könnte. (Teil-)Ergebnisse werden natürlich auch hier veröffentlicht. Vielen Dank im Vorraus
Johannes W. schrieb: > Da ich im Gegensatz zu vielen Anderen einen Vergaser mein Eigen nenne Meinst du einen wie den MV-35/49? Dann guck mal hier Beitrag "Re: Hargassner / Rennergy Touchtronic Netzwerkanbindung/Visualisierung"
Andi B. schrieb: > Johannes W. schrieb: >> Da ich im Gegensatz zu vielen Anderen einen Vergaser mein Eigen nenne > > Meinst du einen wie den MV-35/49? Dann guck mal hier > Beitrag "Re: Hargassner / Rennergy Touchtronic Netzwerkanbindung/Visualisierung" Ja, genau so einen meine ich. Nur, daß meiner HV30 heißt, und ich vom mitdenken und nachvollziehen mit dem anderen Thema nicht so ganz mit kam. Was ich an dieser Vorlage allerdings gferne verändert hätte, mich aber (noch) nicht ausreichend mit auskenne, war, daß ich alle Parameter ohne zu filtern speichern wollte, und den Namen des jeweiligen Parameter bei der Ausgabe anzeige. Vorher könnten die gerne unter so unverfänglichen Größen wie PM001, PM002 etc. laufen. Ich hoffe, daß damit auch die Anpassung einfacher wird, falls ein Update des Kessels die ganzen Parameter wieder durcheinander schmeißt, beziehungsweise wäre es vielleicht auch auf andere Kessel/Steuerungen leichter anpassbar, oder?
Hallo alle, ich wollte mich erstmal für die gesammelten und geteilten Informationen in diesem Thread bedanken! Habe selber nun auch eine HSV12, eine ältere Variante. Ich werde diese auch zum Datalogging mit einem RPi anbinden, möchte dabei aber zusätzliche Werte der Verteilung wie z.B. die Rücklauftemperatur aller Heizkreise mitprotokollieren. Ausserdem habe ich vor, die Heizung fernzusteuern, da das Haus nicht ständig bewohnt ist. Da die Firmware und Software zu alt ist für die Hargassner eigene Software und mir der Ansatz mit dem CAN-Debugging des Display bzw. FR25 zu kompliziert ist, scheint mir am einfachsten dazu den Außentemperatursensorwert zu verändern, somit kann ich direkt die Heizkurve beeinflussen ohne Programmiereinstellungen vornehmen zu müssen. Der Programmwahlschalter "Auto, Hand, Aus, Boiler" wären zwar auch eine Option aber zu unflexibel. Ich denke es ist besser man "provoziert" ein "AUS bzw. Boiler" per A-Temp Anhebung über die Heizung Aus über die (per Standard glaube +16 Grad Celsius) Temperaturschwelle und einen Volllastbetrieb zum Aufheizen (z.B. 1-2 Stunden bevor ich ins Haus komme) über eine Simulation der Auslegungstemperatur (z.B. -16 Grad) Der Fühler ist ein PT1000, also wäre -15 Grad irgendwo bei ca. 940 Ohm und +20 Grad irgendwo bei ca 1075 Ohm, das sollte leicht zu bauen sein. Ich werde hier weiter berichten! Viele Gruesse, Simon
Hallo zusammen, ich möchte mich auch nochmals recht herzlich für die Informationen in diesem Thread bedanken. Das Datalogging über den Raspberry Pi funktioniert bei mir nun seit einigen Monaten sehr zufriedenstellend. Durch die aufgezeichneten Daten konnte ich nun einige Parameter der Heizung so verändern, dass die Heizung nun wesentlich besser läuft (weniger Starts und längere Laufzeiten, keine "Einbrüche" der Boilertemperaturen,...) Da mir als Linux-Neuling die eine oder andere Vorlage hier sehr geholfen hat, stelle ich im Anhang nun auch mein Script "leseHeizung.sh" zur Verfügung. Das ganze läuft in einer Endlosschleife und hat folgende Funktionen: # Schreiben der wichtigsten Daten alle 5min in eine sqlite3-Datenbank # Schreiben der (gekürzten) Datenmeldung alle 5min in eine Datei # Schreiben der (gekürzten) Datenmeldung bei folgenden Ereignissen: Änderung Kesselzustand, Änderung Boiler(pumpen)zustände # Schreiben der Statusmeldungen (beginnend mit "z") in Datei Dies funktioniert allerdings nicht ganz zuverlässig, ca. die die Hälfte der Meldungen werden verschluckt. Wird daher bald rauskommentiert werden, zum Beginn des Dataloggings (Ermittlung Kesselzustand,...) allerdings trotzdem ganz hilfreich. # Mitschreiben von Kesselstart, Kessellaufzeit und Entaschungen pro Tag (in eine eigene Datei) Zusätzlich protokolliere ich noch mittels günstiger 1-wire DS18B20 Sensoren die Rücklauftemperatur sowie über 5 außen angebrachte Sensoren die Puffertemperaturen mit. Ebenfalls wieder in eine Datei bzw. in die gleiche sqlite3 DB geschrieben. Vielleicht hilft es ja dem einen oder anderen, und falls irgendwas davon gar zu umständlich programmiert ist, bin ich für Tipps jederzeit offen. Lg, sLindi
So, habe heute auch dank der Anleitung meine Maschine angeschlossen. Ich habe auch eine sehr alte Version Hargassner mit Version 2.0t Die Kontaktleisten X1 und X2 auf der Steuerplatine scheinen direkt wie RS232 am 9-poligen SUB D aufgelegt zu sein. 5 ist Masse und 2/3 ist RX/TX Ich konnte es noch nicht 100% testen, aber es sieht so aus als ob man auch Befehle senden kann, nicht nur Daten loggen. Es werden auch nicht nur die Datensätze mit z bzw. pm geschrieben, sondern die Kommunikation vermutlich für das Display/Bedieneinheit. Nach jedem dieser Datensätze schickt die Einheit einen Carriage Return, deshalb sieht man das im Terminal nicht so gut. Wenn man diese gegen Zeilenumbrüche ersetzt, wird es relativ klar: 1o409130011200005 2u1003b 2u0511e 1o409130011200005 #f 2u0511e 6u0000000000000000b 1o409130011200005 2u0700e pm 9 9.3 59 111 -6.1 -6.2 40 53 42 50 49 272 29 59 -18.5 -33.0 84 0.0 0.0 0.0 37 9.0 22 86 34 30 91 40 6b 9 0 0 0 Aufgefallen ist mir auch, dass ab und zu ein Datensatz mit "#f" geschickt wird. Was passiert wenn man Knöpfe auf dem Bedienteil drückt habe ich noch nicht raus, werde ich aber auch durchtesten, vermute dass man so die ganze Anlage steuern kann wie am Display selbst. Auch ein Auslesen des EPROM (vermutlich disassemble fähige daten vorhanden) wird wohl helfen rauszufinden wie die Botschaften zusammengesetzt sind. Ich halte euch auf dem Laufenden :)
Mittlerweile habe ich ab und zu das Problem, dass mein Python Programm ab und zu abgeschnittene "pm" Nachrichten bekommt, diese hören dann mitten im Datensatz auf. Muss nochmal genau nachforschen ob das von der Heizung kommt oder evtl. etwas mit dem Interface oder Software zu tun hat. In der Zwischenzeit habe ich mir mal die 10 bei mir häufigsten kurzen Botschaften zwischen den "pm" oder "am" Meldungen angeschaut. 1o009130011200001 7u0000000000000000c 6u0000000000000000b 1o409130011200005 2u0f10e 1o00913001100000f 2u050f2 2u1013c 2u100ed 2u1007f Die Prüfsummen Berechnung scheint wie folgt zu sein: 1o: Beispiel 1o009131020d00004 Prüfsumme = Letzte Hex Stelle der Quersumme der 14 Datenpositionen Bei der Berechnung ersetzen: a=1, b=2, c=3, d=4, e=5, f=6 2u Beispiel 2u100ed Prüfsumme = Letzte Hex Stelle der Quersumme der 4 Datenpositionen + 0x07 Bei der Berechnung ersetzen: a=1, b=2, c=3, d=4, e=5, f=6 6u: Beispiel 6u0000000000000000b Prüfsumme = Letzte Hex Stelle der Quersumme der 16 Datenpositionen + 0x0B Bei der Berechnung ersetzen: a=1, b=2, c=3, d=4, e=5, f=6 7u: Beispiel 7u0000000000000000c Prüfsumme = Letzte Hex Stelle der Quersumme der 16 Datenpositionen + 0x0C Bei der Berechnung ersetzen: a=1, b=2, c=3, d=4, e=5, f=6
Danke dem Dokument "Hargassner_HSV-xx_Datensaetze" konnte ich viele Felder schon zuordnen ! Vielen Dank an den Ersteller !!! Ich habe die Botschaften welche mit "1o" starten noch etwas weiter beobachtet. Sie scheinen mir aufgrund meiner Analyse wie folgt aufgebaut zu sein: Prefix: "1o" Bytes 1 und 2: Einschubschnecke Status Entspricht Feld 28 in "pm" Zeile Beobachtete Werte / Beispieldatensatz 0c / 1o0c1130000100009 08 / 1o08113000010000e 48 / 1o489130011e00000 40 / 1o409130011e00008 04 / 1o04113000010000a 03 / 1o031130000100009 01 / 1o011130000100007 00 / 1o009130011e00004 Bytes 3 und 4: unbekannt ?!? Entspricht Feld 27 in "pm" Zeile Beobachtete Werte / Beispieldatensatz 10 / 1o001030000100005 91 / 1o009130011e00004 d1 / 1o00d130031400000 d5 / 1o00d530031400004 11 / 1o001130000100006 Bytes 5 und 6: unbekannt ?!? Entspricht Feld 26 in "pm" Zeile Beobachtete Werte / Beispieldatensatz 30 / 1o009130011e00004 31 / 1o009131011e00005 32 / 1o009132011e00006 34 / 1o009134011e00008 35 / 1o00913502190000e 36 / 1o009136011e0000a 38 / 1o001138011200001 70 / 1o009170011e00008 72 / 1o009172011e0000a 74 / 1o009174011e0000c 75 / 1o009175011800000 76 / 1o009176011e0000e Bytes 7-14: Unbekannt ?!? 8 Byte Register Beobachtete Werte / Beispieldatensatz 011e0000 / 1o000913011e00004 01120000 / 1o009130011200001 02190000 / 1o009130021900009 00010000 / 1o001130000100006 01180000 / 1o009130011800007 01100000 / 1o00913001100000f 02110000 / 1o009130021100001 03090000 / 1o009130030900009 03140000 / 1o009130031400005 020d0000 / 1o009130020d00003 03180000 / 1o009130031800009 030c0000 / 1o009130030c00003 04040000 / 1o409130040400009 03070000 / 1o009130030700007 04080000 / 1o009130040800009 00000000 / 1o00913000000000d 01000000 / 1o00913001000000e Folgende Felder in den "pm" Nachrichten sind mir leider noch immer unbekannt, falls jemand einen Tip hat: 12, 15-16, 24-27, 29-33 Folgende Werte konnte ich dort beobachten: Feld 12: Immer 272 oder 273, Verteilung ca 55% 273, ca 45% 272 Feld 15: Wert war zuvor fest -18.5, seit Neustart immer 9999.9 (Temperatur?) Feld 16: Wert war zuvor fest -33.0, seit Neustart immer 9999.9 (Temperatur?) Feld 24: Werte zwischen 79 und 92, Werte zwischen 81 und 84 am häufigsten. (Prozentangabe? Evtl etwas mit Luftzufuhr? Meine im erweiterten Infomenue haeufig diese Werte gesehen zu haben) Feld 25: Werte zwischen 15 und 88, Werte zwischen 23 und 27 am häufigsten. (Prozentangabe?) Feld 26: Werte: 30 (über 90%), 31, 32, 34, 35, 36, 38, 70, 72, 74, 75, 76), Scheint eher ein Kombinationswert aus digitalen Schaltpositionen zu sein. Evtl. Mischer oder Pumpen Status? Feld 27: D5, D1, 91, 55, 51, 11, 10 (Meistens 91 gefolgt von 11). Scheint ebenfalls eher ein Status/Schaltwert zu sein Feld 29: FB, F9, EB, E9, 7B, 79, 6B, 69, 2B (Meist 6B, gefolgt von 7B und 69) dito Feld 30: Wert ist IMMER 9 Feld 31: Wert ist IMMER 0 Feld 32: Wert ist IMMER 0 Feld 33: Wert ist IMMER 0 Werde am WE versuchen den EPROM auszulesen und mit Disassembler/Hexeditor anzuschauen, evtl. gibt es dort noch weitere Hinweise.
Ich habe jetzt hier gelesen, dass man auch auf Pelletheizungen umrüsten kann: https://www.effizienzhaus-online.de/umruestung-auf-pelletheizung habt ihr da auch schon Expertise? Bin da jetzt noch nicht so tief drin und wollte fragen, wie arg man sich da einarbeiten muss, um da so tief drin zu sein.
Hallo zusammen, ich habe ein Problem auf meine Rennergy Heizung (Hargassner OEM) zuzugreifen. *Ich bekomme weder mit minicom, head, cat, etc. eine Ausgabe geliefert.* Woran könnte das liegen? Mein Setup: - raspberry pi mit raspian (aktuell) - USB auf DB9 Kabel (siehe hier: https://www.amazon.de/gp/product/B01N1625DE/ref=oh_aui_detailpage_o01_s00?ie=UTF8&psc=1) - Ich habe den oberen der beiden RJ45 Ports auf der Platine genommen (siehe angehängtes Bild) - FTDI treiber wird laut dmesg auf /dev/ttyUSB1 erkannt (siehe unten) - Einstellung auf 19200 Baud mit 8N1 (siehe unten) Bisher erfolglose Maßnahmen: - reboot vom raspberry pi - reboot von der Heizung - Anschluss am unterer RJ45 Steckdose - Verändern der Baud-Rate
1 | stty -a -F /dev/ttyUSB1 |
2 | speed 19200 baud; rows 0; columns 0; line = 0; |
3 | intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; |
4 | eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; |
5 | werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 5; |
6 | -parenb -parodd -cmspar cs8 hupcl -cstopb cread clocal -crtscts |
7 | ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr -icrnl -ixon -ixoff |
8 | -iuclc -ixany -imaxbel -iutf8 |
9 | -opost -olcuc -ocrnl -onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0 |
10 | -isig -icanon -iexten -echo -echoe -echok -echonl -noflsh -xcase -tostop -echoprt |
11 | -echoctl -echoke |
1 | dmesg | grep tty |
2 | [ 0.000000] Kernel command line: 8250.nr_uarts=0 bcm2708_fb.fbwidth=656 bcm2708_fb.fbheight=416 bcm2708_fb.fbswap=1 vc_mem.mem_base=0x3dc00000 vc_mem.mem_size=0x3f000000 dwc_otg.lpm_enable=0 console=ttyS0,115200 console=tty1 root=PARTUUID=da925869-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles |
3 | [ 0.000345] console [tty1] enabled |
4 | [ 0.751605] 3f201000.serial: ttyAMA0 at MMIO 0x3f201000 (irq = 87, base_baud = 0) is a PL011 rev2 |
5 | [ 5.049998] usb 1-1.2: FTDI USB Serial Device converter now attached to ttyUSB0 |
6 | [79734.814374] usb 1-1.5: FTDI USB Serial Device converter now attached to ttyUSB1 |
Letzterer ist das neue Kabel. Das andere ist ein funktionierender RF Sender.
Bist du dir sicher, dass das verwendete Kabel die richtige Belegung auf der RJ-45 Seite hat?
Das passt nicht: Kabel: RJ-45 DTE Pinouts RTS(1), DTR(2), TXD (3), GND(4), GND(5), RXD (6), DSR(7), CTS(8) Anlage:Es sind Pin 8 - GND und Pin 6 - TX. Jetzt rauschen auch hier die Daten Grüße, Jürgen
Pelletheizer schrieb: > Das passt nicht: > Kabel: RJ-45 DTE Pinouts RTS(1), DTR(2), TXD (3), GND(4), GND(5), RXD > (6), DSR(7), CTS(8) > > Anlage:Es sind Pin 8 - GND und Pin 6 - TX. Jetzt rauschen auch hier die > Daten > > Grüße, > Jürgen Hi Jürgen, Also Pin 3 auf 6 und 4 auf 8?
Hi, Pin 6 Anlage (TX) auf Pin 4 (RX) Kabel. Grüße, Jürgen
Hi Jürgen, bist du dir sicher? Layout des Kabels: RJ-45 DTE Pinouts RTS(1), DTR(2), TXD (3), GND(4), GND(5), RXD (6), DSR(7), CTS(8) Das heißt Pin 6 (TX) der Anlage muss ich mit Pin 6 (RX) des Kabels verbinden. Und Pin 8 (GND) der Anlage mit Pin 4/5?? (GND) des Kabels verbinden?
Hi, interessanterweise musste ich TX mit TX verbinden. Macht keinen Sinn, aber hat geholfen. Danke euch alle für eure Hilfe. Nach fünf Jahren (und ohne wesentliche Grundkenntnisse) habe ich mich an dieses Projekt gewagt und freue mich nun über das Ergebnis :-)
Martin D. schrieb: > Hi, > > interessanterweise musste ich TX mit TX verbinden. Macht keinen Sinn, > aber hat geholfen. > > Danke euch alle für eure Hilfe. Nach fünf Jahren (und ohne wesentliche > Grundkenntnisse) habe ich mich an dieses Projekt gewagt und freue mich > nun über das Ergebnis :-) Das kann sein, wenn intern RX/TX getauscht wird. Früher nannte man sowas Nullmodemkabel, das kann aber natürlich auch irgendwo auf dem Chip selbst passieren. Mittlerweile sind diese RS232 USB Adapter ja so funktionsreich, dass man Firmware flashen und alles mögliche einstellen kann. Ich werde auf jeden Fall diesen Herbst/Winter auch noch mal das EPROM auslesen und durch den Disassembler und Hexeditor laufen lassen und schauen ob ich etwas rausbekomme in Richtung TX, also Befehle zu schicken. Eine gewisse Fernsteuerung der Heizung zumindest in Richtung An/Aus/Boilerbetrieb wäre doch schon sehr cool :)
Hi Jürgen, blöde Frage: Kann man heute schon den aktuellen Lagerstand an Pellets aus der Heizung auslesen? Ist die Zahl Teil des Outputs? VG Martin
Bei meiner Firmware nicht. Aber ich meine, irgendwo habe ich schon mal den Verbrauch gesehen. Da könnte man dann auf den Lagerstand rückschliesen. Grüße, Jürgen
Hallo zusammen. Für die Anbindung an Modbus - Netzwerke bietet der Heizungsbauer einen Zwischenkonverter an. In der Beschreibung ist die Pinbelegung des RJ45 Steckers beschrieben, hoffe das hilft weiter: MfG
Das klingt interessant - wo liegt der Vorteil von Modbus in diesem Fall?
Man könnte mehrere Kessel koppeln über ModBus. Weiters ist es die einzige offizielle Lösung mit diesem Zwischenkonverter zur Anbindung an Steuerungen etc. Das Gerät kostet aber auch fast Tausend €. Dafür sind in der Beschreibung dann auch die ganzen Parameter (ModBus Read/Write Coils) genau beschrieben und aufgelistet für die verschiedenen Kesseltypen. Leider gibt´s diese Liste für die RS232 nicht :(
Habe heute noch etwas weiter geschaut, die "Intelligenz" scheint wohl im Bedienteil zu sein. Die Hauptplatine unten ist wohl "nur" die elektrische Steuerung. Wenn ich das richtig gesehen habe ist oben ein 8051 verbaut (TS80C32X2-MCB), und das EPROM ist ein 290F010. Ich habe das ROM gelesen, es gibt wohl 4x32KB Blöcke, der erste Block sind wohl die Daten (Strings usw.), die anderen 3 Blöcke sind wohl der Code. (Evtl. sind das die 3 Betriebsmodi Hand, Boiler, Auto ?) Werde aber nicht ganz schlau draus, habe es schon mit 8051 Maschinencode verglichen, das scheint aber auch nicht so ganz zu passen. Es gibt auf der Platine noch einen anderen beschrifteten Baustein. Werde mir das noch bisschen genauer anschauen, evtl. kriegt man ja dann etwas raus, was bei einer offenen Integration/Fernsteuerung helfen könnte.
Habe meinen Kessel jetzt lt. Belegung aus der Hargassner Doku angeschlossen und siehe da - Im Sekundentakt wandern jetzt die Heizungsdaten zur SPS. Bei mir sind es 107 Parameter/Datensätze die Übertragen werden. Durch Langzeit-Aufzeichung der Datensätze (Kennung pm) und Meldungen (Kennung z) habe ich den Kesselstatus herausgefunden - dieser liegt am Parametersatz 43. Aussentemperatur und Puffertemperatur habe ich ebenfalls entschlüsselt, aber die Statusmeldungen (Bitcodierte Statusmeldungen - "Digitalwerte") habe ich noch nicht rausfinden können wo die genau liegen... Hat hier jemand Erfahrungen wie man die am einfachsten analysiert?
Hier nochmal eine Datenliste für Heizkessel mit 155 Datensätzen Vlt hilft sie dem einen oder anderen weiter.
Sehe ich das richtig? Ist mit „Lagerraum“ nun tatsächlich die Menge an Bestand von Holzpellets gemeint? Das wäre ja genial! Auch der Status der Ascheschublade wäre klasse. Dankeschön!
Hallo, ob und welche Statusmeldungen dann bei den jeweiligen Kesseltypen verwendet / aktiv sind kann ich nicht sagen. Das ist nur der Auszug der Daten die im Seriellen Übertragungsprotokoll aufgelegt sind. - Das Protokoll dürfte sich allen Anschein nach alle paar Jahre erweitern, waren es 2006 noch rund 40 Datenpunkte, sind es mittlerweile schon 155 oder sogar noch mehr... dieser Stand dürfte ca aus 2015/2016 sein.
Hi, lese schon seit geraumer Zeit im Hintergrund mit, und bin begeistert was ihr alles herausgefunden habt. Mich würde interessieren, ob es einen OPC Server gibt, der diese einfachen dauen im seriellen Format in ein für eine Visualisierung verständliches Format konvertiert. Für Anregungen bedanke ich mich schon jetzt bei jedem einzelnen MFG MM
Hallo zusammen, angeregt durch Eure Beiträge hab ich mir ein shellscript gebastelt. Meine Anlage ist eine Hargassner Pelletheizung HSV classic Baujahr 2015 mit Touchdisplay und Internet Gateway. In lokalen LAN erscheinen nach der installation (DHCP) 2 Netzwerkkarten 1, HARGASSNERIGW 2, HSV1 auf der Karte mit dem Bios Name HSV1 ist der telnetport offen und liefert alle halbe Sekunde, die hier so schön beschriebene Zeichenkette. Ich habe mich dafür entschlossen das alles in eine csv Datei alle 5 Minten zu sicher und dann die Auswertung in excel zu machen. Dazu benutze ich einen so und so schon vorhandenen Orange Pi. Ich denke mal , das ganze würde auch auf einen NAS gut laufen. In Anhang habe ich mal das Shell Script und die Log CSV Datei von Gestern zu Heute getan. Nebenbei gesagt, ist die Zeichenkette schon wieder länger als das letzte mal Hier beschieben. Mit Besten Gruß Karsten
Hallo, vielen Dank an alle die hier ihre Erfahrungen zur Verfügung gestellt habe. Dadurch konnte ich nun erfolgreich den Datensatz der über Telnet kommt auswerten. Ich habe allerdings nich eine Frage. Wie kann ich die Digitaldaten auslesen, also sowas wie Mischerstellung oder Pumpe AN? Kommen die auch über den telnet Datensatz?
Hallo zusammen, ich habe seit kurzem unsere HSV 12-22 SMS 2.0t (BJ 2005) über seriell angeschlossen an eine raspberry pi 3 mit usb2serial HSV DB9 Pin4 -> Pin5 (GND) Pin3 -> Pin2 (RXD) 19200 8N1 andere pins geben nichts aus od nur unbrauchbar output is nur wie folgt (ohne dem unixtimestamp:) keine pm od tm zeilen hat das schon wer gehabt / gesehen ? 1516293627:2uff03 1516293627:1i116b04 1516293627:2u0562c60f631906 1516293627:1i116b04 1516293627:2u07bd6a0e66c504 1516293627:1i117b05 1516293627:2u10abc8127e6904 1516293627:1i117b05 1516293627:2u06d44b03b8a30c 1516293628:2uff03 1516293628:1i116b04 1516293628:2uff03 1516293628:1i116b04 1516293628:2u0f630c1362b80f lg michael
ja das passt, musst diese meldungen ignorieren. das sind nur binaere schalterwerte. hatten die alten firmwares wohl so. hatte ich glaube schon mal was dazu geschrieben.
Hallo XXX Danke für die Antwort es gibt aber leider gar keine "pm" od "tm" zeilen wenn dazu wer einen tip hat was ich noch probieren kann lg michael
Bist du dir 100% sicher ? Die U Zeilen mal komplett filtern. Das Ding schickt teilweise nur einen CR ohne LF und überschreibt so die Zeile wieder Am besten mal alle CR als CRLF interpretieren dann schaut es ganz anders aus
Hallo Simon habs schon mit vershiedenen tools probiert (cat,mobaxterm,dd,putty) immer nur 1i und 2u - ca 780k zeilen ( ca 9h) # dd if=/dev/ttyUSB0 bs=20 count=10 | hexdump -cx dd: warning: partial read (4 bytes); suggest iflag=fullblock 0000000 b 0 3 \n 2 u f f 0 3 \n 1 i 1 0 7 0000000 3062 0a33 7532 6666 3330 310a 3169 3730 0000010 b 0 4 \n 2 u 1 0 6 5 d 8 1 4 d 4 0000010 3062 0a34 7532 3031 3536 3864 3431 3464 0000020 4 b 0 2 \n 1 i 1 0 7 b 0 4 \n 2 u 0000020 6234 3230 310a 3169 3730 3062 0a34 7532 0000030 0 f 6 3 3 8 1 2 7 e 7 a 0 8 \n 1 0000030 6630 3336 3833 3231 6537 6137 3830 310a 0000040 i 1 0 6 b 0 3 \n 2 u 0 2 a f 9 d 0000040 3169 3630 3062 0a33 7532 3230 6661 6439 0000050 1 1 7 c 6 e 0 4 \n 2 u f f 0 3 \n 0000050 3131 6337 6536 3430 320a 6675 3066 0a33 0+10 records in 0+10 records out # dd if=/dev/ttyUSB0 bs=20 count=10 2u10abd709ac5e0d dd: warning: partial read (17 bytes); suggest iflag=fullblock 2uff03 1i117b05 2u1362bb02afa001 1i117b05 2u14d4480ac14a0a 2uff03 1i117b05 2u0f635510acb40b 1i117b05 0+10 records in 0+10 records out 118 bytes (118 B) copied, 0.334424 s, 0.4 kB/s lg michael
Analog-Regler FR25-2.0 mit Temperatur-Fühler Hallo, kennt sich jemand mit dem Gerät näher aus oder hat gar einen Schaltplan? Seit einiger Zeit sehe ich in meinen Diagrammen, daß die dort gemessene Raumtemperatur um über 1°C zu hoch angezeigt wird. Verglichen mit mehreren guten Thermometern am selben Ort. Dadurch wird natürlich nicht auf die gewünschte Raumtemperatur hochgeregelt. Durch Verstellen des Drehknopfes könnte ich das natürlich leicht ausgleichen. Nur schränke ich damit den Plus-Regelbereich des Drehknopfes ein und irgendwie geht es mir gegen den Strich. Schön wäre wenn man mit R8 nachjustieren könnte. Weiß da jemand was? Danke! Grüße, Franz
Ich weiß, dass dieser Thread schon älter ist. Ich kämpfe aber mit einem Problem das hierzu passt. Ich bekam diese Woche ein FW-Update für den HSV12-15 auf die Version 4.3h. Der Kessel ist BJ2008. Seit dem Update passt die Parameterzuordnung nicht mehr. Ich bin vorallem an den Stati der Heizkreise (offen, geschlossen) interessiert. Ebenso interessiert mich die Laufzeit der Einschubschnecke. Diese hatte ich bisher einfach mitgezählt. Das hat ca. 10 Jahre lang sehr gut funktioniert. Dadurch habe ich mir Verbrauchsstatistiken erstellt. Leider kann ich keine aktuelle Parameterzuordnung finden, welche auch auf meine empfangene Daten passt. Ich mache das über einen Raspberry-PI über die serielle Kommunikation. Die hier genannten Parmeterzuordnungen über die IP-Schnittstelle stimmt nicht mit meinen empfangenen Daten überein. Empfangen tu ich 99 Parameter. Wäre toll wenn ich die Parameterzuordnung irgendwo her bekommen kann. Bei Hargassner habe ich da wenig hoffnung, das hat damals schon nicht funktioniert --> die wollen ihre Produkte für Datenaufzeichnung verkaufen.
Steck eine leere sd Karte in den Slot, lass den Kessel Protokoll schreiben, und du hast, was du brauchst. So war das zumindest bei mir. Die Alternative ist verschiedene Momentaufnahmen vom Display und dem RPi zu vergleichen. Viel Erfolg!
Meine Anlage ist schon etwas älter und hat keinen SD-Karten-Slot.
Ich finde es so schade, dass ich den einzigen Wert, der mich interessiert, nicht auslesen kann, nämlich den Füllstand des Pelletlagers. Dafür würde ich sogar etwas zahlen.
Ich könnte bei Bedarf die alte Firmware aus meiner Anlage noch mal auslesen, gehe mal davon aus, dass die auf dem EPROM steht. Wurde bei dir die Platine auch getauscht, für Upgrade auf "App" Steuerung? Das ist laut Hargassner ja auch möglich.
Bei mir wurde 'nur' das Eprom getauscht. Rest ist wie gehabt.
Hallo Leute, hier mal meine Erfahrungen bisher. Wir haben eine HSV15-22 Platine: Hargassner Steuerung Type HSV 15; I/O Platine 13.0 sp-pe/bu2701 Auf der Platine befindet sich nur eine Wannenbuchse, durch herumprobieren mit dem oszi hab ich folgende Belegung, anbei, ermittelt. Mittels einen gewöhnlichen USB-RS232 konverter hab ich die Tx Daten sichtbar gemacht. 19200 baud,8N2. Bei etwa 20 Minuten Laufzeit erhalte ich kontinuierlich Daten die wie folgend sichtbar sind. In einer Sekunde werden 7 Doppelzeilen (2uXXX und 1iXXX) gesendet, folgender output entspricht also in etwa 1500ms: 2u01ffff12825103 1i117b05 2u10b89700c60a0c 1i106b03 2u0f668711710305 1i106b03 2u04ffff09c2ef0c 1i107b04 2u1068ae07c04701 1i106b03 2u0566c502b1500a 1i106b03 2u06d6b60f668a0a 1i107b04 2u1068be1366b605 1i106b03 2u14d6aa0e73cf00 1i106b03 2u0affff03c47809 1i106b03 2u0f66861068d600 1i106b03 Ich habe etwas mit der Analyse der Daten beschäftigt. Die 1i Zeile wechselt immer mit der 2u Zeile. Der erste Teil beginnt immer mit "2u", offenbar stimmen meine Daten mit dem Kollegen Simon (Simon P. (simon84), siehe Beitrag oben vom 25.01.2017 19:36). Die Prüfziffer am Schluss dürfte bei mir auch so stimmen. Zitat Simon:"Prüfsumme = Letzte Hex Stelle der Quersumme der 14 Datenpositionen Bei der Berechnung ersetzen: a=1, b=2, c=3, d=4, e=5, f=6" 2u01ffff12825103 --> Berechne Summe von "01ffff1282510"; Summe = 44(dez) = 2C(hex) --> modulo 16 = C --> stimmt somit für die erste Zeile. Bei den 1i Daten dürfte der Offset nicht wie bei Simon 0x07 sein, sondern 0xA; Wenn ich die 10 addiere stimmts wieder (für ein paar Werte, habs nicht für alle Daten verifiziert) Bei 5747 "1iXXXXX" Daten, die in ca. 20 Minuten angefallen sind hab ich eine Analyse gemacht, das Ergebnis wie folgt: XXXXX Anzahl 06b03 3195 16b04 1388 07b04 805 17b05 359 Hier sieht mann nun, dass die Annahme vom Offset mit 0xA stimmt. Analyse der 2uXX Werte: XX count von gleichen Elementen/Anzahl Elemente absolut, ggf. die Häufigsten mit count 00 200/216, ziemlich gleichverteilt 01 130/221, 2u01ffff0affff09 40x, darunter etwas verteilter; 02 186/221, 2u02b14e0affff0e 6, 2u02b1520affff0c 6, 2u02b1530affff0d 4; 03 199/217, 04 122/224, 2u04ffff0affff0c 32 05 444/574, 06 425/574, 07 189/217 08 118/216, 2u08ffff0affff00 40; 09 29/32 10 1119/1246, 2u1068d808ffff02 9, 2u1068cc01ffff05 4 11 32/32 12 31/32, 2u12825201ffff04 2 13 144/192 14 255/287 0A 21/32 0B 32/32 0F 990/1149 --> 2u10 sind mit 1246 ziemlich oft. Eine Auswertung davon zeigt dass die bits 4-6 der Strom der Einschubschnecke sein könnte. Es ergibt sich ein Rechteckmuster mit 104 als Low Wert. 2u05 und 2u06 erscheint exakt gleich oft. Es zeigt sich ebenso dass nach einem 2u06 immer ein 2u05 folgt. Eine Analyse der Bits darin wiederum zeigte, dass in den Bits 6-8 Entropie steckt, also was anderes wie konstante Daten. Meine Folgerung daraus ist, dass diese beiden Zeilen eventuell zusammengehören können: 2u06d6e50f66d007 2u0566ee0affff0b mal schauen...
Martin Z. schrieb: > >
1 | > 2u01ffff12825103 |
2 | > 1i117b05 |
3 | > 2u10b89700c60a0c |
4 | > 1i106b03 |
5 | > 2u0f668711710305 |
6 | > 1i106b03 |
7 | > 2u04ffff09c2ef0c |
8 | > 1i107b04 |
9 | > 2u1068ae07c04701 |
10 | > 1i106b03 |
11 | > 2u0566c502b1500a |
12 | > 1i106b03 |
13 | > 2u06d6b60f668a0a |
14 | > 1i107b04 |
15 | > 2u1068be1366b605 |
16 | > 1i106b03 |
17 | > 2u14d6aa0e73cf00 |
18 | > 1i106b03 |
19 | > 2u0affff03c47809 |
20 | > 1i106b03 |
21 | > 2u0f66861068d600 |
22 | > 1i106b03 |
23 | > |
Kann es sein dass es sich hier um die Kommunikation mit den AT89C2051 auf der I/O Platine handelt? Ich habe hier eine I/O Platine zur Reparatur (HSV 9-22, Classic 9-60, I/O 23.3), allerdings ohne den Steuerrechner mit dem Display und Tasten. Die Belegung von Rx und GND von Deinem Bild passt bei dieser Platine zu den dortigen Steckern X3 und X4 (ebenfalls 10-polig). Die AT89C2051 auf der Platine sind für die Ein- und Ausgänge der Platine zuständig. Die drei AT89C2051 sind zusammen auf ein Rx - Tx Paar geschalten (die Tx Pins über Dioden). Wenn ich versuchshalber die obigen Kommandos mit 19200 Baud schicke bekomme ich eine Antwort, die LEDs an den AT89C2051 blinken und teilweise schalten Relais. Ich werde mir das noch genauer ansehen. Du könntest schauen was am Pin gegenüber Rx passiert, bei meiner I/O Platine werden dort die Kommandos vom Steuerrechner empfangen (Rx.
Zu dem Offset bei der Prüfsumme, der ergibt sich aus den ersten beiden Zeichen des Datensatz (Summe der 4 MSB, davon die 4 MSB), als Beispiel:
1 | 1i : ASCII 0x31 0x69 -> 0x1 + 0x9 = 0x0A -> 10 |
2 | |
3 | 1o : ASCII 0x31 0x6F -> 0x1 + 0xF = 0x10 -> 0 |
4 | |
5 | 1u : ASCII 0x31 0x75 -> 0x1 + 0x5 = 0x06 -> 6 |
6 | |
7 | 6u : ASCII 0x36 0x75 -> 0x6 + 0x5 = 0x0B -> 11 |
Mit "1o" werden bei meiner I/O Platine die Ausgänge geschalten, je nach gesetzten Bits in den Daten.
Und nochmal zu der Prüfsumme bei der Kommunikation mit der I/O Platine: Die letzte Stelle ist einfach nur die untersten 4 Bits der Summe über die ASCII Codes der davor stehenden Zeichen. Dann kann man in der Berechnung auch das Ersetzen bei A..F weg lassen, ebenso den Offset.
Ich habe lange nichts mehr an dem Thema gemacht, aber bin auch fest der Meinung, dass der Prefix u und o eine Rolle spielt, ein Teil kommt definitiv von der Kommunikation mit dem Display/Tastenfeld und ein anderer Teil ist die aus der Steuerung resultierende Kommunikation mit der Hauptplatine, Ansteuerung von Ventilen etc. Habe ich damals nicht besonders damit beschäftigt, da mir in erster Linie die Messdaten wichtig waren und nicht angepasste Aktionen auszulösen etc. Finde das Thema aber weiterhin super und wenn jemand was braucht, kann ich gerne auch an meiner Anlage (leider aktuell ausser Betrieb) anschliessen, testen usw.
Wie schon geschrieben, ich habe hier im moment nur die I/O Platine. Mit den dort verbauten drei AT89C2051 kann ich kommunizieren, was ich bisher gesehen habe (vereinfacht ohne Daten):
1 | "1o" Kommando: Ausgänge schalten, als Antwort kommt "1i" mit dem Status der digitalen Eingänge. |
2 | |
3 | "1i" Kommando: Abfrage der digitalen Eingänge, als Antwort kommt "1i" mit dem Status der digitalen Eingänge. |
4 | |
5 | "2u" Kommando: Abfrage der analogen Eingänge, als Antwort kommt "2u" mit den Werten der analogen Eingänge. |
Ich denke die Nummer vor dem Kommando addressiert den AT89C2051, die drei AT89C2051 auf dieser I/O Platine sind parallel an die Rx - Tx Verbindung zur Anzeigeeinheit angeschlossen. Es gibt noch weitere Kommandos, diese sind aber vermutlich nicht für den normalen Betrieb, z.B. "2e" um den I2C EEPROM zu lesen. Dort stehen vermutlich die Kalibrationsdaten für die analogen Eingänge (der I2C EEPROM ist an dem AT89C2051 angeschlossen der die analogen Eingänge bedient). Ich bekomme eventuell irgendwann noch die dazugehörige Anzeigeeinheit, dann kann ich mir genauer ansehen wie die Kommunikation mit der I/O Platine aussieht.
Hallo Leute, vielen Dank Dieter und Simon für die Antworten! Tatsächlich war es der falsche Pin, dachte nicht dass es da mehrere Kanäle gibt. Ich hab jetzt den Pin links daneben (in meinem Bild direkt über GND) genommen und jetzt kommen tatsächlich die brauchbaren Daten an: 1o009110020d00001 2u1004c 1o009110020d00001 2u020aa 7u0000000000000000c 1o009110020d00001 2u1007f 1o009110020d00001 2u0f030 pm 9 10.0 71 111 -0.5 -0.2 65 272 64 0 49 271 24 70 18.7 9999.9 0 0.0 0.0 0.0 59 10 91 0 7b 9 0 0 0 Jetzt macht das ganze Sinn und ich kann mit den Daten was anfangen. Bei uns geht die Heizung öfters auf Störung 26 "Zündzeit überschritten" und wir bekommen das indirekt über den kalten Vorlauf mit. Somit kann es durchaus vorkommen dass der Fehler erst nach ein paar Stunden quitiert werden kann. Ich suche nach einer einfachen Möglichkeit bei Störung gewisse Personen zu informieren. Whatsapp/email was auch immer. Ich hab sowas mal mit push Benachrichtigungen probiert, bin daran gescheitert, weil diese an nur EIN Endgerät gesendet werden konnte; Außerdem benötigt man wieder eine App extra für jeden usw. Hab damals einen kleinen µC mit WLAN-Modul verbunden, Plan wäre, dass dies an die Störungsklemmen der Heizung angeschlossen wird. Störung --> µC bootet --> verbindet mit WLAN --> push Eine Störlampe mit akustischer Begleitung wäre vermutlich die einfachste Methode. ;) Aber auch zum analysieren warum die Störung 26 manchmal kommt wärs interessant, vor allem was davor passiert. Wie oft die Heizung von Gluterhaltung auf AUS geht usw. Kondensator des Förderschneckenmotors wurde erneuert, weil der Motor manchmal in die falsche Richtung lief.
Martin Z. schrieb: > > Tatsächlich war es der falsche Pin, dachte nicht dass es da mehrere > Kanäle gibt. > Du hast die Daten auf der Tx Leitung der I/O Platine in Deinem ersten Versuch gelesen, also die Antwort der I/O Platine auf die Kommandos. Jetzt liesst Du die Daten, die zur I/O Platine geschickt werden (Kommandos) bzw. die Ausgaben zur Erfassung der Betriebsdaten.
Zur Kommunikation mit der I/O Platine eine Ergänzung da das Einlesen der analogen Eingänge nicht ganz offensichtlich ist:
1 | "2u" Kommando: Abfrage der analogen Eingänge, als Antwort kommt "2u" mit den Werten der analogen Eingänge. |
2 | |
3 | Es können zwei Eingänge auf einmal abgefragt werden, die Nummer der beiden Eingänge steht im Kommando. |
4 | |
5 | Beispiel (ohne die Prüfsumme): "2u020a" -> Eingang 2 und Eingang 10 (0x0A) |
6 | |
7 | Als Antwort kommt dann beispielsweise (ohne die Prüfsumme und eine Füll-Stelle): "2u0268ae0ac047" mit dem Wert 0x68AE für Eingang 2 und 0xC047 für Eingang 10 (0x0A). |
Hallo Kollegen mit Hargassner-Kesseln. Ich habe seit 3 Jahren einen NANO-PK (zuvor 20 Jahre einen umgerüsteten Hargassner Hackschnitzel-Kessel) und versuche seither mit Hargassner und dem SW-Entwickler Hainzl-Industriesysteme 1. den Datenstrom dokumentiert zu bekommen, dessen Geheimhaltung unverständlich ist, da über Modbus, KNX oder Loxone ohnedies alles aufgeschlüsselt ist. 2. Den Kessel mit dem externen Befehl "ext. Heizkreis" sofort zu starten und nicht erst, wenn die obere Kesseltemperatur so weit gefallen ist, das der Kessel zündet. Bis zu diesem Zeitpunkt sinkt nämlich die Vorlauftemperatur unter das Soll und der Kessel braucht über 45 min, bis er diese Puffer-Temperatur wieder erreicht hat. 3. Den Kessel-Betriebszustand extern zu ändern (z.B.: AUTO >> AUS, oder AUS >> AUTO) 4. Verbesserung des Hargassner-Gateways - Den habe ich sofort wieder entfernt, weil mann ihn nicht einer fixen IP zuteilen konnte (nur DHCP) und dieser aber FTP für den Service benötigt. Somit erfüllt er die Richtlinien im LAN nicht und kann die Firewall über den NANO-Kessel umgehen. Das ist der Datenstrom, den ich intern für meine Heizungssteuerung bereits verwende.
1 | pm 7 11.4 9 68.3 70 82.5 26 27 30 21.1 9 2 7 0 0 5 5 68.9 -20 68.8 -20 42.2 69 67.2 65 39 119.4 83.1 85 25 0 0 22 40 0 3100 8.00 13.54 591 6 3 70 85 30 11 0 15426 10739 2 0 -20 0 20 20 0 1 140 0 20 20 0 1 140 0 20 20 0 1 -20 0 20 20 0 1 -20 0 20 20 0 1 -20 0 20 20 0 1 -20 0 20 20 0 1 -20 0 0 68.5 0 0 -20 0 0 -20 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 140 -20 -20 -20 -20 -20 24174 -20 0 0 -20 0 20 20 0 20 1 0003 0001 0000 2000 0000 0160 0000 0000 |
Mittels Reverse-engineering habe ich folgendes ermittelt: siehe "zuweisung_der_Daten_Nano.txt" was aktuell ausreichend ist, um den Kessel in die bestehende Heizungsanlage zu integrieren. Um den Kessel zu starten habe ich vom Kundendienst Hargassner den Tipp erhalten, mittels Relais den OBEREN Temperaturfühler (Klemme 68,69) parallel zur "Anforderung externer Heizkreis" (Klemme 14-15) mit 10kOhm parallel zu schalten und dem Kessel eine Puffertemperatur von 52°C vorzutäuschen, obwohl er bei 72°C steht. Das ist meiner Ansicht nach jedoch sehr heikel, da der Kessel längst 90°C haben kann, aber glaubt, dass es nur 60°C sind (dies habe ich dem Serviceteam mitgeteilt und warte auf Antwort). Deshalb hätte ich es gerne mit dem mittleren Temp-Fühler gelöst (Bild2.jpg), da dieser auch für das Heizwasser relevant ist und nicht wie der obere, der die Temp. für die Warmwasseraufbereitung anzeigt. Mit dem Bild übersicht.png zeige ich euch, wofür die Daten in meiner Software angewendet werden. Vielleicht hat jemand ebenfalls daran gearbeitet und für mich wäre es von bedeutung, dass ich 1. den Betriebszustand "AUS" auf "AUTO" u. umgekehrt ändern kann und 2. den Kessel zünde, sobald extern das Kommando den Bedarf befiehlt. lg Rupert
Rupert S. schrieb: > weil mann ihn nicht einer fixen IP zuteilen konnte (nur DHCP) > und dieser aber FTP für den Service benötigt. Das ist in der Regel ein sehr leicht lösbares Problem. MAC Adresse notieren, im DHCP Server (z.B. im Router) eintragen so dass dieser MAC immer die gleiche IP zugewiesen wird. De-Facto hast du damit eine feste IP für das Gerät. Haben wir bei sehr vielen Lösungen im Einsatz, z.B. SBC für VoIP Telefonie etc.
Hallo Simon. Habe ich natürlich auf meiner ASA gemacht.
1 | dhcpd reserve-address 192.168.101.4 0050.418d.622b inside |
Nachdem aber FTP und HTTP für den Gateway Intern/Extern freigeschaltet werden muss, und ich nicht (noch immer nicht) weiß, was die NANO alles anstellen könnte, habe ich entschieden, dass das Gateway im Firmennetzwerk nicht eingesetzt wird. Die NANO darf in unserem LAN nicht einmal HTTP, und FTP nur bis zum Heizcomputer - that's it.
Hallo ich habe mir die letzten Tage diesen und den andren Thread bzgl. Hargassner Touchsteuerung durchgelesen (Beitrag "Hargassner / Rennergy Touchtronic Netzwerkanbindung/Visualisierung") Es sind viele Ideen und Anregungen dabei von denen ich mir ein paar abgeschaut habe und jetzt mitten in der Umsetzung bin welche ich euch nicht vorenthalten will. nun zu den Fakten: Heizung ist eine Hargassner ECO HK40 Hackgut Bj. 2015 Win 10 Server auf dem alles läuft - Die Werte vom Kessel werden durch ein Shell-Script (WSL) abgerufen, formatiert und in eine csv-Datei geschrieben (160 Werte) - Auf dem Server läuft ein Apache2 Webserver mit PHP 7.4 mit dem ich die csv auswerte und die Daten anzeigen lasse, siehe Bilder. Die ist nur der erste Testentwurf den ich über die Feiertage erstellt hab. Die Optik wird natürlich noch aufgehübscht mit Kessel und Pufferbild. Der Blau-Rote Farbverlauf sowie der grüne Balken passen sich der Pufferladung an. - weiters habe ich mich für ein Grafanadiagramm entschieden welches die wichtigsten Werte, ebenfalls aus der csv, ähnlich dem Kessel-Display anzeigt. ich werde euch am laufenden halten lg Mario
etwas aufgehübscht, aber noch nicht fertig weitere Info folgt
Hallo. Weiß jemand,welche Kommandos erforderlich sind, um den Kessel NANO PK remote auszuschalten, bzw. zwischen "Auto" und "Aus" umzustellen? Ich kann zwar den Datenstrom auslesen, und die darin enthaltenen Daten auswerten, kann aber nicht dahingehend eingreifen, dass ich den Kessel abschalte, wenn meine PV aufgrund der Sonnenprognose über den Heizstab den Pufferspeicher aufheizen wird. Ich verbrenne unnötig Pellets und speise unnötig Strom ins Netz. lg Rupert
Hallo Zusammen, Ich hoffe nach solch einer langen Zeit, liest hier noch jemand der ursprünglichen Themenersteller mit ... Endlich fühle ich mich bereit ein wenig mit Home/Datenauswertung zu investieren. Habe die besagte HSV14 und auch die ursprünglich beschriebene Schnittstelle und mir ein Passendes Kabel von RJ45 auf Seriell gebaut. Laptop dran, via eines USB/RS232 wandlers, HyperTerminal dran, alles tutti, Daten kommen im beschriebenen Datesatzformat. Jetzt sollen die Daten allerdings per ESP32 abgegriffen und per MQTT an mein Homeassistant geschickt werden. Alles klar, hingesetzt und passend gemacht. Voller Vorfreude an die Schnittstelle per RS232/TTL Wandler, Entäuschung, der RS232/TTL Wandler emfpängt keine Daten, erkenntlich an der RX LED die sich auf diesem befindet und normalerweise bei Empfang am RS232 Port, leuchtet. Diese bleibt dunkel. Probiere ich das ganze aber mit dem PC über Hyperterm und besagtem PC->USB/RS232->RS232/TTL->ESP wandlerstrecke geht alles, daten kommen LED Blink. Woran kann das liegen, was ist denn hier im Signal der unterschied? Bitte um Tipps und Hinweise wo das Problem herkommen und wie ich es lösen könnte. Danke vorab :-)
hat sich erledigt! Bitte letzten Post ignorieren.
Hallo, ich habe eine Haus mit einer HSV 22 übernommen und würde diese gerne mit einem raspi Loggen und im Idealfall fernsteuern. Gibt es eventuell eine Beschreibung incl. Der nötigen Protokolle etc, ich bin aber noch blutiger Anfänger will aber schon lange Mal einen Raspi oder ähnliches aufsetzen und nutzen. LAN im Heizungskeller wäre kein Problem. Danke Gruß Marcel
Servus Marcel. Sobald du die IP-Adresse über Port 21 abfragst, empfängst du den Datenstrom. Dieser ist weitgehend entschlüsselt (findest du in diesem Thread) Wie du diese Daten dann aufbereitesn kannst, findest du ebenfalls hier. Musst halt Zeit investieren, denn die Suche ist manchmal mühsam :)
Hallo Leute, ich habe einen Hargassner HSV22 aus dem Jahre 2010. 2013 habe ich mir aus der Hoffnung heraus die Software gekauft, dass ich den Ofen im "Netzwerk" betreiben kann und mit den ganzen Pc´s ihn abrufen kann. Dies war leider nicht der Fall und ich habe das ganze Projekt dann nur mehr temporär betrachtet und vorangetrieben. Da es "leichter" war zum Ofen zu gehen und ihn direkt zu bedienen bzw. abzulesen. Nun aber könnte mittels einer alter Siemens Steuerung wieder fahrt in das Projekt kommen und ich wollte das Programm für "meinen" Programmierer installieren und ihn das Programm soweit zu Verfügung stellen wie er es brauchen kann. Leider finde ich hierzu den Code nicht mehr. Hat viell. einer mal das Programm gekauft, nutzt es nicht mehr und könnte mir den Code viell. zur Verfügung stellen? Ein Anruf beim Hargassner Kundendienst ist leider mehr schlecht als recht wie ich lernen durfte! Klar hatte ich auch schon an eine Umrüstung vom alten auf den neuen Touch gedacht, diese Idee verging mir aber wie ich den Preis für eine Umrüstung erfuhr. Und somit "never touch a running system". Danke euch im voraus mfg Daniel
Servus Daniel. Ich weiß nicht, ob dir meine Routine weiterhilft, aber ich lese den Datenstrom aus und teile ihn dann auf meine Bedürfnisse auf. Wie du richtig anmerks, ist der Support von Hargassner mehr als dürftig. Ich sprach bei Hargassner mit einem Herrn Zeilinger (11.3.2021). Die Software in den Hargassner-Kesseln hat die Fa. Hainzl in Linz programmiert - Ansprechpartner war Herr K. Hofbauer - die mir den Datenstrom ebenfalls nicht kommentieren wollte. Ob es den Herrn, oder die Programmierung durch die Fa. Hainzl nocht gibt, kann ich dir nicht sagen - ich habe das Thema abgeschlossen, da ich alle erforderlichen Daten über Reverse-Engineering ermittelt habe. Hier der Code meiner Software in Delphi:
1 | procedure THauptformular.NANO_Daten_vom_Kessel(Owner: TObject); |
2 | var |
3 | Lagerstand: Integer; |
4 | Stand_Letzte_Lieferung: Integer; |
5 | |
6 | T_oben,T_Diff1,T_mitte:Integer; |
7 | Datensatz: String; |
8 | i,Pos1,Pos2: Integer; |
9 | |
10 | had_a_message : Boolean; |
11 | Temperatur_aussen_NANO: double; |
12 | |
13 | const |
14 | color1: TColor = clred; //rot |
15 | color2: TColor = $002AD1FF; //gelb; |
16 | color3: TColor = $002AD1FF; //gelb; |
17 | color4: TColor = $00CC4E14; // Blau |
18 | |
19 | begin |
20 | had_a_message:= False; |
21 | Memo6.clear; |
22 | |
23 | try |
24 | NANOFTP.Connect(); |
25 | except |
26 | had_a_message := True; |
27 | Status_NANO.caption:='keine Verbindung'; |
28 | Status_NANO.color:=clRed; |
29 | end; |
30 | |
31 | If Not had_a_message Then begin |
32 | Status_NANO.caption:='OK - verbunden'; |
33 | Status_NANO.color:=clRed; |
34 | Status_NANO.caption:='Download der aktuellen Daten'; |
35 | Status_NANO.color:=$004080FF; |
36 | try |
37 | Datensatz:=NANOFTP.ReadLn; |
38 | Memo6.Text:= Datensatz; |
39 | Memo6.Refresh; |
40 | NANOFTP.Disconnect(); |
41 | except |
42 | had_a_message := True; |
43 | Status_NANO.caption:='Fehler beim Downloaden'; |
44 | Status_NANO.color:=clRed; |
45 | end; |
46 | |
47 | If Not had_a_message Then begin |
48 | Datensatz:= StringReplace(Datensatz, '.', ',', [rfReplaceAll]); |
49 | |
50 | Status_NANO.Caption:='Daten sind geladen'; |
51 | Status_NANO.color:=clLime; |
52 | Status_NANO.refresh; |
53 | |
54 | // Datensatz in das Array schreiben |
55 | Pos2:=1; |
56 | try |
57 | for i:=1 to 150 do begin |
58 | Pos1:=pos(' ', Copy(Datensatz, Pos2, Length(Datensatz))); |
59 | if Copy(Datensatz, Pos2, Pos1-1) = ' ' then NANO_Daten[i,2]:= '0' |
60 | else begin |
61 | Pos1:=pos(' ', Copy(Datensatz, Pos2, Length(Datensatz))); |
62 | NANO_Daten[i,2]:= Copy(Datensatz, Pos2, Pos1-1); // Aufteilen in Teilstrings |
63 | // StringReplace(NANO_Daten[i,2], ',', '.', [rfReplaceAll]); |
64 | Pos2:=Pos2+Pos1; |
65 | end; |
66 | end; |
67 | except |
68 | had_a_message := True; |
69 | Status_NANO.caption:='Fehler Aufteilung der Daten'; |
70 | Status_NANO.color:=clRed; |
71 | end; //try |
72 | end; //If Not had_a_message |
73 | end; //If Not had_a_message |
74 | |
75 | if not had_a_message then try |
76 | // aktuelle Verbrauchswerte eintragen |
77 | // Pelletsverbrauch:= Gesamtlieferung +Lageroffset-strtoint(NANO_Daten[49,2])-strtoint(Pelletslieferung.Caption); |
78 | |
79 | Pelletsverbrauch_Kessel:= strtoint(NANO_Daten[49,2]); |
80 | |
81 | Pelletsverbrauch:= Pelletsverbrauch_Kessel - Datentabellen.Pellets.FieldByName('StandKessel').Asinteger; |
82 | // if not Startflag then begin |
83 | // eintragen in die Datenbank |
84 | Datentabellen.Pellets.Last; |
85 | Datentabellen.Pellets.Edit; |
86 | Datentabellen.Pellets.FieldByName('Verbrauch').AsInteger:=Pelletsverbrauch; |
87 | Datentabellen.Pellets.Post; |
88 | |
89 | // Auslesen Verbrauchsdaten aus der Datenbank |
90 | Datentabellen.Pellets.Last; |
91 | Stand_Letzte_Lieferung:= Datentabellen.Pellets.FieldByName('kg').Asinteger+ Datentabellen.Pellets.FieldByName('Rest').Asinteger; |
92 | Datentabellen.Pellets.FieldByName('Verbrauch').AsInteger; |
93 | // Lagerstand:= Gesamtlieferung + Pelletsverbrauch + Lageroffset; |
94 | // Lagerstand:= Gesamtlieferung + Alter_Pelletsverbrauch + Lageroffset + Pelletsverbrauch; |
95 | // end; |
96 | Lagerstand:= Stand_Letzte_Lieferung - Pelletsverbrauch - Lageroffset; |
97 | |
98 | // Temperatur_aussen_NANO:=runden(strtofloat(NANO_Daten[17,2])*1.6025,1); |
99 | Temperatur_aussen_NANO:=runden(strtofloat(NANO_Daten[17,2]),1); |
100 | Thermometer.position:=trunc(Temperatur_aussen_NANO*1.6025)+36; |
101 | Thermometer.Refresh; |
102 | |
103 | |
104 | label_akt_verbrauch.caption:= 'Verbrauch seit '+chr(10)+Lieferung_am.Caption+chr(10)+' ' + inttostr(Pelletsverbrauch)+' kg'; |
105 | Label_Kesselzustand.caption:= ' ' + NANO_Kesselzustand[strtoint(NANO_Daten[2,2]),2]; |
106 | Label_Kesselzustand1.caption:=Label_Kesselzustand.caption; |
107 | Label_Kesselzustand2.caption:=Label_Kesselzustand.caption; |
108 | Label_Kesselzustand.Left:=Label_Left_Pos(Label_Kesselzustand,574); // 97 ergibt sich aus der halben Länge plus Position left (52) |
109 | Label_Kesselzustand1.Left:=Label_Left_Pos(Label_Kesselzustand1,301); // 301 ergibt sich aus der halben Länge 20 plus Position left (281) |
110 | Label_Kesselzustand2.Left:=Label_Left_Pos(Label_Kesselzustand2,165); // 301 ergibt sich aus der halben Länge 20 plus Position left (281) |
111 | |
112 | Label103.caption:= ' ' + NANO_Daten[7,2]+' °C '; // Rauchgas |
113 | Label104.caption:= ' ' + NANO_Daten[5,2]+' °C '; // Kesseltemperatur |
114 | Label106.caption:= ' ' + NANO_Daten[19,2]+' °C '; //Puffer oben |
115 | Label107.caption:= ' ' + NANO_Daten[21,2]+' °C '; // Puffer mitte |
116 | Label108.caption:= ' ' + NANO_Daten[23,2]+' °C '; // Puffer unten |
117 | Label109.caption:= ' ' + floattostr(Temperatur_aussen_NANO)+' °C '; // Temp Aussen |
118 | Label112.caption:= ' ' + Ist_B25.caption+'C '; // Warmwasser |
119 | Label111.caption:= ' ' + Ist_B26.caption+'C '; // Vorlauf Zentral |
120 | Label113.caption:= ' ' + Ist_B27.caption+'C '; // Rücklauf Zentral |
121 | Label110.caption:= ' ' + Ist_B28.caption+'C '; // Vorlauf OG Boden |
122 | Label115.caption:= ' ' + Ist_B28.caption+'C '; // Vorlauf Wand/Boden Altbau |
123 | Label_Gesamtverbrauch.caption:= ' Gesamtverbrauch' +chr(10) + inttostr(Pelletsverbrauch_Kessel) +' kg '+chr(10)+chr(13)+'lt. Anlage'; |
124 | Label116.caption:= ' ' + NANO_Daten[3,2]+' O2'; // O2 ist |
125 | Label_Lagerstand.caption:= ' Lagerstand'+chr(10) + floattostr(Lagerstand)+' kg'; |
126 | Label118.caption:= ' ' + NANO_Daten[37,2]+' mal'; // Schieberostbewegungen |
127 | Label119.caption:= ' ' + Ist_B30.caption+'C '; // Pufferausgang |
128 | Label120.caption:= ' ' + NANO_Daten[4,2]+' O2 '; // O2 soll |
129 | Label121.caption:= ' ' + NANO_Daten[9,2]+' '; // Saugzug |
130 | Label122.caption:= ' ' + NANO_Daten[11,2]+' '; // Fördermenge |
131 | Label123.caption:= ' ' + NANO_Daten[44,2]+' %'; // Befüllgrad |
132 | Brennleistung.caption:= ' ' + NANO_Daten[10,2]+' %'; // Brennraumleistung |
133 | Brennleistung1.caption:=Brennleistung.caption; // Brennraumleistung Hauptanzeige |
134 | Brennleistung2.caption:=Brennleistung.caption; // Brennraumleistung Hauptanzeige |
135 | Label125.caption:= ' ' + NANO_Daten[25,2]+' °C '; // Rücklauftemperatur ist |
136 | Label126.caption:= ' ' + NANO_Daten[26,2]+' °C '; // Rücklauftemperatur soll |
137 | |
138 | |
139 | // Pufferfarbe anpassen |
140 | // T_Diff1:=0; |
141 | T_oben:=trunc(StrToFloat(NANO_Daten[19,2])); |
142 | T_mitte:=trunc(StrToFloat(NANO_Daten[21,2])); |
143 | T_Diff1:=(T_oben-T_mitte)*4; |
144 | // If T_Diff1 < 104 |
145 | if T_Diff1=0 then T_Diff1:=170; |
146 | |
147 | Pufferfarbe_malen(Pufferfarbe.Canvas, 208, 68, 0, T_Diff1,color1, color2); // von oben |
148 | Pufferfarbe_malen(Pufferfarbe.Canvas, 208, 68, T_Diff1,208-T_Diff1, color3, color4); // nach unten |
149 | |
150 | |
151 | // Kesselflamme aktualisieren |
152 | if (strtoint(NANO_Kesselzustand[strtoint(NANO_Daten[2,2]),1]) >= 3) and |
153 | (Strtoint(NANO_Kesselzustand[strtoint(NANO_Daten[2,2]),1]) <= 8) then |
154 | begin |
155 | Flamme_NANO.Visible:=TRUE; |
156 | Flamme_NANO.Animate:=TRUE; |
157 | Kessel_ist_aus:=false; |
158 | end else Begin |
159 | Flamme_NANO.Visible:=false; |
160 | Flamme_NANO.Animate:=false; |
161 | Kessel_ist_aus:=true; |
162 | end; |
163 | // Rauch animation aktualisieren |
164 | |
165 | if (strtoint(NANO_Kesselzustand[strtoint(NANO_Daten[2,2]),1]) = 7) then |
166 | Schornsteinrauch.visible:=True |
167 | else |
168 | Schornsteinrauch.visible:=false; |
169 | |
170 | if not had_a_message then begin |
171 | Status_DL.caption:='Daten aktualisiert'; |
172 | Status_DL.color:=clLime; |
173 | end; |
174 | except |
175 | Status_DL.caption:='Fehler Datenaufteilung'; |
176 | Status_DL.color:=clLime; |
177 | end; |
178 | had_a_message:=false; |
179 | end; |
Vielen lieben Dank für die weitergehende Analyse ! Das hilft allen Besitzern mit der alten Steuerung sehr
Hallo, danke für die rasche und ausführliche Antwort. Ich habe noch mit einem langjährigen Servicetechniker gesprochen, dieser verwies mich noch auf eine Dame die mir hoffentlich noch so einen Code generieren kann (die alten Hasen sind halt doch die Besten!). Ebenfalls habe ich parallel meine Fühler zur Firma Hainzl ausgestreckt. Ja den Herrn gibt es noch, telefoniert habe ich allerdings noch nicht mit ihm. Sollten alle Hebel ins nichts greifen, komme ich gerne auf deine Antwort zurück und schreibe meine Erkentnisse später rein. Danke nochmals. mfg Daniel
Hallo zusammen, ich hab mir eine Applikation geschrieben, die die PM-Datensätze eines HV30 Holzvergasers, sowie eines HKR-Touch Heizkreisreglers parsed und per MQTT im Netzwerk für Home Assistant zur Verfügung stellt. Funktioniert soweit sehr gut! Leider habe ich am Heizkreisregler das Problem, dass die Puffertemperaturen, sowie der Pufferfüllgrad in dem PM-Sätzen immer -1 ist, obwohl die Werte am Gerät vorliegen und am Display visualisiert werden. Allgemein sind sehr viele Daten mit -1 beschrieben. Weiß jemand ob man das umstellen kann, eventuell im Service-Menü? Gerade der Pufferfüllgrad des am HKR angeschlossenen Zentralpuffers wäre sehr interessant. Danke und Grüße, mstrd308
Hallo zusammen, ich finde es wirklich beeindruckend, was ihr hier schon alles an Arbeit geleistet habt. Ich habe eine Problemstellung, bei der eure Vorarbeit vielleicht hilfreich sein könnte. Bei meiner HSV14 (Baujahr 2006) ist die Ansteuerung für das Mischventil vom Heizkreis 1 defekt. Eine Ersatzplatine ist leider ziemlich teuer. Daher habe ich überlegt, ob man das Mischventil über die geloggte Vorlauftemperatur regeln könnte. Hat jemand von euch schon einmal etwas Ähnliches gemacht oder hat Tipps, wie man das umsetzen könnte? Vielen Dank im Voraus!
:
Bearbeitet durch User
Was genau ist defekt ? Die Platine ist jetzt nicht unbedingt neueste Technik. Das ist bestimmt reparabel
Kannst du ein Bild über den betroffenen Platinenteil posten? Liebe Grüße Rupert
Hallo Le, kannst Du beschreiben/verlinken wie und mit welcher Hardware/Sofware dann von ESP32 via MQTT zu Deinem Home Assistant gekommen bist. Ich habe eine identische Konstellation. Vielen Dank!
Das ist meine Lösung zu dem Thema: https://gitlab.com/mediaessenz/hargassner-mqtt-client Die Auswertung der Daten mache ich mit NodeRed. Geht aber sicher auch mit Home Assistant ;-)
Hallo Alexander G., versuche gerade dein Projekt umzusetzen. Ich scheitere allerdings an der Vekabelung. Könntest du die Verbindung Kessel RJ45 - MAX3232 - ESP32 (GPIO) beschreiben?
Hallo Tino R. ich habe in das Git-Repo noch einen Schaltplan, den ich mit Fritzling erstellt habe, hinzugefügt. Anbei noch ein paar Bilder wie ich das mit einer Lochraster-Platine ungesetzt habe. Zudem zwei Bilder von der Steuereinheit meiner Heizung und der RJ-45 Buchse (X1) an der ich das ganze angeschlossen habe. Viel Spaß beim nachbauen!
Ich habe gerade gesehen, das in dem Schaltplan ein Fehler ist. Der RS232-TTL Konverter ist verkehrt herum eingefügt. Die TTL Seite muss natürlich auf der Seite des Mikrocontrollers sein. Ich werde den Plan in Kürze korrigieren.
Danke für den Schaltplan. Jetzt bin ich ein Stück weiter. In der Konsole werden die Daten des Kessels im Sekundentakt geschrieben: 116:43:27.491 MQT: tele/hargassner_8322CC/RESULT = {"SerialReceived":"pm 9 9.4 78 153 27.1 24.2 31.4 28.6 0.0 0.0 57 125 26 75 100.0 100.0 0 0.0 0.0 0.0 54 9.7 39 57 47 63 57 27.2 31.1 0.0 0.0 30.2 100.0 140 140 140.0 140.0 0.0 0.0 100.0 100.0 140 0.00 0.00 0.0 0.00 0.00 0.00 140.00 0 57 1160 0 0 0 19 0 0 1 7 1 6 200 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1054926 152964 6491 54 0 40 92 0 5b 8888 900 900 0 \n\rtm 2025-07-25 16:44:04\r"} Im Tasmota Webinterface werden allerdings nur Nullen angezeigt. Im MQTT Broker kommt der ganze String an. Im Unterschied zu deiner Lösung verwende ich einen ESP32-WROOM-32. Das Signalkabel ist am GPIO3 (RXD) angeschlossen. Muss ich an der hargassner.be noch was ändern?
:
Bearbeitet durch User
Habe den Fehler in der hargassner.be gefunden. Da ich ein zweites HK Modul habe, gibt es mehr Sensoren und ich musste den Wert für "if (numberOfValues != 85)" auf 96 einstellen
Eigentlich kann man diese Abfrage entfernen. Ich hatte die nur irgendwann einmal eingebaut, da ich Probleme mit dem Empfang der Daten hatte. Es hat sich dann allerdings rausgestellt, das der ESP32 einen Hardwaredefekt hatte. Das bei dir in der Konsole im Sekundentakt die Kesseldaten in dieser Form ausgegeben werden sollte eigentlich nicht so sein. Dadurch werden diese Daten auch alle Sekunde per MQTT verschickt (ausser du willst das). Vielleicht habe ich in meiner Anleitung etwas vergessen, aber bei mir wird in der Konsole nur so was in der Art ausgegeben: 17:10:08.506 tm 2025-07-27 17:05:57 17:10:08.506 pm 10 18.3 72 59 19.7 18.7 29.6 140.0 30.7 0.0 60 125 0 40 100.0 100.0 0 0.0 0.0 0.0 0 10.0 0 76 46 140 140 140.0 140.0 0.0 0.0 100.0 100.0 140 140 140.0 140.0 0.0 0.0 100.0 100.0 140 0.00 0.00 0.0 0.00 0.00 0.00 140.00 0 0 0 202 218 234 250 200 216 232 248 1 6 200 1 0 0 0 0 0 0 0 0 0 0 0 0 10 11 0 89 ffff 900 900 0 17:10:08.510 Number of values: 85 17:10:08.520 ['10', '18.3', '72', '59', '19.7', '18.7', '29.6', '140.0', '30.7', '0.0', '60', '125', '0', '40', '100.0', '100.0', '0', '0.0', '0.0', '0.0', '0', '10.0', '0', '76', '46', '140', '140', '140.0', '140.0', '0.0', '0.0', '100.0', '100.0', '140', '140', '140.0', '140.0', '0.0', '0.0', '100.0', '100.0', '140', '0.00', '0.00', '0.0', '0.00', '0.00', '0.00', '140.00', '0', '0', '0', '202', '218', '234', '250', '200', '216', '232', '248', '1', '6', '200', '1', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '10', '11', '0', '89', 'ffff', '900', '900', '0', ''] 17:10:09.036 Processing ...
Hallo zusammen, ich habe mit Hilfe dieses Threads und der vielen Tipps und Erfahrungen nun auch meine Hargassner HSV15 mit der alten Lambdatronic Steuerung über die RS232 Schnittstelle ausgelesen bekommen. Ich habe noch eine ältere IO-Platine V13.0, welche noch keinen RJ45 Anschluss hat sondern nur den Flachbandkabelanschluss X1. Dabei wäre ich allerdings fast verzweifelt, weil ich mit den bekannten Pinbelegungen hier im Thread nur sinnlose Daten erhalten habe. Falls jemand mit der gleichen Platine das Problem hat, anbei die Pinbelegung, die dann funktioniert hat und ich die bekannten Daten mit "pm" beginnend bekommen habe. Die Daten lese ich über ESPHome in Homeassistant ein, als Hardware verwende ich einen M5Stack ATOM Lite (ESP32) incl. ATOMIC RS232 Base. Hat sich jemand schon mal an der anderen Richtung versucht, d.h. die Einstellungen wie z.B. Solltemperaturen zu verändern? In dem Dokument zur Originalsoftware hier im Thread scheint das zumindest möglich zu sein. Die Frage stellt sich nur, ob das dann auch bei der älteren Hardware auch schon möglich ist. LG Christian
:
Bearbeitet durch User
Die einfachste Möglichkeit Einfluss auf die Heizung zu nehmen ist die Werte der aussen bzw Raumtemperatur Geber zu verändern Was genau soll erreicht werden ? Aus der Ferne an/aus schalten ? “Vorheizen” ?
Hallo Simon, Der eigentliche Grund ist, dass ich die Boilerladung steuern will. Ich habe einen elektrischen Heizstab, der per PV Überschuss gesteuert wird und ab Frühjahr und Sommer im Regelfall zur Warmwasserbereitung reicht. Wenn ich die Heizung aber dauerhaft ausschalte, kann es aber bei regnerischen Tagen passieren, dass der Heizstab erst zu spät einschaltet und dann manchmal das Warmwasser morgens zu knapp ist. Wenn die Heizung dauerhaft im Boilerbetrieb ist, schaltet sie oft schon zu früh ein und eine Stunde später wäre der Heizstab schon am laufen. Daher soll die Heizung von extern (bei mir Homeassistant) gesteuert werden, da ich dort schon eine PV-Erzeugungsprognose habe, die mir recht gut voraussagen kann, ob in den nächsten Stunden ausreichend PV Erzeugung zu erwarten ist, um den Heizstab zu betreiben. Zusätzlich will ich die Möglichkeit haben, die Boilertemperatur zu verwenden, um bei Unterschreiten jederzeit die Boilerladung freizugeben. Der einfachste Weg wäre, wenn die Steuerung einen Eingang auf der Platine hätte, um eine Freigabe (oder Sperre) für die Heizkreise bzw. Boilerladung zu realisieren. Die Überlegung, die Temperatursensoren zu "simulieren" hatte ich ursprünglich auch, bei den PT1000 Sensoren müsste man aber entweder eine Umschaltung vom Fühler auf einen festen Widerstand machen oder einen Widerstand in Reihe dazu schalten, was nicht unbedigt praktikabel ist. Außerdem brauche ich dann einen zusätzlichen Boilerfühler, um die echte Temperatur zu messen, da der aus der Heizung ausgelesene Wert dann nicht mehr stimmt. Ich möchte das ganze auch möglichst ausfallsicher von einer externen Steuerung wie z.B. Homeassistant machen, da die Heizung auch funtkionieren sollte, wenn der Server / Netzwerk, ... ausfällt. Ich habe mir daher mal am Bedienpanel der Heizung den Betriebsartendrehschalter angeschaut, wobei hier von dem 4-Stufigen, 3-poligen Schalter nur ein Pol benutzt wird, wodurch man den Schalter recht einfach auslöten und durch 4 Relais ersetzen kann. Die Relais werden durch eine Siemens LOGO gesteuert und ich habe den originalen Stufenschalter wieder auf die Eingänge der LOGO verdrahtet. So können die Betriebsarten der Heizung (Hand, Aus, Boiler, Heizung) über Homeassistant per Modbus gesteuert werden, bei einem Kommunikationsausfall zwischen Homeassistant und LOGO wird die Betriebsart automatisch auf die am Stufenschalter gewählte umgeschaltet. Der nächste Schritt ist jetzt noch die Logik zu programmieren, dass vorhersagebasiert bzw. nach der Boilertemperatur die Heizung im Sommer entweder auf Aus oder in den Boilerbetrieb geschaltet wird. Die Temperaturen dazu bekomme ich ja bereits über den ESP32 aus der seriellen Schnittstelle. Die Idee wäre jetzt noch gewesen, falls es bei der älteren Steuerung überhaupt möglich ist, als nette Zusatzfunktion der RS232 Schnittstelle die Einstellmöglichkeiten der Heizung zusätzlich in Homeassistant abzubilden. Bei dem hier im Thread verlinkten Dokument zur Hargassnersoftware scheint dies über die Schnittstelle möglich zu sein, zumindest wurde es darin beworben. Interessant wäre, ob jemand diese Software im Einsatz hat und ob es auch mit der älteren Hardware / Firmware funktioniert.
Dasselbe wollte ich realisieren. Auch ich habe einen Heizstab und ich steuere mein Haus mit einem PC, der alle Räume gesondert beheizt. Über den Wetterbericht wollte ich dann den Kessel wegschalten, zumal die Sonne mir den Puffer speisen wird. Lange Rede - Hargassner verwies mich darauf, dass man die Software fremdvergeben hat. Das ist die Fa. Hainzl in Linz. Der verantwortlihe dort ist(war) Hr. Hofbauer Der wiederum meinte, dass er ohne Zustimmung von Hargassner keine Auskünfte geben darf. Hargassner wiederum verwies mich an Hrn. Hofbauer. Ich habe wegen Sinnlosigkeit aufgegeben. Das war am 6.2.2020. Den Hargassner-Gateway habe ich gleich nach der Installation wieder zurückgegeben. 1. kann man ihm keine IP-Adresse zuweisen und 2. kann man den Kessel nicht Ein/Aus-schalten letzeres begründet Hargassner damit, dass ein Sevicetechniker am Kessel hantieren könnte und man remote den Kessel einschalten könnte. Ist natürlich Schwachsinn, weil ein simpler Türkontakt ein Remote-Einschalten verhindern würde. Viel Spaß noch beim Tüfteln! ich habe einen NANO-232 SW:V14/-FT9 FW:i/o V1.2.0
:
Bearbeitet durch User
Für die Variante mit dem Temperatursensor habe ich einen Ohmigo USB im Einsatz. Die "echten" Temperaturwerte spiele ich ebenso per Homeassistant ein wie Fake Werte. Würde sicherlich auch am Boiler Temperatursensor funktionieren, der ist auch PT1000. Und da kannst ja für HA Zwecke noch einen weiteren Sensor anlegen und mit einem kleinen ESP32 oder ähnlich auswerten. Bei mir ist kein Drehschalter sondern ein Poti mit einrastenden Stellungen verbaut für die Programmwahl, das kann man sicher simulieren über entsprechende Widerstände für Automatik/Aus/Boiler Betrieb. Ich glaube das wurde sogar vorher schonmal hier im Faden diskutiert. Boiler würde ich eher hydraulisch wegschalten, also mit 1 bzw. 2 3-wege magnetventilen. Heizschwert im WW Speicher mit PV ist nicht schlecht, aber ich bin aber mittlerweile schon einen Schritt weiter und habe Warmwasser komplett getrennt, wird von einer LG WH27s Warmwasser Waermepumpe gemacht, die HSV macht nur noch Heizkoerper und FBH. PS. Die Firmware habe ich auch schon mal im Ghidra genauer angeschaut, die Befehle welche per RS232 absetzbar sind bekommt man schon raus. Aber weiter getestet habe ich da ehrlich gesagt nicht gross.
:
Bearbeitet durch User
@Rupert: Wenn man über die Software den Kessel nicht steuern kann ist das natürlich Quatsch. Das Argument mit dem Servicetechniker hätte man auch mit einer Sperre am Touchpanel lösen können, die immer Vorrang hat. So habe ich es jetzt auch umgesetzt: wenn der Stufenschalter, der jetzt an meiner Logo hängt, auf Hand steht, hat das auch immer Vorrang. Zusätzlich habe ich noch einen kleinen Schalter daneben eingebaut, mit dem man immer auf eine lokale Vorrangschaltung umschalten kann, z.B. für den Kaminkehrer. Deine neuere Heizung hat dann wahrscheinlich auch keinen richtigen Betriebsartenwahlschalter mehr, sondern nur per Touchpanel? Von daher bin ich tatsächlich wieder froh, die alte Variante zu haben, so kann man es zumindest über Relais lösen. Ich habe mir jetzt mal ein Installationsvideo zu dem Gateway angeschaut, ich denke das funktioniert sowieso nur mit den Steuerungen mit Touchpanel. Die verwendete Schnittstelle habe ich nicht. PS: schöne Visualisierung und Steuerung hast Dir da gebaut :-) @Simon: Den Ohmigo muss ich mir merken, den kannte ich noch nicht, danke für den Tipp! Der Boiler hat bei mir eine eigene Ladepumpe, ist also über die hydraulisch weggeschaltet. Das Problem ist dann nur, dass man der Heizung noch den Temperaturwert vorgaukeln muss, damit sie nicht einschaltet. Bei der Variante, dass die Temperaturen immer über Homeassistant gespeist werden, gefällt mir persönlich nicht, dass bei einem Ausfall vom Homeassistant oder im Netzwerk meine Heizung auch nicht läuft. Aber das ist Ansichtssache. Ich denke mit der Ansteuerung über den Drehschalter kann ich gut leben. Eine Brauchwasserwärmpepumpe ist natürlich wesentlich effektiver, sowas kommt vllt. mal falls der Boiler sowieso getauscht werden müsste. Ansonsten habe ich eigentlich immer genug PV-Überschuss (24kWP am Dach) für den 6kW Heizstab, den ich 3-stufig in 2kW Schritten zuschalte. Der bekommt dann den Rest zum verbraten, wobei Haus, Batteriespeicher und Autos immer Vorrang haben. Im Winter läuft dann sowieso die Pelletsheizung ständig, da kann dann die mitübernehmen. Welche Firmware hast Du dir schon mal angeschaut? Von der Heizungssteuerung? Welche Steuerung / Firmware usw. hast du?
:
Bearbeitet durch User
Wir haben eine HSV15 und die Version ist die V2.0t Ein Update habe ich bis dato nie machen lassen. Evtl. mache ich das noch mit dem offiziellen Kundendienst. Ich meine auch, dass hier irgendwo mal das original Diagnose Programm/Terminal von Hargassner gesehen zu haben. Da könnte man auch mal nachschauen welche Befehle gesendet werden können.
Wir haben ebenfalls die HSV15 mit der identischen Firmware. Der Beriebsartenschalter ist aber bei mir definitiv ein Stufenschalter, da ich den schon ausgelötet habe und stattdessen Relais verwende. Falls du noch die Betriebsartenumschaltung machen möchtest hier die Pinbelegung: Pin A: COM Pin 1: Hand Pin 2: Aus Pin 3: Boiler Pin 4: Auto Ich schaue mal, ob ich die Originalsoftware noch irgendwo finde, aber das hat gerade bei mir noch nicht die höchste Priorität. Falls man die Parameter der Heizung über die Schnittstelle auch ändern kann ist das eher ein nice-to-have, da ich eigentlich nie was verändern muss. Hätte nur den Vorteil, das man einfach Heizkreise ein- und ausschalten kann, z.B. am Beginn der Heizperiode nur Fußbodenheizung usw. Das könnte man aber auch notfalls über Relais lösen oder über deinen Tipp mit dem Ohmigo über die Temperatursensoren. Falls du bezüglich des Firmwareupdates bei Hargassner anfragst wäre interessant, was sich in den neueren Versionen geändert hat.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.