eBus Connector

Ich habe Probleme beim Senden, obwohl ich in meinen Skripten nichts geändert. So schaut es in der Konsole aus. Any idea?

[SENDING ] FF 15 B5 09 04 0E 2F 00 00 4F
[SEND ERR] Expected B5, received AA
[SENDING ] FF 15 B5 09 04 0E 2F 00 00 4F
[SEND ERR] Expected 15, received AA
[SENDING ] FF 15 B5 09 04 0E 2F 00 00 4F
[SEND ERR] Expected 15, received AA AA AA
[SENDING ] FF 15 B5 09 04 0E 2F 00 00 4F
[SEND ERR] Expected 15, received AA AA
[SENDING ] FF 15 B5 09 04 0E 2F 00 00 4F
[SEND ERR] Expected 15, received AA AA
[SENDING ] FF 15 B5 09 04 0E 2F 00 00 4F
[SEND ERR] Expected 15, received AA AA
[SENDING ] FF 15 B5 09 04 0E 2F 00 00 4F
[SEND ERR] Expected 15, received AA
[SENDING ] FF 15 B5 09 04 0E 2F 00 00 4F
[SEND ERR] Expected 15, received AA AA
[SENDING ] FF 15 B5 09 04 0E 2F 00 00 4F
[SEND ERR] Expected 15, received AA
[SENDING ] FF 15 B5 09 04 0E 2F 00 00 4F
[SEND ERR] Expected 15, received AA C5 AA
[SENDING ] FF 15 B5 09 04 0E 2F 00 00 4F
[SEND ERR] Expected 15, received AA FC AA
[SENDING ] FF 15 B5 09 04 0E 2F 00 00 4F
[SEND ERR] Expected 15, received AA
[SENDING ] FF 15 B5 09 04 0E 2F 00 00 4F
[SEND ERR] Expected 15, received AA FC AA
[SENDING ] FF 15 B5 09 04 0E 2F 00 00 4F
[SEND ERR] Expected 15, received AA AA
[SENDING ] FF 15 B5 09 04 0E 2F 00 00 4F
[SEND ERR] Expected 15, received AA
[SENDING ] FF 15 B5 09 04 0E 2F 00 00 4F
[SEND ERR] Expected 0E, received AA
[SENDING ] FF 15 B5 09 04 0E 2F 00 00 4F
[SEND ERR] Expected 15, received AA
[SENDING ] FF 15 B5 09 04 0E 2F 00 00 4F
[SEND ERR] Expected 15, received AA
[SENDING ] FF 15 B5 09 04 0E 2F 00 00 4F
[SEND ERR] Expected 15, received AA AA
[SENDING ] FF 15 B5 09 04 0E 2F 00 00 4F
[SEND ERR] Expected FF, received AA

Danke & Gruß, Axel

Vielleicht stimmt der Pegel nicht ? Hatte Ich so ähnlich beim einstellen

Ne - hab doch nur den eBusConnector von 1.1 auf 1.2 aktualisiert. Nach downgrade läuft es wieder…

Funktioniert sofort! Das Update auf die 2.7er hat mich nun endlich zum Umstieg auf dieses sehr hilfreiche Tool motiviert. Danke!

Komisch. Hat sonst noch wer dieses Problem?

Leider ist das aus der Ferne schwer zu debuggen.

In der vorigen Version hat der eBus Connector alles auf einmal gesendet, jetzt sendet er jedes Byte einzeln und lauscht nach jedem Byte, ob das Empfangene zum Gesendeten passt. Bei dir kommt da anscheinend dazwischen was Anderes. Kann es sein, dass der Computer beim Senden zu langsam ist bzw. es zu lange dauert, bis vom eBus Koppler über den virtuellen COM-Port die eigenen Daten zurückgelesen werden?

Mit der vorigen Version gibt es keine Probleme beim Senden und es wird auch alles so empfangen, wie es gesendet wurde?

Ja, mit 1.1 geht alles wunderbar.

Hm. :confused:
Funktioniert es sonst bei allen?

Ich habe die aktuelle Vers. installiert und auf meinem Control Monitor habe ich keine Fehler.

Gruß Artur

Hallo Axel,
überprüfe doch mal die Einstellungen Deiner COM-Schnittstelle. Gerätemanager -> Anschlüsse -> Serial Port -> Eigenschaften -> Anschlusseinstellungen -> Erweitert

Da der eBus nur mit 2400 Bit/s betrieben wird können die USB-Packetgrössen verringert werden. Unter BM-Einstellungen kann man auch Wartezeiten reduzieren. Der FTDI FT232RL hat eine Latenzzeit von 2 ms, also schneller geht es nicht.

COM_Einstellen.jpg

Gruss Klaus.

Schade - habe die Parameter bis ins Maximum ausgereizt, aber leider ohne Änderung. Ich benutze weiterhin meine Skripte, WW-SollTemp ergibt sich demnach bspw. so: „FF15B509040E4400“.dechex($_IPS[‚VALUE‘]*2)

Ist das korreckt?

Danke & Gruß, Axel

Hallo Axel,
im Script eBusSender.php ist diese Funktion für das Setzen des Sollwertes für Warmwasser da:

// Sendet eine eBus Nachricht zum Setzen des Datensatzes mit der gegebenen Adresse (Wert muss als bereits kodierter Hex-String übergeben werden)
function EBUS_WertSetzen($QQ, $ZZ, $Adresse, $Wert)
{
	// Wert mit dem Befehl B5 09 0E setzen
	EBUS_NachrichtSenden(EBUS_NachrichtErstellen($QQ, $ZZ, "B5", "09", "0E $Adresse 00 $Wert"));
}

