Forum: Haus & Smart Home Buderus EMS-"Gateway" mit PIC18F / Sammelbestellung


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Ingo F. (ingof)


Lesenswert?

aus dem Buderus Thread 2107 entwickele ich eine Schaltung mit CAN BUS 
und möchte jetzt dafür einen eigenen Thread starten der sich mit der 
Schaltung, einer Sammelbestellung und der Entwicklung befasst.
Mit der 2705 hat diese Schaltung auch nicht wirklich viel zu tun und 
betrifft die EMS-Controller

Dann beginne ich mal mit der Antwort auf diese Antwort:
Beitrag "Re: Logamatic 2107 Schnittstelle"

Zu meiner PIC-Wahl:

Ich muss auf jeden Fall den CAN-Bus haben. Da noch weitere Teilnehmer an 
den Bus angeschlossen werden die am Server aller auf der selben 
Seriellen Schnittstelle ankommen sollen. 
(Rolladensteuerung,Sensoren,Paketfach,Codeschlos,Türöffner,....)

An den USB-Bus habe ich mich noch nicht getraut und meine PCs habe alle 
Serielle Schnittstellen. Notfalls kann man ein Seriell/USB-Kabel nehmen 
oder den FTD232(?)-Chip auf die Paltine setzen.

Das mit dem 32MHZ internen Oscillator+PLL wusste ich noch garnicht. Hat 
aber den Nachteil dass der von  der Spannung und Temperatur abhängig 
ist. Ist aber kalibrierbar.

Der interne Komperator kann nicht als Eingang für den EUSART genommen 
werden. Es sei denn es ist möglich den Ausgangspin vom Komperator auf 
den EUSART-Rx-Pin zu schalten. Wäre aber für einen SoftUART verwendbar. 
Bin aber lieber für externe Komperatoren weil man einen defekten 
Komperator austauschen könnte und nicht auf einen speziellen PIC 
angewiesen ist.

Denke die Schaltung sollte so flexible sein dass man die PIC 
18F258,2580,2585,2550,... verwenden kann.
Die Funktion der Schaltung soll durch DIP-Schalter verwendbar sein.
Also eine Software für alles.
Bootloader für neue Firmwar
Es sollte generell drei Gruppen geben:
1) EMS-Bus auf CAN, I2C, ...
2) PC-Schnittstelle auf CAN, I2C, ...
3) EMS-Bus auf PC-Schnittstelle.

Die PC-Schnittstelle sollte entweder USB (18F2550) oder Seriell 
(18F2580) sein.
Die verbindung zwischen zwei PICs sollte wählbar sein zwischen CAN, I2C 
oder irgendwas anderes.
Die dritte Variante (EMS-PC) wird wenn alles läuft auch noch vermutlich 
über SoftUART "nachgerüstet". Der Bootloader folgt dann wohl als 
letztes.

Aktueller Stand:
EMS auf CAN und zurück mit CAN auf PC funktioniert soweit schon zu 99% 
in beide Richtungen und bin gerade am Testen und verfeinern des 
"eingebauten" 3964R-Protokoll.

Testprogramme für die Entwicklung der Software und auch später die 
Firmware des PICs und die Schaltpläne gibt es erst mal hier:
http://modelledit.rc-sim.de unter Downloads.

Wenn es was neueres gibt werde ich hier weiter posten.

Gruß
IngoF

von F. F. (pic18f)


Lesenswert?

Ingo F. schrieb:
> Ich muss auf jeden Fall den CAN-Bus haben. Da noch weitere Teilnehmer an
>
> den Bus angeschlossen werden

welche Vorteile hat denn der CAN-Bus gegenüber des I2C-Bus?
etwa die Reichweite?

der I2C-Bus ist laut Wikipedia:
"I²C ist als Master-Slave-Bus konzipiert. Der Master sendet und ein 
Slave reagiert darauf. Mehrere Master sind möglich (Multimaster-Mode). 
Die Buszuteilung (Arbitrierung) ist dabei per Spezifikation geregelt" 
http://de.wikipedia.org/wiki/I%C2%B2C

auch Multimaster-fahig.

Es wäre schön, wenn man auf den CAN-Bus verzichten könnte, man könnte 
dann einen PIC mit USB-Port nehmen.

Das USB-Interface ist hier mit Beispielprogramm USB4all erklärt: 
http://www.sprut.de/electronic/interfaces/usb/usb.htm

Viele Grüße
F. F.

von proCANproUSB (Gast)


Lesenswert?

Ich benötige die Schaltung nicht, da ich kein Buderus habe, aber warum 
auf CAN verzichten? USB kann man ja kinderleicht mit einem FTDI 
umsetzen. Die Dinger sind sehr einfach per UART an den µC anzubinden und 
auf der PC Seite kann man entweder mit einem virtuellen COM Port 
arbeiten oder den FTDI spezifischen Treiber nutzen. Beispiele in allen 
möglichen Programmiersprachen gibts beim Hersteller auf dessen Seite.

Grüße

von Mala H. (Gast)


Lesenswert?

Hallo,

ich bin bis jetzt nur stiller Mitleser gewesen da ich eigentlich recht 
wenig zur Sache beitragen kann.
Nun wird der Thread aber für mich interessant.
Meine Ausgangssituation ist folgende:
Ich habe eine Buderus Heizung bekommen mit dem RC35.
Nun würde ich gerne die daten der Heizung auslesen.
Soweit ich das gelsen und verstanden habe braucht man dafür eine kleine 
Schaltung, auf der einen Seite den Klinkenstecker, auf den anderen den 
RS232 Stecker.
Bei der Software werde ich mir selbst helfen können, die HW ist eigen 
tlcih das Problem.

Nun meine Frage:
1. Gibt es einen Schaltplan für diese Platine damit ich den jmd. zeigen 
kann der sich damit auskennt?
2. Sehe ich das eigentlich richtig so?

Danke für die Antwotren und entschuldigt die banalen Fragen, aber bin 
halt totaler Newbie!

von Charlie (Gast)


Lesenswert?

Servus,

@ IngoF
Hatte mein Interesse an einer Sammelbestellung ja schon im alten Thread 
bekundet. Was das Basteln betrifft, schlägt mein Herz für den 
konventionellen Aufbau, würde aber auch bei einer SMD-Platine nicht nein 
sagen.

@ Matthias H.
Einen Schaltplan findest Du im "alten" Thread, z.B. unter:
[[http://www.mikrocontroller.net/attachment/95287/EMS_Interface.png]]

@ all
Hat jemand von Euch da draußen 1-Wire im Einsatz und insofern schon mal 
an eine Anbindung über einen vorhandenen 1-Wire-Bus nachgedacht, oder 
gar schon implementiert?

Ciao
Karl M.

von IngoF (Gast)


Lesenswert?

F. F. schrieb:
> welche Vorteile hat denn der CAN-Bus gegenüber des I2C-Bus?
> etwa die Reichweite?

Richtig.. die Reichweite. I2C ist ja eigentlich für kürzere Strecken 
gedacht wenn ich da richtig liege. ALso innerhalb einer Platine.

F. F. schrieb:
> CAN-Bus verzichten könnte, man könnte
> dann einen PIC mit USB-Port nehmen.

Sicher kann man dass.. nur für mich persöhnlich würde das keinen Sinn 
machen...

Bin ja für eine universelle Bestückung wenn das möglich ist. Wer USB 
will nimmt eben den 2550 wer CAN will den 2585 und wer einfach nur einen 
"Gateway" haben will nimmt kann sich einen aussuchen.

Dann wird eben der USB-Teil oder der CAN-Teil bestückt.

für den simplen Gateway müsste ja auch ein SoftUART reichen und der 
zweite PIC wird garnicht benötigt. Dann werden eben nur der RS232 
Pegelwandler bestückt. Und bei allen drei Schaltungen müsste dann die 
EMS Sende- und Empfangsschaltung bestückt werden.


Hatte mir so vorgestellt dass ich hinterher eine Platine habe die diese 
drei Hardwarevarianten je nach Ausbau erlaubt und auf allen läuft die 
selbe Software die evtl. Über Dipschalter/Lötbrücken "konfiguriert" 
wird.

Matthias H. schrieb:
> 1. Gibt es einen Schaltplan für diese Platine damit ich den jmd. zeigen
> kann der sich damit auskennt?

Habe meine aktuelle Schaltung mit PIC dort auch irgendwann mal gepostet. 
ist aber soweit noch nicht komplett fertig. Wem willst Du den denn 
zeigen? Welche Software willst Du denn programmieren? Die PC-Software 
oder den PIC selber?

Wer die Software nicht verwenden will die ich entwicklte kann ja seine 
eigene nehmen. Mein Software sorgt dafür dass am Ende die EMS-Frames 
über den das R3964R-Protokoll ausgegeben wird.

Charlie schrieb:
> Hat jemand von Euch da draußen 1-Wire im Einsatz und insofern schon mal
> an eine Anbindung über einen vorhandenen 1-Wire-Bus nachgedacht, oder
> gar schon implementiert?

Der EMS-Bus ist doch ein 1-Wire Bus. Notfalls den einfach zum PC 
weiterziehen und dann dort eine Platine mit USB oder SoftUart als zweite 
Schnittstelle danhängen. Oder meintest Du dass die Schaltung nur über 
den BUS versorgt wird. Sollte eigentlich auch möglich sein...


Also hier sollte es eigentlich nur um diese Platine gehen. Wenn es das 
Busprotokoll selber geht dann wäre der alte Thread dafür besser.

von Charlie (Gast)


Lesenswert?

Servus,

IngoF schrieb:
> Der EMS-Bus ist doch ein 1-Wire Bus.

Sorry, weiß nicht, ob wir hier aneinander vorbei reden :-/

Hatte "den" 1-Wire-Bus im Sinn: http://www.maxim-ic.com/auto_info.cfm/

Habe hier meine Heizungs- und Lüftungsüberwachung mit DS1820 und DS2423 
über 1-Wire realisiert. Als USB-Adapter an meinen "Router" verwende ich 
einen DS9490R. Deshalb die Anfrage an die Gemeinde. (Sorry, wenn OT!)

IngoF schrieb:
> Also hier sollte es eigentlich nur um diese Platine gehen. Wenn es um das
> Busprotokoll selber geht, dann wäre der alte Thread dafür besser.

Finde ich persönlich nicht, hier gehts um "EMS", im alten Thread gings 
auch und besonders um die "2107".
Aber ich möchte dem op natürlich nicht widersprechen ;-)

Ciao
Karl M.

von Rudi (Gast)


Lesenswert?

Hallo,

Charlie schrieb:
> Habe hier meine Heizungs- und Lüftungsüberwachung mit DS1820 und DS2423
> über 1-Wire realisiert. Als USB-Adapter an meinen "Router" verwende ich
> einen DS9490R. Deshalb die Anfrage an die Gemeinde. (Sorry, wenn OT!)

Du bist auf der Suche nach einer 1-Wire Lösung für den PIC18F? Warum 
sollte das nicht funktionieren, läuft doch mit fast jeder 0815 CPU. Ein 
Freund benutzt dieses AVR-NETIO Board (oder wie immer sich das schimpft) 
für seine 1-Wire Sensoren.

Ich benutze I2C für die Temperatur-Sensoren am Heizkreis (~18 Stück). 
Die Fehlerrate liegt bei etwa 0 bei mehr als 7 Monaten Laufzeit. Was 
mich persönlich daran stört ist die beschränkte Leitungslänge. Wie sieht 
es bei den 1-Wire Sensoren mit Leitungslänge, Fehlerrate und 
Geschwindigkeit aus?


Grüße.

von Charlie (Gast)


Lesenswert?

Servus,

Rudi schrieb:
> Du bist auf der Suche nach einer 1-Wire Lösung für den PIC18F?

Nö, nicht direkt, fände es gut, das EMS-Protokoll auf meinen vorhandenen 
1-Wire-Bus zu portieren, um eine weitere Leitung einzusparen.

Nochmal Rudi:
> Wie sieht es bei den 1-Wire Sensoren mit Leitungslänge, Fehlerrate und
> Geschwindigkeit aus?

Leitungslänge: 150 m mit Cat5 sollen kein Problem sein. Bei mir ist's 
weniger, so um die 25 m Gesamtlänge. Funzt bisher recht gut.

Fehlerrate: Ab und an gibt es mal eine Fehlmessung. Habe noch keine 
Ahnung an was das liegen könnte. Sehe die Fehler nur in meinen RRDTool 
Aufzeichnungen. Aber dort auch nur in der 3-Stunden Skizze. RRDTool 
bügelt das dann in den Langfrist-Kurven wieder aus.
Ist bisher für mich ohne Bedeutung, da ich nur logge.
Der 1-Wire-Bus scheint aber sehr anfällig in Punkto EMV. Hatte mal einen 
Frequenzumrichter am Laufen, da ging gar nichts mehr.

Geschwindigkeit: Der 1-Wire-Bus ist nicht der Schnellste. Aber für die 
Temperaturen und für den Gas- und Kondensatzähler reicht das dicke aus.

Falls es Dich näher interessiert, hatte hier mal ein bisschen was dazu 
aufgeschrieben: http://www.rockenberg.net/fli4l-hvac.html

Ciao
Karl M.

von Mala H. (Gast)


Lesenswert?

Hallo,

danke für die Antworten, leider stehe ich immernoch etwas auf dem 
Schlauch.
Hätte vielleicht mal jemand Lust & Zeit sich mit mir offline etwas 
auszutauschen damit ich den Thread nicht vollspamme. Möglicherweise per 
Mail oder per Chat bzw Facebook oder ähnliches.
Ich möchte eigentlich nichts aufwendiges, nur ein paar Daten von der 
Buderus abgreifen (ändern muss garnicht sein) und sie dann auf meinem 
Server in einer Datenbank speichern.
Leider habe ich von der HW wenig bis garnkeine Peilung:-(

Also, wenn jemand Lust und Zeit hat meldet euch bitte kurz!

Vielen Dank im voraus!!

von IngoF (Gast)


Lesenswert?

Also die Hardware mit meiner Software wandelt die EMS-Telegramme in ein 
für den PC-lesbares Format. Die Daten werden also seriell im 
3964R-Protokoll übertragen.
http://de.wikipedia.org/wiki/3964R

Du benötigst dann nur noch ein Programm auf dem PC dass die Daten über 
3964R empfängt. Entweder meine Software über nehmen die die Daten in 
einer MySQL-Datenbank speichert. Gibt dann auch ein Programm mit der man 
sich hinterher die Kurven ansehen kann. Läuft unter Java und MySQL muss 
installiert sein.

Der Vorteil von Java ist dass es auf Windows. Linux und MAC läuft.
Wenn Du selber Software entwickeln willst dann gibt es für Java eine 
3964R-Bibliothek. Habe die etwas umgeschrieben dass sie auch unter 
Windows unbegrenzt läuft un mit RxTxComm (gnu.io.) läuft.
Original gibt es hier:
http://rkjava.de/

Von der Hardware brauchst Du dann keine Ahnung haben. Einfach die 
Platine zusammenlöten und einschalten. Vielleicht gibt es auch schon 
fast fertige Bausätze. Das war ja der Sinn meiner "Sammelbestellung". 
Soll eben für Leute sein die sich nicht mit der Hardware beschäftigen 
können oder wollen.

Gruß
Ingo

von Mala H. (Gast)


Lesenswert?

IngoF schrieb:
> Also die Hardware mit meiner Software wandelt die EMS-Telegramme in ein
> für den PC-lesbares Format. Die Daten werden also seriell im
> 3964R-Protokoll übertragen.
> http://de.wikipedia.org/wiki/3964R
>
> Du benötigst dann nur noch ein Programm auf dem PC dass die Daten über
> 3964R empfängt. Entweder meine Software über nehmen die die Daten in
> einer MySQL-Datenbank speichert. Gibt dann auch ein Programm mit der man
> sich hinterher die Kurven ansehen kann. Läuft unter Java und MySQL muss
> installiert sein.
>
> Der Vorteil von Java ist dass es auf Windows. Linux und MAC läuft.
> Wenn Du selber Software entwickeln willst dann gibt es für Java eine
> 3964R-Bibliothek. Habe die etwas umgeschrieben dass sie auch unter
> Windows unbegrenzt läuft un mit RxTxComm (gnu.io.) läuft.
> Original gibt es hier:
> http://rkjava.de/
>
> Von der Hardware brauchst Du dann keine Ahnung haben. Einfach die
> Platine zusammenlöten und einschalten. Vielleicht gibt es auch schon
> fast fertige Bausätze. Das war ja der Sinn meiner "Sammelbestellung".
> Soll eben für Leute sein die sich nicht mit der Hardware beschäftigen
> können oder wollen.
>
> Gruß
> Ingo

Hi Ingo,

vielen Dank für deine Hilfe. Das hört sich ja ganz gut an.
Wäre es mit deiner Schaltung auch möglich 1-Wire Sensoren und ggfs. ein 
Ree-Kontakt anzuschliessen. Damit wäre einen  Überwachung meines 
Gasverbrauchs und der Raumtemperaturen  sowie der Aussentemperatur 
möglich?

Danke

von IngoF (Gast)


Lesenswert?

Also bisher nicht. Bisher nur der EMS-Bus zum PC. Die ganzen Sensoren 
und den Gasverbrauch wollte ich bei mir über CAN anschließen. Wollte 
nicht noch zusätzlich einen anderen BUS.

Wollte überall überall die selbe Hardware verwenden. Aber die Sensoren 
kommen erst wenn der EMS Bus komplett läuft. Vielleicht "baue" ich ja 
dann noch 1-Wire Sensoren ein. Habe noch keine Ahnung welche Sensoren 
ich nehmen werde.

Notfalls eben die Hardware selber programmieren wenn Du das möchtest und 
kannst.

Gruß
Ingo

von Mala H. (Gast)


Lesenswert?

IngoF schrieb:
> Also bisher nicht. Bisher nur der EMS-Bus zum PC. Die ganzen Sensoren
> und den Gasverbrauch wollte ich bei mir über CAN anschließen. Wollte
> nicht noch zusätzlich einen anderen BUS.
>
> Wollte überall überall die selbe Hardware verwenden. Aber die Sensoren
> kommen erst wenn der EMS Bus komplett läuft. Vielleicht "baue" ich ja
> dann noch 1-Wire Sensoren ein. Habe noch keine Ahnung welche Sensoren
> ich nehmen werde.
>
> Notfalls eben die Hardware selber programmieren wenn Du das möchtest und
> kannst.
>
> Gruß
> Ingo

Hi,

ok, dann weiss ich bescheid.
Weisst du schon wie das zeitlich aussieht mit deinem EMS-Bus-System? 
und, würdest du ggfs. auch eine fertige Platine (natürlich gegen 
Materialkosten und Aufwandsentschädigung) machen können?

Gruß

von IngoF (Gast)


Lesenswert?

Hallo Matthias,

kann noch nicht sagen wann.. schätze mal ein paar Monate wird es schon 
dauern. Habe Momentan so gut wie keine Zeit an der Software weiter zu 
entwickeln. Vielleicht gehts ja auch schneller.

Wollte die Sende-/Empfangsschaltung noch mal überarbeiten und dann auch 
USB und andere Hardwaresachen ermöglichen. So so universell wie möglich 
werden. Allerdings auch nicht zu universell.

Gruß
Ingo

P.S.: Entweder einfach auf Antworten klicken oder nur eine bestimmte 
Textstelle markieren. Wird sonst zu unübersichtlich wenn alles nochmal 
zitiert wird...

von F. F. (pic18f)


Lesenswert?

Matthias H. schrieb:
> Wäre es mit deiner Schaltung auch möglich 1-Wire Sensoren und ggfs. ein
>
> Ree-Kontakt anzuschliessen

das dürfte kein Problem sein, es wird nur ein Port mit einen 
Pullup-Widerstand benötigt. Die Firmware habe ich für den 18F2550 in C18 
geschrieben, falls sie benötigt wird. Ich habe bisher zwei DS18B20 am 
BUS getestet, welche einwandfrei laufen. Später möchte diese auf 20 
Stück erweitern.

IngoF schrieb:
> USB und andere Hardwaresachen ermöglichen. So so universell wie möglich

das finde ich gut. Für die noch freien Port's kann man eine Sockelleiste 
vorsehen. Wäre auch gut, wenn es nicht SMD wäre.
Ich bin schon gespannt auf die überarbeitete Sende- und 
Empfangsschaltung.

Viele Grüße
F. F.

von IngoF (Gast)


Lesenswert?

Die überarbeitete Empfangsschaltung wird vermutlich der Version von 
Buderus entsprechen. Meine 0815 Beschaltung des Komperators ist doch 
nicht so eine gute Idee gewesen. Lässt sich von der Sendeschaltung 
beeinflussen.

http://www.mikrocontroller.net/attachment/95287/EMS_Interface.png

von Mala H. (Gast)



Lesenswert?

Hi,

ich nochmal.
Ich habe mich jetzt mal durch diverse Threads gekämpft und möchte nur 
das was ich gefunden habe bestätigt haben.
An meiner Buderus-Analge habe ich besagten Klinkenstecker (siehe 
377px-3mm5_jack_3_norm.svg.png)
LINKS : GND
RECHTS: SIGNALOFFSET +12V, +-2.5V Signalpegel (etwa)
GND   : +12V

Den führe ich nun auf die kleine Schaltung "bude.png" wobei die 5 V von 
extern kommen und Masse und das Signal von dem Klinkenstecker.
Am Ende nach dem Operationsverstärker bekomme ich die Daten.

Richtig bis jetzt???


Nun habe ein USB-Board von Franzis Experimentierkasten 
http://www.franzis.de/elektronik/lernpakete-elektronik/lernpaket-experimente-mit-usb2

Im Anhang befindet sich die Leseprobe, ab Seite 23 bis 25 die schaltung.
Ich habe es bereits geschafft diesen unter Linux auszulesen 
(Reed-Kontakt angeschlossen und Status abgefragt).
Bekomme ich das irgendwie mit dem Bauteil hin die Daten auf meinen 
LinuxServer zu kriegen? Die Auswertung kann ich ja mit den Angaben aus 
dem alten Thread hoffentlich hinbekommen'?

Danke für Eure Antworten, wär echt super wenn sich jemand der Sache kurz 
annehmen könnte!

von Helmut (Gast)


Lesenswert?

Naja,
mittelgroßer Elko an der Ref-Spannung und den 10µF auf 22µF sollte 
helfen.
Gruß Helmut

IngoF schrieb:
> Die überarbeitete Empfangsschaltung wird vermutlich der Version von
> Buderus entsprechen. Meine 0815 Beschaltung des Komperators ist doch
> nicht so eine gute Idee gewesen. Lässt sich von der Sendeschaltung
> beeinflussen.
>
> http://www.mikrocontroller.net/attachment/95287/EM...

von IngoF (Gast)


Lesenswert?

Helmut schrieb:
> mittelgroßer Elko an der Ref-Spannung und den 10µF auf 22µF

Das Problem ist dass meine Sendeschaltung den Pegel an den positiven 
Flanken des Sendesignals kurzzeitig unter 12 Volt zieht und der 
Komperator dann schon kurz Schaltet. Ein Kondensator an der 
Referenzspannung ändert daran nichts. Den 10µF Kondensator habe ich ja 
nicht in meiner Standartbeschaltung. Der gepostete Schaltplan war die 
Buderusversion.

Allerdings kamen durch diese "Fehlschaltungen" keine Fehler. Aber schön 
ist was anderes...

Matthias H. schrieb:
> Bekomme ich das irgendwie mit dem Bauteil hin die Daten auf meinen
> LinuxServer zu kriegen? Die Auswertung kann ich ja mit den Angaben aus
> dem alten Thread hoffentlich hinbekommen'?

Welches Bauteil meinst Du denn jetzt? Die FTD232-Platine ab Seite 23?
Damit wird es nicht gehen weil das nur ein Schnittstellenwandler 
zwischen USB und RS232 ist. Der PC ist jedenfalls viel zu langsam um das 
<Break> das auf dem EMS-Bus als "Ende-markierung" gesendet wird 
vernünftig auszuwerten. Denke Linux ist da um einiges Schneller. Aber 
wird bestimmt auch Probleme machen.

Falls Du die "Sammelbestellschaltung" meinst dann sollte das klappen. 
Falls Du keinen seriellen-Port am PC frei hast kann man mit dierser 
FTD232-Schaltung die Verbindung über USB herstellen. Allerdings müsste 
das mit einem anderen PIC (2550) auch ohne FTD232 funktionieren.

Meine PC-Software ist in Java geschrieben und läuft auch unter Linux....

Gruß
IngoF

von Markus Hellweg (Gast)


Lesenswert?

Hallo zusammen,

ich hatte vor einiger Zeit einen Service-Key incl. der Software 
Logamatic 4000 Eco-Soft recht günstig ersteigert.
Das System lief auch recht gut an meiner Buderus GB162.

Nun ist der Super-GAU passiert.
Auf dem Weg zu einem Kollegen (ebenfalls eine Buderus-Anlage) wurde mir 
der Koffer mit dem Service-Key aus dem Auto gestohlen (lag auf dem 
Beifahrersitz) . Gott sei dank lag der Laptop im Kofferraum und wurde 
nicht Opfer des Diebes.
Nun bin ich bei der Suche nach einem neuen Service-Key auf diese Seite 
gestoßen und dachte mir: Vielleicht kann ich mir den Kauf des fertigen 
sparen und einen selbst bauen. Da ich nicht so wirklich der Löti bin 
hier meine Frage:
Habe ich es richtig verstanden das ich die von Matthias H. oben gezeigte 
Schaltung und Stereo-Klinknestecker "bauen" kann und an den Com-Port des 
Notebooks mit installierter Logamatic 4000 Eco-Soft betrieben kann, 
quasi als Ersatzgerät des Service-Keys?

Danke für die Antworten!

P.S. Könnte mir jemand ggfs. das Teil auch nachbauen (gegen einen Obulus 
natürlich)!!!!

von Niffko _. (niffko)


Lesenswert?

Markus Hellweg schrieb:
> Habe ich es richtig verstanden das ich die von Matthias H. oben gezeigte
> Schaltung und Stereo-Klinknestecker "bauen" kann und an den Com-Port des
> Notebooks mit installierter Logamatic 4000 Eco-Soft betrieben kann,
> quasi als Ersatzgerät des Service-Keys?

Da muss ich Dich leider enttäuschen. Besagte Schaltung hat mit einem 
Service-Key ungefähr soviel zu tun wie 'ne Tüte Mehl mit Kuchen. Echte 
Service-Key Funktionalität wurde hier m.W. noch nicht gebaut - man 
berichtige mich, sollte dem nicht mehr so sein.



// Niffko

von Fred G. (sysrun)


Lesenswert?

Hello :)

Gibts hier nen Status?

von IngoF (Gast)


Lesenswert?

Sorry, leider noch nicht.

Hatte etwas wenig Zeit und musste alle Daten auf einen neuen PC retten. 
Ist noch nicht ganz abgeschlossen...

Gruß
Ingo

von Charlie (Gast)


Lesenswert?

Sers Ingo, sers @all,

ist das Thema noch aktuell?

Will sagen, ist die Platine noch auf der todo Liste, oder soll sich 
jeder seinen eigenen Adapter fertigen?

Sorry wegen der nassforschen Frage, aber ich will da in Kürze mal weiter 
machen - sonst könnte es ja passieren, dass die Heizung abgeraucht ist, 
bevor ich ihr auf den EMS geschaut habe ;-).

