www.mikrocontroller.net

Forum: Mikrocontroller und Elektronik ebus protokoll mitschnitt bei einem Wolf Heizkessel


Autor: Bernd (Gast)
Datum:

Hallo kann mir jemand weiterhelfen ich habe mir den 232 Converter
zusammengebaut und kann auf den ebus zugreifen.
Habe mir auch die Spezifikation vom ebus user club heruntergeladen aber
in der
Spezifikation sind keine Telegramme dabei mit denen ich relevante Daten
aus der Steuerung auslesen kann.
Hat irgend jemand ein Bediengerät das an einer Wolf Heizung über ebus
dranhängen und kann den Telegramm verkehr mitschneiten und aufzeichnen.
Damit man telegramme herausbekommt mit der man die einzelnen Messwerte
aus der Steuerung herausbekommt.
Oder hat schon irgend jemand sich die Telegramme herausgesucht?
Wenn man ein Telegramm zum auslesen der Hersteller Definition an die
Regelung schickt zeigt es die x10 und das bedeutet Tem
Autor: jÜrgen Grieshofer (Firma: 4CKnowLedge) (psicom) Benutzerseite
Datum:

Bernd wrote:
> Hallo kann mir jemand weiterhelfen ich habe mir den 232 Converter
> zusammengebaut und kann auf den ebus zugreifen.

WTF? Die RS232 Schnittstelle ist eine Punkt zu Punkt Verbindung und ebus
wie der Name schon sagt ein Bussystem...


> Ausschnitt der Webseite "ebus.de/spec.html"
HIGH = 1 = 15VDC... maximal 24VDC
LOW = 0 = 9 ... 12 VDC

sieht mir nicht nach RS232 Spec. an...


Wieso lädst du dir die Spec. nicht runter und versuchst dann ma das
ganze zu verstehen und dann einen Logger zu baun?


lg psicom
Autor: KlaRa (Gast)
Datum:

Hallo Bernd,
ich weiss nicht wie das bei Wolf ist, aber bei Vaillant. Die eBus -
Usergroup will den eBus jetzt offensichtlich populärer machen. In den
Spezifikationen ist ja auch eigentlich alles notwendige enthalten. Man
hat auch den Gründungsmitgliedern jeweils einen eigenen Code spendiert
für properitäre Zwecke. Und davon macht Vaillant leider reichlich
gebrauch. Ich habe es vorerst auf Eis gelegt, den Code irgendwie zu
entschlüsseln, da ich mich noch auf wichtigeres konzentrieren muss.
Irgendwann komme ich aber darauf zurück. Schade das die Firmen so
handeln.

Gruss Klaus.
Autor: Bernd (Gast)
Datum:

Jürgens Worte:
>Wieso lädst du dir die Spec. nicht runter und versuchst dann ma das
>ganze zu verstehen und dann einen Logger zu baun?

Ich habe die Spec. vom ebus schon und mit meinen Converter kann ich mich
mit dem PC an den ebus wie ein Bus Teilnehmer reinhängen . Da einzige
was auf dem bus zu sehen ist das die Heizung jede stunde ein paar
Telegramme schick in dem sie versucht Bediengeräte anzusprechen und ein
ein Telegramm wo sie das Datum und die Aussentemp Sendet.
In der Speci sind nur allgemeine Telegramme beschrieben, auf die meisten
spricht meine Heizung nicht an.
Es ist so wie Klaus sagt man hat auch den Gründungsmitgliedern jeweils
einen eigenen Code spendiert.
Um aus meiner Wolf Heizung die einzelnen Messwert herauslesen zu können
müsste ich eben einen Mitschnitt eines Datenverkehr zwischen einer Wolf
Heizung und einen anderen Master (zb. Fernbedienung am ebus) haben um
dann die Telegramme heraus zu suchen die ich verwenden möchte.
Autor: Sebastian Dietz (sdietz)
Datum:

Ich arbeite gerade an dem gleichen Problem. Ich hab eine Wolf R3 mit
eBus Bedienmodul. Hab mir einen ATmega32 an den eBus gehängt und möchte
automatisiert die Brennerlaufzeiten und die Starts alle 24 Stunden auf
eine SD Card schreiben.

Zu Übungszwecken hab ich ein LCD Display angeschlossen was mir schon
jetzt infos wie die Kesseltemperatur, Warmwasser und Aussentemperatur
gibt. Ausserdem ob gerade Wärme im HK gebraucht wird, oder nicht.

Die Betriebszähler konnte ich noch nicht auslesen. Die Datagramme die
laut eBUS Spec dafür verwendet werden sollten, werden bei Wolf durch
proprietäre Nachrichten ersetzt. Selbst wenn ich alle  infos über das
Bedienmodul Abfrage, kann ich ohne die specs der
Primärbefehldefinitionen der Hersteller nicht entschlüsseln. Die Wolf
Steuerung sendet übrigens viel mit Primärbefehl 0x50, was zu dem
Hersteller Kromschöder AG gehört...

Ich hab die eBUS group mal angeschriben da die Primärbefehldefinitionen
laut ihrer Spec auf ihrer Webseite liegen sollten, tun sie aber nicht.

Zur Zeit kann ich noch nicht auf dem eBUS senden (hatte noch keine Zeit
ein vernünftiges Interface zu bauen...) weiss also nicht was die R3 dazu
sagen würde wenn ich ihr z.B.: den Befehl 03 04 senden würde (Gesamt
Anlaufzähler lesen)

Wenn jemand mehr Infos hat, nur her damit. Ich bastel gerne am eBUS ;-)

Sebastian
Autor: Sebastian Dietz (sdietz)
Datum:
Angehängte Dateien:

Hier mal was ich vor ein paar Tagen vom eBUS mitgeschnitten hab. Ich hab
relativ viel Verkehr auf dem Bus.

Sebastian
Autor: Ulrich P. (uprinz)
Datum:

Hi!

Weiß noch nicht, wie das bei meiner Buderus ist, aber rein informell
würde mich solch ein eBus Interface auch interessieren. Kannst Du da mal
was posten? Ich denke, dass ich dann demnächst auch ein paar Protokolle
beisteuern könnte. Zumal ich eine Remote-Unit drann hängen habe. Ein
Datenkabel liegt auch schon in der Wand zwischen dem Kessel und dem
Arbeitszimmer, aber da sind halt noch beide Enden lose :)

Gruß, Ulrich
Autor: Christian Ebner (Gast)
Datum:

Hallo,
Gibts schon was neues. Ich habe mir auch einen Konverter gebastelt und
empfange auch schon massiv Telegramme. Nur finde ich nicht mal heraus
welches Telegramm für zb. die Außentemparatur ist. Kann mir da wer Tipps
geben.
danke
Christian
Autor: Ulrich P. (uprinz)
Datum:

Hi!

Ich habe das Projekt erst einmal auf schlechteres Wetter verschoben.
Aber wenn Du neben den Telegrammen auch ein paar Daten mehr hast, also
einiges, was die Bedieneinheit oder der Kessel so anzeigen ( Druck,
Vorlauf- /Rücklauftemp., Uhrzeit, Datum u.s.w.) dann stell es doch mal
hier rein und wir finden dann schon was.

Gruß, Ulrich
Autor: Seb H. (seppl)
Datum:

abo
Autor: Sebastian Dietz (sdietz)
Datum:

Ich hab mir letztes Wochenende endlich mein eBus interface fertig
gebaut. Ist noch nicht richtig getestet, sollte aber funktionieren.
Empfangen tut es schon. Senden muss ich noch testen.

Ich werde mir mal in nächster Zeit ein Programm schreiben was das
Protokoll das über den Bus läuft entschlüsselt, zumindest die bekannten
datagramme und unbekannte versucht in sinnvolle daten um zu wandeln.

Das kann aber ein wenig dauern, da im Moment andere Sachen als Heizung
wichtiger sind.

Die Hardware ist in Anlehnung an das Referenzdesign in der eBus Doku
aufgebaut. Mit galvanischer Trennung und RS232 Pegelwandlung. Der erste
Versuch hatte leider zu viel Strom vom Bus gezogen und ist in die Tonne
gewandert...

Mal sehen wann die erste Softwareversion fertig ist. Ich will eh grad
ein wenig Perl/Tk lernen. Das wär doch ein nettes Projekt dafür. ;-)

ciao

Sebastian
Autor: Ebc Ebc (ebc)
Datum:

Hallo,
Also ich habe mir auch einen Schnittstellenwanndler zusammen gebaut und
empfange Telegramme.
Meine Erkentnisse:

Außentemperatur kann aus folgenden Telegrammen genommen werden.

Tele
QQ ZZ 05h 03h       --> Byte 13
QQ ZZ 08h 00h       --> Byte 8-9 ( Datentyp DATA2b )
   -- Achtung ich bekomme 3 verschiedene 08h 00h Tele.
      ( die Zieladresse ist anders ). Je nachdem scheint die Außentemp
      die aktuelle Temp zu sein bzw der Mittelwert.

Laut Beschreibung sollte auch Telegramm 07h 00h Außentemperatur
enthalten, bei meiner Wolf R3 kommt aber nur der Ersatzwert 8000h

Aktuelle Warmwassertemperatur ( Boilertemp )
Aus Telegramm 05h03h --> Byte 12

Aktuelle Kesseltemperatrur
Aus Telegram 05h03h --> Byte 10 ( Datentyp DATA1c -> (einfach /2
rechenen))

Kesselsollwert:
Tele 08h 00h  -> Byte 6-7  ( Datentyp DATA2B)

Brauchwassersollwert
Teler 08 00h -> Byte 12-13 ( Datentyp DATA2B )
-----------------

Die meisten Telegramm die ich empfange sind jedoch 50h Telegramme, sind
WOLF spezifisch, also nict in der Doku der eBUS User Group.

Falls wer mehr hat bitte hier posten.

Zum Schluß meine derzeitige Umwandlung des Datentyp DATA2B zu einer
dezimal Zahl.

 private double ConvertData2b( byte lowByte, byte highByte )
      {
         byte[] atemp = new byte[2];
         Int16 x;
         UInt16 x2;
         double y=0;
         atemp[0] = lowByte;
         atemp[1] = highByte;
         x = BitConverter.ToInt16(atemp, 0);
         if ( (x & 0x8000 ) == 0x8000 ) // y neagtiv
         {
            x2 = (UInt16)x;
            // Derzeit ist Sommer ich muss mir da was überlgegen

            //y = -(HIGH_BYTE(x2) + (LOW_BYTE(x2) + 1 / 256));
         }
         else
         {
            y = HIGH_BYTE(x) + (double)(LOW_BYTE(x)) / 256;
         }
         return y;
      }
