Jump to content

Zombie boiler!


Radian

Recommended Posts

I guess this post doesn't really belong in Boilers & Hot Water Tanks so I'll offload it in this subforum.

 

The central heating system in our house is fired by an ageing Glowworm Flexicom 30HX (heat only) condensing boiler. It's probably on its last legs but while it still works I'm keen to squeeze every drop of life out of it. The main drawback with it is that there's only one flow temperature (set on the front panel display with a couple of pushbuttons) for both heating and HW, with only one demand switch input.

 

Because of this limitation I have to set the flow at around 65oC minimum in order to get anything over 55oC into the HWC so I can't have a lower flow temperature separately for the radiators - which would improve efficiency. Not without investing a few hundred quid in Glowworm's own external control kit that is... this kit talks over a proprietary serial bus called "ebus" and combines a switching unit with inputs for HW cylinder stat and room thermostat(s) for CH temperature and scheduling.

 

Luckily for me, Glowworm were gobbled up by Vaillant before the Flexicoms were released, so under the sheet steel it's pretty much a Vaillant ecoTEC with some budget component choices so while Glowworms don't get much attention, plenty of people like to integrate Vaillant boilers with the HomeAssistant OS.

 

For this reason I set about seeing if I could adjust the flow temperature over ebus using the RaspberryPi that already runs my CH system. If I can make it emulate the external controls, I can set a lower flow for radiators and UFH and implement an X plan scheme. The first step was to pick up a spare main PCB and display panel on ebay to mess around with (too cold to risk messing up the real boiler). Here it is dangling precariously on the bench:

 

IMG_20230118_125603534_HDR.thumb.jpg.2c0287e0b7f94ad8fbb80e2e16c6a90b.jpg

It's powered from a 240V isolating transformer so not quite as lethal as it looks. Not quite.

 

The first thing I noticed was that, in its former life, it was a combi boiler (Flexicoms come in three flavours: CX (combi) SX (system) or HX(heat only) like mine). For giggles I stuck some 10K resistors on the NTC sensors and water pressure sensor to see how it would run. It still kept throwing faults until I did some googling and found out that the pump is tested on power-up by looking for a small increase in pressure when running. This was fixed by manually tweaking the pot a bit and kept it happy enough for me to play with the serial interface. That's about as far as it will go without an fan and ignition unit though.

 

But at least I could connect it to an ebus interface and talk to it. There are some PCB's out there to interface ebus to RS232 but it's a simple enough thing to design so I built one on some stripboard that plugs onto the Raspberry Pi header:

 

IMG_20230120_173802789.thumb.jpg.5fa56709375130d58e7912e689645fb8.jpg

 

The two wire link is going off to the main boiler PCB (although the wire magically changes from black to white along the way!) If anyone's the slightest bit interested I can put up the circuit diagram for the interface board but it's just a dual comparator and a couple of opto isolators. Incidentally, this interface and topic in general might be of interest to anyone looking to integrate Vaillant boilers with other control systems as they don't talk Opentherm.

 

The awkward thing about this particular hack is that ebus timing can be quite fussy when doing bus arbitration and the UART in the Pi has a fifo that gets in the way. However someone already fixed this with a kernel module called ttyebus dedicated to reading/writing directly to the UART. Then there's the oh-so-handy daemon for linux called ebusd which can interpret a wide variety of ebus device comms and access it all over TCP, HTTP, MQTT etc.

 

On putting all this together, the automatic scan performed by ebusd instantly identified the boiler and loaded the appropriate configuration files for it resulting in access to a great many parameters:

 