Ciao
Karl M.

von IngoF (Gast)


Lesenswert?

Hallo Karl,

Also ehrlich gesagt hatte ich eine Zeit lang keine Zeit und wollte heute 
so langsam mal weitermachen...

Muss mir also erst mal meine Unterlagen wieder zusammensuchen und etwas 
Software installieren...

Gruß
IngoF

von charlie (Gast)


Lesenswert?

Servus Ingo,

> Muss mir also erst mal meine Unterlagen wieder zusammensuchen und etwas
> Software installieren...

... das klingt doch super!

Prima, vielen Dank schonmal!

Gruß
Karl M.

von Andreas (Gast)


Lesenswert?

Wenn der 2107 - Bus auch spannungsgesteuert ist, dann bräuchte ich auch 
so etwas.
Grus Andreas

von Christian S. (christianse)


Lesenswert?

Guten morgen! :)

Wäre auch sehr interessiert an einer Platine. Gibts da schon Neuigkeiten 
dazu? - immerhin wirds bald wieder Winter :D - will aber natürlich 
keinen von den Machern drängen ;)

lg,
Christian

von Ingo F. (ingof)


Angehängte Dateien:

Lesenswert?

Hallo,

also irgendwie finde ich im Moment nicht so viel Zeit dafür.

Also mein aktuellen Entwurf habe ich mal angehangen.
Statt eine Platine die mit dem 18F2480(USB) und 18F2580(CAN) läuft wird 
die Platine nur noch den 18F2580 verwenden. Die USB-Anbindung wird dann 
wohl über den FTD232 gehen.
Irgendwie sind die Layouts der beiden PICs doch zu unterschiedlich und 
ich müsste die Platine mit Jumpern oder Lötbrücken vollstopfen.

Die Platine kann wahlweise mit dem MAX232 oder dem FTD232 bestückt 
werden. CAN ist auch Optional. Ein Software-UART sollte eventuell auch 
noch rein, Habe nur noch keine Ahnung welche PINS ich für den SoftUART 
nehmen soll.

EMS-Bus Anschluss ist natürlich auch dabei...

Vielleicht hat ja noch jemand ein paar Ideen zum Schalplan.

Gruß
Ingo

von Christian S. (christianse)


Lesenswert?

Hallo!
Danke für das PDF! :)

Also würde ich für die USB-Variante die 2 oberen Schaltungen und die 
rechts unten (FT232RL) benötigen?

Die ganzen Ground gehören miteinander verbunden?
Die +5V kann ich vom USB nehmen?

Der Bus ist jetzt aber nicht galvanisch von der Schaltung getrennt oder? 
Wie wichtig wäre das?

Wenn ich mit meinen Vermutungen richtig liege, dann werde ich doch mal 
so eine Platine selbst herstellen :)

Schönen Abend noch :)

Christian

von Ingo F. (ingof)


Lesenswert?

Ups.. sind doch ein paar Fehler drin. Hatte eine längere Pause 
eingelegt.

Der USB-Pic ist der 18F2550 und nicht 18F2480.

Was aber für Dich wichtiger ist....
In dem Schaltplan kann man nur EMS, MAX232 oder FTD232 anschließen. Der 
CAN-Teil wird also dort immer benötigt.

Man müsste also den FTD232 an anderen PINs anschließen und einen 
SoftwareUART programmieren. Demanch wäre vermutlich besser einen USB-PIC 
zu verwenden. Aber dann müsste man sich doch bestimmt auch einen Treiber 
für Windows zurechtbasteln, oder?

Am Schaltplan muss also doch noch einiges verändert werden...

Gruß
Ingo

von Christian S. (christianse)


Lesenswert?

Also, ich hätte einfach gern, den Bus (bei mir ists ja eine 
Junkers-Therme) per USB im PC, wo ich dann die Daten weiter verarbeiten 
kann.

Mitn Platinen-Entwerfen hab ichs nicht so... aber ich versuche zumindest 
zu verstehen :D


Ahja, und drängen will ich natürlich auch nicht ;)

von Rudi (Gast)


Lesenswert?

Ingo F. schrieb:
> Aber dann müsste man sich doch bestimmt auch einen Treiber
> für Windows zurechtbasteln, oder?

Nä, libusb und dann kannst du direkt mit python loslegen. Oder du 
schaust ob es eine Anbindung der libusb an deine Sprache gibt.


Grüße.

von Ingo F. (ingof)


Lesenswert?

Rudi schrieb:
> Oder du
> schaust ob es eine Anbindung der libusb an deine Sprache gibt.

Na dann sollte ich mir das mal ansehen.. Für Java soll es sowas geben 
was mit libusb 0.1 (Nicht 1.0) funltioniert. Gibt aber auch wohl noch 
ein anderen "Projekt" was vermutlich auch mit 1.0 funktioniert. Muss mir 
mal ein PIC organisieren und vielleicht etwas testen..

Gruß
Ingo

P.S.: Das wird dann doch wohl etwas dauern befürchte ich..

von Niffko _. (niffko)


Lesenswert?

@Ingo
Aus gegebenem Anlass: Im Junkers-Fred hat gerade jemand deine
Schaltung(http://www.mikrocontroller.net/attachment/preview/120661/page_snapshots/001.png) 
in Arbeit.
Aus meiner Sicht sind hier ein paar Dinge nicht im Lot.

Ist der GND am Brückengleichrichter so gewollt? Wenn der Bus verpolt 
angeschlossen wird, würde so die positive Busspannung auf Masse liegen.

Des weiteren würde ich mit dem TX-zweig nicht vor dem 
Brückengleichrichter auf den Bus gehen. Was ist wenn der Bus verpolt 
ist!?

Und schlussendlich vermisse ich die Transistorstufe nebst 
"Lastwiderstand" im TX-Zweig. Nur mit dem Komparatorausgang wird das 
nicht funktionieren.



Grüße Niffko

von Helmut (Gast)


Lesenswert?

Ist es nicht auch ein spannungsgesteuerter BUS, mit ca. 24Volt und Pegel 
bei 15 Volt?

Dann würde ich die Schaltung aus dem IPSymcon-Forum nehmen.

http://www.ip-symcon.de/forum/f19/ebus-adapter-senden-empfangen-10799/index6.html#post119974

Ein PIC müßte auch noch mit Software gefüttert werden, wenn Das ähnlich 
lange dauert....

von Helmut (Gast)


Lesenswert?

Edit:
Ist ein spannungsgesteuerter Bus mit 12 Volt und einem Signalpegel um 
und bei 10Volt.

Ändert aber nichts, der Adapter sollte auch dafür gehen, ev. das Poti 
drehen ;-).

von IngoF (Gast)


Lesenswert?

Helmut schrieb:
> Dann würde ich die Schaltung aus dem IPSymcon-Forum nehmen.

Hallo Helmut

Generell ist das so möglich. Allerdings gibt es da ein großes Problem...

Der PC ist zu langsam um die Daten auswerten zu können. Das Problem ist 
das Break. Ich habe es nicht geschafft das ordentlich auszuwerten.

Niffko _ schrieb:
> Ist der GND am Brückengleichrichter so gewollt? Wenn der Bus verpolt
> angeschlossen wird, würde so die positive Busspannung auf Masse liegen.

Ja, das ein Fehler... das GNG gehört hinter den Gleichrichter, genauso 
wie die der TX-Pfad.

Niffko _ schrieb:
> Und schlussendlich vermisse ich die Transistorstufe nebst
> "Lastwiderstand" im TX-Zweig. Nur mit dem Komparatorausgang wird das
> nicht funktionieren.

Stimmt.. die fehlt auch noch.. hatte da wohl die Falsche Version 
ausgegraben und weiterentwickelt. Es kommt noch ein Transistor mit mit 
dem entsprechenden Lastwiederstand.. Werde auf jeden Fall die Hardware 
noch mal mit meiner Laufenden Version vergleichen.

Also muss leider gestehen dass ich auch schon ein schlechtes Gewissen 
habe... Habe wohl die Schaltung sträflich vernachlässigt. Werde das 
jetzt aber mal ändern. Setze mir jetzt mal eine Frist bis Ende des 
Monats, sonst wird das ja nie was ;o)

Helmut schrieb:
> Ein PIC müßte auch noch mit Software gefüttert werden, wenn Das ähnlich
> lange dauert...

Ja, aber eigentlich sollte das aber nicht lange dauern. Die Software ist 
ja eigentlich schon fertig....

Ich wollte auch noch einen Soft-Uart einbauen dass man mit dem 
Controller direkt an den PC über USB geht.

Eine Potentialtrennung mit ADUM1201 soll auch noch rein.

Werde heute abend noch mal die Schaltung vornehmen...

Gruß
IngoF

von Helmut (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Ingo,
ev. hilft es Dir, wenn ich Dir eine Platine mit einem PIC18F mit USB 
schnell mal geroutet habe.
Könntest damit schonmal arbeiten.
Ist wahlweise, per Jumper, auf RS232 oder USB-PIC wählbar.

Beachte bitte: die Z-Diode und die beiden Dioden sind noch für E-Bus 
gewählt, die müßten kleinere Volt's haben.

Ist mit der Target-Demo zu öffnen.
Gruß Helmut

von Ingo F. (ingof)


Angehängte Dateien:

Lesenswert?

Helmut schrieb:
> Hallo Ingo,
> ev. hilft es Dir, wenn ich Dir eine Platine mit einem PIC18F mit USB
> schnell mal geroutet habe.

Hallo Helmut,

Danke für die Arbeit.. Allerdings habe ich mich dazu entschieden keinen 
USB-Pic zu nehmen. Dann muss ich mich mit der USB-Programmierung auch 
noch beschäftigen und ich hätte keinen CAN-Bus.

Mein aktuellen Schaltplan habe ich mal angehangen.

Mich würde interessieren wer immer noch an der Schaltung interessiert 
ist und was sie können soll.

Also den EMS-Bus umsetzen auf USB wird wohl für euch alle interessant 
sein.
Was soll den hinten am USB herauskommen? mit dem 3964R-Protokoll sollte 
ich eigentlich fertig sein aber irgendwie läuft es noch nicht so wie ich 
wohl gerne möchte. Das einrahmen in "0x55 0xaa 0x55 0xaa" wird wohl das 
kleinste problem sein.

Die Platine wird in SMD sein. Das gehäuse steht noch nicht fest. Muss 
noch mal ein paar Kataloge wälzen...

Die Galvanische Trennung von EMS und CAN soll wahl weise sein.

Den Quellcode würde ich erst mal nicht veröffentlichen sondern nur die 
HEX-Files zum programmieren.

Also:
Wer hat noch Interesse und was habt Ihr noch so für Vorstellungen?
Wer hat Möglichkeiten einen PIC selbst zu brennen und die Platine zu 
löten.

Vermutlich wäre es am einfachsten wenn ich alle Teile bestelle und dann 
ein "Komplettset" verschicke, oder?

Gruß
Ingo

von Markus Hellweg (Gast)


Lesenswert?

Hallo Ingo,


also ich hätte auf jeden Fall Interesse, vor allem Komplettpakt wie von 
dir beschrieben, da ich nicht wirklich der Löti bin:-)
Was hinten rauskommt ist mir fast egal, hauptsache es ist lesbar :-)
USB wäre natürlich super, seriell geht aber auch.

Habe eine Buderus GB162 mit RC35, falls du also einen Betatester 
brauchst, ich stehe zur verfügung.

Danke schonmal für deine Arbeit

von Helmut (Gast)


Lesenswert?

Hallo Ingo,
ich route Dir auch was mit CAN-Bus, nur um das Thema zu beschleunigen 
;-)

Das ist ja fast wie bei EL*, Teil 2 der Bauanleizung in 2 Monaten, dann 
Lieferfristen von 6 Wochen.

Da vergeht einem die Lust auf EL*

Würde Dich bitten, das Hexfile mal zu veröffentlichen, wenn die 
Schaltung oben stimmt, gehts weiter.

von Charlie (Gast)


Lesenswert?

Hallo Ingo,

Ingo F. schrieb:
> Wer hat noch Interesse und was habt Ihr noch so für Vorstellungen?

Nach wie vor Interesse!

Vorstellungen:
Universalplatine mit seriell, USB und CAN ist für mich ok.
Löten selber.
PIC schreiben selber, schadet aber auch nix, wenn er schon gebrannt ist.
Bauteileset ist ok, muss aber nicht sein.

