NEWS
EBus - USB-Adapter # john30/ebusd # Vaillant ecoTEC # VRC 700 # MQTT
-
Ein Schritt weiter:
Nun muss ich die "elemente" nur noch richtig auswerten und zuordnen
GRuß
Jürgen
-
hier mal ein paar interessante Befehle
ebusctl find -d
! bai ACRoomthermostat = off
! bai BoilerType = 2
! bai DateTime = valid;23:33:49;06.12.2017;7.562
! bai FanHours = 245
! bai FanPWMSum = 0
! bai FanStarts = 0
! bai FlowTemp = 38.38;ok
! bai FlowTempDesired = 38.50
! bai FlowTempMax = 88.69
! bai Fluegasvalve = off
! bai HcPumpStarts = 660
! bai HwcDemand = no
! bai HwcTempDesired = (ERR: invalid position for 3108b509030dea03 / 00)
! bai HwcWaterflow = 0.00
! bai HwcWaterflowMax = 0.00
! bai Mode = standby
! bai OutdoorstempSensor = 7.31;ok
! bai PartloadHcKW = (ERR: invalid position for 3108b509030d0704 / 00)
! bai PartnumberBox = 00 20 11 22 37
! bai PrEnergyCountHc3 = 0
! bai PrEnergyCountHwc1 = 14616
! bai PrEnergyCountHwc2 = 0
! bai PrEnergyCountHwc3 = 0
! bai PrEnergySumHwc1 = 4575111
! bai PrEnergySumHwc2 = 0
! bai PrEnergySumHwc3 = 0
! bai PumpHours = 296
! bai ReturnTemp = -1.81;cutoff
! bai SHEMaxFlowTemp = 0.00
! bai Status01 = 35.5;35.5;7.312;-;49.0;off
! bai Status02 = auto;60;75.0;70;70.0
! bai StorageTemp = 49.69;ok
! bai StorageTempDesired = 55.00
! bai StorageTempMax = 70.69
! bai TempMaxDiffExtTFT = 0.00
! bai ValveStarts = 74
! bai WarmstartDemand = no
! bai WarmstartOffset = (ERR: invalid position for 3108b509030d1004 / 00)
! bai WaterHcFlowMax = 1790
! bai WaterpressureMeasureCounter = 15
! bai WaterpressureVariantSum = 8353
! bai WP = on
! broadcast outsidetemp = 7.312
! broadcast vdatetime = 23:33:48;06.12.2017
! scan.08 = Vaillant;BAI00;0204;9602
! scan.08 id = 21;17;43;0010021926;0001;011072;N1
! scan.15 = Vaillant;70000;0419;4603ebusctl find -F circuit,name,comment
! bai,AccessoriesOne,d.27 Zubehörrelais 1
! bai,AccessoriesTwo,d.28 Zubehörrelais 2
! bai,ACRoomthermostat,d.08 Raumthermostat
! bai,averageIgnitiontime,d.64 Mittlere Zündzeit
! bai,BlockTimeHcMax,d.02 Maximale Brennersperrzeit
! bai,BoilerType,BoilerType_DK
! bai,ChangesDSN,Anzhl der DSN Änderungen
! bai,CirPump,d.13 Zirkulationspumpe
! bai,CounterStartattempts1,d.68 Zündfehler 1. Versuch
! bai,CounterStartattempts2,d.69 Zündfehler 2. Versuch
! bai,CounterStartAttempts3,Zündfehler 3. Versuch
! bai,CounterStartAttempts4,Zündfehler 4. Versuch
! bai,currenterror,Aktuelle Fehler
! bai,DateTime,Datum Uhrzeit
! bai,dcfState,d.91 DCF Status
! bai,DCFTimeDate,DCF Datum/Uhrzeit
! bai,DCRoomthermostat,d.16 Raumthermostat
! bai,DeactivationsIFC,d.61 Anzahl Zündfehler
! bai,DeactivationsTL,d.60 STB Abschaltungen
! bai,DeltaFlowReturnMax,MaxDeltaFlowReturn_DK
! bai,DisplayMode,DisplayMode_DK
! bai,DSN,DSN
! bai,DSNOffset,d.93 Gerätekennung
! bai,DSNStart,DSN Startadresse
! bai,EBusHeatcontrol,d.90 Digitaler Regler
! bai,EbusSourceOn,eBUS Spannungsversorgung
! bai,EbusVoltage,eBUS Spannung
! bai,errorhistory,Fehlerhistorie
! bai,ExternalFaultmessage,Ext. Störmeldung
! bai,externalFlowTempDesired,ext. Vorlaufsollwert
! bai,externalHwcSwitch,Wasserschalter
! bai,ExternGasvalve,Ext. Gasventil
! bai,ExtFlowTempDesiredMin,d.09 Min. ext. Vorlaufsollwert
! bai,ExtStorageModulCon,VR65 angeschlossen
! bai,extWP,d.11 ext. Heizungspumpe
! bai,FanHours,Betriebsstunden Lüfter
! bai,FanMaxSpeedOperation,Max. Lüfterdrehzahl
! bai,FanMinSpeedOperation,Min. Lüfterdrehzahl
! bai,FanPWMSum,Fan_PWM_Sum_DK
! bai,FanPWMTest,Fan_PWM_Test_DK
! bai,FanSpeedOffsetMax,d.51 Offset max. Lüfterdrehzahl
! bai,FanSpeedOffsetMin,d.50 Offet min. Lüfterdrehzahl
! bai,FanStarts,FanCommunt_DK
! bai,FloorHeatingContact,Anlegethermostat
! bai,FlowsetHcMax,d.71 Max. Vorlauftemp. Heizbetrieb
! bai,FlowsetHwcMax,d.78 Max. Vorlauftemp. WW
! bai,FlowSetPotmeter,Vorlaufsollwert Poti
! bai,FlowTemp,d.40 Vorlauftemperatur
! bai,FlowTempDesired,d.05 Vorlaufsolltemperatur
! bai,FlowTempMax,Max. Vorlauftemperatur
! bai,Fluegasvalve,Abgasklappe
! bai,FluegasvalveOpen,Abgasklappe offen
! bai,HcHours,d.80 Hz. Betriebsstunden
! bai,HcPumpMode,d.18 Pumpenbetriebsart
! bai,HcPumpStarts,CH_PumpCommunt_DK
! bai,HcStarts,d.82 Schaltspiele Heizbetrieb
! bai,HcUnderHundredStarts,HZ_UnderHundred_SwiActi_DK
! bai,HeatingSwitch,d.23 Winterbetrieb
! bai,HoursTillService,d.84 Stunden bis Wartung
! bai,HwcDemand,d.22 WW Anforderung
! bai,HwcHours,d.81 Betriebsstunden WW
! bai,HwcImpellorSwitch,Brauchwasserzapfung
! bai,HwcPostrunTime,d.72 WW Pumpnenachlaufzeit
! bai,HwcSetPotmeter,WW Sollwert Potentiometer
! bai,HwcStarts,d.83 Schaltspiele BW Betrieb
! bai,HwcSwitch,Wasserschalter
! bai,HwcTemp,d.03 WW Vorlaufsolltemp
! bai,HwcTempDesired,d.06 Brauchwassersollwert
! bai,HwcTempMax,d.20 Max. WW Temperatur
! bai,HwcTypes,WW Typen
! bai,HwcUnderHundredStarts,BW_UnderHundred_SwiActi_DK
! bai,HwcWaterflow,d.36 Zapfmenge
! bai,HwcWaterflowMax,Max. WW Vorlauftemp.
! bai,InitialisationEEPROM,InitialisationEEPROM_DK
! bai,IonisationVoltageLevel,d.44 Spannungspegel Ionisationssignal
! bai,maintenancedata_HwcTempMax,Max. WW Temperatur
! bai,maxIgnitiontime,d.65 Max. Zündzeit
! bai,minIgnitiontime,Min. Zündzeit
! bai,Mode,Betriebsart
! bai,ModulationTempDesired,Modulationssollwert
! bai,OutdoorstempSensor,d.47 Außentemperaturfühler
! bai,OverflowCounter,Überlauf PM Zähler
! bai,ParamToken,ParamToken_DK
! bai,PartloadHcKW,d.00 Heizungsteillast
! bai,PartloadHwcKW,d.77 Speicherteillast
! bai,PartnumberBox,Partnumber_Box
! bai,PositionValveSet,d.35 Position VUV
! bai,PowerValue,Leistungsdaten
! bai,PrAPSCounter,PrAPSCounter_DK
! bai,PrAPSSum,PrAPSSum_DK
! bai,PrEnergyCountHc1,PrEnergyCountCH1_DK
! bai,PrEnergyCountHc2,PrEnergyCountCH2_DK
! bai,PrEnergyCountHc3,PrEnergyCountCH3_DK
! bai,PrEnergyCountHwc1,PrEnergyCountDHW1_DK
! bai,PrEnergyCountHwc2,PrEnergyCountDHW2_DK
! bai,PrEnergyCountHwc3,PrEnergyCountDHW3_DK
! bai,PrEnergySumHc1,PrEnergySumCH1_DK
! bai,PrEnergySumHc2,PrEnergySumCH2_DK
! bai,PrEnergySumHc3,PrEnergySumCH3_DK
! bai,PrEnergySumHwc1,PrEnergySumDHW1_DK
! bai,PrEnergySumHwc2,PrEnergySumDHW2_DK
! bai,PrEnergySumHwc3,PrEnergySumDHW3_DK
! bai,ProductionByte,ProductionByte
! bai,PrVortexFlowSensorValue,PrVortexFlowSensorValue_DK
! bai,PumpHours,Betriebsstunden Pumpe
! bai,PumpHwcFlowNumber,PumpDHWFlowNumber_DK
! bai,PumpHwcFlowSum,PumpDHWFlowSum_DK
! bai,RemainingBoilerblocktime,d.67 Verbleibende Brennersperrzeit
! bai,ReturnRegulation,d.17 Rücklaufregelung
! bai,ReturnTemp,Rücklauftemperatur
! bai,ReturnTempMax,Max. Rücklauftemperatur
! bai,SDFanSpeed,d.34 Lüfteristdrehzahl
! bai,SDFlame,Flammensignal
! bai,SDFlameSensingASIC,SD_Flame_Sensing_ASIC_DK
! bai,SDGasvalve3UC,Gasventil 3
! bai,SDGasvalve,d.30 Gasventil
! bai,SDGasvalveASICFeedback,Rückmeldung Gasventil
! bai,SDGasvalveUC,Gasventil
! bai,SDGasvalveUCFeedback,Rückmeldung Gasventil
! bai,SDIgnitor,Zünder
! bai,SDSTLWithNTC,SD_STL_with_NTC
! bai,SDTemplimiter,Temperaturbegrenzer
! bai,SDTRT,d.41 Rücklauftemperatur
! bai,SDVolatileLockout,Verriegelnde Störabschaltungen
! bai,SDVolatileLockoutIFCGV,SD_VolatileLockout_IFC_GV_DK
! bai,SecondPumpMode,d.19 Betriebsart 2. Pumpe
! bai,SerialNumber,SerialNumber
! bai,SetFactoryValues,d.96 Werkseinstellungen
! bai,SHEMaxDeltaHwcFlow,SHE_MaxDeltaFlowDHW_DK
! bai,SHEMaxFlowTemp,Max. WW Vorlauftemp.
! bai,SolarPostHeat,d.58 Solarbetriebsart
! bai,Statenumber,Statenumber_DK
! bai,Status01,Vorlauftemperatur/Rücklauftemperatur/Aussentemperatur/WW Temperatur/Speichertemperatur/Pumpenstatus
! bai,Status02,Betriebsart/Maximaltemperatur/ReglerCurrentTEMP/Maximaltemperatur/ReglerCurrentTemp
! bai,Status16,Aussentemperatur
! bai,Status,Status
! bai,Storageloadpump,d.12 Speicherladepumpe
! bai,StorageLoadPumpHours,TankLoadPumpOperationHours_DK
! bai,StorageloadPumpStarts,TankloadPumpCommunt_DK
! bai,StorageLoadTimeMax,d.75 Max. Speicherladezeit
! bai,StoragereleaseClock,d.25 Speicherfreigabe
! bai,StorageTemp,d.04 Speicheristtemp
! bai,StorageTempDesired,d.07 Speichersolltemp
! bai,StorageTempMax,Max. Speichertemp.
! bai,TargetFanSpeed,d.33 Lüfter Solldrehzahl
! bai,TargetFanSpeedOutput,Lüfter Solldrehzahl
! bai,TempDiffBlock,TempDiffBlock_DK
! bai,TempDiffFailure,TempDiffFailure_DK
! bai,TempGradientFailure,Gradientenfehler
! bai,TempMaxDiffExtTFT,MaxTempDiffExtTFT_DK
! bai,Testbyte,Testbyte_DK
! bai,TimerInputHc,Eingang Schaltuhr
! bai,ValveMode,d.70 VUV Betriebsart
! bai,ValveStarts,3WV Schaltspiele
! bai,VortexFlowSensor,VortexFlowSensor_DK
! bai,WarmstartDemand,Warmstartanforderung
! bai,WarmstartOffset,d.73 Warmstart Offset
! bai,WaterHcFlowMax,MaxWaterFlowCH_DK
! bai,WaterPressure,Wasserdruck
! bai,WaterpressureBranchControlOff,Drucksprungerkennung ausschalten
! bai,WaterpressureMeasureCounter,WaterpressureMeasureCounter_DK
! bai,WaterpressureVariantSum,WaterpressureVariantSum_DK
! bai,WP,d.10 Wasserpumpe
! bai,WPPostrunTime,d.01 Pumpennachlaufzeit
! bai,WPSecondStage,WP_SecondStage_DK
! broadcast,datetime,Datum/Uhrzeit
! broadcast,error,Fehlernachricht
! broadcast,hwcStatus,Status Warmwasser
! broadcast,ident,Identifikation
! broadcast,ident,Identifikation
! broadcast,load,Quick - WW Speicherladung
! broadcast,outsidetemp,Außentemperatur
! broadcast,signoflife,Lebenszeichen
! broadcast,vdatetime,Datum/Uhrzeit
! memory,eeprom,EEPROM Daten lesen
! memory,ram,RAM Daten lesen
! scan,id,Scan ID
! scan.08,,
! scan.08,id,Scan ID
! scan.15,,
! scan.15,id,Scan IDebusctl find -d -v
! bai ACRoomthermostat = onoff=off
! bai BoilerType = =2
! bai DateTime = dcfstate=valid;btime=23:37:51;bdate=06.12.2017;temp2=7.312
! bai FanHours = hoursum2=245
! bai FanPWMSum = =0
! bai FanStarts = cntstarts2=0
! bai FlowTemp = temp=38.38;sensor=ok
! bai FlowTempDesired = temp=38.50
! bai FlowTempMax = temp=88.69
! bai Fluegasvalve = onoff=off
! bai HcPumpStarts = cntstarts2=660
! bai HwcDemand = yesno=no
! bai HwcTempDesired = (ERR: invalid position for 3108b509030dea03 / 00)
! bai HwcWaterflow = uin100=0.00
! bai HwcWaterflowMax = uin100=0.00
! bai Mode = mode=standby
! bai OutdoorstempSensor = temp=7.31;sensor=ok
! bai PartloadHcKW = (ERR: invalid position for 3108b509030d0704 / 00)
! bai PartnumberBox = =00 20 11 22 37
! bai PrEnergyCountHc3 = =0
! bai PrEnergyCountHwc1 = =14616
! bai PrEnergyCountHwc2 = =0
! bai PrEnergyCountHwc3 = =0
! bai PrEnergySumHwc1 = =4575111
! bai PrEnergySumHwc2 = =0
! bai PrEnergySumHwc3 = =0
! bai PumpHours = hoursum2=296
! bai ReturnTemp = temp=-1.81;sensor=cutoff
! bai SHEMaxFlowTemp = temp=0.00
! bai Status01 = temp1=34.5;temp1=33.5;temp2=7.312;temp1=-;temp1=49.0;pumpstate=off
! bai Status02 = hwcmode=auto;temp0=60;temp1=75.0;temp0=70;temp1=70.0
! bai StorageTemp = temp=49.69;sensor=ok
! bai StorageTempDesired = temp=55.00
! bai StorageTempMax = temp=70.69
! bai TempMaxDiffExtTFT = temp=0.00
! bai ValveStarts = cntstarts2=74
! bai WarmstartDemand = yesno=no
! bai WarmstartOffset = (ERR: invalid position for 3108b509030d1004 / 00)
! bai WaterHcFlowMax = =1790
! bai WaterpressureMeasureCounter = =15
! bai WaterpressureVariantSum = pressm2=8353
! bai WP = onoff=on
! broadcast outsidetemp = temp2=7.312
! broadcast vdatetime = time=23:37:50;date=06.12.2017
! scan.08 = MF=Vaillant;ID=BAI00;SW=0204;HW=9602
! scan.08 id = prefix=21;year=17;week=43;product=0010021926;supplier=0001;counter=011072;suffix=N1
! scan.15 = MF=Vaillant;ID=70000;SW=0419;HW=4603Es bleibt weiter spannend
Gruß
Jürgen
-
ebusctl info:
!
root@raspberrypi:~# ebusctl info version: ebusd 3.0pre.cc59b32 signal: acquired symbol rate: 42 reconnects: 0 masters: 3 messages: 712 conditional: 12 poll: 1 update: 8 address 03: master #11 address 08: slave #11, scanned "MF=Vaillant;ID=BAI00;SW=0604;HW=5502", loaded "bai.308523.inc", "vaillant/08.bai.csv" address 10: master #2 address 15: slave #2, scanned "MF=Vaillant;ID=UI ;SW=0508;HW=6201", loaded "vaillant/15.ui.csv" address 23: slave, scanned "MF=Vaillant;ID=SOLSY;SW=0500;HW=6301", loaded "vaillant/23.solsy.cc.csv" address 25: slave, scanned "MF=Vaillant;ID=SOLSY;SW=0500;HW=6301", loaded "vaillant/25.solsy.hwc.csv" address 26: slave, scanned "MF=Vaillant;ID=SOLSY;SW=0500;HW=6301", loaded "vaillant/26.solsy.hc.csv" address 31: master #8, ebusd address 36: slave #8, ebusd address 50: slave, scanned "MF=Vaillant;ID=SOLSY;SW=0500;HW=6301", loaded "vaillant/50.solsy.mc.csv" address ec: slave, scanned "MF=Vaillant;ID=SOLSY;SW=0500;HW=6301", loaded "vaillant/ec.solsy.sc.csv" !
Das sind die, bei dir von ebus erkannten Geräte. Du kannst unter: https://github.com/john30/ebusd-configu … e/vaillant oder /etc/ebusd/_vaillant/... nachlesen welche Parameter ausgelesen/geschrieben werden können.Parameter pro Device
!
root@raspberrypi:~# ebusctl f -v -c mc|grep -v "no data stored" mc Mode = tempdesired=18;mcmode=auto;floorpavingdryingday=0;floorpavingdryingtemp=0;teleswitchmode=low;mctype7=mixer;daynight=day mc Status = flowtempdesired=26;onoff=off;flowtemp=25.06;tempdesired=18 !
f = find
! -v = verbose (ausgeschriebener Name)
! -c xxx= Gerät zb hc, hwc, mc, sc usw. was auch immer ebusctl info gefunden hat. Das grep filtert nur die Datenpunkte aus, die keinen Wert haben.Alles anzeigen:
! Mit dem Script contrib/scripts/readall.sh kannst du alle verfügbaren Parameter dir anzeigen lassen. Es kann sein, dass das nur ohne mqtt geht. Habe noch nicht getestet.
Viel Spaß ich würde mich freuen, wenn wir hier neue Erfahrungen austauschen könnten.
a200.
-
ebusctl info
! version: ebusd 3.0.595c7c0
! update check: revision v3.0-23-g4c1aefb available, broadcast.csv: newer version available, vaillant/08.bai.csv: newer version available, vaillant/bai.308523.inc: newer version available, vaillant/broadcast.csv: different version available, vaillant/errors.inc: newer version available, vaillant/hcmode.inc: newer version available
! access: *
! signal: acquired
! symbol rate: 32
! max symbol rate: 169
! reconnects: 4
! masters: 3
! messages: 211
! conditional: 3
! poll: 0
! update: 8
! address 03: master #11
! address 08: slave #11, scanned "MF=Vaillant;ID=BAI00;SW=0204;HW=9602", loaded "vaillant/bai.308523.inc", "vaillant/08.bai.csv"
! address 10: master #2
! address 15: slave #2, scanned "MF=Vaillant;ID=70000;SW=0419;HW=4603"
! address 31: master #8, ebusd
! address 36: slave #8, ebusdWarum zeigt er bei mir so viele Updates an?
update check: revision v3.0-23-g4c1aefb available, broadcast.csv: newer version available, vaillant/08.bai.csv: newer version available, vaillant/bai.308523.inc: newer version available, vaillant/broadcast.csv: different version available, vaillant/errors.inc: newer version available, vaillant/hcmode.inc: newer version available
version: ebusd 3.0.595c7c0 (bei mir)
version: ebusd 3.0pre.cc59b32 (bei a200)
-
ebusctl info
Warum zeigt er bei mir so viele Updates an?
update check: revision v3.0-23-g4c1aefb available, broadcast.csv: newer version available, vaillant/08.bai.csv: newer version available, vaillant/bai.308523.inc: newer version available, vaillant/broadcast.csv: different version available, vaillant/errors.inc: newer version available, vaillant/hcmode.inc: newer version available ```` `
ebusd prüft die Version gegen den github-Server. Dort ist halt die aktuellere Version. Leider funktioniert die Versionsprüfung nicht einwandfrei. Ich mach das immer so:
git clone https://github.com/john30/ebusd-configuration cd ebusd-configuration ./make_all.sh sudo dpkg -i --force-overwrite ebusd-configuration-2.1.XXXXX-de_all.deb
Damit wird die auf dem github-Server vorhandene Version geladen, compiliert und installiert. Die errechnete Checksumme unterscheidet sich von der auf den Server. Dadurch kommt es zu der Meldung.
LG,
a200
-
Hallo Jürgen,
jetzt bin ich auch soweit, die eBus-Geschichte in Angriff zu nehmen.
meine Hardware:
Vaillant ecoTEC plus VC 146/5/5
multiMATIC VRC 700/4
esera ebus Koppler USB Iso
Ich scheitere jedoch schon daran, den Koppler gemäß Anleitung mit Putty abzugleichen.
Support bei esera nur ein Anrufbeantworter, man ruft zurück…....
Ich habe den Koppler über ca. 30 m Datenkabel mit der Therme verbunden, die LED auf der Platine leuchtet.
Dann mit dem Läppi verbunden, Treiberinstallation abgewartet, Gerät wird richtig erkannt, über Com-Port erreichbar.
Putty auf Serial 2400 Bd eingestellt und los. Es erscheinen endlos irgendwelche Grafik-Zeichen in einer Zeile, beim Drehen des Reglers kommt dann auch ein Punkt,
an dem auch Buchstaben auftauchen, aber ohne Sinn.
Die beschriebenen Sync-Zeichen "AA" kriege ich nicht hin.
Habe den Koppler auch direkt an die Therme angeschlossen, das selbe, an dem langen Kabel kann es nicht liegen.
Ist der korrekte Einstellpunkt so sensibel ?
Wie hast du das Ding abgeglichen ?
Schon mal Danke und Grüße
Ingo
-
Hallo Jürgen,
jetzt bin ich auch soweit, die eBus-Geschichte in Angriff zu nehmen.
meine Hardware:
Vaillant ecoTEC plus VC 146/5/5
multiMATIC VRC 700/4
esera ebus Koppler USB Iso
Ich scheitere jedoch schon daran, den Koppler gemäß Anleitung mit Putty abzugleichen.
Support bei esera nur ein Anrufbeantworter, man ruft zurück…....
Ich habe den Koppler über ca. 30 m Datenkabel mit der Therme verbunden, die LED auf der Platine leuchtet.
Dann mit dem Läppi verbunden, Treiberinstallation abgewartet, Gerät wird richtig erkannt, über Com-Port erreichbar.
Putty auf Serial 2400 Bd eingestellt und los. Es erscheinen endlos irgendwelche Grafik-Zeichen in einer Zeile, beim Drehen des Reglers kommt dann auch ein Punkt,
an dem auch Buchstaben auftauchen, aber ohne Sinn.
Die beschriebenen Sync-Zeichen "AA" kriege ich nicht hin.
Habe den Koppler auch direkt an die Therme angeschlossen, das selbe, an dem langen Kabel kann es nicht liegen.
Ist der korrekte Einstellpunkt so sensibel ?
Wie hast du das Ding abgeglichen ?
Schon mal Danke und Grüße
Ingo `
Im Normalfall ist der Poti schon korrekt eingestellt. Ansonsten eine gute Beschreibung findest du unter: https://wiki.fhem.de/wiki/EBUS1. Hast du: "ebusctl raw" eingeschaltet? damit du die Hex-Werte sehen kannst nicht die Ascii-zeichen.
2. Du kannst auch andere Geschwindigkeiten als 2400 ausprobieren. IMHO der Vaillant ServicePort läuft mit 9600 baud, 8 datenbits, keine parität, 1 stoppbit und ohne Flowcontrol
Sollte das immer noch nicht gehen, schreibe einfach!
-
Herzlichen Dank für deine Antwort.
Ich hatte den Koppler noch nicht am Raspi, erst mal nur am Laptop und über Putty versucht.
Ich habe das Teil jetzt an den Raspi angeschlossen und nach der Anleitung von Jürgen im ersten Beitrag folgendes eingegeben:
sudo apt-get install mosquitto mosquitto-clients python-mosquitto libmodule-pluggable-perl wget https://github.com/john30/ebusd/releases/download/v3.0/ebusd-3.0_armhf_mqtt1.deb sudo dpkg -i --force-overwrite ebusd-3.0_armhf_mqtt1.deb wget https://github.com/john30/ebusd-configuration/releases/download/v2.1.1/ebusd-configuration-2.1.b143f39-de_all.deb sudo dpkg -i --force-overwrite ebusd-configuration-2.1.b143f39-de_all.deb ebusd -f -c /tmp --logareas bus --loglevel info -d /dev/ttyUSB0
Dabei kamen folgende Meldungen (siehe Bilder).
Nun bin ich nicht der große Spezialist um dies zu deuten.
Ich würde mich über Hilfe freuen.
Grüße Ingo
1519_1.png
1519_2.png
1519_3.png
1519_4.png -
versuche erst mal
apt update apt upgrade -y
und dann
sudo apt-get install mosquitto mosquitto-clients python-mosquitto libmodule-pluggable-perl
oder
sudo apt-get install mosquitto mosquitto-clients libmodule-pluggable-perl
Gruß
Jürgen
-
ich denke, das hat soweit geklappt.
Dann nach der Anleitung von der FHEM-Seite das Poti eingestellt, die "AA"´s kriege ich jedoch nicht zu sehen.
Ist das so wie auf dem Bild schon mal ok ?
Grüße Ingo
1519_2017-12-18__17_.png -
das sieht doch sehr gut aus.
genau so soll es sein.
nun kannst du noch die configuration installieren (wenn du es noch nicht gemacht hast)
und dann den dienst starten und schauen ob etwas im ioBroker ankommt
Gruß
Jürgen
-
Ich habe Daten in ioBroker !!!
Danke für eure Hilfe, werde mich morgen durch den Rest der Anleitung wühlen.
Hatte mich wegen der fehlenden "AA"`s verrückt gemacht.
Grüße Ingo
1519_2017-12-18__18_.png -
Cool und willkommen im Club! Der_Auge hat alles erklärt.
-
Glückwunsch
dann können wir ja nun zum nächsten Schritt kommen.
= javascript.0
Hier mal mein angepasster Script
// ============================================================================= // Auslesen von Einzelwerten vom eBusd // ============================================================================= var root = 'eBus'; // root of state inside 'javascript.0' var host = 'RPi2-2'; // set to your host running ebusd var port = 8888; // default ebusd port var logging = false; // "true" oder "false" wenn nicht gewünscht var net = require('net'); // var conn = false; // ============================================================================= var element = 'FlowTemp'; // ebusctl read -f FlowTemp // 51.19;ok var req = 'read -f ' + element; var pfad = 'eBus.Temperatur.'+ element; // Pfad innerhalb der Instanz // ============================================================================= // Datenpunkte anlegen // ============================================================================= createState(pfad, 0, {name: "Vorlauftemperatur" ,rolle: 'value.temperature' ,type: 'string',unit: '°C'}); // ---------------------------------------------------------- Start if (logging) log('1\. Start trying eBus abfrage'); var client = new net.Socket(); client.connect(port, host, function() { if (logging) log('2\. Connected to ebusd on ' + host + ':' + port); conn = true; client.write(req + '\n'); if (logging) log('3\. TX-Befehl: "' + req + '" wird gesendet'); }); // ============================================================================= // Funktion Daten abfragen // ============================================================================= function parse(data) { var arr = data.toString().split(/\r?;/); // wie viele Werte werden durch ";" getrennt if (logging) log("Menge : " + arr.length); var fields = data.toString().split('\;'); // hier wird auf den = getriggert if (logging) log('Felder : ' + fields); if(fields.length > 1) { // wenn mehrere Felder gefunden wurden if (logging) log('WertVor : ' + fields[0]); var WertVor =fields[0]; if (logging) log("WertNach: " + fields[1]); fields[0] = fields[0].replace(' ','_'); if (logging) log("Feld 1 : " + fields[0]); if (logging) log("Feld 2 : " + fields[1]); setState(pfad, WertVor); // Werte setzen } } // ============================================================================= // Daten abfragen // ============================================================================= var databuf = ''; client.on('data', function(data) { var prev = 0, next; var datastr = data.toString(); if (logging) log("4\. RX-Daten : " + datastr); while ((next = datastr.indexOf('\n\n', prev)) > -1) { databuf += datastr.substring(prev, next); parse(databuf); databuf = ''; prev = next + 1; } databuf += datastr.substring(prev); client.write('quit\n'); }); // ============================================================================= // ? Ende // ============================================================================= client.on('close', function() { conn = false; log('Connection to ebusd closed'); }); // ============================================================================= // Funktion aufrufen // ============================================================================= function getData() { client.connect(port, host, function() { if (logging) log('Connected to ebusd on ' + host + ':' + port); client.write(req + '\n'); if (logging) log('TX-Befehl: "' + req + '" wird gesendet'); }); } schedule('*/1 * * * *', getData);
Vielleicht funktioniert er auch bei euch
Gruß
Jürgen
-
Moin, Moin,
man, ich komme ja kaum nach.
Da ich noch nicht so richtig durchsehe, mal eine sicher unqualifizierte Frage:
Das Script, kommt das in ioBroker oder auf den Raspi ????
Grüße Ingo
-
Moin, Moin,
man, ich komme ja kaum nach.
Da ich noch nicht so richtig durchsehe, mal eine sicher unqualifizierte Frage:
Das Script, kommt das in ioBroker oder auf den Raspi ????
Grüße Ingo `
in ioBroker. Damit werden neue Datenpunkte erzeugt, in denen die Werte im Klartext stehen und die du dann z.B. Speichern kannst um sie als Grafik auszugeben/auszuwerten. -
Danke für die Hilfe,
das Script läuft und hat 1 Datenpunkt angelegt, FlowTemp.
Ich habe ja schon einige Datenpunkte, jedoch bei weitem nicht so viele wie ihr.
Mir würde für den Anfang ein lesender Zugriff auf Vor- und Rücklauftemperatur, Außentemperatur (sollten schon da sein) und den Wasserdruck reichen.
Später dann evtl. auch schreibend die Wunschtemperatur.
Ich muß mich mal in Ruhe durch den Trööt wühlen, bin noch nicht dazu gekommen.
Grüße Ingo
-
Hallo Ingo,
aus dem eBus werden nur die Werte gelesen, die auch über den eBus geschickt werden. D.h. du hast einige Werte die immer vorhanden sind. Andere Werte müssen von dir erst mal abgerufen werden und erst dann steh sie dir zur Verfügung. Das wird z.B. so: http://forum.iobroker.net/viewtopic.php … 22#p101558 gemacht.
-
Also du fragst deine Heizung/hc/hwc/… wie der aktueller Wert in FlowTempMin steht.
-
Dein Gerät antwortet dir.
-
Da der Wert über den eBus läuft, wird das durch den mosquitto-client gelesen und an ioBroker geschickt.
-
Im ioBroker erscheint der Datenpunkt FlowTempMin mit dem dazugehörigen Wert.
Welche Werte ausgelesen werden können, kannst du hier sehen: http://forum.iobroker.net/viewtopic.php … 22#p101616
Schau dir das mal an und dann können wir die Skripte von der_Auge um die interessante Punkte erweitern.
Gruß,
a200.
-
-
Hallo a200,
ich glaub, mir geht so sachte ein Lichtlein auf.
Vielen Dank,
Grüße Ingo
-
Mir würde für den Anfang ein lesender Zugriff auf Vor- und Rücklauftemperatur, Außentemperatur (sollten schon da sein) und den Wasserdruck reichen. `
-
Also du fragst deine Heizung/hc/hwc/… wie der aktueller Wert in FlowTempMin steht.
-
Dein Gerät antwortet dir.
-
Da der Wert über den eBus läuft, wird das durch den mosquitto-client gelesen und an ioBroker geschickt.
-
Im ioBroker erscheint der Datenpunkt FlowTempMin mit dem dazugehörigen Wert. `
wenn dich das mit dem ebusd richtig verstanden habe fragt er bei https://github.com/john30/ebusd/wiki/4. … figuration nach der Version des Senders (vaillant/08.bai.csv)
Danach wird ja nach Version eine weitere Datei geladen (vaillant/bai.0010002315.inc)
Dort gibt es dann die Objektnamen
r,,FlowTemp,d.40 Vorlauftemperatur,,,,"1800",,,tempsensor,,,Vorlauftemperatur r,,ReturnTemp,d.41 Rücklauftemperatur,,,,"9800",,,tempmirrorsensor,,,Rücklauftemperatur ... ... r,,WaterPressure,Wasserdruck,,,,"0200",,,presssensor,,,Wasserdruck
Wenn ich diese per script anfrage bekomme ich eine Antwort. Diese kann ich aber "nur" selber in einen Datenpunkt schreiben. Über MQTT kommt der nicht
wenn ich auf dem RPi2-2 vom Terminal eine Abfrage starte [ebusctl read -f FlowTemp] wird das über den eBus / MQTT an ioBroker gesendet.
Also scheid da noch ein unterschied bei unserer Installation zu sein.
Gruß
Jürgen
-