bai AccessoriesOne = extheatingpump
bai AccessoriesTwo = storagechargingpump
bai ACRoomthermostat = off
bai averageIgnitiontime = 1.3
bai BlockTimeHcMax = 18
bai BoilerType = 6
bai ChangesDSN = 0
bai CirPump = off
bai CounterStartattempts1 = 3
bai CounterStartattempts2 = 0
bai CounterStartAttempts3 = 0
bai CounterStartAttempts4 = 0
bai currenterror = 75;-;-;-;-
bai DateTime = nosignal;00:00:00;-.-.-;-
bai dcfState = nosignal
bai DCFTimeDate =  (ERR: invalid position for 3108b509030de500 / 072b080101010150)
bai DCRoomthermostat = off
bai DeactivationsIFC = 0
bai DeactivationsTemplimiter = 0
bai DeltaFlowReturnMax = 22.69
bai DisplayMode = 2
bai DSN = 8193
bai DSNOffset = 1
bai DSNStart = 8192
bai EBusHeatcontrol = yes
bai EbusSourceOn = on
bai EbusVoltage = on
bai errorhistory = no data stored
bai expertlevel_ReturnTemp = -1.81;cutoff
bai ExternalFaultmessage = on
bai externalFlowTempDesired = 90.00
bai externalHwcSwitch = off
bai ExternGasvalve = 240
bai ExtFlowTempDesiredMin = 0.00
bai ExtStorageModulCon = no
bai extWP = off
bai FanHours = 1250
bai FanMaxSpeedOperation = 5780
bai FanMinSpeedOperation = 1500
bai FanPWMSum = 58260
bai FanPWMTest = -
bai FanSpeed = 0
bai FanSpeedOffsetMax = -580
bai FanSpeedOffsetMin = 210
bai FanStarts = 30964
bai Flame = off
bai FlameSensingASIC = 709
bai FloorHeatingContact = off
bai FlowsetHcMax = 82.00
bai FlowsetHwcMax = 80.00
bai FlowSetPotmeter = 45.00
bai FlowTemp = 25.88;ok
bai FlowTempDesired = 45.00
bai FlowTempMax = 116.06
bai Fluegasvalve = off
bai FluegasvalveOpen = on
bai Gasvalve3UC = off
bai Gasvalve = off
bai GasvalveASICFeedback = off
bai GasvalveUC = off
bai GasvalveUCFeedback = off
bai HcHours = 901
bai HcPumpMode = permanent
bai HcPumpStarts = 29164
bai HcStarts = 4500
bai HcUnderHundredStarts = 0
bai HeatingSwitch = on
bai HoursTillService = 3100
bai HwcDemand = no
bai HwcHours = 263
bai HwcImpellorSwitch = no
bai HwcPostrunTime = 80
bai HwcSetPotmeter = 62.00
bai HwcStarts = 22600
bai HwcSwitch = on
bai HwcTemp = 116.06;circuit
bai HwcTempDesired = 0.00
bai HwcTempMax = 62.00
bai HwcTypes = 0
bai HwcUnderHundredStarts = 0
bai HwcWaterflow = 0.19
bai HwcWaterflowMax = 11.57
bai Ignitor = no data stored
bai InitialisationEEPROM = no
bai IonisationVoltageLevel = 72.2
bai maintenancedata_HwcTempMax = 116.06
bai maxIgnitiontime = 2.1
bai minIgnitiontime = 0.2
bai ModulationTempDesired = 33.0
bai OutdoorstempSensor = -60.44;cutoff
bai OverflowCounter = yes
bai ParamToken = 3
bai PartloadHcKW = 19
bai PartloadHwcKW = 30
bai PartnumberBox = 20 00 46 39 50
bai PositionValveSet = 0
bai PowerValue = 21 0a 50 18 64 1e
bai PrAPSCounter = 0
bai PrAPSSum = 0
bai PrEnergyCountHc1 = 3291922
bai PrEnergyCountHc2 = 0
bai PrEnergyCountHc3 = 0
bai PrEnergyCountHwc1 = 994043
bai PrEnergyCountHwc2 = 0
bai PrEnergyCountHwc3 = 0
bai PrEnergySumHc1 = 776243897
bai PrEnergySumHc2 = 0
bai PrEnergySumHc3 = 0
bai PrEnergySumHwc1 = 383284736
bai PrEnergySumHwc2 = 0
bai PrEnergySumHwc3 = 0
bai ProductionByte = no data stored
bai PrVortexFlowSensorValue = 0
bai PumpHours = 2157
bai PumpHwcFlowNumber = 0
bai PumpHwcFlowSum = 0
bai RemainingBoilerblocktime = 0
bai ReturnRegulation = off
bai ReturnTemp = 25.75;65123;ok
bai ReturnTempMax = 0.00
bai SecondPumpMode = 2
bai SerialNumber = 42 30 36 30 33 34 35 33
bai SetFactoryValues = no
bai SetMode = auto;69.0;68.0;-;1;0;1;0;0;0
bai SHEMaxDeltaHwcFlow = 27.81
bai SHEMaxFlowTemp = 83.31
bai SolPostHeat =  (ERR: invalid position for 3108b509030d7304 / 00)
bai Statenumber = 98
bai Status01 = 25.0;25.0;-;-;-;off
bai Status02 = disabled;76;38.0;80;62.0
bai Status16 =  (ERR: invalid position for 3108b5040116 / 00)
bai Status =  (ERR: invalid position for 3108b5110103 / 00)
bai StatusCirPump = no data stored
bai Storageloadpump = 0
bai StorageLoadPumpHours = 630
bai StorageloadPumpStarts = 21447
bai StorageLoadTimeMax = 45
bai StoragereleaseClock = yes
bai StorageTemp = -14.94;cutoff
bai StorageTempDesired = 62.00
bai StorageTempMax = 0.00
bai TargetFanSpeed = 0
bai TargetFanSpeedOutput = 0
bai TempDiffBlock = 0
bai TempDiffFailure = 0
bai TempGradientFailure = 0
bai Templimiter = off
bai TemplimiterWithNTC = yes
bai TempMaxDiffExtTFT = 0.00
bai Testbyte = 3
bai TimerInputHc = on
bai ValveMode = 0
bai ValveStarts = 12893
bai VolatileLockout = no
bai VolatileLockoutIFCGV = no
bai VortexFlowSensor = 0
bai WarmstartDemand = no
bai WarmstartOffset = 0.00
bai WaterHcFlowMax = 0
bai WaterPressure = 0.974;ok
bai WaterpressureBranchControlOff = off
bai WaterpressureMeasureCounter = 231
bai WaterpressureVariantSum = 65534
bai WP = off
bai WPPostrunTime = 5
bai WPSecondStage = off
broadcast datetime = no data stored
broadcast error = BAI  
broadcast hwcStatus = no data stored
broadcast id = no data stored
broadcast id = no data stored
broadcast load = no data stored
broadcast outsidetemp = no data stored
broadcast signoflife = no data stored
broadcast vdatetime = no data stored
general valuerange = no data stored
memory eeprom = no data stored
memory ram = no data stored
scan id = no data stored
scan.08  = Vaillant;BAI00;0202;8001
scan.08 id = 21;10;31;0010005484;1300;021068;N6

 