Wie Du siehst, ich bin flexibel ;-)

Freut mich, dass es "endlich" weiter geht :-)
Ein extra Dankeschön auch an Helmut für den Anschub!

Gruß aus der herbstlichen Wetterau
Karl M.

von Fred G. (sysrun)


Lesenswert?

Also mir würde eine serielle Ein-/Ausgabe mit TTL-Level reichen. Ob man 
da nun mit nem uC weitermacht oder nen RS232 oder USB-COnverter 
dranbastelt ist ja dann egal.
 Im Prinzip also nur ein Modul die Telegramme ordentlich ausgibt oder 
sendet (inkl. break).

Löten bekomme ich hin (ausser SMD ;) ). Programmieren ist schon 
schwieriger.

Grüße von IPS-SysRun an Helmut ;)

von Helmut (Gast)


Lesenswert?

Hallo SysRun,
dass der Adapter an der Schnittstelle läuft hast du im IPSymcon-Forum 
gelesen?
Oder ein paar Posts weiter oben (mit oder µP - Anbindung/RS232) ein 
Targetfile existiert?

Das Problem der Anbindung ist gelöst, nur das Parsen muß noch kommen....

@Ingo
ich mache Dir auch einen anderen Prouessor drauf, nur, ich möchte keine 
SMD's da rauf zaubern, sodaß jeder sowas zusammenlöten kann.
Sag was Dir wichtig ist.

Gruß Helmut

von Sevensworld (Gast)


Lesenswert?

Also bei mir besteht auch immer noch Interesse!