Autor: Sebastian Dietz (sdietz)
Datum:

Ich kopier hier mal kurz meinen code rein der auf dem Atmel läuft.

Die  Anzeige im LCD zeigt an ob gerade Wärme im Heizkreis (grosses HK im
display) oder nicht angefordert wird. Analog gilt das auch für
Warmwasser (grosses und kleines WW)

Die Aussentemperatur lese ich aus der Nachrift der Steuerung aus, da
mein Bedienmodul im Wonzimmer hängt und keinen Aussensensor
angeschlossen hat.

Die Befehle mit 0x50 sind von der Firma Kromschröder. Da hat Wolf also
was zugekauft. ;-)

Vielleicht kann man da ja einige infos mal bekommen. Ansonsten müssen
wir das eben hacken ;-)

Ich poste mehr wenn ich mein Analyse tool fertig programmiert hab.

Hier mein quick & dirty Atmel code:


Sebastian
===================================================================
#include <stdlib.h>
#include "lcd.h"
#include "uart.h"
#include <avr/interrupt.h>
#define F_CPU 8000000L

#include <util/delay.h>

#define XTAL_CPU         8000000L    /* 8 MHz */
#define UART_BAUD_RATE      2400    /* 2400 baud */
#define UART_RX_BUFFER_SIZE   32
#define UART_TX_BUFFER_SIZE   32


enum e_message_status { IN,OUT,DOUBLE };
enum e_message_status message_status = OUT;
enum e_status { ON,OFF };
enum e_status brenner = OFF;
enum e_status wasser = OFF;

char lcd_line1[21];
char lcd_line2[21];

char ebus_buffer[100];    /* buffer for the received message */
char buffer[10];        /* for debug prints */
int ebus_pos;        /* index counter for the receive buffer */
unsigned int c;        /* received character from the uart */

/* this procedure should end in its own include */
/* currently it ignores the value behind the comma */
int eBus_data2b(char x, char y) {
  int temp;
  if ( x >= 0x80) {
    temp = -128;
  } else {
    temp = 0;
  }
  temp = temp + (x & 0x7f);
  return temp;  
}

int eBus_s_char(char x) {
  int temp;
  if ( x & 0x40) { 
    temp = -64;
  } else {
    temp = 0;
  }
  temp = temp + (x & 0x3f);
  return temp;  
}

int eBus_bcd(char x) {
  int temp;
  temp = x;
  temp = (((temp & 0xf0) >> 4) * 10) + (x & 0x0f);
  return temp;
}

/* this procedure should end in its own include */
void eBus_analyze() {
  switch(ebus_buffer[3]) {    /* switch over the message type */

    case 0x03:          /* Servicedatenbefehle */
      if ((ebus_buffer[4] == 0x04) && (ebus_buffer[5] == 0x03)) {  /* Antwort auf Zählerstandabfrage */
        lcd_gotoxy(17,1);
        lcd_puts(itoa(ebus_buffer[8],buffer,10));
        if (ebus_buffer[7] <= 0x09) lcd_putc('0');
        lcd_puts(itoa(ebus_buffer[7],buffer,10));
        if (ebus_buffer[6] <= 0x09) lcd_putc('0');
        lcd_puts(itoa(ebus_buffer[6],buffer,10));
      }
      if ((ebus_buffer[4] == 0x04) && (ebus_buffer[5] == 0x04)) {  /* Antwort auf Betriebsstunden */
        lcd_gotoxy(7,0);
        lcd_puts(itoa(ebus_buffer[9],buffer,10));
        if (ebus_buffer[8] <= 0x09) lcd_putc('0');
        lcd_puts(itoa(ebus_buffer[8],buffer,10));
        if (ebus_buffer[7] <= 0x09) lcd_putc('0');
        lcd_puts(itoa(ebus_buffer[7],buffer,10));
        lcd_putc(':');
        if (ebus_buffer[6] <= 0x09) lcd_putc('0');
        lcd_puts(itoa(ebus_buffer[6],buffer,10));
      }
      break;

    case 0x05:          /* Brennersteuerbefehle */
      if (ebus_buffer[4] == 0x03) {   /* Betriebsdaten des Feuerungsautomaten */
        lcd_gotoxy(0,1);
        if (brenner == ON) {
          lcd_puts("HK:");
        } else {
          lcd_puts("hk:");
        }
        lcd_puts(itoa(ebus_buffer[10]/2,buffer,10));
        lcd_putc(0xdf);
        if (wasser == ON) {
          lcd_puts(" WW:");
        } else {
          lcd_puts(" ww:");
        }
        lcd_puts(itoa(ebus_buffer[12],buffer,10));
        lcd_putc(0xdf);
        lcd_puts(" AT:");
        lcd_puts(itoa(eBus_s_char(ebus_buffer[13]),buffer,10));
        lcd_putc(0xdf);
        lcd_putc(' ');
      }

      if (ebus_buffer[4] == 0x07) {  /* Betriebsdaten des Reglers */
        if ((ebus_buffer[6] == 0xAA) || (ebus_buffer[6] == 0xbb)) {
          brenner = ON;
        } else {
          brenner = OFF;
        }

        if ((ebus_buffer[6] == 0x55) || (ebus_buffer[6] == 0xbb)) {
          wasser = ON;
        } else {
          wasser = OFF;
        }

      }
      break;

    case 0x07:          /* Systemdatenbefehle */
      if (ebus_buffer[4] == 0x00) {  /* Datum und Zeit Meldung */
        itoa(eBus_data2b(ebus_buffer[7],ebus_buffer[6]),buffer,10);
        buffer[5] = '\0';

/* der Regler übermittelt nur eine Temperatur wenn der Aussensensor am BM angeschlossen ist */
//        lcd_gotoxy(0,1);
//        lcd_puts("Aussen: ");
//        lcd_puts(buffer);

        lcd_gotoxy(0,0);
        lcd_puts(itoa(eBus_bcd(ebus_buffer[10]),buffer,10));
        lcd_putc(':');

        if (ebus_buffer[9] <= 0x09) lcd_putc('0');
        lcd_puts(itoa(eBus_bcd(ebus_buffer[9]),buffer,10));
        lcd_putc(' ');

//        itoa(eBus_bcd(ebus_buffer[8]),buffer,10);
//        buffer[2] = ' ';
//        buffer[3] = ' ';
//        buffer[4] = '\0';
//        lcd_puts(buffer);
        
      }
      break;

    case 0x08:          /* Regler - Regelbefehle */
      break;

    case 0x09:          /* MemoryServer Befehle */
      break;

    case 0x0f:          /* Testnachricht */
      break;
    
    case 0xfe:          /* Fehlernachricht */
      break;
  }

}

int main(void)
{

  void long_delay(uint16_t ms) {
      for(; ms>0; ms--) _delay_ms(1);
  }

  void clear_lcd_lines() {
    for (int i=0;i<20;i++) {
      lcd_line1[i] = ' ';
      lcd_line2[i] = ' ';
    }
    lcd_line1[20] = '\0';
    lcd_line2[20] = '\0';
  }


    uart_init( UART_BAUD_SELECT(UART_BAUD_RATE,XTAL_CPU) ); 
    sei();  /* now enable interrupt, since UART library is interrupt controlled*/


    lcd_init(LCD_DISP_ON);  /* initialize display, cursor off */
    lcd_clrscr();    /* clear display and home cursor */
    lcd_puts("eBus monitor ready.");    /* put my name :) */
  long_delay(5000);
  lcd_clrscr();

  /* init the LCD lines */
  clear_lcd_lines();

  for(;;)    /* loop forever */
  {
    c = uart_getc();        /* get character from rs232 */
        if ( ! (c & UART_NO_DATA) )
        {                /* data available from UART */
//      uart_puts("Got some");
//      itoa(c,buffer,9);
//      buffer[9] = '\0';
//      lcd_puts(buffer);

      if ((c == 0xaa) && (message_status == OUT)) {
        message_status = IN;
        ebus_pos = 0;
      } else {
        if ((c == 0xaa) && (message_status == IN)) message_status = OUT;
      }
      
      switch(message_status) {

        case DOUBLE:
          c = c+0xa9;
        
        case IN:
          if ((c == 0xa9) && (message_status != DOUBLE)) {
            message_status = DOUBLE;
            break;
          }
          message_status = IN;
          ebus_buffer[ebus_pos] = c;
          ebus_pos++;
          if ( ebus_pos == 100) message_status = OUT;  /* prevent buffer overflow */
          break;

        case OUT:
          eBus_analyze();  /* do the magic eBus message analysis */
          break;

      }
    }

  }
}
Autor: Ebc Ebc (ebc)
Datum:

Hallo,
Welchen Atmel verwendest du ?
mfg
Christian
Autor: Sebastian Dietz (sdietz)
Datum:

Nabend,

im Moment verwende ich einen ATMega32.

Sebastian
Autor: lumo (Gast)
Datum:

Hi,

ich interessiere mich auch sehr für den E-Bus und möchte eine
Schnittstelle dazu bauen. Kannst du mal deine Schaltung veröffentlichen
bitte?

Weißt du wie es sich mit einer Vaillant GasTherme verhält ?

Danke

Schöne Grüsse
lumo
Autor: Ebc Ebc (ebc)
Datum:

Schnittstellenwandler ist in der Dokumentation des ebus enthalten.
http://www.ebus.de/reg_form/download_form.php
Autor: David Müller (vanumo)
Datum:

hi,

die doku habe ich gefunden, trotzdem danke. vom hersteller wird es wohl
nichts geben. habe auf sebastien gehofft ob er schon weiter ist.


gruß
lumo
Autor: Sebastian Dietz (sdietz)
Datum:

David Müller wrote:
> hi,
>
> die doku habe ich gefunden, trotzdem danke. vom hersteller wird es wohl
> nichts geben. habe auf sebastien gehofft ob er schon weiter ist.
>
>
> gruß
> lumo

Nee, leider noch nicht. Ich hab aber jetzt wieder angefangen an einem
Programm zu schreiben welches die Analyse der e-bus protokolle
vereinfacht. Ich hab immer noch keine ausreichende Doku über die
proprietären Primärbefehle gefunden was die Analyse doch sehr schwer
macht. Wolf will da nicht weiterhelfen (vermutlich weil die Geräte von
Kromschröder stammen) und ich hab noch niemanden gefunden der sich
ebenfalls mit der e-bus programmierung beschäftigt.

Ideal wär ein Test setup mit einem e-Bus master und ein paar Test
clients. Hat da jemand vielleicht sowas? Eine alte e-bus Steuerung würde
auch helfen. Ich hab immer wieder Bedenken an einer Produktivumgebung zu
basteln.