So far, so good. But the fact this PCB was obviously out of a combi was bothering me so I went about finding how to change the ID. This turned out to be a simple matter of searching around for the correct button presses - which kind folk had already posted details of how to do it. Now it has a new personality, the same as my current boiler!

 

Then things get a bit more hazy. Some people were looking at the ebus traffic coming from Vaillant controllers with the objective of emulating them but nobody was doing the same for Glowworm controls. It's an open question whether or not Vaillant controls could be used with Glowworms but I'd be surprised if they could. However, after adding an extra configuration for the Vaillant external controls I seem to be able to affect some of the registers relevant to flow temperature. For example, sending:

 

ebusctl write -c bai SetModeOverride '0;50;70;-;-;1;0;1;-;0;0;0'

 

results in being able to read back the following from the board:

 

ebusctl read -f -c bai FlowTempDesired
50
ebusctl read -f -c bai StorageTempDesired
70

 

The first parameter for SetModeOverride is listed as 0=auto, 1=off, 2=water but the pump relay actually responds differently 0=off 1=on 2=on so I'm not sure what's going on.

The second parameter seems to be all I need to set in order to adjust the flow temperature maximum and also shows up when using the diagnostics menu on the LCD in addition to being read back over ebus. I have no idea of the significance of the third parameter (listed as StorageTempDesired in the configuration file) but it seems only relevant to HW in the combi models. Maybe someone familiar with the Vaillant room controls might shed some light?