USB wäre schon schön um sich einen Adapter zu ersparen ... Ausgabe wie 
bei den anderen IPS`lern auch ... Hauptsache die Datenrtelegramme sind 
lesbar und ohne den ganzen Datenmüll. Senden wäre natürlich auch ne 
coole Option.  ;)

Löten geht selbst. PIC brennen geht im Notfall (mit Anleitung) auch, 
wäre aber dankbar für einen "fertigen".

Gruß
Jens

von Niffko _. (niffko)


Lesenswert?

@Ingo
bezüglich deiner Schaltung: denke mal drüber nach, ob du den Soft-UART 
nicht besser für die EMS-Kommunikation verwendest. Du könntest dann in 
den TX-Algo relativ unaufwändig Pausen zwischen den gesendeten Bytes - 
in denen der Master auf den Bus echot - und ein automatisches <BREAK> 
bei geleertem Sendepuffer einbauen.


//Niffko

von Ingo F. (ingof)


Lesenswert?

Niffko _ schrieb:
> denke mal drüber nach, ob du den Soft-UART
> nicht besser für die EMS-Kommunikation verwendest.

Hatte mir eigentlich gedacht den echten UART beim EMS-Bus zu belassen.
Wenn ich auf den CAN-Bus gehe brauche ich mich nicht mit dem SOFTUART zu 
beschäftigen.

Vermutlich wird bei der RS232-Schnittstelle und EMS-Bus kein großer 
Unterschied sein auf welcher Seite der SoftUart sitzt, oder? Soll ja 
alles Interruptgesteuert werden und hoffe mal dass es kein großen 
Probleme gibt.

Aber kann ja sicherheitshalber mal dafür ein paar Jumper vorsehen. Dann 
kann man das ja noch an der fertigen Platine ändern. Denke dafür nehme 
ich Lötjumper.

Wegen der Platine muss ich mal sehen ob ich auch noch eine Platine mit 
durchkontaktierten Bauteilen zusätzlich route.

Wenn ich den Schaltplan fertig habe werde ich die verschiedenen 
Möglichkeiten mal durchrechnen und dann hier posten...

Gruß
Ingo

von Ingo F. (ingof)


Angehängte Dateien:

Lesenswert?

Hallo,

hier mal ein kurzer Zwischenstand.

Die Platine hat die Bohrungen für die Gehäuse 521256 und 523100 von 
Conrad.
Eins ist zum an die Wand schrauben und das andere sieht etwas besser aus 
und hätte sogar noch Platz für einen 9V-Block oder andere Batterien.

Der EMS-Bus und der CAN-Bus wird wird als Klemmleiste herausgeführt. USB 
über eine USB-Micro Buchse.

Die Galvanisch trennung kann man bestücken oder mit Jumpern überbrücken.

Die Platine wird wohl nur in SMD sein. Das Problem ist wohl der FT232 
USB-Chip den es ja nur im SMD-Gehäuse mit 0,65mm Pinabstand gibt. Ist 
doch ziemlich klein zum löten...

Muss mal sehen wie ich das mit dem SMD-löten hinbekomme.

Als alternative könnte man die Platinen auch bestücken lassen. Man 
könnte die SMD-Bauteile auch bestücken lassen. Ein Platiner würde 
ungefähr 15Euro kosten. Mit Bestücken dann 30 Euro. Muss mal sehen ob 
ich bei einer Firma hier die FT232 selber auflöten darf. Man bekommt 
auch eine Schablone für die Lötpaste.

Gruß
Ingo

von Sevensworld (Gast)


Lesenswert?

Na das klingt doch schon mal sehr vielversprechend!
Fertig bestückt wäre mir das auch 30,- Euro wert ... ansonsten wird eben 
mit Heißluft gelötet ;)

Gruß
Jens

von Markus Hellweg (Gast)


Lesenswert?

Hallo,

das hört sich ja echt schon weit fortgeschritten an, Respekt!!!!

Also 30€ für ein Komplettset ferig bestückt finde ich einen 
Spitzenpreis, gerade für mich der eigentlich nicht wirklich löten kann 
sondern eher ein Endanwender ist.

Würde mich als Betatester anbieten, habe eine Buderus GB162-Anlage.

Meldet euch einfach hier!

Gruß

von Charlie (Gast)


Lesenswert?

Hallo Ihr Fleißigen,

bei der Platine bin ich dabei; so oder so.

Meine Fragen:

1. Wieso wird die Versorgungsspannung der Platine nicht vom EMS-Bus 
abgezogen?

2. Wieso gibt es keinen seriellen Ausgang mit z.B. MAX232 oä.?

Freue mich auf die ersten Versuche :-)

Danke für Eure Mühe!!

Gruß
Karl M.

von F. F. (pic18f)


Lesenswert?

Hallo, die Schaltung finde ich gut, nur kann ich kein SMD löten. Ich 
würde auch einen 18F2550 vorziehen, da dieser USB gleich mit beinhaltet. 
Ich muß mir mal das Datenblatt vom 18F2580 ansehen, um zu sehen wie weit 
dieser Pin-kompatibel ist.

Charlie schrieb:
> 1. Wieso wird die Versorgungsspannung der Platine nicht vom EMS-Bus
>
> abgezogen?

Wenn ich das richtig sehe, dann wird doch die Versorgungsspannung vom 
EMS-Bus gewonnen. EMS_TX geht hier auf 5V Spannungsregler

von IngoF (Gast)


Lesenswert?

Hallo,

F. F. schrieb:
> Hallo, die Schaltung finde ich gut, nur kann ich kein SMD löten. Ich
> würde auch einen 18F2550 vorziehen, da dieser USB gleich mit beinhaltet.

Der 18F2550 hat leider kein CAN und der muss für mich auf jeden Fall 
dabei sein, sonst macht die Schaltung für mich persönlich kein Sinn.

F. F. schrieb:
> Wenn ich das richtig sehe, dann wird doch die Versorgungsspannung vom
> EMS-Bus gewonnen. EMS_TX geht hier auf 5V Spannungsregler
>
>
>
>     Beitrag melden | Bearbeiten | Löschen |

Der Spannungsregler ist nur für die EMS-Sende und Empfangsschaltung. der 
andere Spannungsregler nur für USB und PIC. Die Spannung vom USB-Bus 
macht nicht unbedingt Sinn. Sonst läuft die Schaltung ja nur mit PC.

Vom EMS-Bus wollte ich die Spannung nicht nehmen weil eine kurzzeitige 
Stromentnahme eventuell als Signal an die Heizung verstanden werden 
kann.

Charlie schrieb:
> Wieso gibt es keinen seriellen Ausgang mit z.B. MAX232 oä.?

Wollte noch eine Steckleiste einbauen an der man direkt mit RS232 gehen 
kann. Muss ich noch rensetzen.

Gruß
Ingo

von Rudi (Gast)


Lesenswert?

IngoF schrieb:
> Vom EMS-Bus wollte ich die Spannung nicht nehmen weil eine kurzzeitige
> Stromentnahme eventuell als Signal an die Heizung verstanden werden
> kann.

Das funktioniert auch nicht, habe ich schon durch. Du könntest aber die 
12V abgreifen.

Ansonsten würde ich noch common mode rejection bei den Zuleitungen 
beachten. Je nach Leitungslänge gibt es dort Störungen. Also bei CAN und 
der Versorgung die mit einbauen.


Grüße.

von Niffko _. (niffko)


Lesenswert?

Rudi schrieb:
> IngoF schrieb:
>> Vom EMS-Bus wollte ich die Spannung nicht nehmen ...
>
> Das funktioniert auch nicht ...

@Rudi
Das funktioniert ... wie wissen bloß (noch?) nicht wie. Der RC35 z.B. 
ist 'buspowered'. Ich hatte meinen schon mal aufgemacht und wollte mir 
das mal anschauen. War aber komplett SMD und Multilayer-PCB ... so 
wichtig war es mir dann doch nicht ^^


//Niffko

von Fred G. (sysrun)


Lesenswert?

Hm?

Benutze die 12 Volt aus der Serviceklinke seit einem Jahr als Versorgung 
für meine Bastellösung. Die Funkt beständig Daten an meinen Server.

von Niffko _. (niffko)


Lesenswert?

Fred Granna schrieb:
> Hm?
>
> Benutze die 12 Volt aus der Serviceklinke ...

Schön und gut, aber das kann ja jeder ^^
Es geht darum, Versorgungsspannung direkt vom Bus abzunehmen.


//Niffko

von Christian S. (christianse)


Lesenswert?

Guten Abend!

Um mich auch mal zu Wort zu melden:
auch ich interessiere mich sehr für die Platine, und ~30€ wären es mir 
auch für ein fertiges Teil durchaus Wert!

dürfte ja mit meiner Junkers-Therme funktionieren, da ich mit dem 
EMS_Interface ja auch schon Daten empfangen kann.


Gruß,
Christian.

von F. F. (pic18f)


Lesenswert?

Ingo F. schrieb:
> Die Platine wird wohl nur in SMD sein. Das Problem ist wohl der FT232
>
> USB-Chip den es ja nur im SMD-Gehäuse mit 0,65mm Pinabstand gibt. Ist
>
> doch ziemlich klein zum löten...

Wenn es unbedingt SMD sein muß, vielleicht kann man den PIC wenigstens 
als normalen DIP vorsehen. Dann kann man einen normalen IC-Sockel 
verwenden und bei Bedarf den PIC tauschen oder auch mit einen 
Programmiergerät programmieren.

Für die Spannungsvorsorgung kann man Dioden vorsehen um auch über USB 
die Schaltung versorgen zu können.

Die Spannungsregler würde ich mit jeweils einer Diode in Sperrichtung 
zwischen Vin und Vout schützen.

Ansonsten bin ich auch an einer Platine interessiert (ca. 30 Euro ist 
ok). Ich bräuchte allerdings bei der CAN-Lösung auch die Gegenstelle da 
ich die Schaltung ohne PC betreiben möchte.

von IngoF (Gast)


Lesenswert?

F. F. schrieb:
> oder auch mit einen
> Programmiergerät programmieren

Also das programmieren erfolgt natürlich in der Schaltung. Der 
ISCP-Stecker ist auf der Platine.

F. F. schrieb:
> um auch über USB die Schaltung versorgen zu können

Das Problem ist das ein USB-Gerät am Bus nur ganz wenig Strom ziehen 
darf (21mA??) und erst nach der Anmeldung den Strom "nehmen" darf. Also 
würde die Schaltung ohne USB nicht funktionieren.

F. F. schrieb:
> (ca. 30 Euro ist
> ok)

Also das war jetzt erst mal nur eine geschätzter Wert für 20 Platinen 
mit max 25 SMD-Bauteilen mit 26 Bauteilen wären es schon 5 Euro mehr.
Und natürlich noch zusätzlich Bauteilkosten

F. F. schrieb:
> PIC wenigstens
> als normalen DIP vorsehen

Mal sehen ob die Platinengröße das zulässt.

von Rudi (Gast)


Lesenswert?

Hallo,

Niffko _ schrieb:
> Das funktioniert ... wie wissen bloß (noch?) nicht wie. Der RC35 z.B.
> ist 'buspowered'. Ich hatte meinen schon mal aufgemacht und wollte mir
> das mal anschauen. War aber komplett SMD und Multilayer-PCB ... so
> wichtig war es mir dann doch nicht ^^

Okay, welche Infos hast du denn? DC/DC oder LDO. Eingangs und 
Ausgangskondensator wären auch interessant. Ich habe es mit einem 0815 
LDO von Analog probiert und hatte arge Probleme auf dem Bus.


Grüße.

von F. F. (pic18f)


Lesenswert?

Mal eine Frage: Die unbenutzen IO-Pins sind die herausgeführt, es ist 
schlecht zu erkennen. Ich möchte noch eine LCD-Anzeige sowie eine PS2 
Tastatur anschließen.

von Ingo F. (ingof)


Lesenswert?

Rudi schrieb:
> Das funktioniert auch nicht, habe ich schon durch. Du könntest aber die
> 12V abgreifen

Das würde den Funktionsradius ja wieder auf die unmittelbare Umgebung 
der Heizung eingrenzen und das wollte ich nicht. Könnte vielleicht die 
12 Volt Optional von der Heizung nehmen. Dann ist die galvanische 
Trennung vom EMS-Bus in dem Fall sinnlos.

Rudi schrieb:
> Ansonsten würde ich noch common mode rejection bei den Zuleitungen
> beachten. Je nach Leitungslänge gibt es dort Störungen. Also bei CAN und
> der Versorgung die mit einbauen.

Wie meintest Du das? Steh da ein wenig auf der Leitung...

F. F. schrieb:
> Ich möchte noch eine LCD-Anzeige sowie eine PS2
> Tastatur anschließen.

Ja, Port A0..5, B0..7, C0..5

Ist aber eine gute Idee.. werde mal sehen ob ich das noch auf die 
Platine setzte. Hast ein Layout dafür? muss mal sehen ob ich da noch was 
finde.. Würde vorschlagen das im 4 Bit-Mode zu machen.

Gruß
IngoF

von Rudi (Gast)


Lesenswert?

Ingo F. schrieb:
> Wie meintest Du das? Steh da ein wenig auf der Leitung...

Z.B. ACM3225 für die Versorgung und TCM1210 für CAN. Es gibt definitiv 
Probleme bei längeren Leitungslängen (ich rede von über 20m). Das ist 
bei einer Verkabelung im Keller sehr schnell erreicht. Funktioniert mit 
den Teilen aber problemlos. Bei CAN muss der TCM1210 VOR den ESD-Schutz, 
sprich direkt auf die Leitung.


Grüße.

von F. F. (pic18f)


Lesenswert?

Ingo F. schrieb:
> Hast ein Layout dafür? muss mal sehen ob ich da noch was
>
> finde.. Würde vorschlagen das im 4 Bit-Mode zu machen

Layout: ich hab jetzt nur das normale Datenblatt

4 Bit ist OK, ich habe entsprechende Unterprogramme in C die ich gerne 
bereitstelle, auch für DS1820 Temperaturfühler usw.

von IngoF (Gast)


Lesenswert?

F. F. schrieb:
> ich habe entsprechende Unterprogramme in C die ich gerne
> bereitstelle,

Danke, aber ich persönlich kann nichts mit C anfangen. Kann leider nur 
Assembler....

Für die LCD-Anzeige habe ich inzwischen auch noch einen Shclatplan in 
meinen unterlagen finden können. Wie willst Du denn die PS/2-Tastatur 
anschließen? Habe davon keine Ahnung? Hast Du denn davon einen 
Schaltplan oder ähnliches? was müssen das für Pins sein? Oder geht das 
mit jedem belibigen I/O-Port?

Rudi schrieb:
> ACM3225 für die Versorgung und TCM1210 für CAN.

Also DC-DC-Wandler >> ACM3225 >> CAN-Chip >> ESD >> TCM1210 >> 
CAN-Stecker
Du hast nicht zufällig mal einen Schaltplan? Würde bestimmt helfen wenn 
nicht werde ich mal google anwerfen.

Gruß
Ingo

von Rudi (Gast)


Lesenswert?

IngoF schrieb:
> Also DC-DC-Wandler >> ACM3225 >> CAN-Chip >> ESD >> TCM1210 >>
> CAN-Stecker
> Du hast nicht zufällig mal einen Schaltplan? Würde bestimmt helfen wenn
> nicht werde ich mal google anwerfen.

In etwa so:
1
C - Kondensator 10nF-100nF
2
      ______
3
+ ---|      |---
4
   C | CMR  | C  => DC/DC
5
- ---|______|---
6
7
      ______     _____
8
CL---|      |---|     |---
9
     | CMR  |   | ESD |    => MCP
10
CH---|______|---|_____|---

von F. F. (pic18f)


Lesenswert?

IngoF schrieb:
> Wie willst Du denn die PS/2-Tastatur
>
> anschließen? Habe davon keine Ahnung? Hast Du denn davon einen
>
> Schaltplan oder ähnliches? was müssen das für Pins sein?

geht im Prinzip jeder IO-Pin, ich habe aber einen mit 
Interrupt-Auslösung genommen, da ich die Tastatur über Interrupt 
abfrage. (ist übrigens ein Assemblerprogramm)

Das Signal ist hier http://de.wikipedia.org/wiki/PS/2-Schnittstelle sehr 
gut erklärt. Wobei ich mir die Treiber und Transistoren gespart und auch 
nur zwei I0-Pin verwendet habe, die ich jeweils als Ein-und Ausgang 
schalte.

Ein C-Programm kann man auch ohne Probleme in ein Assemblerprogramm 
einfügen. Der Linker von MPlab baut die zwei Programme zusammen.
Ich schreibe oft zeitkritsche Unterprogramme als Assemblerprogramme und 
füge sie in C ein.

von Rudi (Gast)


Lesenswert?

@InfoF

Geht der BC847 bei dir nicht auf Dauersendung? High - Durchgang, Low - 
Sperren!?!?


Grüße.

von Niffko _. (niffko)


Lesenswert?

@Rudi

TX führt HIGH bei Idle. Ergo zieht der Komparator die Basis auf LOW.



//Niffko

von Rudi (Gast)


Lesenswert?

Niffko _ schrieb:
> @Rudi
>
> TX führt HIGH bei Idle. Ergo zieht der Komparator die Basis auf LOW.
>

Vorsicht, k.A. welche Chip dort genau benutzt wird (ADUM12XX, kann man 
nicht erkennen). Der hat keinen echten Failsafe Mode d.h. wenn eine 
Spannung fehlt ist der auf High (Dauersenden/Strom ...) oder unklar. Am 
besten einen ISO von TI benutzen, dort gibt es klare Pindefinitionen.


Grüße.

von Niffko _. (niffko)


Lesenswert?

Rudi schrieb:
>wenn eine Spannung fehlt ist der auf High (Dauersenden/Strom ...)
Daumen hoch für deine Umsicht, aber hier liegst du immer noch falsch.
UART ist Low-aktiv, d.h. bei Low auf TX steuert der Transistor durch. 
Ansonsten wäre auch das übliche Low als Startbit irgendwie am Thema 
vorbei, oder!?


//Niffko

von Rudi (Gast)


Lesenswert?

Niffko _ schrieb:
> UART ist Low-aktiv, d.h. bei Low auf TX steuert der Transistor durch.
> Ansonsten wäre auch das übliche Low als Startbit irgendwie am Thema
> vorbei, oder!?

Ahh, da ist noch der Inverter, okay dann passt es wieder.
Ich hatte heute auf dem Tisch dieses Problem, da ich den Inverter 
(Komparator) vor dem Isolator platziert habe und der Isolator default 
auf High steht (falsche Wahl, shit happens), da musste ich mir den 
Schaltplan hier nochmal anschauen ob es die gleichen Probleme geben kann 
... offensichtlich nicht richtig.


Grüße.

von Ingo F. (ingof)


Angehängte Dateien:

Lesenswert?

Rudi schrieb:
> In etwa so:

Ich glaub ich habe das immer noch nicht so ganz verstanden... Denke der 
ACM sollte auf der MCP2551-Seite vom DC/DC-Wandler sein... Die Schaltung 
am Ausgang mit L, C und C habe ich aus einer anderen Schaltung "geklaut"

Denke jetzt dass der Schaltplan sonst soweit fertig ist. Muss nur noch 
mal sehen ob die Bauteile alle die richtige Bauform haben und ein wenig 
herumrouten...

Änderungen:
Anschluss für LCD-Anzeige und PS/2
F-RAM (SPI)
PIC in SMD und DIP

Hier mal eine Portübersicht:

-------------------------
Port A
-------------------------
0: LCD-Data 0/4
1: LCD-Data 1/5
2: LCD-Data 2/6
3: LCD-Data 3/7
4: FT232 Power Enable
5: "Analoge"-Mode Auswahl
6: 16MHz Quarz
7: 16MHz Quarz


-------------------------
Port B
-------------------------
0: PS/2 Data (INT0)
1: PS/2 Clock (INT1)
2: CAN Rx
3: CAN Tx
4: Soft-Uart TX
5: Soft-Uart Rx (ISCP)
6: ---- (ISCP)
7: ---- (ISCP)


-------------------------
Port C
-------------------------
0: LCD RS
1: LCD R/W
2: LCD E
3: F-RAM/EEPROM (SCL)
4: F-RAM/EEPROM (SDA)
5: ---- (SDO)
6: UART Tx
7: UART Rx

von Niffko _. (niffko)


Lesenswert?

Hi Ingo,

schau' dir mal Pin 1 der USB-Buchse in Bezug auf den 
Reset-Spannungsteiler des FT232 noch mal an - da passt was nicht.



//Niffko

von Niffko _. (niffko)


Lesenswert?

ich nochmal...

Hast du den 78L05 am EMS-Bus erfolgreich getestet? Den Regler im 
Allgemeinen und den 330nF Kondensator im Speziellen, könnte ich mir am 
Bus problematisch vorstellen. Diode D11 hat IMHO keine Funktion, da sie 
parallel zur schnelleren Schottky(D5) liegt.



//Niffko

von Rudi (Gast)


Lesenswert?

Niffko _ schrieb:
> Hast du den 78L05 am EMS-Bus erfolgreich getestet? Den Regler im
> Allgemeinen und den 330nF Kondensator im Speziellen, könnte ich mir am
> Bus problematisch vorstellen.

Ich glaube es wird nicht mit einem LDO funktionieren. Du kannst am 
Ausgang einen größeren Kondensator vorsehen, damit die Schaltung etwas 
Luft hat und den Bus nicht mit einem Stromripple beaufschlagt. Versuch 
macht kluch, ich würde es vorher aber unbedingt aufbauen. Bei mir hat es 
nicht funktioniert (Frickelaufbau über den Bus versorgt).

von Rudi (Gast)


Lesenswert?

Also auf dem Servicekey wird offensichtlich ein DCDC verwendet. Auf dem 
ersten Bild rechts unten:

Beitrag "Re: Logamatic 2107 Schnittstelle"

K.A. ob der von den 12V versorgt wird, aber der Key kann wohl auch 
andere Funktionen abdecken und ob da immer 12V vorhanden sind k.a..


Grüße.

von Niffko _. (niffko)


Lesenswert?

Rudi schrieb:
> Ich glaube es wird nicht mit einem LDO funktionieren.

Hi Rudi, ich hab's wider Erwarten am Laufen : 
Beitrag "Re: Logamatic 2107 Schnittstelle"



//Niffko

von Ingo F. (ingof)


Lesenswert?

Habe doch echt keine Benachrichtung per Mail bekommen...

Niffko _ schrieb:
> Rudi schrieb:
>> Ich glaube es wird nicht mit einem LDO funktionieren.
>
> Hi Rudi, ich hab's wider Erwarten am Laufen :
> Beitrag "Re: Logamatic 2107 Schnittstelle"

Danke, habe soeben Deine Schaltung geklaut. Der Strom wird ja auf etwa 
80mA begrenzt. Werde das bei mir mit 390 Ohm auf etwa 25 mA oder 
vielleicht noch weniger begrenzen. Nur für den Komperator mit Isolator 
sollte das mehr als ausreichend sein...

Niffko _ schrieb:
> Diode D11 hat IMHO keine Funktion, da sie
> parallel zur schnelleren Schottky(D5) liegt.

Das habe ich kurz nach dem abschicken auch gesehen. Die wird natürlich 
rausfliegen...

Hatte die Schaltung noch nicht getestet. Allerdings zieht der Komperator 
und der Isolator nicht wirklich viel Strom und hatte keine Probleme 
erwartet.

Gruß
Ingo

von Ingo F. (ingof)


Angehängte Dateien:

Lesenswert?

Hallo,

die Platine ist eigentlich soweit fertig.

Allerdings wird sich das bestücken lassen wohl nicht lohnen.

7 Platinen kosten pro Stück etwa 17€.
5 Platinen bestücken pro Stück 47€.
10 Platinen bestellen und bestücken wären pro Stück (inkl. Platine) 46€

Mit Bestücken ist dabei nur der PIC mit FT245 und die zugehörigen 
Bauteile gemeint.

Das komplette bestücken (zweiseitig und mit allen 78 SMD-Bauteilen) 
würde etwa bei 10 bestückten Platinen pro STück 78 € kosten (Platine 
inkl, Ohne Bauteile!)

Vermutlich wäre es am einfachsten die Platinen zu bestellen und werde 
dann versuchen die Platinen für die SMD-Anfänger zu löten.

Habe mal durchgezählt....

Platinen für:
Markus Hellweg
Charlie
Fred Granna
Sevensworld
F. F.
Christian S.
IngoF

Bestückt für:
Markus Hellweg
Fred Granna
F.F.
Christian S.

Wer kann denn die 0805-SMD Widerstände/Kondensatoren und größer selber 
einlöten? Eigentlich sollte dafür ein normaler Lötkolben für "normale" 
Bauteile ausreichen?

Allerdings hat sich der Schaltplan etwas geändert.
Statt dem FT232 habe ich den FT245 genommen. Dort können die Daten 
parallel ausgelesen werden und man muss keinen SOFT-Uart programmieren.
Dafür habe ich allerdings den PIC 18F24580 nehmen müssen der noch den 
PortD zusätzlich hat. Leider habe ich dann keinen Platz für das 40polige 
DIP-Gehäuse des PIC.

Alle Ports sind herausgeführt. Die Datenleitungen vom LCD und 
USB-Seriell-Chip sind dann auf Port D.

Ein SPI F-Ram ist auch vorgesehen.

Hier mal die Platine (noch nicht ganz fertig) und der aktuelle 
Schaltplan als PDF.

Wer benötigt denn welche Hardware? Vermutlich werden die wenigsten den 
CAN-Bus brauchen, oder? Oder besser gefragt wer kann auf welche 
Bugruppen verzichten?

@Rudi:
Hattest Du das mit den "Filterspulen" für den CAN-Bus bei Dir auch so 
eingesetzt? Oder hatte ich Dich falsch verstanden?

Gruß
IngoF

von Gerhard S. (gerhard99)


Lesenswert?

Hallo,
ich habe auch Interesse an der Platine. Nur ich kann keine PIC 
programmieren!
Löten geht schon.
VG
Gerhard

von Fred G. (sysrun)


Lesenswert?

Also ich würde eine (smd vor-)bestückte und programmierte Version 
nehmen. Benötige aber nur reinen seriellen IO (ttl)

von Hans (Gast)


Lesenswert?

Ingo F. schrieb:
> CAN-Bus

Ingo F. schrieb:
> Wer benötigt denn welche Hardware? Vermutlich werden die wenigsten den
> CAN-Bus brauchen, oder? Oder besser gefragt wer kann auf welche
> Bugruppen verzichten?

Hallo Ingo F.

ich hätte auch Interesse an der Platine + Bestückung.
Ich will Daten von einer Junkers Gastherme mit Heatronic 3 auslesen 
(USB-Anschluß) und auswerten.

Grüße, Hans

von Charlie (Gast)


Lesenswert?

Ingo F. schrieb:
> Wer benötigt denn welche Hardware?

Servus Ingo,

nur Platine, am Rest versuche ich mich dann selber. :~/

Gruß aus der Wetterau
Karl M.

von Sevensworld (Gast)


Lesenswert?

Hallo Ingo,

die größeren SMDs kann ich wohl selbst löten. Programmieren eher nicht 
.. benötigt wird von mir eigentlich nur USB (USB Buchse dann mit dabei?)


Gruß
Jens

von Rudi (Gast)


Lesenswert?

Hallo,

Ingo F. schrieb:
> @Rudi:
> Hattest Du das mit den "Filterspulen" für den CAN-Bus bei Dir auch so
> eingesetzt? Oder hatte ich Dich falsch verstanden?

sieht gut aus. Ich würde bei der VCC am Eingang ein C setzen, vor dem 
Filter. Wie teuer wird denn die Platine und dann die Bauteile? Hast du 
ein Datenblatt (Link) vom aktuellen PIC? Hast du dich da verschrieben, 
zu pic18F24580 finde ich nichts bei der allwissenden Müllhalde.


Grüße.

von IngoF (Gast)


Lesenswert?

Rudi schrieb:
> Wie teuer wird denn die Platine und dann die Bauteile?

Die Platine etwa 20Euro. Die Bauteile suche ich noch alle zusammen. den 
TCM1210 habe ich noch nicht gefunden.
Habe mal überflogen. Die Bauteile würden etwa 50 Euro kosten wenn alles 
bestückt ist...

Rudi schrieb:
> pic18F24580 finde ich nichts

Das wird auch schwer ist eine 2 zu viel :-) ich meinte den 18F4580
Ist das selbe Datenblatt wie für den 18F2580...

Gruß
Ingo

von Markus Hellweg (Gast)


Lesenswert?

@ Ingo F.

Hallo Ingo,

wie bereits beschrieben bräuchte ich das Bauteil komplett bestückt und 
programmiert, frei nach dem Motto "plug and play".
Wäre auch bereits mir das ein paar Euro mehr kosten zu lassen!

Gruß

von Ralf (Gast)


Lesenswert?

Moin, Moin

Ich würde gerne auch eine bestückte Platine erwerben für meine 2107.


Tschö, Ralf

von IngoF (Gast)


Lesenswert?

Ralf schrieb:
> für meine 2107

Sorry, Ralf, muss Dich leider enttäuschen...
Die Platine ist für den EMS-Bus und wird nicht mit der 2107 
funktionieren.

In dem 2107-Thread waren eigentlich zwei verschiedene 
Platinen/Bussysteme

Gruß
Ingo

von Ralf (Gast)


Lesenswert?

Moin, Moin

Da haben die 842 Mails die ich gestern gelesen habe den Überblick 
verhängt. Da kannste sehen das ich nicht alles was da gepostet wurde 
begriffen habe.

Muss ich wohl weitersuchen.


Danke!


Tschö Ralf

von Ingo F. (ingof)


Lesenswert?

Hallo,

Habe heute die Platinen fertig gestellt und können bestellt werden.

Wer interesse hat bitte eine e-mail an mich (f.ingo ät arcor.de).

Am besten mit Anschrift und noch mal kurz beschreiben welche 
Schaltungsteile bestückt werden sollen.
Vermute mal alle möchten den PIC, EMS-Bus und USB bestückt haben. Wer an 
CAN-Bus zusätzlich interessiert ist bitte noch mal erwähnen.

Als Bestückung gibt es für die Schaltungsteile "komplett", "nur IC" und 
"garnicht (nur Platine)".

Irgendwie bekomme ich die schon hoffentlich bestückt. Kann aber 
eventuell etwas länger dauern.

Wenn ein Gehäuse dabei sein soll dann bitte sagen welches von beiden...

Soll der PIC gebrannt werden?

Wichtig wäre noch Anschrift. Mit der Bezahlung wäre Überweisung 
vermutlich das beste...

Von der Software her werde ich wohl erst mal den FT245 zum laufen 
bringen und dann vermutlich irgendwie die RS232 ohne USB.
Das senden und empfangen wird am besten erst mal im Klartext (HEX gehen) 
das Break wird mit Enter ersetzt.

Dannach werde ich mich dann ans R3964-Protokoll gehen..

Der Rest am besten per Mail.....

Die Kosten (mal grob überschlagen):
Platine 20€
PIC,EMS,FT245(USB) 50€
CAN 15€

Genaue Preise folgen noch...
Natürlich alles zu Selbstkosten..

Layout, Bestückungsliste, HBE (Farnell)-Bestellliste, Portbelegung 
folgen noch.. (morgen?)

Gruß
Ingo

von Kay F. (jaykay)


Lesenswert?

Hallo Ingo,

ich hätte auch Interesse an einer bestückten & programmierten Platine 
(EMS <-> USB). Im Schaltplan habe ich gesehen das du einen ADUM1201 
vorgesehen hast. Wird der mit bestückt und wo holt der sich die Spannung 
her? Vom EMS Bus? Ist die Stromversorgung über USB möglich oder wird ein 
seperates Netzteil benötigt?

Vielen Dank für deine super Arbeit!

Gruß Kay

von IngoF (Gast)


Lesenswert?

Kay F. schrieb:
> Im Schaltplan habe ich gesehen das du einen ADUM1201
> vorgesehen hast. Wird der mit bestückt und wo holt der sich die Spannung
> her? Vom EMS Bus?

Hallo Kay

Ja, die können mitbestückt werden, muss aber nicht unbedingt wenn man 
die galvanische Trennung nicht haben will. Dann müssen aber die 
Lötbrücken durchgelötet werden.

Die Spannung kommt vom EMS-Bus.

Die Speisung über USB ist leider nicht möglich und man benötigt ein 
externes Netzteil.

Gruß
Ingo

von IngoF (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

hier noch die Platinen und der Schaltplan als PDF. Wenn nicht noch 
irgendjemand einen Verbesserungsvorschlag hat werde ich die so 
bestellen.

Hier die ungefähren Preise:

Platine 20€
EMS-Bauteile: 12€
PIC-Bauteile: 15€
USB-Bauteile: 10€

So wie es aussieht will wohl keiner eines von den Gehäusen...

Gruß
Ingo

von charlie (Gast)


Lesenswert?

IngoF schrieb:
> will wohl keiner eines von den Gehäusen...

Servus Ingo,

was für Gehäuse bietest Du denn feil ;-?

Gruß aus der Wetterau
Karl M.

von IngoF (Gast)


Lesenswert?

Hallo Charlie,

charlie schrieb:
> was für Gehäuse bietest Du denn feil ;-?

521256 und 523100 von Conrad

Gruß
IngoF

von charlie (Gast)


Lesenswert?

ReHallo Ingo,

hab's mir anders überlegt - wenn Du schon 'ne Sammelbestellung machst, 
dann bestelle ich wie folgt:

Platine, alle Bauteile und PIC programmiert, Gehäuse 521256.

Preis und Zahlungsweg am besten pm an:
news4kmw"-at-"web"-dot-"de"-remove-anti-spam-"

Vielen Dank für Deine tolle Arbeit!

Gruß aus der Wetterau
Karl M.

von Jens H. (sevensworld)


Lesenswert?

Hallo Ingo,

ich hoffe die Mail ist angekommen?
Tolle Arbeit übrigens die du hier leistet, vor allem die Bereitschaft 
für die Sammelbestellung!

Gruß
Jens
(Sevensworld)

von Ingo F. (ingof)


Lesenswert?

Habe gerade noch mal eine Mail wegen der Bestellung herumgeschickt.

Wer noch interesse hat und gerade keine Mail bekommen hat noch mal 
schnell melden. Könnte vermutlich noch was nach- oder abbestellen. Und 
wenn das "Desktopgehäuse" wäre interessant welche Farbe...

Gruß
Ingo

Hallo,

teilweise habe ich noch nicht so richtig den Durchblick wer was möchte 
und wer überhaupt noch Interesse hat. Bitte noch mal so schnell wie 
möglich melden und die fehlenden Informationen ergänzen. Habe keine 
Ahnung ob ich noch Platinen nachbestellen oder abbestellen muss. Wenn 
das überhaupt noch möglich ist.

Wer möchte welches Gehäuse?
Wer will was bestückt haben?
Wer ist damit einverstanden 40 Euro für das Bestücken und löten zu 
zahlen?

Habe schon einen Reflow-Ofen und das ganze Zubehör bestellt. 
Wirtschaftlich ist das für mich persönlich natürlich keineswegs, nur 
arbeit und richtig teuer.
Auf jeden Fall muss der PIC, USB und EMS Bestückt werden. Die 
Potentialtrennung muss man nicht zwingenderweise haben würde ich aber 
empfehlen...
Auf den CAN Teil werden wohl fast alle verzichten können.

Sobald ich die Platinen habe werde ich ein paar Platinen fertig 
bestücken und den Bootloader (AN851 von Microchip) an meine Schaltung 
anpassen müssen. Dann benötigt man zum programmieren des PIC nur noch 
einen USB-Port, Windows und die Software von Microchip. Die Software 
bekommt jeder natürlich mit dabei.

Wenn das Programmieren über Bootloader läuft kommt erst mal eine 
Software rein die nur mitloggt und die Daten Hexadezimal codiert als 
"normalen" Text über USB ausgibt. Danach wird auch das senden über USB 
dazu kommen.

Also über den Daumen gepeilt:
 ~20 Euro Platine
 ~40 Euro Bauteile
 ~40 Euro Bestücken/Löten
   ~5 Euro externes Netzteil
======================
~100 Euro

Bitte unbedingt noch mal so schnell wie möglich melden und eine kleine 
Anzahlung (~30-50%)

von F. F. (pic18f)


Lesenswert?

ich prinzip brauche ich eigentlich nur die Sende -und Empfangsschaltung.

Ich bin nicht für das Feine und kann kein SMD löten.
Deshalb bestelle ich 1 Platine komplett bestückt und geprüft. Ist es 
möglich die IC's mit einem Sockel zu versehen, zumindest der Pic?

Netzteil und Gehäuse brauche ich nicht.
Der Quellcode der Firmware um Messwerte auszulesen wäre für mich noch 
interessant, sowie eine Software zum Testen für den PC (Windows xp, 
USB). Wäre gut, wenn der Bootloader schon drauf wäre, da ich mir nicht 
sicher bin, ob ich den Pic mit meinen Brenner in der Schaltung progr. 
kann.

Preis >= 100€ ist ok, ich benötige noch die Kontodaten für die 
Überweisung.

Mit freundlichen Grüßen

F. F.

von Ingo F. (ingof)


Lesenswert?

Hallo F.F.

irgendwie haben erst ganz wenige reagiert. Inzwischen hat sich 
herausgestellt dass eMail-Adresse, Nickname und echter Name von einer 
Person aufeinmal doch drei verschieden Personen waren.

Hatte erst mal 3 Platinen Überschuß eingeplant dass ich mir auch noch 
selber zwei Platinen bauen kann. Eine für die Heizung und eine für die 
Entwicklung.

Inzwischen gibt es schon mehrere Interessenten als Platinen.

Muss jetzt erst mal abwarten ob ich noch eine Überlieferung bekomme. 
Wenn nicht muss ich Dich erst mal mit auf die Warteliste setzen für eine 
neue Bestellung.

Gruß
Ingo

von Ingo F. (ingof)


Lesenswert?

Hallo,

mal ein kurzer Zwischenstand.

Die Platinen und Bauteile sind da. Nur ein Bauteil hatte vor einer Woche 
eine Lieferzeit von 51 Tagen. Bis jetzt habe ich noch keinen 
alternativen Lieferanten oder eine andere Lösung gefunden.

Auf zwei Platinen habe ich schon mal die Rückseite im Reflowofen backen 
können.
Wenn ich die ersten zwei Platinen fertig habe werde ich mich daran 
machen den Bootloader (AN851) anzupassen. Vorher macht das versenden der 
Platinen keinen Sinn.

Alle Platinen sind schon weg. Wer Interesse hat kann sich ja am besten 
per Mail auf eine Warteliste setzen. Wenn genug zusammen kommen und die 
erste Sammelbestellung abgeschlossen ist könnte ich evtl noch eine 
weiter kommen...

Die genaue Kostenaufstellung gibt es aber erst wenn ich alles komplett 
fertig habe.

Gruß
Ingo

von charlie (Gast)


Lesenswert?

Ingo F. schrieb:
> Nur ein Bauteil hatte vor einer Woche
> eine Lieferzeit von 51 Tagen.

Dann brauchen wir vor KW 06/12 hier nicht mehr vorbei zu schauen :-(

Gibt's einen Zwischenstand?

Gutes Neues Jahr und Gruß
Karl M.

von Ingo F. (ingof)


Lesenswert?

Hallo

charlie schrieb:
> Gibt's einen Zwischenstand?

Hatte letzte Woche erst eine Mail mit dem aktuellen Stand 
herumgeschickt.
Hast Du die nicht bekommen?

Ich habe gerade mein Platinen-Löt-Wochende. Das fehlende Bauteil muss 
ich per Hand nachträglich auf die Platine löten.

Den AN851 Bootloader habe ich erfolgreich an die Hardware 
anpassen/umprogrammieren können. Dummerweise musste ich feststellen dass 
die PC-Software so alt war das ich sie auf dem BC nicht zum laufen 
bekommen habe.
Nach längeren googlen habe ich dann festgestellt dass der 
AN1310-Bootloader von Michrochip doch nicht in C geschrieben ist und den 
dann auch an die Hardware anpassen konnte. Die Windows-Software habe ich 
dann erfolgreich zum laufen bekommen. Meine Testplatinen programmiere 
ich jetzt nur noch ohne Programmiergerät.

Inzwischen habe ich bis auf den CAN-Bus schon mal alles testen können.

Ein Problem war noch dass genau die BAT54S in der Bibliothek fehlerhaft 
war die ich verwendet hatte.Zwei Beinchen waren vertauscht. Dummerweise 
hatte ich auch die BAT54 bestellt und nicht die BAT54S. Dadurch war nur 
eine Diode im Gehäuse und die dann auch noch falsch angeschlossen.

Habe das Problem lösen können indem ich die BAT54S um 30° verdreht mit 
dem Kopf nach unten auf die Platine gelötet habe.

Eigentlich müsste das fehlende Bauteil in zwei bis drei Wochen geliefert 
werden. Dann sollte ich die Platinen auch an Wochende danach abschicken 
können.

Gruß
Ingo

von charlie (Gast)


Lesenswert?

Ingo F. schrieb:
> Hast Du die nicht bekommen?

Nööö! Aber vielen Dank für Deinen ausführlichen Bericht...
Dann kann's ja bald losgehen.
Super, dass Du das so sauber hinbekommen hast!

Gruß
Karl M.

von Ingo F. (ingof)


Lesenswert?

Noch ein kleiner Zwischenstand...

Die Platinen habe ich komplett bestückt. Bis auf eine Platine scheint 
bis jetzt alles zu laufen. Das "vermisste" Bauteil wurde schon am 3. 
Januar ausgeliefert. Habe heute nach dem Stand der Dinge gefragt und 
dann diese Info bekommen.

Dummerweise wurde es an irgendeinem Paketshop ausgeliefert und sollte 
heute wieder zurück gehen. War also in der letzten Sekunde.

Werde wohl noch mindestens zwei Wochen brauchen um an die Bauteile zu 
kommen und die restlichen Arbeiten fertig zu bekommen.
Der Bootloader funktioniert eigentlich schon. Wollte aber noch eine 
kleinigkeit testen und ändern.
Die Firmware muss nur noch aus meiner alten Firmware per Copy&Paste 
zusammengestellt und getestet werden.

Denke es macht keinen Sinn vorschnell die ganzen Platinen zu verschicken 
um dann hinterher festzustellen dass ich noch was am Bootloader oder der 
Platine ändern muss.

Gruß
Ingo

von F. F. (pic18f)


Lesenswert?

Ingo F. schrieb:
> Hatte letzte Woche erst eine Mail mit dem aktuellen Stand
>
> herumgeschickt.
>
> Hast Du die nicht bekommen?

ich habe die Mail auch nicht bekommen.
Stehe ich denn noch auf der Wartelise?
Ist schon in Aussicht, wann die zweite Fertigung beginnt?

Beitrag "Re: Buderus EMS-"Gateway" mit PIC18F / Sammelbestellung"
Viele Grüße
F. F.

von IngoF (Gast)


Lesenswert?

Also der aktuelle Stand zu den Platinen ist nur an die gegangen die bei 
der ersten Sammellieferung auch dabei sind.

Ob und wann es eine zweite Sammelbestellung von mir gibt kann ich jetzt 
noch nicht sagen.

Bis jetzt sind drei auf der Warteliste und unter 10 Platinen lohnt es 
sich nicht Platinen zu bestellen.
Am besten wäre es vermutlich wenn über zwanzig zusammen kommen würden 
und man dann die Platinen komplett bestücken lassen würde.

Die Platinen selber sind nicht das Problem. Habe drei komplette Tage zum 
bestücken, löten und in Betrieb nehmen gebraucht. Zwei Platinen wollen 
immer noch nicht und muss da noch mal bestimmt einen ganzen Tag für die 
Fehlersuche investieren. Ist also doch mehr Arbeit als man so denkt.

Kann natürlich auch meine Dateien zur verfügung stellen wen jemand 
anderes eine Sammelbestellung inkl bestücken machen möchte...

Gruß
Ingo

von Ingo F. (ingof)


Lesenswert?

Habe gerade schon mal alle funktionierenden Platinen verschickt. Alle 
die etwas angezahlt haben bekommen also bald ein Paket. Link zur 
Sendungsverfolgung ist gerade per Mail rausgegangen...

Gruß
Ingo

von Kay F. (jaykay)


Lesenswert?

Hi,

nach dem die HW eingetroffen ist, habe ich es nicht erwarten können und 
sie angeschlossen.
Mit hterm kommen auch schon Daten an. Jetzt bin ich auf der suche nach 
der passenden SW ;-)

Da das ganze auf meinem (debian) Linux Serverlaufen soll benötige ich 
was was unter Linux läuft.
EMSlog ist ja in java geschrieben, also gleich mal ausprobiert....

librxrx-java installiert und SW gestartet. Beim betätigen des oberen 
verbinden Buttons kommt folgenden Ausnahme:

HomeServer:/opt/EMSlog# java -jar emslog.jar
Experimental:  JNI_OnLoad called.
Stable Library
=========================================
Native lib Version = RXTX-2.1-7
Java lib Version   = RXTX-2.1-7
(get) CONNECTED: false

(/dev/ttyUSB1): Die Verbindung wird aufgebaut...
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
        at my.emslog.emslog.BtnConnectActionPerformed(Unknown Source)
        at my.emslog.emslog.do(Unknown Source)
        at my.emslog.emslog$3.actionPerformed(Unknown Source)
        at 
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2012)
        at 
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2 
335)
        at 
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.ja 
va:404)
        at 
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
        at 
javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonList 
ener.java:253)
        at java.awt.Component.processMouseEvent(Component.java:6136)
        at 
javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
        at java.awt.Component.processEvent(Component.java:5901)
        at java.awt.Container.processEvent(Container.java:2105)
        at java.awt.Component.dispatchEventImpl(Component.java:4497)
        at java.awt.Container.dispatchEventImpl(Container.java:2163)
        at java.awt.Component.dispatchEvent(Component.java:4323)
        at 
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4461)
        at 
java.awt.LightweightDispatcher.processMouseEvent(Container.java:4125)
        at 
java.awt.LightweightDispatcher.dispatchEvent(Container.java:4055)
        at java.awt.Container.dispatchEventImpl(Container.java:2149)
        at java.awt.Window.dispatchEventImpl(Window.java:2478)
        at java.awt.Component.dispatchEvent(Component.java:4323)
        at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:649)
        at java.awt.EventQueue.access$000(EventQueue.java:96)
        at java.awt.EventQueue$1.run(EventQueue.java:608)
        at java.awt.EventQueue$1.run(EventQueue.java:606)
        at java.security.AccessController.doPrivileged(Native Method)
        at 
java.security.AccessControlContext$1.doIntersectionPrivilege(AccessContr 
olContext.java:105)
        at 
java.security.AccessControlContext$1.doIntersectionPrivilege(AccessContr 
olContext.java:116)
        at java.awt.EventQueue$2.run(EventQueue.java:622)
        at java.awt.EventQueue$2.run(EventQueue.java:620)
        at java.security.AccessController.doPrivileged(Native Method)
        at 
java.security.AccessControlContext$1.doIntersectionPrivilege(AccessContr 
olContext.java:105)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:619)
        at 
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread. 
java:275)
        at 
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.jav 
a:200)
        at 
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread. 
java:190)
        at 
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185)
        at 
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177)
        at 
java.awt.EventDispatchThread.run(EventDispatchThread.java:138)


Ich bin kein Java Experte, aber wie komme ich jetzt am besten weiter? 
Kann ich aus den jar Dateien die Sourcen extrahieren und mit Eclipse, 
Netbean oder was auch immer debugen? Macht das Sinn? Habe auch schon 
versucht den ems-collector zum laufen zubringen (c++) klaptt aber auch 
nicht. Die DB wird angelegt aber keine Daten aufgezeichnet. Ich fände es 
gut nicht x verschieden SW Lösungen zuhaben ;-) Ich hätte gerne eine die 
automatisch gestartet werden kann und die unter Linux läuft ;-)

von Ingo F. (ingof)


Lesenswert?

Hallo,

Muss schon länger her sein dass ich EMSlog gepostet habe. Kann mich 
garnicht mehr daran erinnern. Das andere Programm kenne ich allerdings 
nicht.

Leider ist es doch nicht so einfach mal eben das Programm zu 
überarbeiten. Denke als ntolösung ist das erst mal OK.

Den Download gibt es erst mal hier:
http://home.arcor.de/i.fischer/modelledit/index_de.html

1) Als erstes muss eine mySQL-Datenbank installiert werden und dann die 
EMSlog.sql eingespielt werden. Dadurch werden die Tabellen von emslog 
erzeugt.

2) rxtxSerial.dll.32 für 32-Bit Windows oder die rxtxSerial.dll.64 für 
64Bit Windows in rxtxSerial.dll umbenennen

3) Batch-Dateien anpassen.
Bei emslog wird nur der SQL-Server übergeben. Wenn die mySQL auf dem 
lokalen Rechner installiert ist kann man auch localhost stehen lassen.
Bei emsview wird zusätzlich noch user (root) und Passwort (password) 
übergeben. Als default wird root und password genommen wenn die nicht in 
der Befehlszeile übergeben werden.

Die einzelnen Daten können aber in den Programmen auch geändert werden.

4)EMSlog starten (doppelklick auf die *.bat) Falls nicht über die 
Befehlszeile geschehen noch Server, User und Passwort eingeben und auf 
Verbinden drücken. Dadurch wird die Verbindung zum SQL-Server aufgebaut 
UND mit der seriellen Schnittstelle verbunden.

5) EMSview starten und Server, User und Passwort eigeben und dann auf 
Verbinden drücken. Der Knopf bleibt erst mal wärend des 
Verbindungsaufbau niedergedrückt. Wenn man andere Kurven auswählt oder 
andere Daten ändert dann natürlich mit mit "aktualisieren".


Die Version 01 funktioniert nur mit SQL-Datenbank UND Serieller 
Schnittstelle. Das Problem dabei sit allerdings dass erst 1024-Byte 
Buffer vollgeschrieben werden und dann die Telegramme angezeigt und 
gespeichert werden. Bei meiner alten Platine wurden die 1024-Byte 
schnell durch das Polling vollgeschrieben. Beim EMS-Gateway wird das 
Polling erst mal nicht übertragen. Wird vermutlich auch kein Sinn 
machen.

Die Version 02 geht auch ohne die SQL-Datenbank. Wenn man die Daten in 
mySQL loggen will muss vorher der Hacken bei mySQL gesetzt werden. Dort 
muss kein Buffer vollgeschrieben werden. Allerdings stürzt das Programm 
bei ungefähr 255 Telegrammen ab. Vielleicht zum ersten Test ohne mySQL 
ganz OK.

Gruß
Ingo

von IngoF (Gast)


Lesenswert?

Kay F. schrieb:
> Ich bin kein Java Experte, aber wie komme ich jetzt am besten weiter?

Am besten mal ems.zip heunterladen. Dann müssen allerding noch die *.so 
Dateien in das Verzeichnis kopiert werden. Am besten im Verzeichnis lib 
noch die RxTxcomm.jar auch ersetzen.

Sonnst könnte es passieren dass die *.so (Linux) oder *.dll Datei 
(Windows) eine andere Version hat als die Dateien im EMSlog oder 
EMSview-Ordner.

Vermute mal das irgendwas an der Schreibweise nicht ganz stimmt und 
Emslog auf eine Serielle Schnittstelle zugreifen möchte die nicht 
existiert weil die Schreibweise falsch ist. Vielleicht mal andere 
Schreibweisen für die Serielle Schnittstelle versuchen.
/dev/ttyUSB1
dev/ttyUSB1
/ttyUSB1
ttyUSB1

Gruß
Ingo

von Sevensworld (Gast)


Lesenswert?

Gibt es eine aktuelle Aufschlüsselung der Telegrammdaten? Das was ich in 
dem anderen (mittlerweile unübersichtlichen) Thread gefunden habe 
scheint recht alt zu sein ... ?

@Ingo: Vielen Dank für deine Mühe und Bereitschaft für diese 
Sammelbestellung.

Die Platine läuft bei mir erst mal im Textmodus, da ich den RAW Modus 
nicht aktiviert bekomme. Übertragung zum PC mit 9600/8/1/None
Allerdings habe ich hin und wieder Telegramme die zerstückelt ankommen 
... kann das evtl. noch jemand bestätigen?


Gruß
Jens

von Ingo F. (ingof)


Lesenswert?

Ich glaub die Auslieferungseinstellung Off On On Off ist der Textmodus.

RAW-Modus ist dann Off Off Off Off. Der Mode wird nur nach einem Reset 
übernommen. Also kurz Netzteil kurz ziehen und einstecken oder DIP4 
(Richtung Anschlüsse) einmal auf ON und zurück auf OFF.

Wie oft kommmen denn die zerstückelten Diagramme? Mir ist zumindest noch 
keins aufgefallen. Allerdings läuft noch für die Aufzeichung noch mein 
altes Modul.

Falls Du meine Java-Programme meinst, dann kommt ab und zu ein 
CRC-Fehler. Das liegt aber an meiner Java-Software. Dieser Fehler wird 
in der neueren Version (wenn sie läuft ) Nicht mehr sein.

Gruß
Ingo

von Sevensworld (Gast)


Lesenswert?

Nein, dein Java Programm war nicht gemeint.

Nachdem ich jetzt den RAW Modus gesetzt habe >( Off On On Off )<, konnte 
ich sehen das die Datensätze manchmal in mehreren Zeilen ankommen. 
Zumindest ist das die einzige Möglichkeit den RAW Modus einzustellen.
Möglicherweise hängen die Fehler damit zusammen.
Ich hatte dir gerade einen Mitschnitt im Textmodus geschickt, werde aber 
morgen noch einmal einen Mitschnitt im RAW Modus machen und dir auch das 
Ergebnis zukommen lassen.


Gruß
Jens

von Ingo F. (ingof)


Lesenswert?

Sevensworld schrieb:
> ich sehen das die Datensätze manchmal in mehreren Zeilen ankommen.

Also der Mittschnitt aus der Mail kommt aus dem HEX/Textmodus.
1
02.03.2012 21:50:59.00 |        Received Data | 08 00 34 00 3C 02 58 0
2
02.03.2012 21:50:59.00 |        Received Data | 2 58 21 00 01 00 00 00 DC 42 00 0C AA 00 B1
3
                                               --------------------------------------------------------------------
4
                                                08 00 34 00 3C 02 58 0
5
                                                                      2 58 21 00 01 00 00 00 DC 42 00 0C AA 00 B1
6
                                               ====================================================================
7
02.03.2012 21:50:59.00 |        Received Data | 08 00 34 00 3C 02 58 02 58 21 00 01 00 00 00 DC 42 00 0C AA 00 B1

Das ist aber kein Fehler, sondern ist nur die Ausgabe von deinem 
Monitor-Programm.
Der Abfragezyklus war in deinem programm gerade zufällig wärend des 
Telegrammempfangs. Der Zeilenumbruch kommt von Deinem Programm und wird 
nicht vom EMS-Gateway gesendet. Wenn Dein Monitorprogramm das <CR> <LF> 
anzeigen könnte, dann würdest Du sehen können das nach der ersten zeile 
kein CR&LF gesendet wurde. (Vielleicht kannst Du das ja irgendwo 
aktivieren...)
Wenn Du den Gateway mit einem "normalen" Terminalprogramm anzeigen lässt 
wirst Du den vermeintlichen "Fehler" nicht sehen können.

Sevensworld schrieb:
>Nachdem ich jetzt den RAW Modus gesetzt habe >( Off On On Off )<

Das ist nicht der RAW-Modus. Bei einem "normalen" Terminalprogramm 
siehst Du nur das eine Menge Datenmüll ankommt wenn der RAW-Modus 
eingeschaltet ist. Dazu benötigst Du z.B. ein Terminalprogramm das 
Hexadezimal anzeigen kann. Ich habe da Hterm genommen. Da kann man sich 
die Daten in allen möglichen Zahlenformaten ansehen ($Hex, Dez, Bin, 
Okt, ASCII)

Der RAW-Modus sendet am Ende und Anfag noch ein "aa 55" und ist im 
Klartext nicht lesbar.

Gruß
Ingo

von Sevensworld (Gast)


Lesenswert?

Ingo F. schrieb:
> Der RAW-Modus sendet am Ende und Anfag noch ein "aa 55" und ist im
> Klartext nicht lesbar.

Richtig ... und genau das habe ich mit dem Modus erreicht!
Wenn ich ( Off On On Off ) einstelle, danach den Reset auslöse DANN habe 
ich nicht lesbare Daten. Nach Umstellung in meinem Monitorprogramm auf 
Darstellung in Hex, werden Datensätze angezeigt die von aa 55 eingerahmt 
sind !!!

Gruß
Jens

von Ingo F. (ingof)


Lesenswert?

Hallo,

wer meine Java-Programme zum loggen in die mySQL benutzen will findet 
die neusten Versionen auf meiner Seite im Download:
http://home.arcor.de/i.fischer/modelledit/index_de.html

Werde jetzt nicht jedesmal posten wenn es was naues gibt....

Die Version EMSlog02 sollte jetzt richtig funktionieren. Nur das beenden 
des Programms ist noch nicht perfekt.
Am Datum kann man erkennen wann die neuste Version erstellt wurde.

Gruß
IngoF

von Kay F. (jaykay)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe mal die EMSlog2 SW unter Windows probiert, da ich sie unter 
Linux zur Zeit nicht ans laufen bekomme. Dabei ist mir aufgefallen das 
nur Datum und Uhrzeit bei mir richtig decodiert werden. Die 
Betriebsstunden sind mit 20648:03 viel zu hoch. Laut Infoterminal 
2717:12 bzw. Solar 2039:38. Er hat auch 8 CRC Errors gefunden. Das EMS 
GW hängt 30 cm hinter dem SM10 Modul.
Ist eine Buderus Logamax plus GB152 mit RC35, MW10 & SM10. Hinweise zur 
SW Version konnte ich in den Menüs nicht finden... Habe das was die 
EMSlog SW raussendet mal angehängt.

Unter Linux habe ich das Problem das er JDBC & ODBC anmeckert. Die 
Device kann ich nur auswählen, nicht ändern. Da die Devicebezeichnungen 
unter Linux länger sind, sehe ich auch nur /dev/tty der Rest wird nicht 
mehr dargestellt.

Ideen was ich ändern bzw. anpassen müßte?

Danke und Gruß

Kay

von IngoF (Gast)


Lesenswert?

Kay F. schrieb:
> JDBC & ODBC

Das klingt ja fast nach dem mySQL-connector-Java. Habe noch 
"mysql-connector-java-5.1.10" von der MySQL-Webseite gesaugt und 
verwendet. Allerdings ist der Connector aber Plattformunabhängig und 
dürfte unter Linux keine Probleme machen.

Eigentlich wird vorher nachgesehen welcher Serielle-Port verfügbar ist 
und wird dann auch in der Auswahlbox angezeigt. Müsste also alles so 
funktionieren.

Am besten mal die zweite Version2 nehmen und den Haken bei mySQL nicht 
setzten. Dann wird die Verbindung zur MySQL-Datenbank nicht aufgebaut.

Kannst mir ja mal das ganze Log zumailen. Screenshot wäre auch OK.

Kay F. schrieb:
> Er hat auch 8 CRC Errors gefunden.

Das habe ich heute auch herausgefunden. Bei mir ist teilweise das erste 
oder zweite Byte eine Null. Allerdings kommst das schon von dem 
EMS-Gateway. Muss entweder dort die Programmierung, ein Fehler in der 
Empfangsschaltung sein oder wirklich Fehler auf dem Bus.

Auf meinem Oszilloskop sieht die Empfangsschaltung aber gut aus. Keine 
Verfälschung der Signale.

Einfach mal den Haken unter CRC setzten und sehen was er in der 
Telegrammlog.txt als Fehlerhafte Telegramme mitloggt. die anderen Haken 
sind für Fehlerfreie Telegramme und für Polling. Allerdings ist der 
Pollinghaken noch sinnlos weil der Gateway kein polling schickt.

Kay F. schrieb:
> 20648:03 viel zu hoch

Es gibt ja mehrere Zeiten. Vielleicht findet die sich woanders in der 
RC30/35. Bei mir stimmen die zeiten eigentlich. Allerdings bin ich mir 
jetzt auch nicht mehr soooo ganz sicher. Vielleicht ist ja auch ein 
Berechnungsfehler drin.

Wenn man den Haken bei "Fr" (= fehlerfreie Telegramme) setzt werden die 
Telegramme in der Telegrammlog.txt auch als Hex-Werte angezeigt. Für die 
Kontrolle bestimmt ganz gut.

Gruß
Ingo

von Kay F. (jaykay)


Angehängte Dateien:

Lesenswert?

Hallo Ingo,

okay jetzt sehe ich schon mehr (unter Windows). RaumIST & die 
Betriebsstunden passen noch nicht, wobei die RC35 gerade auch in der 
Heizung steckt.
Unter Linux bekomme ich nur eine Warning zur RXTX Version sonst passiert 
nichts:

root@debian6:/opt/ems# java -jar emslog02.jar server
WARNING:  RXTX Version mismatch
        Jar version = RXTX-2.2pre1
        native lib Version = RXTX-2.2pre2

createLogFile
.

Habe schon versucht die RXTXcomm.jar & librxtxSerial.so aus diesen 
beiden ZIPs zuverwenden bekomma aber immer die gleiche Warnung.
http://rxtx.qbang.org/pub/rxtx/rxtx-2.2pre1-bins.zip
http://rxtx.qbang.org/pub/rxtx/rxtx-2.2pre2-bins.zip

Gibt es da noch andere Verweise?

Im Verzeichnis legt er eine Datei .\Telegrammlog.txt an mit 0 Byte. 
Müßte unter Linux eigentlich ./Telegrammlog.txt sein. Com Port ist 
/dev/ttyUSB0 in der TestVM gibt es nur den einen...

Danke und Gruß

Kay

von Niffko _. (niffko)


Lesenswert?

Kay F. schrieb:
> ... RaumIST & die Betriebsstunden passen noch nicht ...

RaumIst - wie du schon richtig vermutest - weil RC35 im BC10 steckt.

Das, was im Telegramm 14 übertragen wird, sind nicht die 
Betriebsstunden, sondern die Betriebszeit. Diese beschreibt die seit der 
Inbetriebnahme vergangene Zeit. Die Betriebsstunden des Brenners stecken 
im 19er und im 34er Telegramm.



//Niffko

von Niffko _. (niffko)


Lesenswert?

@Ingo

Der erste Wert in Telegramm 18 ist nicht Anlage sondern die 
Kesselsolltemperatur ... da muss du noch mal bei ;)


//Niffko

von Jens H. (sevensworld)


Lesenswert?

Also ich habe hier auch ne Liste wo der erste Wert die Anlage ist und 
der 2. die Kesseltemp. !?

Gruß
Jens

von IngoF (Gast)


Lesenswert?

Kay F. schrieb:
> WARNING:  RXTX Version mismatch
>         Jar version = RXTX-2.2pre1
>         native lib Version = RXTX-2.2pre2

Das ist wohl so OK. Steht zumindest so auf der Webseite.

Bisher habe ich aber nur die 2.1.7-Version genommen. Die ist hier zu 
finden:
http://rxtx.qbang.org/pub/rxtx/rxtx-2.1-7-bins-r2.zip

Ist ja ziemlich warm bei Dir.. 3200°C isch ja schon mal was...

Bei mir wird die Temperatur allerdings richtig angezeigt.

Niffko _ schrieb:
> Der erste Wert in Telegramm 18 ist nicht Anlage sondern die
> Kesselsolltemperatur ... da muss du noch mal bei ;)

Na das sollte nicht das Problem sein...

Gruß
Ingo

von Niffko _. (niffko)


Lesenswert?

Jens H. schrieb:
> Also ich habe hier auch ne Liste wo der erste Wert die Anlage ist und
> der 2. die Kesseltemp. !?

Glaube ich dir, richtiger wird es davon aber auch nicht. 
Anlagentemperatur bedeutet im EMS-Kontext Temperatur in der 
hydraulischen Weiche. Diese wird aber durch das Weichenmodul WM10 
erfasst und auf den Bus gegeben. Der Wert wird also nicht in einem 
UBA-Telegramm auftauchen.

//Niffko

von Niffko _. (niffko)


Lesenswert?

Morgen!

Hätte noch was zum Thema Raumtemperatur. Das Auslesen aus dem 
3E-Telegramm ist eher heizkreisbezogen, deshalb funktioniert es auch 
nicht, wenn der RCXX nicht in der Wandhalterung steckt. Mehr generisch 
ist hier das A3-Telegramm.

Beispiel aus Kay's Daten:
1
10 00 A3 00 07 01 01 01 34 01 3A 01 3A 83 00 83 00 6C
2
                     ^^ ^^
3
                     308 => 30,8°C


//Niffko

von Ingo F. (ingof)


Lesenswert?

Niffko _ schrieb:
> Beispiel aus Kay's Daten:
> 10 00 A3 00 07 01 01 01 34 01 3A 01 3A 83 00 83 00 6C
>                      ^^ ^^
>                      308 => 30,8°C

Na das kann ich leider nicht so machen. Bei mir wird im A3-Telegramm 
eigentlich nur die gedämpfte Außentemperatur und zwei noch unbekannte 
Werte übertragen:

10 00 A3 00 08 13 02 AA

Gruß
Ingo

von Niffko _. (niffko)


Lesenswert?

Ingo F. schrieb:
> Bei mir wird im A3-Telegramm
> eigentlich nur die gedämpfte Außentemperatur und zwei noch unbekannte
> Werte übertragen ...

interessant ... kann es sein, dass du im Gegensatz zu Kay und mir einen 
RC30 dein Eigen nennst?


//Niffko

von IngoF (Gast)


Lesenswert?

Niffko _ schrieb:
> interessant ... kann es sein, dass du im Gegensatz zu Kay und mir einen
> RC30 dein Eigen nennst?


Ja,

Das wird wohl das "Problem" sein...

von Jens H. (sevensworld)


Lesenswert?

Hallo Niffko,

wenn du eine Zusammenstellung der Daten einer RC35 hast, würdest du die 
mal anhängen?
Wo könnten sich zu einer RC denn noch weitere Unterschiede ergeben?


Gruß
Jens

von Niffko _. (niffko)


Lesenswert?

Jens H. schrieb:
> wenn du eine Zusammenstellung der Daten einer RC35 hast

Nein, habe ich nicht. Ich benötige auch nicht allzu viel vom RC35.

Nachfolgend mal die von mir verwendeten Daten, herauskopiert aus meinem 
AVR-Code. Heizequipment: GB142, RC35, keine Funktionsmodule. Ich parse 
direkt im AVR und schicke ein Telegramm konstanter Länge an den PC.

1
/*******Byte Index EMS Telegrams(null based)********/
2
#define RL_IST_H_0818     17
3
#define RL_IST_L_0818     18
4
#define VL_SOLL_0818       4      
5
#define VL_IST_H_0818      5
6
#define VL_IST_L_0818      6
7
#define LEIST_SOLL_0818    7
8
#define LEIST_IST_0818     8
9
#define RAUM_H_10A3        7
10
#define RAUM_L_10A3        8
11
#define PUMPE_0819        13
12
#define WW_SOLL_0834       4
13
#define WW_IST_H_0818     15
14
#define WW_IST_L_0818     16
15
#define AT_H_0819          4
16
#define AT_L_0819          5
17
#define AT_GED_10A3        4
18
#define ZEIT_HZ_2_0819    23
19
#define ZEIT_HZ_1_0819    24
20
#define ZEIT_HZ_0_0819    25
21
#define ZEIT_WW_2_0834    14
22
#define ZEIT_WW_1_0834    15
23
#define ZEIT_WW_0_0834    16
24
#define STARTS_HZ_2_0819  26
25
#define STARTS_HZ_1_0819  27
26
#define STARTS_HZ_0_0819  28
27
#define STARTS_WW_2_0834  17
28
#define STARTS_WW_1_0834  18
29
#define STARTS_WW_0_0834  19
30
#define UHR_MIN_1006       8
31
#define UHR_STD_1006       6
32
#define UHR_TAG_1006       7      
33
#define CODE1_0818        22
34
#define CODE2_0818        23


//Niffko


PS: Ingo, sag' Bescheid, wenn sowas lieber in den anderen Thread soll. 
Obwohl dieser hier ja wenigstens das Wort EMS im Titel trägt :)

von Rudi (Gast)


Lesenswert?

Ingo F. schrieb:
> 10 00 A3 00 08 13 02 AA

  // 10 00 a3 00 0f 01 01 91
  /*                ^^ ^^ flags tag/nacht schaltung */

Byte 4 ist die Umgebungstemperatur, bzw. Raumtemperatur.


Grüße.

von Niffko _. (niffko)


Lesenswert?

Rudi schrieb:
> // 10 00 a3 00 0f 01 01 91
>   /*                ^^ ^^ flags tag/nacht schaltung */
>
> Byte 4 ist die Umgebungstemperatur, bzw. Raumtemperatur.

Was bringt dich zu der Annahme, dass Byte 4 die Raumtemperatur und nicht 
die gedämpfte Außentemperatur ist?


//Niffko

von IngoF (Gast)


Lesenswert?

Niffko _ schrieb:
> Was bringt dich zu der Annahme, dass Byte 4 die Raumtemperatur und nicht
> die gedämpfte Außentemperatur ist?

Hallo,

Also ich habe den Wert immer als gedämpfte Außentemperatur mitgeloggt.


So wie es aussieht kann es sein dass mit neueren Softwareständen alte 
Telegramme erweitert werden. Denke die ersten Werte werden bei der RC35 
die selbe Funktion haben, oder?

von Niffko _. (niffko)


Lesenswert?

IngoF schrieb:
> So wie es aussieht kann es sein dass mit neueren Softwareständen alte
> Telegramme erweitert werden. Denke die ersten Werte werden bei der RC35
> die selbe Funktion haben, oder?

jep, so sehe ich das auch.


//Niffko

von Rudi (Gast)


Lesenswert?

Niffko _ schrieb:
> Was bringt dich zu der Annahme, dass Byte 4 die Raumtemperatur und nicht
> die gedämpfte Außentemperatur ist?

Ich meinte die gedämpfte Außentemperatur und nicht die Raumtemperatur.

von F. F. (pic18f)


Lesenswert?

Hallo Ingo,
sind eigentlich alle Platinen ausgeliefert.
Ist schon in Aussicht, ob es eine zweite Fertigung gibt?

Ich überlege mir eine Platine auf Lochraster selbst zu bauen.

Viele Grüße
F. F.

von IngoF (Gast)


Lesenswert?

Hallo F.F.

F. F. schrieb:
> sind eigentlich alle Platinen ausgeliefert.

Nein, leider habe ich noch zwei Platinen die ich einfach nicht zum 
laufen bekommen habe.

F. F. schrieb:
> Ist schon in Aussicht, ob es eine zweite Fertigung gibt?

Nein, noch nicht. sind erst drei auf der Warteliste und ab zehn lohnt es 
sich erst. Allerdings habe ich den Arbeitsaufwand doch stark 
unterschätzt. Kann also im Moment nichts garantieren. Außerdem muss ich 
ja die Firmware erst vernünftig zum laufen bekommen. Im Moment 
funktioniert nur das Auslesen. Das Schreiben auf dem Bus hat noch 
irgendeinen Fehler. Der PIC will das Break nicht richtig senden.

F. F. schrieb:
> Ich überlege mir eine Platine auf Lochraster selbst zu bauen.

Ja, warum denn nicht. Das einzige Problem ist dabei den FT245RL den es 
nur in SMD mit 0,5mm Pinabstand gibt. Und das andere könnte das Brennen 
des PIC sein. Allerdings kann man den SMD-Chip mit einem kleinen 
0815-SMD-Lötkolben sogar relativ einfach anlöten. Dafür würde man dann 
aber eine Adapterplatine benötigen die man für einige Euro kaufen kann.

Gruß
Ingo

von charlie (Gast)


Lesenswert?

Hallo F.F.,

> Ich überlege mir eine Platine auf Lochraster selbst zu bauen.

bei mir liegt Ingos Platine seit zwei Monaten auf Stapel und ich komme 
zeitlich nicht dazu, mich mit dem Thema zu beschäftigen. Wird sich in 
den nächsten Wochen leider auch nicht ändern :-(.

Falls Du meine Platine haben möchtest, würde ich sie Dir abtreten, zum 
Selbstkostenpreis, versteht sich. Die Platine ist komplett bestückt, mit 
allem was Ingo so drauf hat ;-), und das ist 'ne ganze Menge!

Gruß aus der Wetterau
Karl M.

von spooniester (Gast)


Lesenswert?

Hallo Charlie ,

ich have bei ersten Bestellung leider keine abbekommen.
und haette echt grosses Interesse. Wuerde auch  noch was extra 
drauflegen.
Meld dich bitte falls du Interesse hättest.
spooniesterÄTgmail.com

Danke
Matthias

von F. F. (pic18f)


Lesenswert?

Hallo Carlie,
Ich habe ein grosses Interesse an der Platine, leider hatte ich deine 
E-Mail Adresse nicht.
Da ich fast jede Woche in der Wetterau bin koennte ich die Platine 
abholen.
Melde dich doch bitte mal per Mail.

Viele Gruesse
FF

ffleckenstein@web.de

von spooniester (Gast)


Lesenswert?

Hallo,

da ich keinen etwas wegschnappen möchte und auch schon mit Charlie 
Kontakt hatte und er das genauso sieht, stelle ich nochmals eine 
Suchanfrage für die Platine von Ingo:

Ich habe damals, leider selbst verschuldet (Ingo weiss warum..), leider 
keine Platine mehr abbekommen und suche daher eine.

Wenn also jemand, ähnlich wie Charlie, die Platine zuhause liegen hat 
und keine Zeit hat sich darum zu kümmern, würde ich mich sehr freuen 
wenn er sich bei mir meldet, dann kann man über eine Verkauf sprechen.

Bitte dann eine kurze E-Mail an spooniesterÄTgmail.com

Würde mich sehr freuen.

Danke im Voraus.
Matthias

@F.F.: War nicht böse gemeint :-) Viel Spaß mit dem Bauteil :neid:

von Ingo F. (ingof)


Lesenswert?

> Den Download gibt es erst mal hier:
> http://home.arcor.de/i.fischer/modelledit/index_de.html

Habe jetzt meine aktuelle Firmware hochgeladen.
Eigentlich gibt es bis jetzt noch keine Weltbewegende Neuigkeiten. Nur 
das Polling 0x8b (= 0x0B / 11) wird beantwortet und im Bus-Status 
erscheint jetzt "Computer". Senden ist noch nicht möglich.

von spooniester (Gast)


Lesenswert?

Hallo zusammen,

würde hier nochmals gerne eine Suchanfrage aufmachen. Bin immernoch auf 
der Suche nach einem solchen Controller, also wenn jemand eine unbenutzt 
zuhause hat wäre ich sehr interessiert!

Danke

von Rainer H. (rhobin)


Lesenswert?

Hallo allerseits,

bin vor einigen Tagen auf die beiden Threads über den EMS-Bus bei 
Buderus gestossen und muss ehrlicherweise zugeben, dass ich nur einen 
Bruchteil verstanden habe.

Bin allerdings auch daran an einer solchen hübschen Platine (wenn's geht 
voll bestückt) interessiert...

Wenn also wieder mal eine Sammelbestellung ansteht, dann bitte Nachricht

Wie sieht es mittlerwile mit dem Senden von Befehlen aus?? Seid ihr da 
weitergekommen??

Danke und Gruß
Rhobin

von Udo H. (udo_h)


Lesenswert?

Hallo,

auch ich hätte Interesse an einem Gateway/Controller für meine 
Buderus-Anlage, falls also eine Neuauflage folgen sollte...

LG
Udo

von Ingo F. (ingof)


Lesenswert?

Das senden an sich klappt schon. Kann bei meiner Heizung mit meinem 
Programm und neuer Firmware den Urlaub für die Heizkreise einstellen.

Nur das auswerten der Antwort klappt nicht immer 100%

Also im Moment sind 4 noch auf der Warteliste. 10 Leute wäre schon gut.
Diesmal würde ich die Aktion aber per Vorkasse abwickeln.

Also im Moment ist noch warten angesagt...


Gruß
IngoF

von Stefan M. (stefan-muehlbauer)


Lesenswert?

Hallo zusammen,
ich bin beim Googeln auf diesen Beitrag gestoßen. Ich bekomme in den 
nächsten 6 Wochen eine neue Buderus Heizung (BGH172) und möchte die 
Daten auch abfragen können. Zusätzlich habe ich das KM200 für die Iphone 
App von Buderus mitbestellt.
Hat schon mal jemand versucht das RS232 Signal auf auf einen X-Port zu 
legen und übers Netzwerk auf die Daten zuzugreifen ?
Die RS232 Schnitstelle ist ja auf der Platine abgreifbar oder?
Ich glaube ich habe überlesen wie Ihr die Platine angeschlossen habt 
über den Klinkenstecker oder direkt an den 2 Draht Bus.
Gibt es schon einen Termin für eine neue Bestellung ? Bei mir ist es 
abhängig was das KM200 alles kann und ob man auch ohne IPhone an die 
Daten kommt.

LG
Stefan

von IngoF (Gast)


Lesenswert?

Hallo Stefan,

Im Originalthreat hatte jemand versucht das Signal über einen XPORT aufs 
Netzwerk zu legen. Allerdings war das eine Platine für die 2107.
Beitrag "Re: Logamatic 2107 Schnittstelle"
Da gab es wohl zumindest Probleme mit irgendwelchen Messungen wenn der 
XPORT angeschlossen war.

Den XPort kann man allerdings nicht an dieser Platine anschließen. Der 
einzige Serielle Port geht auf den EMS-Bus von der Heizung.

Die Verbindung zum PC geht allerdings über den FT245RL der über einen 
"Datenbus" angeschlossen wird. Der XPORT muss über die Serielle 
Schnittstelle angebunden werden, oder?

Diese Platine kann man direkt irgendwo am ZweidrahtBus anschließen, oder 
aber auch an der Klinkenbuchse. Dabei wird der dritte Pin eben nicht 
benutzt.

Wann es eine neue Platine gibt hängt davon ab wann es genug Leute für 
eine Sammelbestellung gibt. Mit Dir wären es dann schon 5 Leute. Dann 
fehlen noch etwa 5 Personen. Vermutlich wird dann noch der eine aoder 
andere kurz vorher abscpringen.

Gruß
Ingo

von Erik L. (erikl)


Lesenswert?

Hallo zusammen,

seit ein paar Tagen wühle ich mich durch das Thema, erstmal vielen Dank 
und alle Achtung was Ihr geleistet habt !
Wir haben eine GB162-15 mit RC35 und ich fände es klasse, mit dem PC 
messen zu können, aus Spaß und um die Steuerung "zu kontrollieren".
Die theoretischen Grundlagen für das Verständnis des hier von Euch 
mühsam erarbeiteten sollten eigentlich bei mir da sein, allein nur ist 
es etwas lange her und zu kurz im Einsatz gewesen...
Ingo, auch ich hätte deshalb Interesse an einem Gateway.
Am liebsten wäre mir durchaus ziemlich fertig, da ich derzeit wenig 
Möglichkeiten habe so was zu bestücken und zu testen/debuggen.

Wie Stefan bin ich natürlich auch über das KM200 gestolpert (habe jedoch 
noch keines, wohl aber die Heizung schon).
Allerdings wollte ich mit dem PC messen und mir nicht deshalb ein EiFon 
zulegen ;-))
Ich habe eine kleine Hoffung, dass man das KM200 "missbrauchen" könnte, 
um über den wohl eingebauten Webserver auf den EMS-Bus zuzugreifen, um 
auch mehr zu messen. Nur habe ich noch keine tiefer gehenden Infos 
darüber gefunden, das Ding scheint zu neu zu sein.
Oder liest hier jemand mit der mehr weiß ? Theoretisch müsste das Ding 
ja alles an Bord haben um vom PC auf den EMS-Bus zu kommen, nur ob es so 
universell wie Ingos Lösung ist ? Hat schon mal jemand so ein KM200 
offen gesehen ?

Viele Grüße,
Erik

von Ingo F. (ingof)


Lesenswert?

Hallo,

hier gibt es erstmal eine provisorische aktuelle Firmware mit dem 
Sendemodus unter "Download": 
http://home.arcor.de/i.fischer/modelledit/index_de.html

Mit dem Java-Programm is es schon mal möglich die Urlaubszeit von 
Heizkreis 1 und 2 abzufragen und zu ändern.

Für kurze eigene Telegramme kann man die Prüfsumme berechnen und das 
Telegramm absenden. Ist eigentlich erst mal mein provisorium.

Die Bedienung des Programms ist jetzt komplett anders, sollte aber doch 
ziemlich selbsterklärend sein...

Gruß
IngoF

von F. F. (pic18f)


Lesenswert?

Die erste Platine ist wirklich gut gemacht, deshalb habe ich Interesse 
an einer zweiten Platine. Vielleicht kann man einen Web-Server einbauen.
Ich dachte da an einen Ethernet-fähigen Prozessor wie z.B 
PIC32MX460F512L.

Viele Grüße
pic18f

von Ingo F. (ingof)


Lesenswert?

Auf Nachfrage noch mal eine Anleitung wie man die neue Firmware auf den 
EMS-Gateway bekommt. Die Anleitung ist jetzt in der Firmware ZIP-Datei.

Gruß
IngoF

von Stefan M. (stefan-muehlbauer)


Lesenswert?

Hallo zusammen,
hat schon mal jemand versucht die Eingangsschnittstelle mit einem 
Arduino zu verbinden.
Mit dem Arduino würde ich mich ein klein wenig auskennen. Das was ich 
gar nicht so recht verstehe ist die Anpassung der seriellen 
Schnittstelle zwischen Buderus Steuerung und RS232 am Prozessor. Kann 
mir das mal jemand für Dummys erklären. Am besten mit einem kleinem 
Schaltplan.

LG
Stefan

von Dirk U. (Gast)


Lesenswert?

Hallo, ich wäre evtl auch an einer Platine interessiert.
Nur leider habe ich noch nicht ganz gecheckt was die alles kann bzw 
nicht kann.
Ich habe eine neue GB212 und möchte per PC auslesen und programmieren 
können.
Gibt es irgendwo eine detailierten Stand dessen was die Platine kann?
Ich hätte die Buderus EcoSoft zur Verfügung. was ginge mit der Platine 
damit?
Gruß Dirk

von Ingo F. (ingof)


Lesenswert?

@Stefan

hier ist der Schaltplan aus dem original Threat: 
http://www.mikrocontroller.net/attachment/95287/EMS_Interface.png

Der linke Teil wandelt die Spannung vom BUS in ein TTL-Signal um das der 
Mikrocontroller versteht. Egal ob Ardunio oder PIC. der Rechte Teil 
sendet über die Stromschnittstelle die Daten vom Mikrocontroller.

Einfach nachbauen und an den Ardunio klatschen. Mit der richtigen 
Programmierung sollte es funktionieren. Keine Ahnung ob der Ardunio das 
Break selbst erkennt oder obe Du es selber "erkennen" must. Der PIC hat 
ein Bit das man abfragen kann und erleichtert die Sache schon ein wenig.

@Dirk
Die Platine kann alle Telegramme empfangen und an den PC weiterleiten. 
Senden ist damit such schon provisorisch möglich. Die Telegramme werden 
von der Platine richtig gesendet. Nur die Übertragung vom PC zum 
Mikrocontroller ist noch nicht in der endgültigen Version.
Meine Software kann die Telegramme empfangen un in eine MySQL-Datenbank 
schreiben und auch darstellen. Den urlaub von Heizkreisen eins und zwei 
können auch abgefragt und gesetzt werden. Mehr bisher noch nicht.

Wenn Du an einer Platine interessiert bist musst Du mir irgendwie Deine 
eMail Adresse zukommen lassen. Ob und wann es eine neue Auflage gibt 
kann ich jetzt natürlich nicht sagen. Es müssen genug an einer Platine 
interessiert sein und ich muss auch die zeit dazu haben.

Gruß
IngoF

Edit:
Wenn jemand die Möglichkeit hat die Platine für sich selber und andere 
zu fertigen kann gerne die Eagle .BRD-Datei dafür haben.

von Ingo F. (ingof)


Lesenswert?

Dirk U. schrieb:
> Ich hätte die Buderus EcoSoft zur Verfügung. was ginge mit der Platine
> damit?

Hallo Dirk,

habe ich glatt überlesen... Mit der EcoSoft kannst Du zumindest jetzt 
noch garnichts machen. Die Software ist noch nicht soweit dass Sie den 
Service-Key von Buderus emuliert. Vermutlich wird das irgendwann mal 
möglich sein.

Gruß
IngoF

von Niffko (Gast)


Angehängte Dateien:

Lesenswert?

Ingo F. schrieb:
> [EcoSoft] Vermutlich wird das irgendwann mal
> möglich sein.

Ob sich der Aufwand lohnt?! EcoSoft macht im Grunde zwei Dinge, 
Parametrierung und Datenaufzeichnung + Visualisierung.

Ersteres ist für den Privatanwender, sobald der anfängliche Spieltrieb 
befriedigt ist, relativ uninteressant. Für einen Techniker, der einen 
Regelungsverbund mit mehreren Unterstationen parametrieren muss, sieht 
das Ganze anders aus.

Datenaufzeichnung + Visualisierung kommen, meiner Meinung nach, relativ 
unsexy daher. Ich habe mir hier lieber etwas eigenes gestrickt, obwohl 
ich EcoSoft & Servicekey zur Verfügung habe . . . siehe Anhang.



Gruß Niffko

von Ingo F. (ingof)


Lesenswert?

Niffko schrieb:
> Ob sich der Aufwand lohnt?!

Deswegen das "Vermutlich".

Vorteil wäre dass man die Original Software nehmen könnte und nichts 
selber stricken muss.
Aber das wichtigste ist erst mal das mitloggen und selber senden.

Deine Darstellung sieht ja schon mal sehr gut aus...

Gruß
IngoF

von Ingo F. (ingof)


Lesenswert?

Hallo,

Die Firmware 0.5 ist jetzt fertig.

Damit klappt das senden von Telegrammen im RAW und HEX-Modus.

Zum Beispiel das Abfragen der Uhrzeit und des Datums:

Im RAW Modus :
0x0B 0x90 0x06 0x00 0x1B 0x57 0xAA 0x55

Im HEX-Modus:
0B 90 06 00 1B 57[ENTER]

Im Textmodus also die Bytes als zweistelligen HEX-Code mit Leerzeichen 
getrennt und ohne Leerzeichen am Ende. Dann einfach Enter drücken.

Im HEX-Modus werden vom Terminalprogramm also folgenden Bytes gesendet:
0x30 0x42 0x20 0x39 0x30 0x20 0x30 0x36 0x20 0x30 0x30 0x20 0x31 0x42 
0x35 0x37 0x0d 0x0a

Die rote LED (zur Platinenmitte) blinkt kurz auf wenn ein Telegramm auf 
den EMS-Bus gesendet wird.

Die blaue LED (zum Platinenrand) blinkt kurz auf wenn Telegramme vom 
EMS-Bus empfangen werden.

Es gibt auch Platinen mit nur blauen LEDs.

Wem die Blaue LED nicht passt kann auch LEDs mit niedriger 
Schwellspannung (rot oder grün) an dem Anschluss auf der Platine 
parallel zur blauen anlöten oder aufstecken. Dadurch leuchtet die Blaue 
LED nicht mehr und nur noch die neue LED.

Habe jetzt die aktuelle Firmware hochgeladen. Bei der Firmware ist jetzt 
auch eine Anleitung zum flashen der Firmware als PDF-Datei.

Gruß
IngoF

von Jens H. (sevensworld)


Lesenswert?

Klingt super :)

Woher genau weiß ich denn was ich senden muss? Wie wäre es mit ner 
aktuellen Tabelle ?
Z.B. wie sende ich eine Umschaltung vom Betriebsmodus .. Tag/Nacht ?

Gruß
Jens

von Ingo F. (ingof)


Angehängte Dateien:

Lesenswert?

Hallo,

Also meine Liste die ich habe kann ich gerne mal anhängen.
Ist natürlich nicht vollständig.

Hier ein paar Beispiele:
1
{00} 20:41:29 14.10.12: 0B 90 3F 57 06 00
2
{8E} 20:41:29 14.10.12: 10 0B 3F 57 01 09 0C 05 0A 0C 8E
3
4
{30} 20:41:32 14.10.12: 0B 10 3F 57 01 09 0C 05 0A 0C 30
5
{--} 20:41:32 14.10.12: 01

Bei diesem Beispiel von 0x0B (PC) zu 0x10 (RC30) mit Bit 7 gesetzt 
(Abfrage). Telegramm 3F (Zeiten Heizkreis1) Ab Byte 0x57 sollen 6 Bytes 
übermittelt werden.
Als Antwort kommt vom Empfänger das Telegramm mit den Daten.
In dem Beispiel Urlaub vom 01.09.2012 bis 05.10.2012 für Heizkreis1.

Dannach Das selbe Telegramm mit den Daten wieder zur RC30 zurück. Da das 
Bit7 jetzt nicht gesetzt ist ist es ein "Befehl"
Der Busmaster (0x08) bestätigt fehlerfreie Telegramme dann mit 0x01. 
Fehlerhafte Telegramme werden mit 0x04 "bestätigt". Die Bestätigung 
kommt nicht vom Empfänger.

Später sendet der Empfänger nochmal das komplette Telegramm 0x3f an alle 
in drei "Häppchen". Manchmal bricht er auch ein Telegramm davon beim 
senden ab und wiederholt es nochmals.

Bei der Abfrage kommt nach dem Telegrammtyp die Startadresse(0x57) im 
Telegramm und die Länge (0x06) die zurück geliefert werden soll.
Beim Befehll kommt nur die Startadresse(0x57) und anschließend die 
Daten. Allerdings kann manchmal auch eine andere Länge zurück kommen als 
man angefordert hat. Die RC30 sendet wohl nie mehr als 27 Zeichen (0x1b) 
an Daten.

Mit diesem Telegramm und Telegrammtyp 0x49 kann man Heizkreis1 und 2 in 
den Urlaubsbetrieb setzen. Mit dem Warmwasser scheint es nicht zu gehen. 
Habe noch keine Möglichkeit gefunden.

Alle Angaben natürlich ohne Gewähr ;-)
Wer was neues herausfindet kann es gerne posten...

Gruß
IngoF

Edit:
Jetzt mit der richtigen Datei ;-)

von IngoF (Gast)


Angehängte Dateien:

Lesenswert?

Ingo F. schrieb:
> Jetzt mit der richtigen Datei ;-)

Hat dann doch wohl nicht geklappt... Jetzt aber ohne diesen 
"Tippfehler"...

von Jens H. (sevensworld)


Lesenswert?

Danke, werde ich mir die Tage ansehen und dann noch mal fragen :D
Irgendwie habe ich das mit dem Senden noch nicht ganz geblickt, 
allerdings habe ich eigentlich auch nicht vor dein Tool zu benutzen ...

Gruß
Jens

von IngoF (Gast)


Lesenswert?

Hallo,

wegen weiteren nachfragen noch mal genauer beschrieben:

{00} 20:41:29 14.10.12: 0B 90 3F 57 06 00
{8E} 20:41:29 14.10.12: 10 0B 3F 57 01 09 0C 05 0A 0C 8E

Das erste Telegramm ist das was ich gesendet habe und das zweite die 
Antwort.
Die Bedeutung:
0B = Absender (EMS-Gateway)
90 = Empfänger 0x10 + 0x80 ( 0x80 = Abfrage-Bit)
3f = Telegrammtyp (Heizkreis 1 Zeiten)
57 = Offset (Anfangsadresse im Telegramtyp)
06 = Anzahl Zeichen die als Antwort zurück gegeben wurden
00 = Prüfsumme

Einfach so senden und der EMS-Gateway sendet das Telegramm sobald er ein 
Polling vom Master bekommt.
Wenn als Antwort 0x04 zurück kommt ist entweder die Prüfsumme falsch 
oder das Telegramm ist unsinnig.

Mit gesetzten Bit7 wird etwas abgefragt. Und es kommt wenn das Telgramm 
richtig ist sofort die Antwort.
10 = Absender
0B = Empfänger
3F = Telgrammtyp
57 = Datenoffset ( Urlaufszeiten)
01 = Tag des Urlaubsanfangs
09 = Monat des Urlaubsanfang
0C = Jahr des Urlaubsanfang (2000 + 0x0C = 2012)
05 = Tag des Urlaubsende
0A = Monat des Urlaubsende (=10)
0C = Jahr des Urlaubsende (2000 + 0x0C = 2012)

Es gibt zwei Möglichkeiten das Telgramm zu senden:
Im HEX-Mode (Terminalprogramm) ASCII-Zeichen der beiden Hexadezimalen 
Zeichen (erstes Byte = Oberes Nibble) getrennt durch Leerzeichen (0x20). 
Nach dem letzten Zeichen dann Windows-Zeilenumbruch (ASCII CR und LF = 
0D und 0A)

Im RAW-Modus die einzelnen Zeichen übertragen und mit 0xaa 0x55 beenden.

Dieses Telegramm hat also im RAW-Modus 8 Bytes un im HEX-Mode 19 Bytes 
die übertragen werden.

Also im Terminalprogramm z.B. einfach das Telegramm eintippen und nach 
dem letzten Zeichen sofort die Eingabetaste, ohne ein folgendes 
Leerzeichen, drücken. (Windows Zeilenumbruch also CR & LF) Bei MAC und 
Linux muss klappt das mit dem Terminalprogramm nicht so einfach.

Wenn Du die Antwort die Du bekommst wieder zurück schickst wird das 
Datum für den Urlaub gesetzt. Dabei muss aber die Prüfsumme ectra 
berechnet werden. Also in diesem Beispiel:
0B 10 3F 57 01 09 0C 05 0A 0C 30

Wenn Du nur den Urlaubsanfang setzten willst
0B 10 3F 57 01 09 0C <Prüfsumme>

Nur das Urlaubsende setzen:
0B 10 3F 5B 05 0A 0C <Prüfsumme>

Nur die Abfrage könnte für das Urlaubsende könnte so aussehen:
0B 90 3F 5B 03 <Prüfsumme>

Das letzte Telgramm habe ich nicht getestet.
Mögliche Antworten:
1) Das komplette Telegramm mit Urlaubsanfang und -ende.
2) 0x04 für fehlerhaftes Telegramm (Weil nur ein zu kleiner Teil 
abgefragt wird)

Meine aber das die Abfrage erkannt wird und auch richtiger weise nur die 
drei Datenbytes für das Urlaubsende übermittelt werden.

Wenn man Werte setzt kommt nur als Bestätigung für das korrekte 
Telegramm die 0x01

Beim dem Telegramm 3f (Heizkreis 1 Zeiten) z.B. sendet die RC30 noch mal 
das komplette Telegramm in Bröckchen zurück. Sieht wohl so aus dass 
ingesammt nur 0x1B Datenbytes übertragen werden + Absender Empfänger und 
Prüfsumme. Also Maximal 0x1B +3 = 0x1E = 30 Zeichen (0x1B +3 = 0x1E = 
30).

Einfach mal ausprobieren und Beispiele nennen die nicht 
funktionieren....

Gruß
IngoF

von IngoF (Gast)


Lesenswert?

Ein kleiner Bug ist noch in der aktuellen Firmware:

Wenn man Telegramme an die 0x09 sendet (UBA???) antwortet die sofort 
ohne Wartepausen wie die der Raumcontroller (RC30, RC35, ...) oder der 
Busmaster.

Das heisst der Datentransfer auf dem Bus wird für mehrere Sekunden 
komplett unterbrochen.

Wird bei Zeiten noch behoben...

Aber an die 0x09 sollte man auch nciht irgendwelche Werte verändern 
bevor man weiss was die genau bedeuten. Es gibt auch nur eine Handvoll 
Telegramme mit nu ein bis drei Bytes die sie versteht...

Gruß
IngoF

von Niffko (Gast)


Lesenswert?

Moin Ingo,

die Sache mit dem 0x09er muss nicht unbedingt an deine Firmware liegen.

Der BC10 hat die Adresse 0x09. Das Teil, auf dem die Klinkenbuchse 
sitzt. Selbigen hatte ich mir kürzlich mal von innen angeschaut und eine 
Besonderheit festgestellt.

Er hat eine separate "Standleitung" zum Master (UBA) und kommuniziert 
somit nicht direkt über den EMS-Bus. Ich gehe davon aus, dass das aus 
Sicherheitsgründen gemacht wurde, da der BC10 wichtige Kesselparameter 
liefert (Maximaltemperatur). Wahrscheinlich verhält er sich wegen der 
Direktanbindung anders als die übrigen Busteilnehmer.

Wobei das, was man vom BC10 auf dem Bus sieht, nur Echos vom Master sein 
können ... und ob der, sozusagen bewusst, die Kommunikation lahmlegt?!




//Niffko

von IngoF (Gast)


Lesenswert?

Hallo Niffko,

Vermute aber dass es an meiner Firmware liegen könnte...

Die BC10 antwortet schneller als ich aus meiner Senderoutine komme. 
Meine auch gesehen zu haben dass der EMS-Gateway das Break bei der BC10 
nicht mehr sendet.

Könnte man ja sehen ob die BC10 selber sendet oder die Antwort über die 
Master kommt. Man müsste ja die Spannungsschwankungen sehen wenn die 
BC10 sendet under Master die Bytes wiederholt.

Aber wenn ich Zeit habe werde ich mir das noch mal genauer ansehen...

Wie gesagt eigentlich benötigt man ja nur die 0x08 und 0x10. Vielleicht 
bekomme ich ja auch heraus was die Bytes bei den wenigen Telegrammen der 
BC10 bedeuten. Allerdings denke ich nciht dass ich der BC10 ins Handwerk 
pfuschen möchte...

Gruß
IngoF

von sevensworld (Gast)


Lesenswert?

Hallo Ingo,

danke noch mal für die genauen Erläuterungen.
Ein paar Fragen dazu ...
Wie berechnest du die Prüfsumme, da gibts doch sicher ne Funktion dafür, 
oder?
Der Offsetwert im Telegrammtyp, woher bekomme ich den und die Anzahl 
Zeichen die zurückgegeben werden?

Gruß
Jens

von Jens H. (sevensworld)


Lesenswert?

Ok, nachdem ich mir das Ganze 6x durchgelesen habe wirds evtl. etwas 
heller ;-)

0B = Absender (EMS-Gateway)
90 = Empfänger 0x10 + 0x80 ( 0x80 = Abfrage-Bit)
3d = Telegrammtyp (Tag/Nacht/Automatik)
04 = Offset (Anfangsadresse im Telegramtyp)
03 = Anzahl Zeichen die als Antwort zurück gegeben wurden
?? = Prüfsumme

Das wäre dann für den jeweiligen Modus, oder?

Antwort zurück senden für Automatikbetrieb dann so? :
0B 10 3D 04 03 <Prüfsumme>


Fehlt mir dann nur noch die Berechnung der Prüfsumme.



Gruß
Jens

von IngoF (Gast)


Lesenswert?

Jens H. schrieb:
> 0B = Absender (EMS-Gateway)
> 90 = Empfänger 0x10 + 0x80 ( 0x80 = Abfrage-Bit)
> 3d = Telegrammtyp (Tag/Nacht/Automatik)
> 04 = Offset (Anfangsadresse im Telegramtyp)
> 03 = Anzahl Zeichen die als Antwort zurück gegeben wurden
> ?? = Prüfsumme

Fast richitg...

0B 10 3d 04 01 <Prüfsumme> für Nacht
0B 10 3d 04 02 <Prüfsumme> für Tag
0B 10 3d 04 04 <Prüfsumme> für Automatik.

10 weil es ein Wert ist der gesetzt werden soll. Die drei Modes sind im 
selben Byte nur ein unterschiedliches Bit (Bit1, Bit2, Bit3)

Den aktuellen Modus kann man mit
0B 90 3D 04 01 <Prüfsumme> abfragen

Oder das Telegramm 3d ab Offset 00:
0B 90 3D 00 <Prüfsumme>

Habe es selber noch nicht ausprobiert.
Notfalls einfach mal mit meinem Programm testen. Es gibt da eine 
Funktion für Testelegramme. Dann auch Prüfsumme berechnen klicken und 
anschließend auf Senden.

Ein C-Code für die Prüfsummenberechnung ist hier:
Beitrag "Re: Logamatic 2107 Schnittstelle"

Einfach mal auf einem Blatt Papier nachrechnen um zu sehen wie es 
funktioniert..

Gruß
Ingo

von Jens H. (sevensworld)


Lesenswert?

Danke für die Berichtigung und den Hinweis auf die Berechnung der 
Prüfsumme, werde hoffentlich am WE Zeit dafür finden :)


Gruß
Jens

von Jens H. (sevensworld)


Lesenswert?

Also ich habe das jetzt umgesetzt und versucht etwas zu ändern, aber es 
ändert sich nix!?

Das war die Abfrage:
1
SEND: 0B 90 3D 04 01 A9 AA 55 
2
REC : AA 55 10 08 1A 00 2F 64 64 00 B1 00 0A AA 55 AA 55 01 00 02 AA 55 
3
REC : AA 55 0B 90 3D 04 01 A9 00 07 AA 55 
4
REC : AA 55 10 0B 3D 04 01 BC 00 07 AA 55 
5
REC : AA 55 08 00 34 00 3C 02 5E 02 5E 21 00 01 00 00 00 F6 57 00 0D E1 00 3E 00 17 AA 55 
6
REC : AA 55 08 00 18 00 2F 01 D4 64 17 89 01 25 62 80 00 02 5E 01 B8 00 33 0C 2D 48 00 C8 00 02 00 39 00 1F AA 55 
7
REC : AA 55 10 88 14 00 03 6E 00 07 AA 55 
8
REC : AA 55 08 10 14 00 26 2C A6 3F 00 09 AA 55

Und hier der Versuch mit dem Setzen:
1
SEND: 0B 10 3D 04 01 CD AA 55 
2
REC : AA 55 08 00 19 00 00 4F 01 C8 80 00 00 00 00 3F 00 82 88 0D 14 83 00 00 00 0C 1E 2C 00 74 A7 00 00 48 00 21 AA 55 
3
REC : AA 55 08 00 1C 00 8C 03 00 0E 00 08 00 80 00 00 00 84 00 11 AA 55 
4
REC : AA 55 08 00 34 00 3C 02 5B 02 5B 21 00 01 00 00 00 F6 57 00 0D E1 00 EF 00 17 AA 55 
5
REC : AA 55 0B 10 3D 04 01 CD 00 07 AA 55 
6
REC : AA 55 01 00 02 AA 55 
7
REC : AA 55 08 00 07 00 0B 01 00 00 00 00 00 00 00 00 00 00 00 F6 00 13 AA 55 
8
...
9
REC : AA 55 10 00 3D 00 03 22 32 22 01 28 06 02 00 05 05 2D 01 01 04 4B 0D 4B 01 00 3C FF 10 0A 05 01 02 AD 00 21 AA 55

Der Betriebsmodus ändert sich aber nicht und bleibt auf Automatik (03)!?

Gruß
Jens

von Ingo F. (ingof)


Lesenswert?

Jens H. schrieb:
> REC : AA 55 0B 90 3D 04 01 A9 00 07 AA 55
> REC : AA 55 10 0B 3D 04 01 BC 00 07 AA 55

Auf dem ersten Blick ist doch alles OK. Das Telegramm wird gesendet und 
Du bekommst die Daten als Antwort. Du mochtest ab offset 4 1 Zeichen und 
bekommst den einen Wert zurück:01

Jens H. schrieb:
> REC : AA 55 0B 10 3D 04 01 CD 00 07 AA 55
> REC : AA 55 01 00 02 AA 55

Das Telegramm wird gesendet und sofort positiv quitiert. Also ist das 
telegramm inkl. Prüfsumme schon mal OK.

Das Problem ist dass Du beim Setzten den selben Wert setzt den Du 
ausliest (0x01)
Wenn Du beim setzten z.B. 03 nehmen würdest könnte sich an der RC30/35 
sich der Mode ändern.
Um sicher zu gehen könntest Du denn Wert ja noch mal abfragen also

diese drei Telegramme senden:
0B 90 3D 04 01 A9 AA 55
0B 10 3D 04 03 <Prüfsumme> AA 55
0B 90 3D 04 01 A9 AA 55


Gruß
Ingo

von IngoF (Gast)


Lesenswert?

Ingo F. schrieb:
> 0B 10 3D 04 03 <Prüfsumme> AA 55

Ups... das wird die Heizung vermutlich nicht nehmen
Es dürften nur folgende gehen:

0B 10 3D 04 01 <Prüfsumme> AA 55
0B 10 3D 04 02 <Prüfsumme> AA 55
0B 10 3D 04 04 <Prüfsumme> AA 55

von Jens H. (sevensworld)


Lesenswert?

So, endlich Feierabend.


Noch mal zu den Werten der Bytes ... oben bzw. auch hier zuletzt 
schreibst du, das 1 = Nacht, 2 = Tag und 4 = Automatik ist.
Beim Auslesen bekomme ich aber die 01 , was Nachtbetrieb sein sollte. 
Die Anlage war aber im Automatikbetrieb(Tag).

Meine RC35 sitzt übrigens direkt an der Therme.

Ich habe jetzt mal 04 gesetzt und bekomme auch bei der Abfrage 04 
zurück, was ja Automatik sein sollte!? An der RC35 ist aber weiterhin 
manueller Tagbetrieb aktiv und keine Automatik!?
Habe ich da jetzt nen generellen Denkfehler oder liegt das evtl. am 
Modus der Platine?






Aus einer anderen Liste stammt das hier noch:

00 3D 07 00 Einstellung Nacht Gest.
00 3D 07 01 Einstellung Tag Gest.
00 3D 07 02 Einstellung Auto Gest.

Wenn ich Tagbetrieb an der RC35 auswähle kommt:

AA 55 10 00 3D 07 01 E2 00 07 AA 55
AA 55 10 00 47 07 01 13 00 07 AA 55
AA 55 10 00 51 07 01 4B 00 07 AA 55
AA 55 10 00 5B 07 01 63 00 07 AA 55

Bei Nachtbetrieb:

AA 55 10 00 3D 07 00 E3 00 07 AA 55
AA 55 10 00 47 07 00 12 00 07 AA 55
AA 55 10 00 51 07 00 4A 00 07 AA 55
AA 55 10 00 5B 07 00 62 00 07 AA 55

Bei Automatik:
AA 55 10 00 3D 07 02 E1 00 07 AA 55
AA 55 10 00 47 07 02 10 00 07 AA 55
AA 55 10 00 51 07 02 48 00 07 AA 55
AA 55 10 00 5B 07 02 60 00 07 AA 55


Desweiteren haben noch in der 08 00 34 00 Byte 9(laut deiner Liste) auch 
noch mehrere Dinge. Tag/Nacht , Heizen, Betriebsart. Bezieht sich das 
auf die Warmwasserbereitung?Wie schlüsseln die sich auf?

Heizen ?? Bit gesetzt = Heizen, nicht gesetzt = aus?
Tag/Nacht ?? was ist mit Automatik?
Betriebsart ??


In deiner Liste passt oft nicht das richtige Byte zu deiner Nummerierung 
oder hab ich da nen Denkfehler?

Ansonsten hätte ich noch die Betriebszeit(ist etwas anderes als 
Betreibsstunden!) in Minuten unter:

08 10 14 00 Byte 4,5,6




Gruß
Jens

von Jens H. (sevensworld)


Lesenswert?

Ach so ... ich sende das über meine eigene Anwendung auf den Comport in 
der Form : "\x0b\x10\x3d\x04\x04\xc8\xaa\x55" , aber da auf jeden Fall 
ne Antwort kommt, scheint es ja zu funktionieren!?

Ich versuchs gleich noch mal über dein Programm und gucke ob`s damit 
klappt.