Falls also jemand eine alte Wolf R3 oder andere e-bus Steuerung im
Keller hat, die er nicht mehr braucht, bitte melden. Ich könnte daraus
ein schönes test-bed bauen um die ganze e-bus Programmierung
beschleunigen..

ciao

Sebastian
Autor: David Müller (vanumo)
Datum:

Hi,

danke für die rasche Antwort. Mit einer Regelungen kann ich sonst leider
auch nicht dienen. Mir gehts Primär darum mit einem uC eine 0-10V
Schnittstelle zu bauen welche über den eBus mit der Therme kommunizieren
kann. Möchte also nur das meine Regelung die Therme nach Leistungsbedarf
ansteuert. Auslesen von anderen Werten kann später erfolgen. Sonst
müsste ich über eine Vaillant Regelung die Hauptgruppe regeln und die
anderen Heizkreise über die andere Regelung was einen ziemlichen Umweg
bedeuten würde. Ich versuche mal bei Vaillant an die Daten zu kommen.

Gruß
David
Autor: David Müller (vanumo)
Datum:

Hi,

ich habe heute mal die Unterlagen von EBUS gesichtet und habe da eine
Frage. Es sind ja die UART Sequenzen des Layer7 ausgeführt? Hat sich
hierbei soviel verändert? Es gibt z.b ein Befehl um alle unterstützten
Befehle des Geräts auszulesen. Ist es mit diesem Befehl nicht möglich an
die gewünschten Codes zu kommen? Oder hat sich in der Kommunikation
soviel geändert das jeder Hersteller sein eigenes Ding macht welches ja
die ganze Normierung über den Haufen schmeisen würde.

Gruß

David
Autor: Sebastian Dietz (sdietz)
Datum:

Nö, geändert hat sich da nix, aber wenn ich mir so den Verkehr auf
meinem eBus anschaue, dann wird 75% der Steuerung durch die
Primärbefehle 50 gemacht. Wie du im Anhang 1 zum OSI 7 Layer der Spec
sehen kannst, ist dieser Primärbefehlt der Firma Kromschröder
zugewiesen. Die genaue Dokumentation welche Subbefehle unter 0x50
verwendet werden hab ich leider noch nicht gefunden.

Wenn sich natürlich die Firma Kromschröder dazu entschliessen würde die
Spezifikation frei zu geben, könnte man da viel mehr machen. Ansonsten
muss man durch Beobachtung und gezieltes Monitoring versuchen die
Befehle zu entschlüsseln. Einfach dürfte das aber nicht werden...

LG
Sebastian
Autor: Stefan Wimmer (wswbln)
Datum:

abo  (die nächste Heizungssteuerung kommt bestimmt :-) )
Autor: axel s. (Gast)
Datum:
Angehängte Dateien:

Ich habe seit kurzem eine Wolf Brennwerttherme mit angeschlossenen ebus
Interfacemodul ISM-1, über welches ich die Datentelegramme zwischen dem
Wolf PC Programm Comfortsoft und dem Heizungs ebus aufzeichnen kann. Ich
benutze dazu das Program Devicemonitor.exe, welches den Datenverkehr
über die serielle Schnittstelle mitprotokolliert. Beim Start des
Comfortsoft Programms werden offensichtlich alle Daten abgefragt.
Angefügt habe ich einmal den kompletten log als Exel Datei.

Mit dem Programm Hercules.exe lassen sich im übrigen einzelne Telegramme
in HEX zur Heizung senden. Typischerweise sieht ein Anfragetelegramm wie
folgt aus:

0D 00 0D 01 00 0B 00 00 00 00 00 26

zurück kommt dann zB.

{55}{55}{55}{55}{55}{55}{55}{55}{9C}{08}{03}{4C}


Ich kann gerne mit weiteren Telegrammbeispielen dienen, falls noch
Interesse besteht. Ziel ist, einzelne Daten aus der Heizung über das
Internet abfragen zu können. Die Anbindung mit einem XPORT funktioniert
bereits.

Viel Spass bei der Analyse

Gruss
Axel
Autor: Alex (Gast)
Datum:

Hallo,
habe eine TEM Solar-Steuerung, die auch einen eBus-Anschluss hat. Die
würde ich natürlich gerne auslesen.
Was ich für die PC-Kopplung kenne, ist der RS232-Konverter von Dungs für
> 200 Euronen. Eure uC hören sich günstiger an.

Könnt ihr mir bitte mal Nachhilfe erteilen, da ich noch keinen uC
programmiert habe (aber schon alles mögliche auf Linux, PC, ... mit C++,
Java, ...) und gerne abschätzen würde, ob sich das für mich zeitlich und
finanziell lohnt.

- welche Teile benötige ich denn um EIN eBus-Gerät auslesen zu können?
  - eBus Netzteil?
  - eBus SYNC Generator?
  - uC
  - uC-Board
  - Entwicklungsumgebung (kostenlos?)
- in welcher Größenordnung liegt der Preis dafür?

Danke,
Alex
Autor: Seppl (Gast)
Datum:

Hi Alex,

ich habe zwar keinen Ebus, die ein oder andere Frage kann ich dir aber
sicherlich auch beantworten.
µC bzw. Board stellt sich ja auch die frage was für einen. Es gibt da
diverse Hersteller und Modelle, für deinen Anwendungszweck und für den
schnellen Einstieg dürften AVR bzw. PIC Controller interessant sein.
Für AVR gibt es den GCC als freien Compiler, für den PIC gibt es auch
einen freien C-Compiler wenn mich nicht alles täuscht.
Teuer ist das ganze auch nicht, du benötigst minimum einen µC, ein
Experimentierboard und ein entsprechendes Programmiergerät (sofern nicht
auf dem Board integriert). Das ganze kommt, wenn man sparsam einkauft,
auf etwa 50-100€ - je nach dem wie viel Luxus man sich da leisten
möchte.

Für den Ebus muss man wenn ich das richtig durchschaut habe nur einen
Pegelwandler von Ebus nach RS232 bauen, das sollte mit relativ geringem
Bauteilaufwand möglich sein.
Bleibt allerdings noch die gesamte Arbeit das Protokoll in einer
Software zu implementieren. Genau dadurch dürfte das für die
wirtschaftlich nicht mehr interessant sein. Technisch sollte das alles
machbar sein, es gibt für Ebus die Spezifikationen zum Downloaden:
http://www2.ebus.de/spec.html
Wenn du schon öfter Programme geschrieben hast weisst du ja wie
aufwendig so etwas ist.

Gruß
Seppl
Autor: ebc (Gast)
Datum:

Als den Pegelwandler + Max232 für die Pegelanpassung an die PC RS232
kommt so auf 5 - 10 €. Danach kannst du ja erstmal via PC die Protokolle
versuchen zu entschlüsseln.
Im Anhang mal ein Schaltplan, ist aber schon länger her das ich den
gebaut habe.
Christian
Autor: ebc (Gast)
Datum:
Angehängte Dateien:

ach ja der schaltplan
Autor: Alex (Gast)
Datum:

Danke für die schnellen Antworten!
Das hilft mir sehr gut weiter.

Gruß,
Alex
Autor: Alex (Gast)
Datum:

Ich hab' eben noch einige andere Beiträge gelesen und bin doch wieder
unsicher geworden:
wenn ich euch richtig verstehe, benötige ich nur einen Pegelwandler nach
obigem Schaltplan und habe dann die Signale des eBus an der seriellen
Schnittstelle z.B. eines PCs?!
Wenn ich das nicht am PC auswerten wollte, wäre eben ein uC (AVR o.ä.)
notwendig?!

Kein SYNC-Generator oder sonstiger Kram notwendig?

Danke,
Alex
Autor: Ebc Ebc (ebc)
Datum:

so is es...
aber bitte vorsicht beim eventuellen Nachbauen. Pegelwandler ist nicht
galvanisch getrennt.
Autor: Stephan Gross (son)
Datum:

hallo,
nachdem ich seit vielen Wochen an meiner Schaltung bastle, hier ein
Hilferuf...
würde sich jemand von den Profis hier, jemand bereiterklären gegen
Unkostenerstattung mir einen Schnittstellenwandler zusammen zu löten??

Ich hatte versucht die Schaltung mit den optokopplern zu bauen, was mir
meiner laienhaften Meinung nach auch gelungen ist, aber ich bekomme
keine Kommunikation hin, trotz originaler Vaillant-Software.

gruss
stephan
Autor: WernerM (Gast)
Datum:

> Autor: Ebc Ebc (ebc)
> Datum: 27.08.2008 20:46
> Schnittstellenwandler ist in der Dokumentation des ebus enthalten.
> http://www.ebus.de/reg_form/download_form.php

Eine Verständnisfrage:

Wäre es möglich mittels des o. a. Pegelwandlers die Daten aus der
Wolf-Regelung R3 mit der Wolf-Software auszulesen? Diese Software bietet
auch einen Export nach Excel.

WRS Fernwartungs-System:
Windows 2000 (SP4) oder XP (SP2), Vista / Bildschirmauflösung: min. 800
x 600 Pixel

http://www.wolf-systemprofi.de/de/gkp/service/down...
oder direkt nur die Software:
http://www.wolf-systemprofi.de/documents/de/softwa...


Gruß

Werner
Autor: Seppl (Gast)
Datum:

Das kommt darauf an was für eine Schnittstelle die Software benötigt.
Wenn die mit einem einfachen Pegelwandler umgehen kann ja - man müsste
wissen wie der original Wandler funktioniert.
Autor: Ebc Ebc (ebc)
Datum:

Ich werde es mal am Wochende probieren.
Vermute aber das die Software nur in Verbindung mit dem ISM1
Schnittstellenmodul funktioniert.
Christian
Autor: WernerM (Gast)
Datum:

> Autor:  ebc (Gast)
> Datum: 13.11.2008 19:58
> Dateianhang: eBusConverter.png (4,7 KB, 74 Downloads)
> http://www.mikrocontroller.net/attachment/42350/eB...

@ebc hat die Grundschaltung der eBUS Interest Group *1) auf RxD
reduziert jedoch ergänzt mit einer Spannungsversorgung via eBus sowie
mit einer Pegelaufbereitung TTL auf RS232:
TTL-Pegel: ca. 0,7 - 5V
Serielle PC-Schnittstelle RS232-Pegel: ca. max. + / - 12V

*1)
< eBUS_Stuttgart_041201_eBUS_Only_MOD.pdf >
http://www.investigacion.frc.utn.edu.ar/sensores/A...
eBUS - Mikroprozessor- Interface ohne galvanische Trennung (LM358)
von Wolfhard Lawrenz – User Club eBUS e. V.
Direktor c& s group in der Fachhochschule Wolfenbüttel