CXdump.txt

  • Like 3
  • Thanks 1
Link to comment
Share on other sites

1 hour ago, SteamyTea said:

But it is good to play with things and see what happens.

 

 

Absolutely. All these microcontroller systems are alike in many respects. And microcontrollers are at the heart of just about every appliance out there. I've made a living out of designing them into numerous different products and have also cracked open just as many designed by others and you get used to a kind of design style. It's also really useful to be able to bend them to your needs.

Link to comment
Share on other sites

Great stuff.  I love reading this sort of topic.  I guess the next thing is try it on your real boiler.  If it works you just have to set the Pi to send the required temperature each time you change from heating to hot water.

 

Storage temperature might be some combi boilers keep a small store of hot water internally for faster response to a hot tap being turned on.

  • Thanks 1
Link to comment
Share on other sites

45 minutes ago, ProDave said:

Storage temperature might be some combi boilers keep a small store of hot water internally for faster response to a hot tap being turned on.

 

Thanks for that. My knowledge of different boiler types and configurations is definitely behind the electronics side of things. Also, the most sophisticated control system I've ever owned (apart from my own current design) was a battery operated wall thermostat with a weekly timer!

 

If I can get control over flow setpoint I'm on my way to separate HW, weather compensation, and maybe other optimisations I've not thought of?

Link to comment
Share on other sites

Well this is annoying.

 

Today I finished interrogating the zombie boiler on the bench and proving that everything that could be adjusted (without actually having it fired up) was working as expected, so I couldn't put it off any longer and connected the Raspberry Pi interface up to my real boiler. Everything went as expected until it came to the boiler firing up🙄

 

This is all just in read-mode, I haven't got as far as sending the flow temperature setting command. Initially, with no demand from the house thermostat, all the registers I was reading with the zombie were being read nicely (actual flow temp, return temp etc.) but after a while I noticed the data had stopped flowing. This coincided with the heating demand coming on from the house. So with the boiler burning away, the whole thing just locks up. I'm having to haul another machine in to monitor the serial bus but it's awkward due to the non-standard RS232 levels. If I could tap into the serial data already feeding the ebusd daemon - that would be preferable but I'm struggling with the linux-fu required to do that.

 

 

Link to comment
Share on other sites

Interesting. I Installed interceptty and eavesdropped on the serial. As soon as the boiler fired the stream turned to absolute junk. Odd that ebusd wouldn't even respond (in theory you can see the raw data with it, but it was just freezing). A scope sheds more light on the issue. The ebus signal should be switching between 24V and 12V for logic 1's and 0's. There's quite a margin, and in practice it's usually between 20V and 10V, so disregarding the spiky noise, when idling and everything is working, this is where we're at:

 

IMG_20230122_174234572.jpg.fe6e96fd527a2586c1c40f349ee3b8d8.jpg

 

 

 

But once the boiler is lit the top of the waveform sinks well below 20V:

 

IMG_20230122_174131017.jpg.1141145599fa8481c0dddcc45022bd6d.jpg

 

As well as sourcing the 5V logic level supply, the 24V SMPS on the boiler PCB is used to run the gas valve and the fan which explains the drop when these are active. I guess the PCB needs re-capping. Maybe this is why it throws the occasional cryptic F.13 fault code.

 

In the meantime I can adjust the comparator threshold down a bit. I thought I had set it at 15V to be half way between expected levels but it must be a tad higher than that.

Link to comment
Share on other sites