von Jens H. (sevensworld)


Lesenswert?

Ok, also über dein Programm klappt eine Änderung Tag/Nacht/Auto auch 
nicht !?
Bin jetzt erst mal ratlos und warte auf Antworten/Ideen ;-)


Aber eine Frage habe ich doch noch:

Unter 08 00 18 00 gibt es den Servicecode. Wie schlüssele ich den um? Im 
Display der RC35 habe ich aktuell nämlich H 8 stehen (Wartungsintervall 
abgelaufen) oder ist das nicht der Service-Code?

Gruß
Jens

von IngoF (Gast)


Lesenswert?

Jens H. schrieb:
> Aus einer anderen Liste stammt das hier noch:
>
> 00 3D 07 00 Einstellung Nacht Gest.
> 00 3D 07 01 Einstellung Tag Gest.
> 00 3D 07 02 Einstellung Auto Gest.

Habe es gerade auch getestet. Das ist auch richtig so. Vermutlich habe 
ich da irgendwann einen Fehler eingebaut oder mit der falschen Liste 
weitergearbeitet.
Wenn Du bei Offset 7 die Werte 0x00, 0x01 oder 0x02 setzt funktioniert 
es auch mit dem Raumcontroller...

Gruß
IngoF

von IngoF (Gast)


Lesenswert?

