mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik eBus CRC Berechnung nachvollziehen


Autor: Martin Haller (martinhaller)
Datum:
Angehängte Dateien:

Bewertung
1 lesenswert
nicht lesenswert
Hallo,

seit ein paar Tagen versuche ich, die CRC in den auf unserem 
Heizungs-eBus mitgesnifften Messages nachzuvollziehen. Lt. Spec wird ein 
CRC8 ueber alle (expandierten) Bytes mit folgendem Generator-Polynom 
berechnet und ggfls expandiert an die Message angehaengt:

  x^8 + x^7 + x^4 + x^3 + x + 1

Daraus ergibt sich das Pattern 0xd9 (stimmt das?). Leider laufen auf dem 
Bus andere CRCs, als ich damit berechnet habe.

Ein paar mitgesniffte Beispiel-Botschaften:

1. 0x10 0x03 0x08 0x00 0x08 0x00 0x05 0x00 0x13 0x80 0x40 0x00 0x0a 0x71
2. 0x03 0xf1 0x08 0x00 0x08 0x00 0x14 0x00 0x13 0x80 0x00 0x00 0x0f 0xc7
3. 0x10 0x03 0x05 0x07 0x09 0x00 0x01 0x50 0x00 0x01 0x00 0xff 0x14 0xff 
0xa6
4. 0xf1 0xfe 0x05 0x03 0x08 0x01 0x00 0x40 0xff 0x30 0xff 0x00 0x13 0xd8
5. 0x03 0xfe 0x05 0x03 0x08 0x01 0x00 0x00 0x00 0x30 0x17 0x33 0x13 0x82

Das ACK Byte und das SYN Byte habe ich der Uebersichtlichkeit halber
weggelassen (sofern ein Frame nicht an die Broadcast-Adresse 0xfe geht 
und
damit gar kein ACK hat). Da diverse Frames ein (positives) ACK Byte 
haben,
bedeutet das, dass das Frame keine Bitfehler hat, also der Mitschnitt
korrekt sein muesste.

Ich habe im Netz einen CRC Algorithmus ausgegraben und in ein 
Testprogramm
verpackt. Wenn ich nun mit diesem Programm (siehe Anhang) die CRC 
berechne,
so stimmen die CRCs nie ueberein:

1. sollte sein: 0x71, berechnet: 0x84
2. sollte sein: 0xc7, berechnet: 0xa2
3. sollte sein: 0xa6, berechnet: 0xa3
4. sollte sein: 0xd8, berechnet: 0xff
5. sollte sein: 0x82, berechnet: 0xb1