Eine sehr feine Alternative für den MAX232 habe ich bei Julien Thomas
gefunden:

Julien benutzt die Standardbauteile
4 x (CNY 17-1 | 4N25 | 4N36 o.ä.
1 x 74LS00
sowie Kleinkram ...

und erreicht so eine vollständige galvanische Trennung - also auch von
GND.

Optoelektronischer Pegelwandler RS232 <-> TTL (RxD/TxD)
http://www.kielnet.net/home/julien.thomas/tech/RS232TTL.htm
© 2004/2005 Julien Thomas 12/2005, rev. 11/2007

oder sogar in Englisch:
Opto-isolated level converter RS232 to TTL (and vice-versa)
http://www.angelfire.com/theforce/jte/
http://www.angelfire.com/theforce/jte/rs232ttl_en.html
 © 2004/2005 Julien Thomas - revision: 12/2005


Gruß

Werner



Schnittstellen-Interface
Konverter
Signalkonvertierung
eBus an serielle Schnittstelle PC
Autor: WernerM (Gast)
Datum:

> Autor: Ebc Ebc (ebc)
> Datum: 20.11.2008 19:24

>... Vermute aber das die Software nur in Verbindung mit dem ISM1
> Schnittstellenmodul funktioniert.


Hallo Christian,

das Lesen der Daten wäre völlig ausreichend.

Ich habe mir die Software
http://www.wolf-systemprofi.de/de/gkp/service/down...
installiert und finde u. a. diese Infos:

in ReadMe.txt :
"... Ein Dongle (...) wird bei der neuen CoCo-PC-active bzw. DCO-aktiv
nicht mehr benötigt. Vorraussetzung hierfür ist die Verwendung eines
CoCo-PC-active bzw. DCO-aktiv, das nach dem 18. März 2004 produziert
wurde. ..."

Desweiteren die Datei hldrv32.exe :
Diese SW möchte verschiedene Treiber installieren - man kann aber
abbrechen:
HARDLOCK.SYS : 3.05
HARDLOCK.VXD : 3.05
HLVDD.DLL : 2.18
AKSUSB.SYS : 1.28
AKSPCCARD.SYS : 1.01

Die Software ist übrigens von Kromschröder:
Elster GmbH
Geschäftssegment Comfort Controls
Kuhbrückenstrasse 2-4, D-31785 Hameln
Telefon +49(0)5151 9572-0
Telefax +49(0)5151 9572-100
www.comfort-controls.de
info@ kromschroeder.com
www.kromschroeder.de
www.kromschroeder.org
www.docuthek.kromschroeder.com

ComfortSoft ist die anwenderorientierte Software für Notebook und PC.
Sie sorgt dafür, dass alle Komponenten eines Heizsystems leicht zu
parametrieren und überwachen zu sind:
ComfortSoft3_3_4.zip (30.179 KB)
ComfortSoft3_3_3.zip (29.199 KB)
ComfortSoft3_3_2.zip (30.171 KB)
Bedienungs- und Installationsanleitung (1.085 KB)
Installation and Operating Manual (860 KB)
http://www.comfort-controls.de/downloads.php?

Ob die "ComfortSoft3_3_3.zip" mit der von Wolf bereitgestellten SW
(Vers.: 3.3.3 (Rev:536), siehe oben)
identisch ist, habe ich nicht untersucht.


PS.: ... und die Wolf-Regler sind auch von Kromschröder!


Gruß

Werner
Autor: Ebc Ebc (ebc)
Datum:

Als mit dem obrigen PegelWandler geht die Software nicht.
(sie ist ja nur auf Lesen RxD reduziert, und die Software sendet
Telegramme wo dann keine Antwort kommt )
Christian
Autor: WernerM (Gast)
Datum:

Danke Christian,

möglicherweise würde die Software aber mit beiden implementierten
Schnittstellen (also RxD + TxD) arbeiten.
Vielleicht hat ja jemand einen vollständigen Pegelwandler und macht mal
den kleinen Test.

> Autor: axel s. (Gast)
> Datum: 02.11.2008 14:06
> Dateianhang: heizungsprotokoll.xls (66,6 KB, 52 Downloads)

> Ich habe seit kurzem eine Wolf Brennwerttherme mit angeschlossenen ebus
> Interfacemodul ISM-1, über welches ich die Datentelegramme zwischen dem
> Wolf PC Programm Comfortsoft und dem Heizungs ebus aufzeichnen kann. Ich
> benutze dazu das Program Devicemonitor.exe, welches den Datenverkehr
> über die serielle Schnittstelle mitprotokolliert. Beim Start des
> Comfortsoft Programms werden offensichtlich alle Daten abgefragt.


Gruß

Werner
Autor: Ebc Ebc (ebc)
Datum:

Hallo,
hab wieder etwas Zeit und hab versucht die ominösen 50er Telegramme von
Wolf zu entschlüsseln. Hier ein paar Ergebnisse:

Kurze Info zu meiner Heizung: Ist ein Ölbrennwertkessel mit 3
Mischerkreise

Systembefehl  PB = 0x50h
              SB = 0x14h
Aus diesem Telegramm konnte ich entschlüßeln:
--Aktuelle Vorlauftemperatur Mischerkreis
--Soll Vorlaufteperatur Mischerkreis

#F0#52#50#14#07#07#00#30#80#11#00#6A#ED#00#09#00#01#CD#2D#00#80#14#8C#00#D1#00 06.12.2008 17:38:53

Byte 7+8 --> Soll Vorlauftemperatur Mischerkreis

Byte  17+18 --> Ist Temperatur Mischerkreis

BSP:
Soll Vorlauftemp: 48,5°
Byte7 = #30  --> 48
Byte8 = #80  --> 128 --> 128/255 -->  0,501

Ist Vorlauftemp: 45,8°
Byte17 = #CD --> 205 --> 205/255 --> 0,8039
Byte18 = #2D --> 45

Diese zwei Temperaturen sind im Fomrat DATA2B übermittelt.
Laut Definition enthält das LowByte die Nachkommastellen.
Das würde für die IstVorlauftemp auch stimmen, jedoch nicht für die
SollVorlauftemp ?

Byte 9 ist vermutlich die aktuelle Raumtemperatur.
#F0#52#50#14#07#03#00#30#80#11#00#6A#2F#00#09#00#01#E6#2D#00#80#14#8C#00#2E#00

In diesem Bsp. war die Raumtemp 17,7°
Byte 9 =  #11 --> 17
Die Kommastelle konnt ich noch nicht finden.
Autor: Vorname Nachname (mhz)
Datum:

abo
Autor: ebc (Gast)
Datum:
Angehängte Dateien:

ebus Daten auf SD Karte loggen
Autor: Walter (Gast)
Datum:

Hallo,

ist das bei der Buderus ein Mono oder Stereo Klinkenstecker ? Wenn ich
den Mono kurz einstecke wird eine neue Verbindung zur EMS aufgebaut ...


Grüße.
Autor: Interesse (Gast)
Datum:

Hallo,

Ich habe einen Vaillantheizkessel, Solaranlage und auromatic 620
Steuerung, läuft ja auch alles über eBus.

Vielleicht klappt das Auslesen ja auch mit der Software von RESOL.de,
die nennen die Schnittstelle Vbus, scheint aber das Gleiche zu sein.

Würde mich sehr interessieren, wenn sowas klappt.

Liebe Grüße

Hauke
Autor: ebc (Gast)
Datum:

Nein VBUS ist nicht das gleiche.
Braucht man sich nur die Unterlagen zum VBUS anschauen. Die gibts hier
in einem anderen Thread
Autor: hobe (Gast)
Datum:

Da www.ebus.de nicht mehr erreichbar ist und ich die Daten meiner
Wolf-Solaranlage auswerten möchte würde ich noch mehr Infos zum
Datenaufbau benötigen.

Ich habe bereits einen Konverter und kann über RS232 bereits die Daten
loggen. Ganz ohne Dokumentation ist die Auswertung aber schon sehr
mühsam.

Kann mir bitte jemand weiterhelfen?

lg
Bernhard
Autor: ebc (Gast)
Datum:
Angehängte Dateien:

ja nachdem die seite nicht mehr existiert...
Autor: hobe (Gast)
Datum:

vielen Dank!

Da hab ich ja ein Weilchen zu tun :)

Hat schon jemand einige Wolf- (Kromschröder-) spezifische Pakete
(Kennung 0x50) entschlüsseln können?

lg
Bernhard
Autor: ebc (Gast)
Datum:

ja siehe oben, ist zwar ein wenig durcheinander..
Autor: THO (Gast)
Datum:

Hallo,
ich fasse mal zusammen was oben steht und was ich bisher erkannt habe:

05 -> Brenner Steuerbefehl, 07 -> Betriebsdaten des Feuerungsautomaten
F1 FE 05 03 08 01 00 00 FF 30 FF 3B 10 36
                           ^ Kessel * 2!
                                 ^ Warmwasser!
                                    ^ Aussentemperatur!!

05 -> Brenner Steuerbefehl, 07 -> Betriebsart Regler
10 03 05 07 09 55 05 50 00 00 80 FF 5A FF B5 AA
               ^ AA = Brenner on, 55 = Wasser on, BB = Brenner + Wasser
on
                  ^ Zählt immer 1,3,5

07 -> Systemdatenbefehle, 00 -> Datum Uhrzeit
30 FE 07 00 09 00 80 10 20 14 FF FF 05 FF 43
               ^  ^  Aussentemperatur wenn Fühler am BM
                        ^  ^ Uhrzeit (BCD) (MM HH)!!
                                    ^ Wochentag (1=Montag)

BM -> MM
70 51 50 14 07 41 00 05 00 17 00 5A 0D 00 09 00 40 80 16 00 D8 14 64 00
4B 00 AA
Anfrage mit Antwort                 ^ Checksumme
                     ^  ^ Soll Vorlauf Mischerkreis
                           ^ Raumtemp
                                                   ^  ^
Mischerkreistemperatur (LLHH)

SM -> alle
71 FE 50 17 10 00 01 FA 01 FB 02 00 80 00 80 00 80 00 80 00 80 D9
               ^  01 = Solarpumpe läuft ?
                  ^
                     ^  ^  Kollektortemperatur * 16 (LLHH)
                           ^  ^ WW Solar Temperatur * 16 (LLHH)

SM -> alle
71 FE 50 18 0E 00 00 1B 00 0A 00 B0 01 4F 01 00 00 00 00 3F
                           ^ Ertrag Tag?
                                       ^ Summe Ertrag?

10 03 08 00 08 00 05 00 12 80 41 00 2D CF AA
                        ^ Aussentemperatur