Achso...

Der Servicecode sollte hexadezimal Codiert sein also bei H8 sollte dort 
0x48 0x38 stehen Eventuell auch 0x86 0x38 (Kleinschreibung).

Hoffe der Rest stimmt noch..

Das mit den Betriebstunden kommt daher weil in der RC 30 der Wert als 
Stunden angezeigt wird. Wird aber in den Telegramm auch als Minuten 
übertragen. Deswegen steht dort auch "Min" als Einheit.

Eigentlich müsste es dann Betriebsminuten sagen. Ist aber wohl eher ein 
ungebräuchlicher Begriff, oder?

Gruß
IngoF

von Jens H. (sevensworld)


Lesenswert?

Werde ich nachher mal ausprobieren.

Wegen den Betriebsstunden noch mal, da gibt es 2 Werte. Einmal 
Betriebsstunden und dann noch Betreibszeit. Beides in Minuten

In deinem Programm nutzt du Betreibszeit und in der Liste stehen noch 
Betriebsstunden

von IngoF (Gast)


Lesenswert?

Es sind zwei verschiedene Werte. Eins davon ist die Zeit die die Anlage 
insgesamt eingeschaltet war. Das andere sind die Brennerstunden oder was 
ähnliches. Es gibt auch zwei unterschiedliche Werte in der RC30/35