Progress: 

Screenshot_20230123-161607.thumb.jpg.c5d61b543e1bc02916583e8b8fb758f5.jpg

 

😎

 

Now I've just got to squirt the above MQTT data into a database so I can graph it up. But it's already obvious to me that despite my novel HW cylinder buffering scheme for a small UFH zone , the boiler is still suffering with too high a return temperature (33% is the lowest it will modulate down too - nice of them to actually present this figure though). This screenshot was taken just as the boiler was about to shut off and go into anti-cycling mode as the demand was still present with a HW cylinder setpoint of 55oC in buffer mode.

  • Like 1
Link to comment
Share on other sites

1 hour ago, SteamyTea said:

I know a lot of this electronics and hardware programming is, like most things, a little knowledge and a lot of practice.

 

 

Mostly it's just down to stubbornness. I hate there being anything like this that I can't get to grips with - when it's just other people's thought babies. Wasn't it Feynman who said "What one fool can understand, another can."?

 

Link to comment
Share on other sites

1 hour ago, Radian said:

Wasn't it Feynman who said "What one fool can understand, another can."?

When he got his Nobel, he was asked to explain what it was for in 2 minutes.

"If I could explain it in two minutes, it would not be worth a Nobel"

He played the Bongos, and had a camper van, as well.

Link to comment
Share on other sites

Seeing as this is a 'keeper' for now, I've got it a little plastic box:

 

IMG_20230126_151005802.thumb.jpg.b0189a0566cd92775e9cccbbeae90f9f.jpg

 

I noticed that one of the energy registers had max'd out at the highest integer for a 32bit number

pi@ebusd:~ $ ebusctl find energy
bai PrEnergyCountHc1 = 16381091
bai PrEnergyCountHc2 = 0
bai PrEnergyCountHc3 = 0
bai PrEnergyCountHwc1 = 12146
bai PrEnergyCountHwc2 = 0
bai PrEnergyCountHwc3 = 0
bai PrEnergySumHc1 = 4294967294
bai PrEnergySumHc2 = 0
bai PrEnergySumHc3 = 0
bai PrEnergySumHwc1 = 2937924
bai PrEnergySumHwc2 = 0
bai PrEnergySumHwc3 = 0

 

4294967294 is a big number. It's not kWh but some factor times it. Looks like they never tested the code for overflow as they seem to have lined up three registers for it. And as to why there are counts in hot water (this is a heat only boiler) who knows. Maybe I'll know now though. Using the write function like this for each register:

 

ebusctl write -c bai PrEnergySumHc1 0

 

Has reset them to zero:

 

pi@ebusd:~ $ ebusctl find energy
bai PrEnergyCountHc1 = 0
bai PrEnergyCountHc2 = 0
bai PrEnergyCountHc3 = 0
bai PrEnergyCountHwc1 = 0
bai PrEnergyCountHwc2 = 0
bai PrEnergyCountHwc3 = 0
bai PrEnergySumHc1 = 0
bai PrEnergySumHc2 = 0
bai PrEnergySumHc3 = 0
bai PrEnergySumHwc1 = 0
bai PrEnergySumHwc2 = 0
bai PrEnergySumHwc3 = 0

 

Link to comment
Share on other sites

5 hours ago, Dan F said:

Apoligies if off-topic, but interested to know how you achieved the ebusd connection and how you "found" the registers relevant to heat pump etc.

 

The connection was a little circuit I knocked-up myself but there are ready made ones I believe. Not sure if they're still obtainable because they were enthusiasts that made and sold them in small quantities. I can provide a schematic if you're into building circuits though.

 

As for finding registers, the daemon can be configured to scan the bus for known systems and load in files that are referenced for reading/writing the various registers. The handful of manufacturers that use ebus seem to be quite well represented, Vaillant being the most common. ASHP and gas boilers are available.

Link to comment
Share on other sites

Vaillant caps?

 

Sub 10 year life expectancy if you're expecting them to drive eBus thermostats etc.

 