Hier ist die Adresse und das Format:

define('EBUS_SOLLTEMPERATUR_SPEICHER', '44');
define('EBUS_SOLLTEMPERATUR_SPEICHER_FORMAT', 'DATA1c');

Und hier ist die kodierung des DATA1c - Formates.

	// DATA1c kodieren
	if($Format == "DATA1c")
	{
	   return EBUS_DecHex($Wert * 2);
	}

Ich würde sagen, Du liegst richtig.

Gruss Klaus

Ich bin leider immer noch nicht in der Lage den EBusConnector als Dienst zu installieren.
Ich habe die Fehlermeldung die bei der Ausführung der Batch Datei ensteht hier gepostet. Vielleicht hat jemand eine Idee an was das liegt ???

C:\Windows\system32>C:\Windows\Microsoft.NET\Framework\v2.0.50727\InstallUtil.ex
e eBusConnectorService.exe
Microsoft (R) .NET Framework-Installationsprogramm, Version 2.0.50727.5420
Copyright (c) Microsoft Corporation. Alle Rechte vorbehalten.

Beim Initialisieren der Installation ist eine Ausnahme aufgetreten:
System.IO.FileNotFoundException: Die Datei oder Assembly "file:///C:\Windows\sys
tem32\eBusConnectorService.exe" oder eine Abhängigkeit davon wurde nicht gefunde
n. Das System kann die angegebene Datei nicht finden.

C:\Windows\system32>REM Write the service configuration

C:\Windows\system32>regedit /s eBusConnector.reg

C:\Windows\system32>REM Set the service to depend on the virtual port service

C:\Windows\system32>sc config eBusConnector depend=sec_service
BESCHREIBUNG:
        Ändert einen Diensteintrag in der Registrierung und der Dienstdatenbank
SYNTAX:
        sc <Server> config [Dienstname] <Option1> <Option2>...

OPTIONEN:
HINWEIS: Der Optionsname enthält das Gleichheitszeichen.
         Zwischen dem Gleichheitszeichen und dem Wert muss ein Leerzeichen
         eingefügt werden.
 type= <own|share|interact|kernel|filesys|rec|adapt>
 start= <boot|system|auto|demand|disabled|delayed-auto>
 error= <normal|severe|critical|ignore>
 binPath= <Binärpfadname>
 group= <LoadOrderGroup>
 tag= <yes|no>
 depend= <Abhängigkeiten(getrennt durch / (Schrägstrich))>
 obj= <AccountName|ObjectName>
 DisplayName= <Anzeigename>
 password= <Kennwort>

C:\Windows\system32>REM Start the service

C:\Windows\system32>net start eBusConnector
Der Name für den Dienst ist ungültig.

Sie erhalten weitere Hilfe, wenn Sie NET HELPMSG 2185 eingeben.


C:\Windows\system32>echo eBus Connector Service installed.
eBus Connector Service installed.

C:\Windows\system32>pause
Drücken Sie eine beliebige Taste . . .

Du musst den Pfad vorher in der reg Datei anpassen…

Sry jetzt stehe ich auf dem Schlauch :frowning: Die RegDatei des Connectors enthält keine Pfad Angaben

Windows Registry Editor Version 5.00

; Project: eBus Connector
;  Module: Service Configuration
;  Author: Thomas Terényi (thomas@terenyi.at)

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\eBusConnector]

; The name of the serial port used to communicate with the eBus
"SerialPort"="COM12"

; The local UDP port to listen on for commands
"LocalUDPPort"="8812"

; The remote host to send the results to
"RemoteHost"="192.168.XXX.XXX"

; The remote UDP port to send the results to
"RemoteUDPPort"="8813"

; Uncomment to enable delayed autostart to allow the virtual serial port service to start first
"DelayedAutoStart"=dword:1

Hatte nur gesehen, dass es bei dir hätte im Systemverzeichnis liegen sollen. Ich musste die Batch einfach nur ausführen. Rufst du die Batch lokal oder über Freigabe auf?

Ich ruf die Batch lokal auf … ich habe sicherheitshalber mal die ebusconnectorservice.exe in das c:\windows\system32\ Verzeichnis kopiert hat aber auch nicht gebracht. Was mir auffällt ist das in der Fehlermeldung das „S“ von System32 klein geschrieben ist aber in meinem System groß. Kann aber im Moment nicht sehen wo der Aufruf definiert wird.

Probier mal alle Dateien in ein Verzeichnis zu extrahieren/kopieren (z.B. C:\xyz), dann eine Konsole (cmd.exe) mit Adminrechten aufzumachen, in das entsprechende Verzeichnis zu wechseln (z.B. cd \xyz) und dann von dort die Batch-Datei zu starten („Install Service.bat“).

Der Installer braucht nicht nur das .exe-File, sondern auch die DLL im gleichen Ordner.

Danke für den Tipp. Ich werde das mal ausprobieren wenn ich am Mittwoch wieder in Berlin bin

Sent from my iPad using Tapatalk HD

Hallo,

gibt es eigentlich Bestrebungen den eBUS Connector von der Performance Aufnahme „schlanker“ zu machen? Ich betreibe den Connector bei mir auf einer kleinen 1Liter ASUS Kiste mit einem recht schwachen N270 Atom und da habe ich zum Teil eine Auslastung von über 60%. Gehe ich noch mit Teamviewer drauf, bin ich bei 100%.

Falls es hier keine Bestrebungen mehr gibt, muss ich wohl mit Leben, auch nicht schlimm :slight_smile:

Trotzdem ist es sehr guter Dienst, mit dem einige Dinge mittels IPS möglich sind.

Grüße

Thommy