Gruß
Ingo

von Jens H. (sevensworld)


Lesenswert?

Nichts anderes habe ich gesagt ;)
Bezgl. des Betriebsstatus, gibt es ja noch Automatik Tag und Automatik 
Nacht ... weißt du wie das abzufragen ist ?

von Jens H. (sevensworld)


Lesenswert?

Moin ;)

Neuer Tag, neuer Versuch ... der Servicecode zeigt jetzt 2d48, was -H 
entspricht. Schaltet man das Display mal durch (mit dem 
Schraubenschlüssel Taster), dann taucht dort auch -H auf. In den 
Unterlagen steht, das es "Heizbetrieb" bedeutet und auch noch andere 
Anzeigen möglich sind. Scheinbar sind auch 3 Zeichen möglich, zumindest 
hat das Display 3 Stellen.

Der Code H 8 hat also erst das H, dann eine Leerstelle und dann die 8. 
Das wiederum würde 48 20 38 entsprechen, aber diese Kombination finde 
ich in keinem Telegramm. Irgendeine Idee wie man per Telegramm da ran 
kommt?

Von den Begriffen her, die sich im Diagnosemenü finden, ist -H ein 
Statuscode (ist übrigens Byte 22+23, deine Liste sagt 23+24).
Der eigentliche Servicecode ist z.b. 200 und findt sich in Byte 25.