Replace all the LV caps as a first pass - HV caps seem to last ok.

 

 

FWIW "Storage temperature" on my Ecotec 824 combi is the "keep warm" temperature of the hot water plate. It can be set to maintain a certain temperature on a schedule just like a space heating zone. Gobbles an awful lot of gas in doing so. Do not reccommend.

Link to comment
Share on other sites

1 hour ago, markocosic said:

Replace all the LV caps as a first pass - HV caps seem to last ok.

 

Done! Curiously enough, the 400V input cap on our boiler was a Vishay part whereas the zombie was TDK (Epcos). The LV caps were all TDK on both boards. I've replaced them all with TDK anyway. One of the 470uF I swapped out read 0uF!

 

IMG_20230129_121835046.thumb.jpg.c7377e719de2828e85eb7b799c8cf9ca.jpg

 

That's cleaned up the rail quite a bit. There's a bit of 50Hz ripple though nothing serious.

 

IMG_20230129_131950539.thumb.jpg.e27dbfc417d9136e1af948da150965b2.jpg

 

Now I can try and have a proper play with flow temperature and see what improvements  I can make.

 

Funny you posted about the re-capping today as today I finally got fed up with Fault 13 cropping up as it did just after 11:30 this morning when the boiler went into S.98 (the grey trace below). It has been throwing Fault 13 when modulation is near 100%. This is when the fan is at max RPM and loading the 24V rail the most. This was also when the ebus data got flakey because of the voltage spikes. That's why the graphing has been a bit intermittent.

 

1405366801_Screenshot2023-01-2915_42_19.thumb.png.db873d2d781c0a7c8291c9d167534d90.png

 

So after changing the capacitors, by 1PM it was back in use and logging again. This time with smooth data. Almost straight away one of the issues I'm trying to solve shows up when, simultaneously, demand for both radiators and hot water cylinder come on. Everything's fine until the Roomstat goes off at 1:30 and the zone valve for the radiators closes. Suddenly, the temperature of the water in the return form the primary loop shoots up and the boiler switches off when it can't modulate down quickly enough. First it goes to S.7 (pump overrun) then S.8 (Anti cycling period) before coming back on (S.4) and finishing off the job with the hot water. I'm currently puzzling over how to prevent this from happening as I'm sure it's unnecessary wear-and-tear.

  • Like 1
Link to comment
Share on other sites

3 hours ago, Radian said:

Everything's fine until the Roomstat goes off at 1:30 and the zone valve for the radiators closes. Suddenly, the temperature of the water in the return form the primary loop shoots up and the boiler switches off when it can't modulate down quickly enough. First it goes to S.7 (pump overrun) then S.8 (Anti cycling period) before coming back on (S.4) and finishing off the job with the hot water

 

AFAIK when they do DHW on the continent the boiler has a probe in the dhw tank and the boiler controls both the pump and the valves.

 

This boiler will be "coded" as space heating only so doesn't expect sudden changes in heat demand.

 

So squeeze the flow down slowly / open the dhw valve before you close the space heat valve?

 

Or swap it for a diverting valve rather than a pair of two ports and move it quickly; such that the return doesn't have time to cook between the switchover?

 

 

  • Like 1
Link to comment
Share on other sites

Can you range rate it whilst in there?

 

(limit the max output to only what the house can possibly use; rather than having it whang the flow temperature up to setpoint at the maximum possible firing rate)

 

That helps extend cycle times and reduce operating temps for longer even with dumb hysteresis stat controls.

  • Thanks 1
Link to comment
Share on other sites

1 hour ago, markocosic said:

Can you range rate it whilst in there?

 

I appear to have read/write authority over all the parameters. How the boiler responds to the ones that are read-only in the installer interface is yet to be determined. But range rating can be changed from the panel. I'll have a go at range rating it to 15kW over ebus:

 

pi@ebusd:~ $ ebusctl read -f -V -c bai PartloadHcKW
bai PartloadHcKW power=30 kW [Heating part load]