Mein erster Gedanke war: das Generator-Polynom Pattern ist falsch 
berechnet. Dazu habe ich in einer Schleife fuer alle Pattern von 0x00 
bis 0xff die CRC berechnet und die Pattern ausgeben lassen, welche zu 
der Soll-CRC gepasst haben. Das habe ich mit meheren Frames gemacht und 
versucht, durch Korrelation das "richtige" Pattern zu finden. Leider war 
das statistisch praechtig verteilt; alle Pattern kamen nur 2x vor :-(

Die naechste Idee war: der Startwert der CRC ist nicht 0. Also habe ich
noch die 0xff (die man wohl manchmal verwendet) getestet, aber auch das
passt nicht.

Also bleibt nur noch ein Fehler im Algorithmus...

Hat jemand eine Idee?

Vielen Dank,
Gruss Martin

Autor: Michael Wolf (mictronics) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Polynom sollte 0x9B sein wenn ich nicht irre.

Autor: Michael Wolf (mictronics) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn ich mir die verfügbare Dokumentation im Inet anschaue dann müsste 
die CRC als 11. Byte kommen. Bei deinen obigen Messages kommt die CRC 
aber als 14.Byte, bist Du dir sicher das deine Logs stimmen?

Autor: Michael Wolf (mictronics) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ah, mein Fehler, variable Länge der Datenbytes.

Autor: Martin Haller (martinhaller)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Michael,

leider passen die CRCs bei 0x9b auch nicht....

Autor: Michael Wolf (mictronics) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja muste ich leider auch feststellen.
Eine gute Seite zum schnellen online berechnen von CRC's gibts übrigens 
hier:
http://www.zorc.breitbandkatze.de/crc.html

Autor: Markus CRC (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Möglichkeit 1 (am besten kopieren und dann anschauen):

const unsigned char CRC_Tab8Value[256] = {
   (unsigned char) 0x00, (unsigned char) 0x9B, (unsigned char) 0xAD, 
(unsigned char) 0x36, (unsigned char) 0xC1, (unsigned char) 0x5A, 
(unsigned char) 0x6C, (unsigned char) 0xF7,
   (unsigned char) 0x19, (unsigned char) 0x82, (unsigned char) 0xB4, 
(unsigned char) 0x2F, (unsigned char) 0xD8, (unsigned char) 0x43, 
(unsigned char) 0x75, (unsigned char) 0xEE,
   (unsigned char) 0x32, (unsigned char) 0xA9, (unsigned char) 0x9F, 
(unsigned char) 0x04, (unsigned char) 0xF3, (unsigned char) 0x68, 
(unsigned char) 0x5E, (unsigned char) 0xC5,
   (unsigned char) 0x2B, (unsigned char) 0xB0, (unsigned char) 0x86, 
(unsigned char) 0x1D, (unsigned char) 0xEA, (unsigned char) 0x71, 
(unsigned char) 0x47, (unsigned char) 0xDC,
   (unsigned char) 0x64, (unsigned char) 0xFF, (unsigned char) 0xC9, 
(unsigned char) 0x52, (unsigned char) 0xA5, (unsigned char) 0x3E, 
(unsigned char) 0x08, (unsigned char) 0x93,
   (unsigned char) 0x7D, (unsigned char) 0xE6, (unsigned char) 0xD0, 
(unsigned char) 0x4B, (unsigned char) 0xBC, (unsigned char) 0x27, 
(unsigned char) 0x11, (unsigned char) 0x8A,
   (unsigned char) 0x56, (unsigned char) 0xCD, (unsigned char) 0xFB, 
(unsigned char) 0x60, (unsigned char) 0x97, (unsigned char) 0x0C, 
(unsigned char) 0x3A, (unsigned char) 0xA1,
   (unsigned char) 0x4F, (unsigned char) 0xD4, (unsigned char) 0xE2, 
(unsigned char) 0x79, (unsigned char) 0x8E, (unsigned char) 0x15, 
(unsigned char) 0x23, (unsigned char) 0xB8,
   (unsigned char) 0xC8, (unsigned char) 0x53, (unsigned char) 0x65, 
(unsigned char) 0xFE, (unsigned char) 0x09, (unsigned char) 0x92, 
(unsigned char) 0xA4, (unsigned char) 0x3F,
   (unsigned char) 0xD1, (unsigned char) 0x4A, (unsigned char) 0x7C, 
(unsigned char) 0xE7, (unsigned char) 0x10, (unsigned char) 0x8B, 
(unsigned char) 0xBD, (unsigned char) 0x26,
   (unsigned char) 0xFA, (unsigned char) 0x61, (unsigned char) 0x57, 
(unsigned char) 0xCC, (unsigned char) 0x3B, (unsigned char) 0xA0, 
(unsigned char) 0x96, (unsigned char) 0x0D,
   (unsigned char) 0xE3, (unsigned char) 0x78, (unsigned char) 0x4E, 
(unsigned char) 0xD5, (unsigned char) 0x22, (unsigned char) 0xB9, 
(unsigned char) 0x8F, (unsigned char) 0x14,
   (unsigned char) 0xAC, (unsigned char) 0x37, (unsigned char) 0x01, 
(unsigned char) 0x9A, (unsigned char) 0x6D, (unsigned char) 0xF6, 
(unsigned char) 0xC0, (unsigned char) 0x5B,
   (unsigned char) 0xB5, (unsigned char) 0x2E, (unsigned char) 0x18, 
(unsigned char) 0x83, (unsigned char) 0x74, (unsigned char) 0xEF, 
(unsigned char) 0xD9, (unsigned char) 0x42,
   (unsigned char) 0x9E, (unsigned char) 0x05, (unsigned char) 0x33, 
(unsigned char) 0xA8, (unsigned char) 0x5F, (unsigned char) 0xC4, 
(unsigned char) 0xF2, (unsigned char) 0x69,
   (unsigned char) 0x87, (unsigned char) 0x1C, (unsigned char) 0x2A, 
(unsigned char) 0xB1, (unsigned char) 0x46, (unsigned char) 0xDD, 
(unsigned char) 0xEB, (unsigned char) 0x70,
   (unsigned char) 0x0B, (unsigned char) 0x90, (unsigned char) 0xA6, 
(unsigned char) 0x3D, (unsigned char) 0xCA, (unsigned char) 0x51, 
(unsigned char) 0x67, (unsigned char) 0xFC,
   (unsigned char) 0x12, (unsigned char) 0x89, (unsigned char) 0xBF, 
(unsigned char) 0x24, (unsigned char) 0xD3, (unsigned char) 0x48, 
(unsigned char) 0x7E, (unsigned char) 0xE5,
   (unsigned char) 0x39, (unsigned char) 0xA2, (unsigned char) 0x94, 
(unsigned char) 0x0F, (unsigned char) 0xF8, (unsigned char) 0x63, 
(unsigned char) 0x55, (unsigned char) 0xCE,
   (unsigned char) 0x20, (unsigned char) 0xBB, (unsigned char) 0x8D, 
(unsigned char) 0x16, (unsigned char) 0xE1, (unsigned char) 0x7A, 
(unsigned char) 0x4C, (unsigned char) 0xD7,
   (unsigned char) 0x6F, (unsigned char) 0xF4, (unsigned char) 0xC2, 
(unsigned char) 0x59, (unsigned char) 0xAE, (unsigned char) 0x35, 
(unsigned char) 0x03, (unsigned char) 0x98,
   (unsigned char) 0x76, (unsigned char) 0xED, (unsigned char) 0xDB, 
(unsigned char) 0x40, (unsigned char) 0xB7, (unsigned char) 0x2C, 
(unsigned char) 0x1A, (unsigned char) 0x81,
   (unsigned char) 0x5D, (unsigned char) 0xC6, (unsigned char) 0xF0, 
(unsigned char) 0x6B, (unsigned char) 0x9C, (unsigned char) 0x07, 
(unsigned char) 0x31, (unsigned char) 0xAA,
   (unsigned char) 0x44, (unsigned char) 0xDF, (unsigned char) 0xE9, 
(unsigned char) 0x72, (unsigned char) 0x85, (unsigned char) 0x1E, 
(unsigned char) 0x28, (unsigned char) 0xB3,
   (unsigned char) 0xC3, (unsigned char) 0x58, (unsigned char) 0x6E, 
(unsigned char) 0xF5, (unsigned char) 0x02, (unsigned char) 0x99, 
(unsigned char) 0xAF, (unsigned char) 0x34,
   (unsigned char) 0xDA, (unsigned char) 0x41, (unsigned char) 0x77, 
(unsigned char) 0xEC, (unsigned char) 0x1B, (unsigned char) 0x80, 
(unsigned char) 0xB6, (unsigned char) 0x2D,
   (unsigned char) 0xF1, (unsigned char) 0x6A, (unsigned char) 0x5C, 
(unsigned char) 0xC7, (unsigned char) 0x30, (unsigned char) 0xAB, 
(unsigned char) 0x9D, (unsigned char) 0x06,
   (unsigned char) 0xE8, (unsigned char) 0x73, (unsigned char) 0x45, 
(unsigned char) 0xDE, (unsigned char) 0x29, (unsigned char) 0xB2, 
(unsigned char) 0x84, (unsigned char) 0x1F,
   (unsigned char) 0xA7, (unsigned char) 0x3C, (unsigned char) 0x0A, 
(unsigned char) 0x91, (unsigned char) 0x66, (unsigned char) 0xFD, 
(unsigned char) 0xCB, (unsigned char) 0x50,
   (unsigned char) 0xBE, (unsigned char) 0x25, (unsigned char) 0x13, 
(unsigned char) 0x88, (unsigned char) 0x7F, (unsigned char) 0xE4, 
(unsigned char) 0xD2, (unsigned char) 0x49,
   (unsigned char) 0x95, (unsigned char) 0x0E, (unsigned char) 0x38, 
(unsigned char) 0xA3, (unsigned char) 0x54, (unsigned char) 0xCF, 
(unsigned char) 0xF9, (unsigned char) 0x62,
   (unsigned char) 0x8C, (unsigned char) 0x17, (unsigned char) 0x21, 
(unsigned char) 0xBA, (unsigned char) 0x4D, (unsigned char) 0xD6, 
(unsigned char) 0xE0, (unsigned char) 0x7B
};

/* ************************************************** */
/* Function for CRC-calculation with tab operations   */
/* ************************************************** */
unsigned char crc8_tab(unsigned char data, unsigned char crc_init)
{
   unsigned char crc;

   crc = (unsigned char) (CRC_Tab8Value[crc_init] ^ data);
   return (crc);
}


int main(int argc, char* argv[])
{
  const unsigned char auc_bytestream[] = {0x10, 0x03, 0x08, 0x00, 0x08, 
0x00, 0x05, 0x00, 0x13, 0x80, 0x40, 0x00, 0x0a};

  int i;
  char uc_crc;

  /* Initialwert */
  uc_crc = (unsigned char) 0;
  for (i = 0; i < sizeof(auc_bytestream); i++)
  {
    uc_crc = crc8_tab(auc_bytestream[i], uc_crc);
  }
  printf("CRC: 0x%02X\n", uc_crc);
  return 0;
}

Autor: Markus CRC (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Möglichkeit 2 (weniger ROM, längere Bearbeitungszeit:

unsigned char crc8_calc(unsigned char data, unsigned char crc_init)
{
   unsigned char crc;
   unsigned char polynom;
   int i;

   crc = crc_init;
   for (i = 0; i < 8; i++)
   {
      if (crc & 0x80)
      {
         polynom = (unsigned char) 0x9B;
      }
      else
      {
         polynom = (unsigned char) 0;
      }
      crc = (unsigned char)((crc & ~0x80) << 1);
      if (data & 0x80)
      {
         crc = (unsigned char)(crc | 1) ;
      }
      crc = (unsigned char)(crc ^ polynom);
      data = (unsigned char)(data << 1);
   }
   return (crc);
}

int main(int argc, char* argv[])
{
  const unsigned char auc_bytestream[] = {0x10, 0x03, 0x08, 0x00, 0x08, 
0x00, 0x05, 0x00, 0x13, 0x80, 0x40, 0x00, 0x0a};

  int i;
  char uc_crc;

  /* Initialwert */
  uc_crc = (unsigned char) 0;
  for (i = 0; i < sizeof(auc_bytestream); i++)
  {
    uc_crc = crc8_calc(auc_bytestream[i], uc_crc);
  }
  printf("CRC: 0x%02X\n", uc_crc);
  return 0;
}

Autor: Martin Haller (martinhaller)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Markus,

beide Varianten funktionieren! Die Gastherme spricht mit mir (d.h. 
andere eBus-Teilnehmer haengen ACK Bytes dran, wenn sie adressiert sind 
- auch ein ebus Ping funktioniert)!

Vielen vielen Dank!

Gruss Martin

Autor: Michael Wolf (mictronics) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Fein, nur zum Verstehen, wo war jetzt das Problem der Berechnung?
Das Polynom ist 0x9B und der Init Wert ist 0. Warum ist die Online 
Berechnung nicht in der Lage das CRC zu berechnen?

Autor: Martin Haller (martinhaller)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Michael,

Michael Wolf wrote:
> Fein, nur zum Verstehen, wo war jetzt das Problem der Berechnung?
> Das Polynom ist 0x9B und der Init Wert ist 0. Warum ist die Online
> Berechnung nicht in der Lage das CRC zu berechnen?

Usererror :-)

Ich hatte leider nicht gelesen, dass man auch Hex-Zahlen eingeben kann!
Daher hab ich die Seite als gut, aber fuer den speziellen Fall nicht 
hilfreich angesehen - leider!

Gruss Martin

Autor: Michael Wolf (mictronics) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe dort hex Zahlen eingeben, mit %. Hat aber trotzdem nicht 
funktioniert.

Autor: Markus CRC (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Martin,

freut mich, dass Dir der Code geholfen hat. Die CRC-Berechnung kann 
einen zum Verzweifeln bringen, kenne ich aus Erfahrung.

Wie interpretierst Du die Daten der Telegramme? Hast Du offizielle 
Beschreibungen des eBusses (Profile usw.)? Ich habe eine Wolf-Heizung 
mit Raumtemperaturregler, was in der Übergangszeit bei Sonnenschein 
nicht so richtig funktioniert. Wahrscheinlich werde ich dieses Problem 
im Winter angehen. Falls Du mir Doku zur Verfügung stellen könntest....
markus punkt schaetzmueller auf gmx in de

Vielen Dank
Markus

Autor: Martin Haller (martinhaller)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Markus,

Markus CRC wrote:
> freut mich, dass Dir der Code geholfen hat. Die CRC-Berechnung kann
> einen zum Verzweifeln bringen, kenne ich aus Erfahrung.

Oh, ja ich hatte schon fast verzweifelt. Dachte, ich waere nun mein 
Leben lang dazu verdammt, nur stumm auf dem ebus lauschen zu muessen ;-)

> Wie interpretierst Du die Daten der Telegramme? Hast Du offizielle
> Beschreibungen des eBusses (Profile usw.)?

Ja, ich habe beim eBus User Club angefragt und die Specs erhalten. Darin
sind Layer 1 und 2 (d.h. die elektrischen Dinge, das 
Arbitrierungsverfahren, Auto-SYN etc.) und Layer 7 mit den "normalen"
Frames. Auch ist eine Netzwerk-Management Doku dabei, die hab ich mir 
aber im Detail noch nicht durchgesehen.

Beschrieben sind auf Layer 7 leider nur die Kommunikation zwischen 
Reglern und Feuerungsautomaten; da wir eine Solaranlage dran 
angeschlossen haben, waere das natuerlich auch sehr interessant. Auf dem 
Bus konnte ich  ausser den FA<->Regler Frames auch undokumentierte 
Frames ersniffen; die gehoeren mit der Herstellerkennung 0x50 wohl zu 
der Fa. Kromschroeder.
Die wollten mir leider genauso wenig wie Wolf (wir haben eine CGB-20 
Therme) weitere Specs geben, auch nicht auf Hinweis, dass ich eine
NDA unterschreiben wuerde. Schade! (Haetten sie Linux in der Gastherme,
koennte man sie auf Sourcecode-Einsicht verklagen ;-))

Als naechsten Schritt moechte ich noch einen MAX232 an die 
Interface-Schaltung haengen und dann mal die Windows-Software von Wolf 
drauf loslassen. (Auch ein Herbst-/Winter-Projekt)

Gruss Martin

Autor: Christoph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
wir haben auch eine Wolf-Brennwerttherme (GBE20) die komische 
Regelspielchen macht.

<Windows-Software von Wolf drauf loslassen>
Wo bekommt man diese? Ich habe bisher nur ein Komplettpaket aus 
Schnittstellenwandler und Software für 250,- € gefunden.

Gruß
Christoph

Autor: Ha Jo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Martin,

hast Du die eBus Specs als PDF? Würdest Du sie mir per
Mail schicken oder sie hier posten? Ich habe auch eine Wolf-
Therme und würde sie gerne mit eigenen Mittlen steuern.

Ich haatte auch vor ca. 6 Monaten bei der User Group gefragt
aber nie eine Antwort erhalten.

Danke schön.
Joachim

Autor: Martin Haller (martinhaller)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Christoph:

> Wo bekommt man diese? Ich habe bisher nur ein Komplettpaket aus
> Schnittstellenwandler und Software für 250,- \u20ac gefunden.

Man kann zwar die SW auf der Wolf Website runterladen, aber - wie ich 
feststellen musste - nutzt es nichts: die SW spricht mit dem ISM1 
(diesem teuren Interface) ein eigenes Protokoll, leider kein eBus :-(

Gruss Martin

Autor: Sido (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@hajo
Hatte ich auch gemacht und keine Reaktion erhalten.
Inzwischen bekommt man aber, wenn man sich bei ebus.de einträgt, eine 
automatische Mail mit den entsprechenden PDFs.

Freue mich schon auf die ersten AVR-Ebus-Lösungen! Schön wäre z.B. eine 
Einbindung eines vorhandenen 433/866MHz Funktempsensors als 
Außentempsensor oder eine Funkuhr als Zeitbasis! Sowas kostet mir vom 
Hersteller einfach zuviel!

Autor: KlaRa (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
die eBus - Usergroup hat mir heute 2 MByte an Spezifikationen zugesandt. 
Nach dem ich mich im Juli das erste Mal anmeldete und nichts passierte, 
habe ich mich Samstag erneut angemeldet und heute eine Antwort erhalten. 
Das ist wirklich nicht schlecht.
Die Vaillant - Anlage ist auch schon installiert. Als erstes werde ich 
die Schnittstelle entwickeln. Ich möchte das Vaillant - Gerät vorerst 
nur lesend kontaktieren und auch jegliche Beeinflussung meinerseits 
vermeiden. Deshalb werde ich sofort mit Optokopplern arbeiten. Die 
Elektronik werde ich über ein Schaltnetzgerät ebenfalls autark 
versorgen.
Ich hoffe in den nächsten 6 Wochen starten zu können und selbst etwas 
zum Thema beitragen zu können.
mfg Klaus

Autor: Christoph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe mir nun diesen Pegelwandler zusammengebrutzelt.
Nach diversen Designfehlern in der Platine funktioniert er auch, d.h. 
ich empfange über Hyperterminal oder Serialwatcher auch "Daten".

Nur leider passen diese Daten überhaupt nicht zu der Spec.
Eigentlich sollte das SYN-Zeichen AA in Hex sein, aber meine 
mitgeloggten Daten enthalten keine AA-Zeichen.

????

Mit welchem Programm habt ihr die Daten mitgeschrieben, bzw. 
interpretiert?

Gruß
Christoph

Autor: Marc B. (marcb)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
schaue mal nach ob die Spannung am eBus auch 24V beträgt. Bei mir sind 
es nur 16V, dementsprechend mußte der Spannungsteiler angepasst werden, 
damit der OP richtig arbeitet. Denke Du hast auch den Pegelwandler nach 
dem Bild aus dem PDF-Dokument erstellt, oder?
Gruß,
Marc

Autor: Christoph (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Marc,
ich habe den Pegelwandler gemäß dem PDF-Dokument aufgebaut und versorge 
ihn von extern mit 24 V. Ferner habe ich auf der Platine noch einen 7805 
zur 5 Volterzeugung des nachgeshalteten MAX232.

Ich bekomme auch saubere 5 V Pegel auf dem Ausgangspin, bzw. es kommen 
Daten im PC an (MAX232 hinter Pegelwandler).

Ich hatte jetzt schon die Vermutung, dass der MAX232 mit seiner 
Invertierung der Signale die Daten verfälscht. ??
Daraufhin habe ich die Pin's 2 und 3 am LM358 vertauscht.

Die Daten sahen aber noch identisch aus.

Ich vermisse in den geloggten Daten die Zeichen AA, 00 und evtl. FF.

Mit welchem Programm hsat du die Daten mitgeloggt?

Gruß
Christoph

Autor: Klaus Ra. (klara)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Christoph,
ich habe meinen Pegelwandler ebenfalls seit ein paar Tagen am Laufen. 
Das Problem, dass man keine AA´s sah hatte ich anfangs auch.

071023_213344 > 15|00|15|00|15|00|15|00 15|00|15|00|15|00|15|00 
15|00|15|00|15|00|15|00 15|00|15|00|15|00|15|00 15|00|15|00|95|07|F0|AF 
D2|D7|FD|ED|FF|00|7B|A6 A9|F7|01|26|FD|FF|3B|3D FE|AB|00|15|00|15|00|15 
00|15|00|15|00|15|00|15 00|15|00|15|00|15|00|15 00|15|00|15|00|15|00|15 
00|15|00|15|00|15|00|15 00|

Der Fehler war der, mein Signal kam invertiert an.

AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA| 
AA|AA|AA|AA|AA|10|08|B5|10|09|00|00|00|78|FF|FF|41|FF|00|22|00|01|01|9A| 
00|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA| 
AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA| 
AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA| 
AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|AA|
071027_182544 > 182544: 
10|08|B5|10|09|00|00|00|78|FF|FF|41|FF|00|22|00|01|01|9A|00|

Also wenn Du 15 00 emfängst, so ist das Singal noch zu invertieren.

Nachdem ich mich ein wenig mit dem eingentliche Inhalt der Daten 
auseinandergesetzt habe, musste ich leider fest stellen das Vaillant für 
seine Primärbefehle fast immer B5 verwendet. In der Doku des 
eBus-Userclubs steht, dass man jedem User für proprietäre Aufgaben einen 
Code spendiert hat. Vaillant hat eben B5. Nur 99% aller Meldungen bauen 
auf B5. Das heisst, den Rest darf man sich hart erarbeiten.

Meine Frage, wer hat schon B5 - Befehle von Vaillant entschlüsseln 
können?

Gruss Klaus.

Autor: Marc B. (marcb)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Christoph,
ich habe die Versorgungsspannung direkt über den eBus geholt, daher 
mußte ich den Spannungsteiler anpasssen.
Versuche doch einmal die Pegel direkt an OP (Pin 2/3 und 1) zu messen. 
Da sollte ja sauber eine Low und High Signal vom eBus erkannt werden.
Ansonsten schließe mal ein Oszilloskop am eBus an und schaue Dir die 
Signalverläufe an.
Ich denke, wenn Du für den 130K Widerstand im Spannungsteiler ein Poti 
einbaust, dann kannst Du sauber einen Abgleich herstellen. So habe ich 
das auch gemacht.
Also Programm am PC habe ich u.a. Hyperterminal oder Hercules Terminal 
verwendet.
Bei mir ist der Herstellercode 10 (für die Fa. TEM, die baut die 
Regelung für die Wärmepumpen von Hautec). Auch hier ist dann bei der 
Auswertung noch etwas Arbeit angesagt.

Gruß,
Marc

Autor: Christoph (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Hi,
danke vorerst für die Hilfestellung.

Es kann sein, dass ich den Fehler gefunden habe.
Scheinbar hat unsere Wolf-Brennwertherme keinen EBus sondern den 
Vorläufer Namens SCOM.
In der Montage- und Bedienungsanleitung der Therme steht zwar etwas von 
EBus, aber ich habe in anderen Wolf-Dokumenten etwas von einem SCOM-Bus 
bei unserer Therme gefunden.

#Ansonsten schließe mal ein Oszilloskop am eBus an # Leider habe ich 
keinen Oskar zur Verfügung. Da ich aber recht zuverlässig Daten über den 
Pegelwandler bekomme, glaube ich, dass die Pegel passen.

Ich werde mal weiter forschen, so leicht gebe ich nicht auf!

Gruß
Christoph

Autor: Friedrich H. (frihu)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

habe mit Interesse eure Beiträge über Ebus gelesen. Ich habe mit einer 
Wärmepumpe von Bartl nun auch einen Regler von TEM mit Ebus und würde 
gerne einige Daten auslesen. Mir fehlt allerdings der 
Schnittstellenwandler und ich möchte keine 200€ für so ein Teil 
bezahlen. Wenn ich es recht verstanden habe, lässt sich der Wandler wohl 
selber "zusammenbruzzeln". Kann mir jemand sagen, wo ich Unterlagen und 
evtl. die passenden Bauteile bekomme?

Gruß
Friedrich

Autor: Marc B. (marcb)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
die Bauteile kannst Du bei Reichelt bestellen und einen Schaltplan 
findest Du in folgendem Dokument:
http://www.investigacion.frc.utn.edu.ar/giii/REDES...


Gruß,
Marc

Autor: Friedrich H. (frihu)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Marc,

vielen Dank für diesen Tipp. Jetzt fehlt ja nur noch die Platine mit
Bestückungsplan dann kann´s losgehen. Gibt es die auch irgendwo oder
habt Ihr die Schaltung auf Rasterplatinen aufgebaut?

Gruß Friedrich

Autor: Marc B. (marcb)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich habe das für den ersten Versuch erstmal auf einer Rasterplatine 
gelötet.
Sicherlich kann man auch später mal über ein layout nachdenken.

Viel Spaß.

gruß,
Marc

Autor: Stefan Wimmer (wswbln)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Leute,

gibt's was Neues von der "eBus-Front"?
Was machen die Decodier-Anstrengungen?


Sido wrote:
> @hajo
> Hatte ich auch gemacht und keine Reaktion erhalten.
> Inzwischen bekommt man aber, wenn man sich bei ebus.de einträgt, eine
> automatische Mail mit den entsprechenden PDFs.

Ich habe mich auch vor ca. 1/2 Stunde registriert und vor 1/4 Stunde die 
Mail mit einem zeitweilig gültigen Link auf die Spec. bekommen. Und das 
am Samstag (scheint also wirklich ein Auto-Reply zu sein).

Das Thema eBus ist bei mir zwar noch nicht akut, aber meine Heizung samt 
Steuerung hat nun ihre 13 Jahre auf dem Buckel und es schadt' sicher 
nichts, sich so langsam mal zu informieren, was sich am Markt so tut 
-daher >ABO< für diesen Thread.

Autor: Vorname Nachname (mhz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
abo

Autor: Ebc Ebc (ebc)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Die Gastherme spricht mit mir (d.h.andere eBus-Teilnehmer haengen ACK
>Bytes dran, wenn sie adressiert sind- auch ein ebus Ping funktioniert)!

@Martin Haller

Für das Senden eines Telegrammes welche QQ (Quelladresse ) hast du da 
genommen ? (Adresse FFh oder 00h vielleicht ? (Modem/PC) )

Sendest du einfach darauf los oder hast du die Sachen wie im Dokument 
"Netzwerkmanagment" besschrieben implementiert ?

fg
Christian

Autor: golem (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

da meine alte Vaillant Heitzung dann jetzt doch mal kaputt war ( nach 30 
Jahren ist das OK ;-) ). Habe ich mir eine neue zugelegt. Bei der 
installation der neuen vielen mir direkt die Klemmen mit der Bezeichnung 
Bus auf.

Es kribbelt in den Fingern. Würd sich super mit

Da es die ebus Seite nicht mehr gibt, hier mal wieder die FCrage, wo 
kann ich Dokumentation her bekommen???


gruß golem

Autor: frihu (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

hab auch eine Wärmepumpe mit Steuerung über eBus gekauft und mir hat es 
auch in den Fingern gekribbelt. Bin unter anderem auf der Seite:
http://www.investigacion.frc.utn.edu.ar/giii/REDES...
fündig geworden. Ich bin so weit gekommen, dass ich mir den 
eBus-Konverter zusammen gebaut habe und auch zum laufen gebracht habe. 
Letztendlich bin ich aber aus Zeitmangel an der Software gescheitert. Da 
meine Heizung nun auch zu großer Zufriedenheit läuft, ist das Projekt 
bei mir eingeschlafen. Nun liegt der Konverter bei mir rum und wartet 
auf weitere Einsätze. Ich wäre bereit, ihn für schlappe 50€ abzugeben.

Wenn Interesse besteht, melde Dich.

Gruß Friedrich

Autor: Vorname Nachname (mhz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Welche Variante des Konverters hast du da aufgebaut?

Autor: frihu (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
habe dir die Schaltung im Anhang mit geschickt. Sie ist auf Seite 28 des 
PDF_Dokuments. Habe aber mit galvanischer Trennung über Optokoppler 
gearbeitet (wegen evtl. Rückwirkungen und Garantie usw.), 
Stromversorgung über externe 24V-Versorgung und Anschluss an PC über 
Com-Schnittstelle, Datenflussanzeige über Leuchtdioden. Das ganze auf 
einer Lochplatine aufgebaut und in formschönen Gehäuse (wie gesehen) 
verpackt.

Falls Du noch weitere Infos brauchst, melde Dich einfach direkt bei mir, 
meine Mail ist frihu1@web.de

Gruß Friedrich

Autor: Juri Haberland (juri)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Da ich momentan keine bessere Stelle finde, hänge ich hier einfach mal 
ein Dokument an, in dem ich alle vom mir gefundenen Vaillant eBus 
Kommandos soweit möglich dokumentiert habe - sowohl als PDF als auch als 
OpenOffice-Dokument. Wer Ergänzungen oder Korrekturen hat, bitte 
entweder das Dokument geändert anhängen, oder wir setzen den Inhalt in 
ein Wiki.

Gruß, Juri

Autor: KlaRa (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Juri,

>> alle vom mir gefundenen Vaillant eBus Kommandos soweit möglich dokumentiert

Das macht ja wieder mut. Wie bist Du da vorgegangen?
Ich hatte festgestellt, dass gerade Vaillant von firmeneigenen Codes 
reichlich gebrauch macht. Ich habe auch keinerlei Möglichkeit gesehen an 
Informationen von Vaillant heranzukommen.

Gruss Klaus.

Autor: Juri Haberland (juri)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Klaus,

ich habe mich mit einem selbstgebauten Interface auf den Ebus gehängt 
und angefangen, die Befehle mitzulesen. Dazu habe ich mir ein kleines 
Programm geschrieben, welches die Befehle dekodiert - erst habe ich nur 
als Hex anzeigen lassen und dann versucht, die Werte zu interpretieren.
Es war halt etwas Detektivarbeit notwendig: Unterscheiden der Befehle, 
einteilen in Kommunikationsrichtungen (Regler -> Therme, Regler -> 
Bcast, ...) und dann einen Befehl herausnehmen und sich die Änderungen 
der Werte über die Zeit ansehen und überlegen, welcher Datentyp (z.B. 
BCD, Data1c, Data2b, ...) dahintersteckt. Dann die Werte mit den 
Anzeigen am Boiler/ Regler vergleichen...

Wäre sehr interessant, mal einen Mitschnitt von einer anderen 
(Vaillant-)Installation zusehen.

Gruß,
Juri

Autor: KlaRa (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Juri,
mitlesen konnte ich auch schon. Dann musste ich leider feststellen, dass 
Vaillant reichlich Gebrauch von eigenen Codes macht. Dein Ansatz macht 
mir wieder Mut sich doch noch einmal mit dem Thema zu beschäftigen. Ich 
hoffe in den nächsten Monaten mal dazu zu kommen. Ich werde jedenfalls 
dann berichten.

Gruss Klaus.

Autor: 18F452 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute, falls es jemanden interesiert anbei einige Daten 
Mittschnitte einer Vaillant auromatic 560
FF EC B5 09 03 0D 00 00  BA 00 03 F9 02 00 8A 00    SP1 0x02 
F9/16=47,56C
                                    --HByte
                                 --LByte

FF EC B5 09 03 0D 01 00 21 00 03 5D 02 00 90 00    SP2  0x03 
5D/16=37,81C
                                    --HByte
                                 --LByte

FF EC B5 09 03 0D 02 00 17 00 03 00 00 A9 01 E6 00  SP3
                                    --HByte
                                 --LByte

FF EC B5 09 03 0D 03 00 8C 00 03 27 02 00 40 00    Kol1 0x02 
27/16=34,43C
                                    --HByte
                                 --LByte

FF EC B5 09 03 0D 04 00 7B 00 03 2A 00 00 13 00    Kol2 0x00 
2A/16=2.625C
                                    --HByte
                                 --LByte

FF EC B5 09 03 0D 05 00 E0 00 03 DC 01 00 9F 00    Ertrag 0x01 
DC/16=29.75C
                                    --HByte
                                 --LByte

Autor: KlaRa (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich bin daran sehr interessiert. Könntest Du das noch ein wenig mehr 
kommentieren?

SP1 0x02,...,Kol1 0x02,...Ertrag 0x01


Juri Haberland hat in seiner Aufstellung der Vaillant Commands den 
Service B5h 09h noch nicht erfasst.

Gruss Klaus.

Autor: Juri Haberland (juri)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Klaus,

wenn man sich die Hex-Daten und die Bedienungsanleitung ansieht, ist das 
Format eigentlich klar (bis auf die unbenutzten Felder, da muß man 
raten):

SP1-3 sind Temperatur Speicherfühler 1-3 in °C
Kol1/2 sind Temperatur Kollektorfühler 1/2 in °C
Ertrag ist Ertrag, wobei die Bedienungsanleitung von kWh spricht, nicht 
von °C

Das einzige, das mich wirklich verwundert hat, ist die Absenderadresse 
FFh, sprich "PC/Computer".

@18F452:
Hast du das mit einem Vaillant-Programm vom PC aus abgefragt?

M1 QQ        Source address
M2 ZZ        Target address
M3 PB  = B5h Vaillant command
M4 SB  = 09h Get (Solar?) Data
M5 NN  = 03h Length of data
M6 xx1 = 0Dh (???, aber konstant)
M7 xx2 = 00h - 05h Get SP1, SP2, SP3, Kol1, Kol2, Ertr.
M8 xx3 = 00h (???, aber konstant)
M9 CRC
S1 ACK
S2 NN  = 03h Length of data
S3 dd_L |
S4 dd_H |= Data2c
S5 yy  = 00h Fühler angeschlossen, oder AAh kein Fühler angeschlossen
S6 CRC
M10 ACK

Werde ich demnächst in das Dokument aufnehmen, kann aber auch jeder 
andere machen und hier wieder posten...

Gruß,
Juri

Autor: 18F452 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Juri

Ich hatte die seltene Gelegenheit bei Wartungsarbeiten die Falle scharf 
zu machen und mit zu loggen.
Nach Analyse des Outputs fing ich an die einzelnen Telegramme zu 
analisieren.
(Bin immer noch dran;-)
Mit Ertrag ist hier der Ertragsfühler gemeint und wirklich in Grad Cel.
Die erzeugte kWh Menge liegt auf einem anderen Speicherplatz.

Die bislang ausgeführten Abfragen laufen bei mir tatsächlich über den 
PC(selbstbau Adapter ohne gal.
Trennung wie weiter oben beschrieben-->RS232-->C Progy)
Später möchte ich dies alles in den müC packen.
Für die SRC Adresse kann auch ein beliebiger anderer Wert hergenommen 
werden.
Einfacheitshalber habe ich diese "FF" einfach aus dem Output übernommen.

Weiteres Folgt

Autor: Juri Haberland (juri)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

würdest du deinen Mitschnitt zur Verfügung stellen, damit ich da auch 
mal reingucken kann?

Gruß,
Juri

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

in einem anderen Thread versuch ich grade, meinen Pegelwandler ans 
Laufen zu bekommen. Wir haben hier eine Vaillant auromatic 560, die ich 
auslesen will. Habt ihr denn auf dem eBus, wenn ihr mit dem Multimeter 
messt eine konstante Spannung oder sehr ihr das Rechtecksignal?
Muss die Kommunikation bei dem Solarregler irgendwie aktiviert werden?

Könnte mir jemand, der die auromatic erfolgreich ausliest, einen 
Schaltplan seines Pegelwandlers zukommen lassen? Ich verzweifel hier 
grad ein bißchen...

Gruß und Danke schon mal im Vorraus!
Dirk

Autor: Siegmund Schreiber (siegmund)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Juri,

ich habe eine auroMATIC 620 und würde sie ebenfalls gerne per PC 
auslesen. Einen RS232-Reader habe ich mir schon gebaut.

Toll dass Du die Vaillant-Befehle bereits zum Teil dekodieren konntest. 
Es gibt übrigens mittlerweile ein eBus-Wiki:
http://ebus.webhop.org

Dumm finde ich die Tatsache, dass es anscheinend bei B5h 04h 
(GetDateTime) verschiedene Kommandos gibt, abhängig von Parameter1 
(erstes gesendetes Datenbyte) und Deine Beschreibung wirklich nur für 
M6=0 gilt.

Anbei ein kurzer Log:

10 26 B5 04 01 00 D9 00 0A 03 37 08 23 18 02 04 10 50 00 A3 00
     *** Date: 18.02.2010  23:08:37
10 3F 05 01 05 A9 01 24 24 00 00 37 00
10 EC B5 04 01 0D C5 00 05 00 00 00 80 00 4C 00
3F 10 05 00 01 A9 01 C2 00
10 EC B5 04 01 09 C1 00 0A 00 00 00 00 07 16 00 00 00 00 74 00
10 EC B5 04 01 12 DA 00 0A A1 FF 00 5E 0B 00 80 00 00 00 11 00
10 FE B5 05 04 27 00 1E 00 D4 AA
10 EC B5 04 01 0F C7 00 0A 52 03 1F 01 21 FF 21 FF 00 00 4A 00
10 26 B5 04 01 01 D8 00 09 19 04 00 00 02 05 00 00 00 2C 00
10 EC B5 05 07 2B 0F 01 00 00 05 00 AB 00 00 00 00
10 3F 05 01 05 A9 01 24 24 00 00 37 00
10 26 B5 04 01 0D D4 00 05 23 00 D7 01 11 E2 00
10 26 B5 04 01 09 D0 00 0A 19 11 3C 00 05 14 00 23 28 00 59 00
10 EC B5 04 01 12 DA 00 0A A1 FF 00 5E 0B 00 80 00 00 00 11 00
10 26 B5 05 04 2D 00 00 00 82 00 00 00 00
10 FE B5 05 04 27 00 1D 00 E2 AA
10 EC B5 04 01 0F C7 00 0A 52 03 1F 01 21 FF 21 FF 00 00 4A 00
10 EC B5 04 01 11 D9 00 06 50 0C 08 50 07 03 B2 00
10 26 B5 05 07 2B 0F 01 00 00 05 00 68 00 00 00 00
10 26 B5 09 01 18 3F 00 0A 00 00 00 00 00 00 00 00 00 00 9F 00
10 3F 05 01 05 A9 01 24 24 00 00 37 00
10 50 B5 04 01 0D F2 00 05 00 00 00 80 00 4C 00
10 50 B5 04 01 09 F6 00 0A 41 41 78 00 80 16 00 0F 4B 00 22 00
10 EC B5 04 01 12 DA 00 0A A1 FF 00 5E 0B 00 80 00 00 00 11 00
10 FE B5 05 04 27 00 1D 00 E2 AA
10 EC B5 04 01 0F C7 00 0A 52 03 1F 01 21 FF 21 FF 00 00 4A 00
10 26 B5 04 01 01 D8 00 09 19 04 00 00 02 05 00 00 00 2C 00
10 50 B5 05 07 2B 0F 01 00 00 05 00 B7 00 00 00 00
10 FE 07 00 09 50 00 01 09 23 18 02 03 10 AD AA
10 3F 05 01 05 A9 01 24 24 00 00 37 00
10 25 B5 04 01 0D DE 00 05 00 00 52 03 37 4B 00
10 25 B5 04 01 09 DA 00 0A 37 00 00 00 03 16 00 0F 5A 00 4E 00
10 EC B5 04 01 12 DA 00 0A A1 FF 00 5E 0B 00 80 00 00 00 11 00
10 26 B5 04 01 00 D9 00 0A 03 13 09 23 18 02 04 10 50 00 08 00
     *** Date: 18.02.2010  23:09:13
10 FE B5 05 04 27 00 1D 00 E2 AA
10 EC B5 04 01 0F C7 00 0A 52 03 1F 01 21 FF 21 FF 00 00 4A 00
10 EC B5 04 01 11 D9 00 06 50 0C 08 50 07 03 B2 00
10 25 B5 05 07 2B 0F 01 00 00 05 00 16 00 00 00 00
10 3F 05 01 05 A9 01 24 24 00 00 37 00
10 23 B5 04 01 0D CA 00 05 00 00 00 80 00 4C 00
10 23 B5 04 01 09 CE 00 0A 14 00 00 00 06 16 00 0F 4B 00 80 00
10 EC B5 04 01 12 DA 00 0A A1 FF 00 5E 0B 00 80 00 00 00 11 00
10 FE B5 05 04 27 00 1D 00 E2 AA
10 EC B5 04 01 0F C7 00 0A 52 03 1F 01 21 FF 21 FF 00 00 4A 00
10 26 B5 04 01 01 D8 00 09 19 04 00 00 02 05 00 00 00 2C 00
10 23 B5 05 07 2B 0F 01 00 00 05 00 EA 00 00 00 00
10 3F 05 01 05 A9 01 25 25 00 00 7F 00
10 EC B5 04 01 0D C5 00 05 00 00 00 80 00 4C 00
10 EC B5 04 01 09 C1 00 0A 00 00 00 00 07 16 00 00 00 00 74 00
10 EC B5 04 01 12 DA 00 0A A1 FF 00 5E 0B 00 80 00 00 00 11 00
10 FE B5 05 04 27 00 1D 00 E2 AA

Autor: Juri Haberland (juri)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Sigmund,

tja, blöd halt, daß die Hersteller nicht die allgemeingültigen Befehle 
nehmen, sondern jeder sein eigenes Süppchen kocht (damit ja nicht eine 
Wolf Therme mit einem Vaillant Regler funktioniert o.ä.)...

Falls ich am Wochenende dazu komme, werde ich mal die Vaillant-Doku 
aktualisieren und eventuell mein kleines (Linux-)Programm hochladen.

Gruß,
Juri

Autor: Siegmund Schreiber (siegmund)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich habe die Daten von oben in diesem Thread sowie einige zusätzliche 
Informationen, die ich noch hatte in ein Dokumenten-Update eingearbeitet 
(V0.1.0) und im eBus-Wiki abgelegt:

http://ebus.webhop.org

Wer noch weitere Informationen beisteuern will, kann dies gerne tun, das 
Dokument liegt dort als PDF sowie auch auch im ODT Format.

Grüsse,
Siegmund

Autor: Dirk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

weiß jemand, ob bei der auromatic 560 eine externe Busversorgung nötig 
ist? Evtl. liest 18F452 ja noch mit. Er liest die 560 ja erfolgreich 
aus.
Für Tipps im Voraus schon mal Danke!

Autor: Hugo Portisch (portisch)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Auch wenn dieser Beitrag schon älter ist:

Für Vailliant schaut euch einmal die Software vrDialog an:
http://www.vaillant.co.uk/trade/products-t/control...

Nach der Installation ist ein Database File zu finden:
vrDIALOG810.mdb

Da stehen viele Interessante Sachen drinnen wie Master/Slave Adressen, 
ID Beschreibungen usw...

Autor: Klaus Ra. (klara)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Hugo,
ist das dort nicht nur ein Update?
Gruss Klaus.

Autor: Hugo Portisch (portisch)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe es einfach installiert. Also ist es ein komplettes Setup. 
Hardware dazu habe ich nicht. Ich habe mir nur das Database File 
angesehen.

Autor: Klaus Ra. (klara)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Hugo,
Danke, könnte interessant sein.
Gruss Klaus.

Autor: Valent Turkovic (valentt)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich bin auch interessiert, bei der Kontrolle der Vaillant-Kessel mit 
kleinen Linux-basierten Geräten wie TP-Link WR703n mit OpenWRT.

Gibt es Linux-Bibliothek, die Ebus-Protokoll und vor allem 
Vaillant-Erweiterungen unterstützt?

Autor: Klaus Ra. (klara)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Valent,
> Gibt es Linux-Bibliothek, die Ebus-Protokoll und vor allem
> Vaillant-Erweiterungen unterstützt?

Das ist mir nicht bekannt. Aber es gibt seit dem 31.12.2012 etwas 
vergleichbares, geschrieben in PHP!

http://www.ip-symcon.de/forum/threads/20487-eBus-Connector
http://www.ip-symcon.de/forum/threads/20547-eBus-Manager

Der Kollege terenyi hat dort in zwei Beiträgen eine komplette 
Applikation als Modul für ip-symcon bereitgestellt. Obwohl ich eher eine 
Hass-Liebe zu PHP habe muss ich sagen das durch die Programmierung von 
terenyi bei mir das Ansehen von PHP stark gestiegen ist. Ich wusste 
zuvor nicht das man unter PHP so sauber programmieren konnte!

Gleich am Anfang der Beiträge hat er jeweils die Software, die dann noch 
verbessert wurde, bereitgestellt.

Angehängte Dateien Angehängte Dateien
    Dateityp: zip eBus Connector v1.3.zip (11.9 KB, 293x aufgerufen)
    Dateityp: zip eBus Connector v1.3 Source.zip (13.0 KB, 245x 
aufgerufen)
bzw.
Angehängte Dateien Angehängte Dateien
    Dateityp: zip eBus Manager v1.4 Installer.zip (29.2 KB, 256x 
aufgerufen)
    Dateityp: zip eBus Manager v1.4.zip (15.2 KB, 340x aufgerufen)

Ich habe dies unter VB.NET umgesetzt. Im Kern haben wird dort ein Event 
SerialDataReceived das den EBus ausliest und bei passender Gelegenheit 
Daten in den EBus schreibt.
Ausserhalb haben wir einen Thread der als Nachrichtenverabeiter arbeitet 
und die Daten über eine ReceiveQueue empfängt. Diese Entkopplung ist 
wichtig, da der Heizkessel ziemlich viel Traffic erzeugt und nicht 
gestört werden sollte. Im weiteren Verlauf folgt ein wichtiger Teil, die 
Daten werden ausgewertet.

An diesem Part versuchte ich mich schon vor 2010, hatte ein paar 
Mitstreiter, aber kamen nicht so recht weiter. Erst im Oktober 2012 war 
der Durchbruch geschafft. In internationaler Zusammenarbeit zwischen 
einem Franzosen und einem Deutschen wurde der Code geknackt und ist im 
Beitrag als analyseVaillant3.zip angehangen.

www.ip-symcon.de/forum/threads/19829-Vailant-Ecotec-Plus-und-VCR430-mit- 
eBus-steuern

Angehängte Dateien Angehängte Dateien
    Dateityp: zip analyseVaillant3.zip (75.3 KB, 479x aufgerufen)

Übrigens, terenyi kommt m.E. aus Wien. Eine tolle Sache von den Dreien!
Ich würde mir die drei Beiträge mal genau ansehen. Da steckt einiges an 
Know How drin das Dir weiterhelfen wird.

Wenn Du in PHP zu Hause bist, dann ist ip-symcon bestimmt das Richtige 
für Dich.

Noch eins, der EBus-Koppler. Ich hatte damals zwar selber einen 
EBus-Koppler als Protyp entwickelt, wollte aber möglichst schnell den 
Betrieb aufnehmen können und hatte mich nach Fertiggeräten umgeschaut. 
Im Forum gab es da Kontakte zu eService.

http://www.eservice-online.de

Ich habe den "eBus Koppler USB" gekauft. Der läuft prima und hat noch 
nie Probleme verursacht.
mfg klaus

Autor: John (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt auch das ebusd Projekt auf github und dazu passende aus der MDB 
generierte Konfigurationsfiles:

https://github.com/john30/ebusd

https://github.com/john30/ebusd-configuration/tree...

Viele Grüße,
John

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.