Fehlt aber immer noch das H 8. :(


Gruß
Jens

von Niffko (Gast)


Lesenswert?

Moin Jens,

Jens H. schrieb:
> Der Code H 8 ...
> Irgendeine Idee wie man per Telegramm da ran
> kommt?

Vielleicht wird das Telegramm nicht periodisch wiederholt. Du könntest 
den RC35 mal vom Bus nehmen, wieder verbinden und dir dann die 
Initialtelegramme anschauen. Vielleicht taucht das gesuchte Telegramm 
dann auf.

Oder willst du die Wartungsmeldung nur zurücksetzten?



//Niffko

von Jens H. (sevensworld)


Lesenswert?

Moin Niffko,

zurück setzen möchte ich sie eigentlich nicht, sondern nur auswerten und 
wissen das eine Wartung an steht, da man ja doch nicht täglich an die 
Heizung geht. Ich versuche halt nur zu verstehen warum das in keinem 
Telegramm auftaucht.
Werde das mit der Initialisierung mal testen.

Du hast doch sicher auch ne ganze Liste von identifizierten Telegrammen, 
oder? Könntest du die nicht mal hoch laden?


RC35: 1.06
UBA3: 3.06
BC10: 2.03
KIM(1072): 11


Gruß
Jens

von Jens H. (sevensworld)


Angehängte Dateien:

Lesenswert?

Ok, Versuch fehlgeschlagen ... ich habe mal das Log angehängt. Ich finde 
nirgends die H 8 oder H08 :(

von spooniester (Gast)


Lesenswert?

Hallo Jens,

also ich habe den Servicecode und Fehlercode verifizieren können.
Ich bekomme von meiner Platine die Daten als Hexstrings im Format
AA 55 14 10 00 18 00 04 ..... gesendet und lade diese in Arrays.
Dort ist der Servicecode 25&26 als Umwandlung von Hex nach Ascii-Zeichen 
und der Fehlercode 27&28.
Die entsprechende Message beginnt mit Array-Stelle 5 = 18 und 
Arraystelle 13 =1
Ich beginne also wie am oberen Beispiel mit AA = Arraystelle 0, 55 = 
Arraystelle 1 u.s.w.

Das passt bei mir immer!

Konnte mittlerweile an die 50 MEssages rausfiltern, einzig die Heizkurve 
fehlt mir, die ist immer 0 ?

Ich versuche mal eine Übersicht zu machen!

Gruß
spooniester

von Niffko (Gast)


Lesenswert?

Hallo Jens,

war nicht einfach, aber ich glaube ich hab's. Wartungsmeldung im 
1C-Telegramm der UBA (08 00 1C). Hab' gerade nicht so viel Zeit ...


// Niffko

von spooniester (Gast)


Lesenswert?

übrigens konnte ich den Großteil der MEssages mit denen aus der 
EMS-Werte.pdf verifizieren, aber nicht alle. Einige befinden sich in den 
MEssages an anderen stellen.
Wie gesagt, ich werde in den nächsten Tagen mal eine Übersicht erstellen 
(auch im vegleich mit dem pdf von Info!)

Gruß
spooniester

von Niffko (Gast)


Lesenswert?

Niffko schrieb:
> Wartungsmeldung im
> 1C-Telegramm der UBA (08 00 1C). Hab' gerade nicht so viel Zeit ...

@Jens
Habe das Telegramm mal aus deinem Dump herauskopiert.
1
08 10 1C 00 8C 03 00 0E 00 08 00 80 00 00 00 34 00 11
2
                           ^^    ^^
3
                            |     |____wird nach Rücksetzen '00'
4
                            |    
5
                            |__H08 (Wartungsintervall nach Datum)

'0E' (14.) müsste eigentlich der Tag sein an dem 'H08' gemeldet wurde.


//Niffko

von spooniester (Gast)


Lesenswert?

Hi,
ich glaube es geht hier aber um den servicecode und nicht um die 
wartungsmeldung, oder?
Der Servicecode ändert sich ja je nach derzeitiger Funktion der Heizung 
( WW Bereitung, Heizen u.s.w.)

Gruß
spooniester

von IngoF (Gast)


Angehängte Dateien:

Lesenswert?

Habe mal bei miener Heizung die Busteilnehmer 0x08, 0x09 und 0x10 
abgefragt.
Von den Antworten die Daten enthielten habe ich eine kleine Liste 
gemacht.

Das Telegramm 0x02 ist das einzige Telegramm dass von allen 
Busteilnehmern kam und enthält die Softwarestände. Einige Telegramme 
kommen von zwei Busteilnehmern...

Vielleicht hilft es ja irgendjemanden...

Gruß
IngoF

von Niffko (Gast)


Lesenswert?

spooniester schrieb:
> ich glaube es geht hier aber um den servicecode und nicht um die
> wartungsmeldung, oder?

Nein. 'H8' = Wartungsmeldung != Servicecode


//Niffko

von spooniester (Gast)


Lesenswert?

@Niffko:
Ok, hast recht, hatte das falsch verstanden!!

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
Noch kein Account? Hier anmelden.