F1 FE 08 00 08 00 05 CD 0E 00 40 00 2D DF
                  ^  Kessel Solltemperatur
                     ^  ^  Aussentemperatur Mittel (LLHH)!!
                                 ^  ^ Brauch Wasser Solltemperatur

Hat jemand von euch neue Erkenntnisse?

Ich übrigens das Problem, dass Sync (0xAA) nicht immer erkannt wird,
muss da wohl noch mal mit dem Oszi ran.
Autor: THO (Gast)
Datum:

So hier noch ein Update:

05 -> Brenner Steuerbefehl, 07 -> Betriebsart Regler
BM an Brenner
10 03 05 07 09 00 05 50 00 00 80 FF 14 FF CD
               ^ Freigabe: AA = Brenner on, 55 = Wasser on, BB = Brenner
+ Wasser on, 00 = off
                  ^ Zählt immer 1,3,5 unklar
                     ^  ^ Soll Kessel (LLHH) * 16
                                    ^ Warmwasser Soll * 2

05 -> Brenner Steuerbefehl, 03 -> Betriebsdaten des Feuerungsautomaten
Brenner an Alle (Antwort  auf vorhergehende Nachricht)
F1 FE 05 03 08 01 04 30 FF 74 FF 28 10 39
               ^ Bei mir immer 1
                  ^  ^ Status1 noch unklar (1.Byte 00=Off, 01=Heizen,
04=Warmwasser; 2.Byte 00=Off, 30=Brenner an)
                           ^ Kessel * 2
                                 ^ Warmwasser
                                    ^ Aussentemperatur


BM an Brenner
10 03 08 00 08 00 05 00 10 80 41 00 36 51
               ^  ^   Kessel Solltemperatur (NNVV)
                        ^ Aussentemperatur
                              ^ Status2 noch unklar
                                 ^  ^ Warmwasser Solltemperatur (NNVV)

Brenner an alle (Antwort auf vorhergehende Nachricht)
F1 FE 08 00 08 00 3C 66 0E 00 A0 00 37 6F
               ^  ^  Kessel Solltemperatur (NNVV)
                     ^  ^  Aussentemperatur Mittel (NNVV)
                              ^ Status3 noch unklar
                                 ^  ^ Warmwasser Solltemperatur (NNVV)

07 -> Systemdatenbefehle, 00 -> Datum Uhrzeit
30 FE 07 00 09 00 80 10 20 14 FF FF 05 FF 43
               ^  ^  Aussentemperatur wenn Fühler am BM
                     ^  Bei mir immer 10
                        ^  ^ Uhrzeit (BCD) (MM HH)!!
                                    ^ Wochentag (1=Montag)

Alle Nachrichten mit 50 23 sind mir unklar:
71 30 50 23 09 48 F4 02 04 04 5D 01 00 00 13 00 AA

BM an MM
70 51 50 14 07 41 00 05 00 1A 00 5A F3 00 09 00 42 80 23 00 D8 14 64 00
54
          ^ Status2      ^ unklar (00/08)  ^ Status4 noch unklar
                     ^  ^ Soll Vorlauf Mischerkreis (NNVV!!)
                           ^ Raumtemp
                                 ^ Soll Warmwasser * 2
                                    ^  ^  ^ Checksumme ACK 9 Byte
                                                   ^  ^
Mischerkreistemperatur (NNVV)
                                                            ^  ^  ^ Bei
mir immer D8 14 64

BM liest Parameter von MM
70 51 50 22 03 6A 21 0A 93 00 02 04 00 ED 00
                                 ^  ^  4 ?
70 51 50 22 03 42 C7 02 8D 00 02 EE 02 FC 00
                                 ^  ^  75 ?
70 51 50 22 03 14 2D 00 C9 00 02 64 00 41 00
                                 ^  ^  10 ?

BM liest Parameter von SM
07 76 50 22 03 CE F7 02 58 00 02 00 00 2C 00
                                 ^  ^  Solar Antilegionellen (0=nicht)
erfolgreich
30 76 50 22 03 57 44 03 AA 00 02 08 00 35 00
               ^  ^  ^  Parameter Adresse?
                        ^  ^  ^ Checksumme ACK 2 Byte
         ^  ^  8 ?

BM an alle
70 FE 07 04 0A 50 01 14 00 10 40 02 08 FF FF 01
70 FE 07 04 0A 50 01 18 00 00 C0 02 04 FF FF C1
Beide in Folge unverändert

SM an alle
71 FE 50 17 10 01 01 1A 04 B3 03 00 80 00 80 00 80 00 80 00 80 55 l7
               ^  Solarpumpe 01=an 00=aus
                  ^  bisher immer 1
                     ^  ^  Kollektortemperatur * 16 (LLHH)
                           ^  ^ WW Solar Temperatur * 16 (LLHH)
                                 ^ ab hier ist noch Platz für den 2.
Kollektor

SM an alle
71 FE 50 18 0E 20 00 7D 01 00 00 C6 02 70 01 00 00 00 00 8A
               ^  ^  Solare Leistung * 16 (LLHH)
                     ^  ^  ^  ^  Ertrag Tag (LLHH) Nachkomma (/ 1000);
(LLHH) Vorkomma
                                 ^  ^  ^  ^ Summe Ertrag (LLHH)
Nachkomma (/ 1000); (LLHH) Vorkomma
                                            sicher sind noch mehr
Stellen reserviert


Messages bei Abfrage der Werte durch BM:
07 76 50 22 03 89 7C 09 CF 00 02 A0 01 42 00
                                 ^  ^  WW Solar 24H Max * 10
07 76 50 22 03 41 7B 09 7D 00 02 5F 01 39 00
                                 ^  ^  WW Solar 24H Min * 10
07 76 50 22 03 A5 78 09 8B 00 02 27 02 BD 00
                                 ^  ^  Kollektor 24H Max * 10
07 76 50 22 03 35 77 09 B1 00 02 75 00 E8 00
                                 ^  ^  Kollektor 24H Min * 10
07 76 50 22 03 BA FB 02 94 00 02 60 01 81 00
                                 ^  ^  Rücklauf 24H Max * 10
07 76 50 22 03 BA FB 02 94 00 02 44 01 24 00
                                 ^  ^  Rücklauf 24H Min * 10
07 76 50 22 03 5E F8 02 62 00 02 00 00 2C 00
                                 ^  ^  Durchfluss Solar (hier 0)
07 76 50 22 03 02 F9 02 30 00 02 93 00 23 00
                                 ^  ^  Betriebsstunden Solar (LLHH)
07 76 50 22 03 3B D0 03 E7 00 02 00 00 2C 00
                                 ^  ^  Solar Warmwasserladung
erfolgreich
07 76 50 22 03 CE F7 02 58 00 02 00 00 2C 00
                                 ^  ^  Solar Antilegionellen erfolgreich
07 51 50 22 03 90 0F 00 11 00 02 F4 00 78 00
                                 ^  ^  Mischertemperatur * 10
07 08 50 22 03 61 76 01 5D 00
^ Status HG (keine Antwort)
07 08 50 22 03 DE 2A 02 17 00
^ Betriebsstunden Brenner (keine Antwort)
07 08 50 22 03 AA 26 02 94 00
07 08 50 22 03 F6 27 02 89 00
^ Brenner Starts (keine Antwort)

Es fehlen mir folgende Messwerte:
MM  -> Solarspeicherfühler
MM  -> Rücklauftemperatur
SM2 -> Rücklauftemperatur
HG  -> Rücklauftemperatur

Geräte:
03 ?Brenner Control
08 Brenner
10 ?Brenner / Heating Control
30 BM
51 MM
70 BM
71 SM2
76 SM2
F1 Brenner
FE alle

Command
03 Servicedatenbefehle
05 Brennerkontrolle
07 System instruction
08 Control instruction Regler - Regelbefehle
09 MemoryServer Befehle
0F Testnachricht
FE Fehlernachricht
Autor: ebc (Gast)
Datum:

super,
ja wenn ich wieder mal Lust hätte würde ich selber wieder loggen.
Frage hast du dir eigentlich einen einfachen Konverter gebaut nur
empfangen, oder den vollständigen senden und empfangen ?
Autor: Tho (Gast)
Datum:
Angehängte Dateien:

Hallo,
ich habe einen uC (PIC18F452) benutzt. Der hat nur eine serielle
Schnittstelle. Die Txd geht immer zum PC Rxd kann ich auf EBus oder PC
Schalten. In zwischen kann der uC in festen Zeitabständen ausgewählte
Daten auch abspeichern und später an den PC weiter geben. Damit lassen
sich dann Kurven wie im Anhang erstellen.
Autor: ebc (Gast)
Datum:
Angehängte Dateien:

Ja ich habe mir vor einem Jahr mit einem Atmega8 was gebaut. Atmega8
loggt Daten auf SD Card, diese können dann in einem Programm eingelesen
werden und werden in einer DB gespeichert.
Autor: Tobi (Gast)
Datum:

Hallo ebc.
hast Du noch genauere Infos/Pläne? Wäre ja schon sehr interessant.

Danke
Autor: Werner Fink (wfink)
Datum:

Hallo,

gibt es vielleicht schon irgendwelche Anwendungen?  Mir schwebt
ein simples Gateway vor, um die Tages- und Absenktemperatur
meiner Wolf CGB-11 Heizung in der Regelklemmleiste des
Heizkreisverteilers der Fußbodenheizung oder in deren
Raumthermostate auszuwerten.

   Werner
Autor: hobe (Gast)
Datum:

Nach einigen Nächten mit wenig Schlaf habe ich nun meinen
"eBus-Connector" fertig.

Dabei handelt es sich um eine Software für Windows, welche die
eBus-Daten von der seriellen Schnittstelle oder aus einer Datei liest
und in eine Datenbank (im einfachsten Fall eine Access-MDB) schreibt.

Die Anbindung der Datenbank erfolgt über ODBC oder OLEDB, die
Konfiguration der eBus-Daten sowie der SQL-Befehle erfolgt über ein
INI-File.

z.B.:
; Wolf/Kromschröder-spezifisch
; Primärbefehl 50, Sekundärbefehl 17
[5017]
; Definition des Aufbaus der Servicedaten
ServiceDef = SolarPumpe=char | unknown1=char | KollektorTemp=data2c |
WWSolarTemp=data2c
; Datenbankbefehl (hier für Access)
Sql=INSERT INTO Solar ( Pumpe, KollektorTemp, WWSolarTemp, Timst )
VALUES( %SolarPumpe%, %KollektorTemp%, %WWSolarTemp%, NOW() )
; nur mindestens einmal pro Stunde schreiben
MinInterval=1 h
; nur schreiben, wenn sich etwas geändert hat
CheckChanges=1