pi@ebusd:~ $ ebusctl write -c bai PartloadHcKW 15
done

pi@ebusd:~ $ ebusctl read -f -V -c bai PartloadHcKW
bai PartloadHcKW power=15 kW [Heating part load]

 

Hmm, while the ebus interface reads it back as 15kW, the physical interface still shows 30 and the results are not convincing either way:

1187041878_Screenshot2023-01-2921_43_22.thumb.png.8e66c1fc864790d946a6dcd5baa46b0f.png

 

It certainly exceeded 50% when I got it to fire up just a short while ago, so not very promising. I shall leave it collecting more data. I hope I have better luck with emulating a controller that adjusts the flow temperature.

 

Link to comment
Share on other sites

19 hours ago, markocosic said:

limit the max output to only what the house can possibly use; rather than having it whang the flow temperature up to setpoint at the maximum possible firing rate

 

So yesterday I tried writing the PartloadHCKW parameter over ebus and despite it being listed in the installer menu as one of the few writable parameters (range rating d.00), it was having no effect (something I've seen repeated although not for the reason given ) other than being read back as if it had changed. Going into the physical menu proved it hadn't.

 

However, today I tried again and this time I'd set the range rating in the physical menu to the 10kW minimum to see what effect it would have and, for no good reason other than to prove it didn't work, I used ebus to write it back as 30kW (expecting it to be ignored). Also I set another parameter FlowsetHcMax to 50oC which was suggested as being another way to control the flow temperature (the boiler flow temperature was set to 66oC on the boiler front panel). This gave me a very unexpected result:

 

106108852_Screenshot2023-01-3017_14_36.thumb.png.2071e9500d84b1b724a4f706508e12f3.png

 

Modulation starts out and stays at the value I set it to in the physical boiler interface and the temps steadily increase while I wait with baited breath to see what happens when the flow temperature hits 50oC. I expected the boiler to shut off. I did not expect the modulation to jump up to 90% and carry on past the FlowsetHcMax value!

 

It's as if the boiler double-checked the range rating setting when flow got to the max and found the 30kW I had written over ebus and carried on to the 66oC set on the boiler panel.

 

I know this stuff will be very uninteresting to most but I'm logging this partly for my own reference.

 

Link to comment
Share on other sites

5 minutes ago, Radian said:

I know this stuff will be very uninteresting to most but I'm logging this partly for my own reference.

 

Yeah keep going - you never know how useful this sort of exploration might be to someone else coming up the path behind you.

Link to comment
Share on other sites

On 26/01/2023 at 15:49, Radian said:

4294967294 is a big number. It's not kWh but some factor times it.

It's more revealing as a 32 bit binary: 11111111111111111111111111111110

 

I.e. one short of the max value. Or some weird little endian signed integer for no reason.

 

From a software perspective, here be monsters.

Link to comment
Share on other sites

  • 3 weeks later...

Hi Radian

 

I'm following your experiments with interest as I have just started to monitor the ebus on my Vaillant ecoTec 418 boiler. I built a bus adapter from here:

 

https://gitlab.com/fromeijn/ebuzzz-adapter

 

It converts ebus to USB and works very well with my Raspberry Pi.

 

Just getting my head around the hundreds of parameters on the bus (I have a VR65 controller and VRT392f wireless thermostat too) and wondered if you could help me identify the contents of the Status messages?

 

pi@vaillant:~ $ ebusctl read -c bai Status01
63.0;50.0;-;-;-;on

 

pi@vaillant:~ $ ebusctl read -c bai Status02
auto;60;65.0;80;60.0

 

My guesses after scanning the bus are:

 

Status01: FlowTemp;ReturnTemp;??;??;??;Flame

 

Status02: ??;HwcTempDesired;??;HwcPostrunTime;StorageTempDesired

 

Also, what are you using to display your MQTT data?

 

Thanks,

 

Mike

  • Like 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...