Es werden alle primären und sekundären Datentypen unterstützt und es
können mehrere Segmente definiert werden (wie für 0503 nötig).

Ich verwende bei mir eine Access-Datei obwohl ich kein Access
installiert habe und verknüpfe OpenOffice-Base mit dieser Datei. So kann
ich meine Daten auswerten.

Durch reine Konfiguration läßt sich das Programm erweitern und anpassen.
Bei mir läuft das ganze auf einem Fit-PC2 (http://www.fit-pc.com) wobei
der Prozessor zwischen 0 und max.2% belastet ist.

Vielen Dank an ebc für die Unterlagen und tho für die
Wolf-Servicebefehle.

Ich stelle das Programm gerne zur Verfügung. Bei Interesse bitte mail an
bernhard_h at yahoo dot com

lg
Bernhard
Autor: Andreas Jung (Gast)
Datum:

Hallo EBC,

ich währe ebenfalls an Deiner Entwicklung Interessiert, um unsere neue
Heizungsanlage mal kontrollieren zu können.

Vielen Dank für Deine Rückmeldung im Voraus!

Gruß,
Andreas
Autor: hobe (Gast)
Datum:

Ich bitte euch alle um Unterstützung des eBus-Wiki mit eurem Wissen.

http://ebus.webhop.org

Dort ist die Doku zum eBus zusammengetragen und der eBus-Connector kann
heruntergeladen werden. Mit diesem Programm können sehr einfach
eBus-Daten geloggt werden. Auch ein Programm für die grafische
Darstellung der geloggten Daten ist dort zu finden.

Ich hoffe auf ganz viel Unterstützung was die Entschlüsselung der
herstellerspezifischen Servicedaten betrifft.

lg
Bernhard
Autor: Dirk (Gast)
Datum:

Hallo zusammen,

kurze Frage zu dem Pegelwandler aus dem eBusLoggerV2.pdf von oben: was
ist denn VDD für eine Spannung bzw. wie hoch muss die sein?

Gruß & Danke für ne kurze Antwort,
Dirk
Autor: Dirk (Gast)
Datum:

Nochmal ich: :-)
lieg ich richtig in der Annahme, dass da eine Spannung von 5V anliegen
muss/soll? Ich bin jetzt kurz vor dem Zusammenbau der Teile, wenn mir
jemand bitte meine Vermutung bestätigen kann...?

Danke und schönes WE,
Dirk
Autor: Tho (Gast)
Datum:

Hallo Dirk,
Vdd findest du links unten im E-Bus Interface wieder.
Es ist eine Spannung die aus em E-Bus erzeugt wird. Dort steht auch,
dass sie 24V hat.

Gruss Thomas
Autor: Dirk (Gast)
Datum:

Hallo Tho,

ja, hab´s mittlerweile auch gefunden. Hätt gleich mal in die Doku
reinschauen sollen. Danke Dir trotzdem!
Autor: Harry D. (harry40)
Datum:

Moin,

ich möchte meine Regelung (Kromschröder) Elfatherm E8.0234 mittels Can
Bus und dem Programm ComfortSoft auslesen und die Parameter ändern. Die
Schnittstelle "CoCo PC active" ist mir aber zu teuer. Meine Frage: mit
welchem Schnittstellenwandler (Fertiggerät) ist das sonst noch machbar.
Wäre das mit einem Wandler der Fa. Elektor.de "Yes - we can" möglich?
Oder kann ich über den eBus (mit einem Fertiggerät) gehen?

Gruß aus dem Norden -9°C
Autor: Dirk (Gast)
Datum:

Guten Abend zusammen,

irgendwie funktioniert mein Adapter nicht korrekt. Die VDD, die ich nach
R10 abgreifen kann, liegt nur bei 1V. Auch der Ausgang von eBusTX hat
gegen Masse 0V, obwohl auf dem eBus+ 22V anliegen. Kann mir bitte jemand
nen Tipp geben, wo ich den Fehler suchen kann? Liegt´s an dem LM358?
Kann der einen Macken haben? Die Widerstände passen alle, ebenso die
Dioden. Den R16 hab ich weggelassen, aber der soll ja auch nur optional
sein... Und außer Dioden, Widerständen und dem IC gibt´s ja keine
Bauteile :-(

Danke schon mal im Vorraus!

Gruß
Dirk
Autor: ebc (Gast)
Datum:

Hallo ich würde es mal so angehen.

1.) Messen von VDD.
Die Rechteckspannung vom eBus wird ja mittels Kondensator C5 220µF (
oder höher ) geglättet. Die 4 Dioden davor dienen als
Brückengleichrichter ( daher verpolungsicher )
Der Vorwiderstand 100 Ohm dient zur Strombegrenzung ( kann auch höher
sein ).

VDD sollte daher > 20V sein.

2.) Der Spannungsteiler R10 / R11 dient zur Einstellung der
Schwellenspannung. Laut eBus Spezifikation ist LOW 9-12V und HIGH 15-24
V

Angenommen du hast ein VDD von 22V.
vereinfacht Spannungsteiler :
U2 = U / (R10+R11)* R11
U2= 22 / (100+130) * 130 = 12,43
--> ist in diesem toten Bereich von 12V - 15 V  daher okay.
Das ist die rechnerische Lösung.
Am besten du misst was bei Schaltung bei R11 anliegt.

3. Falls das nichts hilft, folgendermaßen vorgehen. Am besten mit zwei
Netzgeräten oder halt zwei Spannungen arbeiten. Leg mal 24 V bei der
Versorgung beim LM358 und bei VDD an.
Leg dann an eBus+ eine Spannung von ~ 9V an ->welche Spannung ist am
Ausgang des LM358
Leg dann an eBus+ eine Spannung von ~ 15V-24V an, welche Spannung ist am
Ausgang des LM358.


Übrigens den Pull Down Widerstand habe ich in Verbindung mit dem LM358
bei mir gebraucht, weil ( vermute wegen den C ) bei mir bei R12 wenn
einmal eBUS High anlag , immer eBUS High bei R12 anlag. Der Pull Down
behob das.

mfg
ebc
Autor: Dirk (Gast)
Datum:

Hallo ebc,

erst einmal vielen Dank für deine schnelle Antwort.
Nun aber eine Frage: die Spannungsversorgung (alles nach R10) hab ich
auf meiner Platine gar nicht aufgebaut, da ich die 5V für den Max232
extern beziehe. Soll heißen, bei mir hört es nach R10 auf.
Ich hab den Widerstand dann direkt auf Vcc vom LM358 gelegt.
Kann es sein, dass es daran liegt?

Gruß & Danke,
Dirk
Autor: Dirk (Gast)
Datum:

Nochmal ich:
um den Ganzen vorweg zu greifen, werd ich heute abend mal die Schaltung
erweitern. Allerdings ohne 7805, d.h. es kommen eine Diode (1N4148), der
Kondensator C5 (220µF) und der Vorwiderstand (100Ohm) dazu.
Dann teste ich nochmal und geb Bescheid.

Ich hatte im Studium zwar E-Technik, aber meine Stärke war das nie...
:-)

Gruß
Dirk
Autor: Dirk (Gast)
Datum:
Angehängte Dateien:

Sie sähe es dann aus.
Autor: ebc (Gast)
Datum:

>Nun aber eine Frage: die Spannungsversorgung (alles nach R10) hab ich
auf meiner Platine gar nicht aufgebaut, da ich die 5V für den Max232
extern beziehe. Soll heißen, bei mir hört es nach R10 auf.<

Mhh da komme ich jetzt nicht ganz mit, aber wenn du mal die Schaltung so
wie unten aufbaust sollte es schon klappen.

Ich würde die Schaltung mal testen ohne das du sie an den eBus anhängts.

Netzgerät 1: ( oder irgendeine Spannugsquelle )
Einfach Diode D2 weglassen und hier 24V reingeben.
Masse auf eBus-

Netzgerät 2:
Bei eBus+ eine variable Spannung zwischen 9V und +23 anlegen ( bitte
nicht viel höher als die 24V bei D2 ansonst könnte LM358 kaputt gehen ).
Bei eBus- wieder Masse.

Am Ausgang sollte jetzt entweder 5V ( 4,7V) oder 0 V liegen.

Bin auch nicht der Elektronikprofie, bin mehr der Probierer...
Autor: Dirk (Gast)
Datum:

Also:
- die Schwellenspannung passt nun, liegt bei 12,8V. Hab hierzu den
Spannungsteiler anpassen müssen.
- Auf VDD liegen bei mir 19V, geht nun auch in den LM358 rein
- Am Ausgang vom LM358 (Pin1) kommen 16V an, nach dem Widerstand R14
(10K) sind das nur noch 0,6V. Was muss/sollte denn am Ausgang zum Max232
anliegen?

Vielen Dank ebc für die bisherige Hilfe, das hat mir schon sehr
weitergeholfen. Das Testen vom LM358 probier ich noch, muss nur die
passenden Spannungen "finden". :-)

Gruß
Dirk
Autor: ebc (Gast)
Datum:

Zum Max232 0 oder 5 V galube ich...

Was leigt den an ebus+ an wenn 16V rauskommt ?
Autor: Dirk (Gast)
Datum:

Vom Solarregler kommen 19,5V (konstante Spannung). Sollte also noch im
richtigen Bereich liegen, oder?
Autor: Ebc Ebc (ebc)
Datum:

Ja ist niedrig aber geht ... du hast ja den Spannungsteiler angepasst.

Also testest du die Schaltung jetzt direkt am eBus ?
Den ich bin mir jetzt nicht sicher ob du da was misst am Ausgang ( mit
einem Multimeter ).
Ich weiß leider nicht auswendig was am Ausgang kommen muss wenn eBUS LOW
anliegt und wenn HIGH anliegt.

Wenn an der Eingangspannung (eBus+) LOW 9-12V liegt muss am Ausgang 0
oder 5 V liegen

Wenn an der Eingangspannung (eBus+) HIGH liegt muss am Ausgang 0 oder 5
V liegen.

Am besten ist eben testen mit zwei Netzgeräten
Autor: Ebc Ebc (ebc)
Datum:

ach ja konstante spannung kann nicht kommen. Muss ein rechteck sein ist
ja ein Datenstrom der aus LOW und HIGH besteht
Autor: Dirk (Gast)
Datum:

Hmm, also wenn ich 12V drauf gebe, liegen am Ausgang vom LM358 9,5V an.
Es ist doch richtig, dass die Spannung IC2P die Versorgungsspannung des
LM358 ist (Pin8)? Liegt in meinem Fall (mit den 12V über Netzteil) bei
10,8V. Im Netz hab ich nun gelesen, dass die bei ca. 6,5V liegen sollte,
damit am Ausgang ein Pegel von 5V anliegt...?
Autor: Ebc Ebc (ebc)
Datum:

Versorgungspannung (LM358) sollte 24 V (19V ) sein.

Die Referenzspannung hast du ja auf 12,.. V eingestellt.

Bei eBus+ Klemme kann  9V - 24V(19V) reinkommen.

Direkt am Ausgang des OP wirst du nicht +5V messen, sondern was höheres,
die Z Diode 4,7V ist dann dazu da dass wenn eine Spannung > 4,7 V
vorhanden ist, diese auf 4,7V zu begrenzen.

Daher Versorgungspannung LM358 auf mindestens maximale Spannung die im
System vorkommt. ( = 24 V ).
Bei Spannungsteiler --> am - Eingang des OP sollte die Referenzspannung
zwischen 12V-15V liegen.
Am Eingang eBus+ sollte die Spannung von +9V -> 24V liegen.
Autor: Dirk (Gast)
Datum:

Jetzt muss ich nochmal grundsätzlich fragen:

wenn ich ein externes Netzteil mit 24V einsetze, wo klemm ich das an?
- nach dem 100K Widerstand vom Spannungsteiler (Vdd), welcher dann als
Eingang- in den OP reingeht?
und
- an Vcc vom OP?

Im offiziellen PDF sind Gnd und Vcc vom OP über einen Kondensator
verbunden. Brauch ich den, und wenn ja, wie hoch soll der sein? 0.1/50
sagt mir nichts...

Danke schon wieder im Vorraus! :-)

Gruß
Dirk
Autor: Zawo (Gast)
Datum:

Hi,

die Spannung kannst du direkt an den 1000µF anschließen.
Das bezieht sich auf das von dir gepostete Bild.

0.1/50 sind IMHO 100nF/50V bzw. 0,1µF/50V
Autor: Dirk (Gast)
Datum:

Guten Morgen zusammen,

ich hab gestern mal ein Oszi an eBus+ und eBus- angeschlossen - und
krieg nur eine konstante Spannung von 22,6V. Wie ebc sagte, müsste ich
doch das Rechteck sehen, oder? Muss der Bus erst irgendwie aktiviert
werden oder was kann dafür die Ursache sein?

Für Tipps dankbar,

Gruß
Dirk :-)
Autor: Ebc Ebc (ebc)
Datum:

Was ist den das eigentlich an was du anschließt ? Heizung ? Solar ?
Wenn möglich genaue Typenbezeichnung
Autor: Thilo M. (Gast)
Datum:

Bedenke, dass beim Oszi normalerweise GND mit dem Schutzleiter verbunden
ist. Nicht dass du dir Messfehler einfängst. ;)
Autor: Dirk (Gast)
Datum:

Das mit direktem Anschluss an Erde kann ich nochmal probieren, Danke für
den Tipp.
Anschließen will ich eine Vaillant auromatic 560. Ist ein Solarregler.
Im Netz hab ich schon Beiträge von Leuten gefunden, die den Regler
erfolgreich auslesen können, also muss/sollte es ja funktionieren.
Autor: KlaRa (Gast)
Datum:

Hallo Dirk,
Vaillant nutzt fast ausschliesslich seinen hauseigenen Code. Wenn es da
Infos gibt wäre ich sehr interessiert.
Gruss Klaus.
Autor: Dirk (Gast)
Datum:

Ja, wenn ich nur draufkommen würde... :-(
Autor: Dirk (Gast)
Datum:

Hab mich heute mal mit einem Arbeitskollegen unterhalten. Der hat auch
gemeint, was mir schon länger im Kopf rumschwirrt: ich habe glaub ein
Masse-Problem. Auffällig war nämlich auch, dass wenn ich zum Testen den
Pegelwandler angeschlossen hab, ein Temperatursensor gesponnen hat
(toggelnde Temperatur). Und immer nur dann, wenn der Sensor Kontakt zu
der Messinghülse hat, in der er im Pufferspeicher steckt.
Ebenfalls auffällig: früher wollte ich die Spannung der
Temperatursensor-Eingänge über die ADC-Eingänge eines AVR-NET-IO
abgreifen. Hier kam es dann ebenfalls zu einer Störungsanzeige im Regler
der Sensoren.
Kann es sein, dass ich kein Recheck sehe, weil der Regler kein
"Referenz"-Potential hat?
Autor: Ebc Ebc (ebc)
Datum:

@KlaRa
Infos zu Valliant Telegramme gibts hier
Beitrag "eBus CRC Berechnung nachvollziehen"

@Dirk
Also wenn du ein Oszi hast, dann solltest du auch ein Rechtecksignal am
eBus sehen.
Wenn nicht dann:
1:) Vielleicht muss man eBus aktivieren bei Valliant, galube aber eher
nicht

2.) Du mißt falsch.
    Ansonst mach mal ein Foto von deiner Oszi Einstellung und deinen
Prüfaufbau
Autor: KlaRa (Gast)
Datum:

Hallo EBC,
Datei gefunden. Es dauerte nur etwas die GTAR-Datei zu öffnen. Ging
letztlich mit WINRAR.
Gruss Klaus.
Autor: Dirk (Gast)
Datum:

Hallo ebc,

Testaufbau war wie oben beschrieben. Plus und GND direkt an eBus+/-.
Zeitbereich des Oszi hab ich von 10ms bis 1s variiert, Auflösung war
10V. Auch bei Auto-Einstellung war kein Rechteck zu sehen. Kann das Oszi
aber nochmal von der Arbeit mitnehmen und Fotos machen.
Hab am WE mal die ganzen Masseverbindungen gemessen, da find ich keinen
Fehler. Solarregler kriegt Strom von der Steuerung der Wärmepumpe. Dort
ist die Masse sauber verdrahtet. Auffallend find ich trotzdem die
Geschichte mit dem Temperatursensor.
Autor: ebc (Gast)
Datum:

Kopplung eh auf DC und am Messkopf vom Oszi eh nicht auf x10 eingestellt
?.
Zeitbereich durchspielen

leider habe ich kein Oszi mehr zu Hand, dann könnte ich es dir genauer
sagen.

Aber grundsätzlich muss ein Rechteck kommen ansonst ist etwas anderes im
Argen.
Autor: Wolfgang (Gast)
Datum:

Hallo

ich habe mir die ISM1 von Wolf mit Original software gekauft.
Wenn ich euch irgendwie aushelfen kann, lasst es mich wissen!

MfG
Wolfgang
Autor: ChrisEngel (Gast)
Datum:

Hallo Zusammen,

Ich Lese hier schon eine weile mit und möchte über kurz oder lang meinen
Weißhaupt Solarregler WrSol 2.0 auch über den Ebus Auslesen.
Hat jemand schon mal was mit Weißhaupt gemacht?

@ Dirk:

hast du eine Bus-Versorgung? Also Ich habe mal was gelesen das Irgendwo
die Spannung Bereitgespellt werden muss und manche "Slaves" auch darüber
gespeißt werden. Vielleicht hilft dir das weiter.

MfG Christian
Autor: Dirk (Gast)
Datum:

Hallo Christian,

die Frage ist dann nur: wie finde ich das raus? :-)
Einen Pegel sehe ich ja, nur eben kein Rechteck...
Autor: Tony Gröger (tonyg)
Datum:

ChrisEngel schrieb:
> Hat jemand schon mal was mit Weißhaupt gemacht?

Hallo Chris! Ja ich habe ebfalls ein Projekt mit dem WRSOL 2.0
Regler den ich auslesen. Das Problem hier ist das der WRSOL
über den Service 0x09 0x02 (RAM Auslesen) angesprochen werden muss, um
an den Daten ran zu kommen, es sei denn du hast noch einen anderen
Regler am Ebus der die Daten aus der WRSol 2 anfordert! Die WRSol hat
die Slaveadresse FC und Masteradresse F7 und ist Master 20.

MfG
Tony G.
Autor: ChrisEngel (Gast)
Datum:

Hallo Tony,

Danke für deine Tips. Ich habe mir jetzt erst mal einen eBus Koppler
gebaut wie er weiter oben schon mal zu sehn war. Leider hat der nicht
wirklich Funktioniert. Zwischendurch kamen dann mal ein zwei Telegramme
durch. Ich werde morgen mal eine andere Version zusammen bauen.

Ich habe an dem WrSol noch einen Heitzkreisregler WCS-EM und eine
Fernbedienung WCS-FS hängen. Aber ich bezweifel das der Solarregler mit
dem Erweiterungsmodul Komuniziert.

Womit ließt du die werte aus? Atmega? Kannst du vielleicht etwas von dem
Programm Posten? Wäre sicher sehr Hilfreich.

MfG Christian
Autor: Chris Engel (chrisengel)
Datum:

Hallo Zusammen,

kleines Update von mir. Ich habe mittlerweile meinen Adaprter fertig und
schon fleißig auf dem Bus gelauscht. Allerdings ist es ja so das der
WRsol keine Daten rausrückt.(Wie Tony schon gesagt hat) Ich kriege nur
den Datenaustausch zwischen Heizkreisregler und Fernbedienung mit. Was
allerdings auch sehr Interesant ist.

Bis jetzt habe folgende Werte:

Aussentemperatur
Raumtemperatur
Vorlauftemperatur
Uhrzeit
Datum
Wochentag
Betriebsart ( Ob Nur Heißwasserbetrieb oder Heizungsbetrieb)


Als nächstes werde ich meinen Adapter mal erweitern und mit einem Atmega
ausstatten damit ich auch an die Werte des WRsol komme.

MfG Christian
Autor: Tony Gröger (tonyg)
Datum:

Hallo Zusammen.

Ich hab einen Schnittstelle gebaut die Sendet und Empfängt.
Das besondere an der Schaltung sind die wenigen Bauteile:
1 x 7805L
2 x BC547 oder sonstiges
2 x Wiederstand
2 x Diode (standart)
1 x Zehnerdiode 7v5 1.3W
1 x HCT4011 (NAND)

Der HCT wird zum Senden und Empfangen benutzt! Eine Schaltung
sowie eine genaue Bauteilbeschreibung werde ich in den nächsten Tage
hier veröffentlichen. Des weiternen werde ich den nächsten Woche meinen
Quellcode für den WRSOL noch schreiben. Zur Zeit kann mein MEGA8 seine
Idetifikation auf Anfrage Senden und Telegramme auswerten. Geplant ist
noch das
- CRC Prüfen
- Auslesen der Daten (wie Kol. Temp, Speicher Temp., Leitung KW usw.)
- Verarbeitung der Daten von der WRSOL


Frohes Schaffen

Tony
Autor: Chris Engel (chrisengel)
Datum:

Hallo,

Das klingt ganz nach dem eBus Wandler wie er auf der eBus wiki seite
beschrieben ist. Ich habe momentan einen Atmega 32 am eBus der aber nur
mithört und die Werte auf einem Display anzeigt. Leider habe ich noch
nichts aus dem WrSol rausbekommen.

Weißt du vielleicht an welchen Speicherbereichen im WrSol die Werte
abgelegt werden?

Die CRC müsste ja eine 8Bit CRC sein soweit ich weiß mit dem Polynom 9B
und Initialwert 0.

Leider muss ich momentan erst mal meine Rolläden fertig machen danach
werde ich mich wieder Intensiv mit dem eBus beschäftigen.

MfG Christian
Autor: Tony Gröger (tonyg)
Datum:

Chris Engel schrieb:
> Weißt du vielleicht an welchen Speicherbereichen im WrSol die Werte
> abgelegt werden?

Hallo Chris!

Ja ich habe alle Codes heraus bekommen die ich zum Auslesen des ROMs der
WRSOL brauche.

Ich habe nur zur Zeit Probleme mit meiner Software weil mein UART
des ATMEGA8 nicht so will wie ich mir das gedacht habe! Das Problem
liegt darin das mein MEGA8 die Anforderung sendet und gleich wieder ein
Zeichen empfangen muss! Aber leider zeigt er mir noch die Daten die ich
schon gesendet habe! Ich weis erst mal momentan nicht ganz weiter...
Wenn ich heut Abend Zeit hab werde ich die Soft mal Uploaden.

MfG
Tony
Autor: Tony Gröger (tonyg)
Datum:
Angehängte Dateien:

Hallo Zusammen!

Wie versprochen gibt es heut meine Schaltung von dem eBUS Converter
und meinem angefangenen Programm. Für Rechtschreibung und sinnlose
Bytes entschuldige ich mich schon mal :-). So das Problem ligt derzeit
hier:
case READ_DATA: // Hier ist das PROBLEM, HIER WERDEN DIE VON ATMEGA GESENDETE BYTE NOCH MAL EMPFANGEN, UND DER BUFFER FÜLLT SICH FALSCH
c = ser_getc();        
    {
    if ((!(c==SYN))) { ebus_buffer[ebus_pos] = c; if (!(ebus_pos>39)) ebus_pos++;}  
        else if ((c==SYN)) { } // data_push(); zustand=ANALYSE_READ_DATA;/* ebus_control |= ERROR_TO_READ_DATA;*/}

        }
     if (ebus_pos==5) Folge_Bytes = ebus_buffer[3];
  if (ebus_pos==(Folge_Bytes+6)) {data_push(); zustand=ANALYSE_READ_DATA;} //data_push() schiebt den ebus_buffer ich richtige POSITION  
// else zustand=REC_DATA;
break; 
Bevor ich READ_DATA aufrufe sendet der Mega8
MASTER_ADRESSE,WRSOL_SLAVE,0x07,0x04,0x01,0x00.
So jetzt würde ich eigentlich das Telegramm der WRSol bekommen
das es sie gibt. Das beginnt mit 0x00; 0x0A; usw.
Das will ich jetzt lesen! Leider bekomme ich aber die Bytes noch
von meinem Senden also so:
0x04,0x01,0x00,CRC und dann erst 0x00,0x0A usw.
obwohl ich UCSRB &= ~(1<<RXEN); ausschalte.
Woran kann das liegen?

MfG
Tony
Autor: Chris Engel (chrisengel)
Datum:

Hallo Tony,

erstmal Danke für dein Programm und deinen Schaltplan. Ich kann leider
auch nicht sehn warum du deine gesendeten Zeichen nochmal empfängst es
sieht eigentlich alles Richtig aus. Hast du schonmal versucht anstatt an
den WrSol an einen PC zu schicken. Dann siehst du ob der Atmega wirklich
seine eigenen zeichen empfängt oder ob vll ein ebus Teilnehmer die Daten
verzögert spiegelt ( warum auch immer ). Ich muss dazu sagen das ich
eigentlich immer in Assembler Programmiere und mich mit C nicht wirklich
gut auskenne.

Konntest du mittlerweile schon die Daten auslesen?

MfG Christian
Autor: Tony Gröger (tonyg)
Datum:

Hallo Christian!

Hab das Problem gelöst! :) Ich hab in der Sendefunktion
ein Delay von genau 8 ms eingebaut, weil er warscheinlich das
gesendete gleich wieder ins Register gelesen hat! Nun funktioniert
es so wie es sein soll! Und JA ich hab alle möglichen Daten aus der
WRSOL testweise auslesen können! Ich habe auch noch einen kleinen Fehler
in der analyse_data() Funktion gefunden, den ich noch korrigiert habe.
Wenn ich mit meinem Code noch etwas weiter bin, werd ich ihn hier
nochmal
offenbaren und zwar mit Auslesung der WRSOL Daten. :)
Bis Später...

MfG Tony
Autor: Pido (Gast)
Datum:

Hallo

lol wusste gar nich das eBus so populär ist :).Von der Frima TEM
(arbeite dort) gibts es schon fertige Aufzeichnungs Tools. Über USB oder
LAN.

Gruss
Autor: hobe (Gast)
Datum:

@ Chris Engel:
das du das gesendete Zeichen wieder empfängts hängt mit der Arbitrierung
zusammen. Du musst das empfangene Zeichen auch überprüfen, ob es das
gesendete ist, sonst darfst du nicht weiterschicken!!

siehe:
http://ebus.webhop.org/twiki/pub/EBus/EBusDoku/Spe...
(Kapitel 6.2)

@ Pido:
Wenn du bei TEM arbeitest könntest du doch mithelfen den eBus zu einem
offeneren Standard zu machen ;)
Auf http://ebus.webhop.org hast du die Möglichkeit dazu....

lg
Bernhard
Autor: f.moritz (Gast)
Datum:

Habe ein Nullmodemkabel und dazu ein USB-RS 232 Adapterkabel am ISM1
Schnittstellenmodul. Fehlermeldung " Keine serielle Verbindung
verfügbar.
Vorher hatte ich einen anderen PC dabei hatte ich ein USB RS 232
Adapterkabel nicht nötig,da der Anschluss da war. Frage was hat das "
blöde " Teil ?
Autor: KleKa (Gast)
Datum:

Kein null-modem kabel verwenden.
Autor: Ingo Wupper (wupperi)
Datum:

Wäre es für jemanden hier im Forum möglich den Schaltplan von Tony um
eine serielle Schnittstelle mittels MAX232 zu erweitern?

Danke und Gruss,

Ingo
Autor: Klaus Ra. (klara)
Datum:

Hallo Ingo,
Du brauchst den MAX232 doch nur daran zuhängen.
Gruss Klaus.
Autor: Ingo Wupper (wupperi)
Datum:

D.h. T1in an Pin 4 vom 4011N und R1in an Pin 8/9, sowie V+ an +5V und V-
an GND?
C1+ und C1-, sowie C2+ und C2- jeweils mit einem Elko 1nF schliessen?
Wie gesagt, bin nicht so bewandert, schaffe es wohl gerade mir einen
fertigen Plan zusammenzulöten...aber was ich da genau löte...
Autor: Reinhold Andree (bluebird1)
Datum:

ebc schrieb:
> ebus Daten auf SD Karte loggen

Hallo Christian,

ich habe eine Vaillant VC126 Therme im Betrieb mit eBus und möchte
versuchen wesentliche Betriebsdaten zu loggen. Du hast hier eine
interessante Schaltung vorgestellt auf Basis eines atmega8 in Verbindung
mit einer SD-Karte. Ich würde mir diese Schaltung gerne nachbauen,
jedoch fehlt bei Deinem Hinweis jeglicher Link zu der Betriebs-Software
für den Atmega. Wärst Du bereit mir/uns das zugehörige Programm für
diese Applikation beizustellen?

Ich bin Mitglied im Bereich eBus-wiki den BernhardH freundlicherweise
ins Leben gerufen hat und würde dort meine Erkenntnisse, die ich
hoffentlich auch mit Deiner Hilfe noch erarbeiten werde, der
Gemeinschaft zur Verfügung stellen.

Freue mich auf eine Antwort.

Gruß,
Reinhold
Autor: Thomas Huber (bahlu)
Datum:

Hallo Leute,

Ich bin neu hier und hoffe das der ein oder andere hier noch reinschaut
^^ Suche seit wochen eine anleitung zum Bau eines Interface vom e-bus
zum PC.

Oder ist es möglich ein fertiges teil über das Forum hier zu bekommen ?

Gruß Bahlu
Autor: hobe (Gast)
Datum:

Hallo Thomas,

im ebus wiki sind einige Schaltpläne zusammengetragen:

http://ebus.webhop.org/twiki/bin/view.pl/EBus/EBusKonverter

bestimmt findest du dort brauchbare Informationen bzw. Kontakte.

lg
Bernhard
Autor: Günter S. (varda)
Datum:
Angehängte Dateien:

habe mal eine EBus-Interface Platine nach folgenden Forum-Einträgen
in KICAD entworfen.

http://www.ip-symcon.de/forum/f19/ebus-adapter-sen...

Galvanische Trennung ist NICHT mit auf der Platine, dafür gibt es
günstige serielle Adapter aus HongKong für ein paar Euros in Ebay.
Selbstbau lohnt da kaum.
Autor: Günter S. (varda)
Datum:
Angehängte Dateien:

hier noch der Schaltplan dazu ...
Autor: mips-freund (Gast)
Datum:

Tolle Platine.


Hätte Interesse an der Platine.

Hast du noch ein paar Stück davon?
Autor: Günter S. (varda)
Datum:

mips-freund schrieb:
> Tolle Platine.
>
>
> Hätte Interesse an der Platine.
>
> Hast du noch ein paar Stück davon?

ja, könnte noch ein paar abgeben

Bitte Boardmail an mich
Autor: Helmut (Gast)
Datum:

Kann euch Anwendern der Schaltung nur IPSymcon empfehlen.

Dort hat der äußerst kompetenter User Andreas (Brownson) ein
Anwendermodul für die Software geschrieben, dass schon die
Checksummengeschichte und Decodierung recht einfach macht.

Aber Vorsicht:

IPSymcon macht süchtig, man will alles damit machen....


Gruß Helmut

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




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 erkennst du die Nutzungsbedingungen an.

webmaster@mikrocontroller.netImpressumNutzungsbedingungenWerbung auf Mikrocontroller.net