Python Plugin: ebusd

Python and python framework

Moderator: leecollings

Esper
Posts: 12
Joined: Friday 02 February 2018 20:07
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: Python Plugin: ebusd

Post by Esper »

Barberousse wrote: Monday 05 February 2018 13:52

Code: Select all

2018-02-02 20:05:06.187 Error: (ebusd-a) parsing error on field count for value mc Mode temp0=22;mcmode=auto;=05;onoff=off (7 fields expected)
where the read command returns only 4 fields, with 7 fields expected (???), and afterwards in your messages, I can now see 7 fields for 8 expected, because my plugin must ignore "IGN" type field.
2018-02-02 20:05:06.187 was before configuration upgrade, sorry, but what to do to turn them on now? :)
Barberousse
Posts: 140
Joined: Wednesday 02 December 2015 21:47
Target OS: Raspberry Pi / ODroid
Domoticz version:
Location: France
Contact:

Re: Python Plugin: ebusd

Post by Barberousse »

Esper wrote: Monday 05 February 2018 14:17what to do to turn them on now? :)
You mean the "IGN" fields? I will upgrade my plugin to ignore them, next version probably (1.1.3), give me some time.
Barberousse
Posts: 140
Joined: Wednesday 02 December 2015 21:47
Target OS: Raspberry Pi / ODroid
Domoticz version:
Location: France
Contact:

Re: Python Plugin: ebusd

Post by Barberousse »

Esper wrote: Monday 05 February 2018 14:17 what to do to turn them on now? :)
Could you try version 1.1.3 ?
Esper
Posts: 12
Joined: Friday 02 February 2018 20:07
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: Python Plugin: ebusd

Post by Esper »

Of course i can :) (1.1.5?)

Its better, I can add multi value positions, but plugin is adding only first value. For example:

Code: Select all

2018-02-09 08:36:43.678 (E) Handle
2018-02-09 08:36:43.678 (E) Telnet write: read -v -c mc Mode 
2018-02-09 08:36:43.678 (E) Sending 21 bytes of data:
2018-02-09 08:36:43.678 (E) 72 65 61 64 20 20 2d 76 20 2d 63 20 6d 63 20 4d 6f 64 65 0d read..-v.-c.mc.Mode.
2018-02-09 08:36:43.678 (E) 0a .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .
2018-02-09 08:36:43.728 (E) Received 129 bytes of data:
2018-02-09 08:36:43.728 (E) 6d 63 20 4d 6f 64 65 20 74 65 6d 70 64 65 73 69 72 65 64 3d mc.Mode.tempdesired=
2018-02-09 08:36:43.729 (E) 32 33 3b 6d 63 6d 6f 64 65 3d 61 75 74 6f 3b 66 6c 6f 6f 72 23;mcmode=auto;floor
2018-02-09 08:36:43.729 (E) 70 61 76 69 6e 67 64 72 79 69 6e 67 64 61 79 3d 30 3b 66 6c pavingdryingday=0;fl
2018-02-09 08:36:43.729 (E) 6f 6f 72 70 61 76 69 6e 67 64 72 79 69 6e 67 74 65 6d 70 3d oorpavingdryingtemp=
2018-02-09 08:36:43.729 (E) 30 3b 74 65 6c 65 73 77 69 74 63 68 6d 6f 64 65 3d 6f 66 66 0;teleswitchmode=off
2018-02-09 08:36:43.729 (E) 3b 6d 63 74 79 70 65 37 3d 6d 69 78 65 72 3b 64 61 79 6e 69 ;mctype7=mixer;dayni
2018-02-09 08:36:43.729 (E) 67 68 74 3d 64 61 79 0a 0a .. .. .. .. .. .. .. .. .. .. .. ght=day..
2018-02-09 08:36:43.729 (E) Calling message handler 'onMessage'.
2018-02-09 08:36:43.729 (E) onMessage called
2018-02-09 08:36:43.729 (E) Parse telnet buffer size 129
2018-02-09 08:36:43.730 (E) Reveived value: 'mc Mode tempdesired=23;mcmode=auto;floorpavingdryingday=0;floorpavingdryingtemp=0;teleswitchmode=off;mctype7=mixer;daynight=day'
2018-02-09 08:36:43.730 (E) Save whole fields values 23;auto;0;0;off;mixer;day
2018-02-09 08:36:43.730 (E - mc:Mode:0 - tempdesired) Updating device from 0:'' to have values 23:'23'.
Maybe its connected with older probes? I will try some new positions.

New cc:Status0a - same situation:

Code: Select all

2018-02-09 08:44:56.102 (E) Handle
2018-02-09 08:44:56.102 (E) Telnet write: read -v -c cc Status0a 
2018-02-09 08:44:56.102 (E) Sending 25 bytes of data:
2018-02-09 08:44:56.102 (E) 72 65 61 64 20 20 2d 76 20 2d 63 20 63 63 20 53 74 61 74 75 read..-v.-c.cc.Statu
2018-02-09 08:44:56.102 (E) 73 30 61 0d 0a .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. s0a..
2018-02-09 08:44:56.152 (E) Received 71 bytes of data:
2018-02-09 08:44:56.153 (E) 63 63 20 53 74 61 74 75 73 30 61 20 66 6c 6f 77 74 65 6d 70 cc.Status0a.flowtemp
2018-02-09 08:44:56.153 (E) 3d 2d 3b 6d 69 78 65 72 3d 6f 66 66 3b 70 75 6d 70 3d 6f 66 =-;mixer=off;pump=of
2018-02-09 08:44:56.153 (E) 66 3b 6f 6e 6f 66 66 3d 6f 66 66 3b 66 6c 6f 77 74 65 6d 70 f;onoff=off;flowtemp
2018-02-09 08:44:56.153 (E) 64 65 73 69 72 65 64 3d 30 0a 0a .. .. .. .. .. .. .. .. .. desired=0..
2018-02-09 08:44:56.153 (E) Calling message handler 'onMessage'.
2018-02-09 08:44:56.153 (E) onMessage called
2018-02-09 08:44:56.153 (E) Parse telnet buffer size 71
2018-02-09 08:44:56.153 (E) Reveived value: 'cc Status0a flowtemp=-;mixer=off;pump=off;onoff=off;flowtempdesired=0'
2018-02-09 08:44:56.153 (E) Save whole fields values -;off;off;off;0
2018-02-09 08:44:56.153 (E - cc:Status0a:0 - flowtemp) Updating device from 0:'-' to have values 0:'-'.
2018-02-09 08:44:56.156 (E) handleFifo() called
Barberousse
Posts: 140
Joined: Wednesday 02 December 2015 21:47
Target OS: Raspberry Pi / ODroid
Domoticz version:
Location: France
Contact:

Re: Python Plugin: ebusd

Post by Barberousse »

Esper wrote: Friday 09 February 2018 8:41 Its better, I can add multi value positions, but plugin is adding only first value
What is your complete registers configuration line? If you want flowtemp and flowtempdesired for instance, you must have:

Code: Select all

cc:Status0a:0 cc:Status0a:4
or

Code: Select all

cc:Status0a cc:Status0a:4
Because ":0" is implicit.

Maybe not well documented...
Esper
Posts: 12
Joined: Friday 02 February 2018 20:07
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: Python Plugin: ebusd

Post by Esper »

Sorry, my misunderstanding..

Last cases are clear..

New question about hwc:SetMode

Code: Select all

2018-02-11 20:51:59.516 (E) Handle
2018-02-11 20:51:59.516 (E) Telnet write: read -v -c hwc SetMode 
2018-02-11 20:51:59.516 (E) Sending 25 bytes of data:
2018-02-11 20:51:59.516 (E) 72 65 61 64 20 20 2d 76 20 2d 63 20 68 77 63 20 53 65 74 4d read..-v.-c.hwc.SetM
2018-02-11 20:51:59.516 (E) 6f 64 65 0d 0a .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ode..
2018-02-11 20:51:59.566 (E) Received 24 bytes of data:
2018-02-11 20:51:59.566 (E) 68 77 63 20 53 65 74 4d 6f 64 65 20 68 77 63 6d 6f 64 65 3d hwc.SetMode.hwcmode=
2018-02-11 20:51:59.566 (E) 33 31 0a 0a .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 31..
2018-02-11 20:51:59.566 (E) Calling message handler 'onMessage'.
2018-02-11 20:51:59.566 (E) onMessage called
2018-02-11 20:51:59.567 (E) Parse telnet buffer size 24
2018-02-11 20:51:59.567 (E) Reveived value: 'hwc SetMode hwcmode=31'
2018-02-11 20:51:59.567 (E) Save whole fields values 31
2018-02-11 20:51:59.567 Error: (E) 'onMessage' failed 'UnboundLocalError':'local variable 'iValue' referenced before assignment'.
2018-02-11 20:51:59.567 Error: (E) ----> Line 745 in /home/pi/domoticz/plugins/DomoticzEbusd/plugin.py, function onMessage
2018-02-11 20:51:59.567 Error: (E) ----> Line 552 in /home/pi/domoticz/plugins/DomoticzEbusd/plugin.py, function onMessage
2018-02-11 20:51:59.567 Error: (E) ----> Line 272 in /home/pi/domoticz/plugins/DomoticzEbusd/plugin.py, function parseTelnet
2018-02-11 20:51:59.567 Error: (E) ----> Line 893 in /home/pi/domoticz/plugins/DomoticzEbusd/plugin.py, function valueEbusdToDomoticz
2018-02-11 20:52:00.168 (E) Calling message handler 'onHeartbeat'.
Any idea?
Barberousse
Posts: 140
Joined: Wednesday 02 December 2015 21:47
Target OS: Raspberry Pi / ODroid
Domoticz version:
Location: France
Contact:

Re: Python Plugin: ebusd

Post by Barberousse »

Esper wrote: Sunday 11 February 2018 20:54

Code: Select all

2018-02-11 20:51:59.516 (E) Handle
2018-02-11 20:51:59.516 (E) Telnet write: read -v -c hwc SetMode 
2018-02-11 20:51:59.516 (E) Sending 25 bytes of data:
2018-02-11 20:51:59.516 (E) 72 65 61 64 20 20 2d 76 20 2d 63 20 68 77 63 20 53 65 74 4d read..-v.-c.hwc.SetM
2018-02-11 20:51:59.516 (E) 6f 64 65 0d 0a .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ode..
2018-02-11 20:51:59.566 (E) Received 24 bytes of data:
2018-02-11 20:51:59.566 (E) 68 77 63 20 53 65 74 4d 6f 64 65 20 68 77 63 6d 6f 64 65 3d hwc.SetMode.hwcmode=
2018-02-11 20:51:59.566 (E) 33 31 0a 0a .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 31..
Did you change your ebusd configuration? Based on the data.json you send, the command "read -v -c hwc.SetMode" should return 10 fields, you received only one. Could you try again with version 1.1.8?
Esper
Posts: 12
Joined: Friday 02 February 2018 20:07
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: Python Plugin: ebusd

Post by Esper »

Its much better on 1.1.9.

My JSON for hwc.SetMode

Code: Select all

"SetMode": {
"name": "SetMode",
"passive": false,
"write": false,
"lastup": 0,
"zz": 37,
"id": [
181,
4,
2
],
"fielddefs": [
{
"name": "hwcmode",
"slave": true,
"type": "UCH",
"isbits": false,
"length": 1,
"values": {
"0": "disabled",
"1": "on",
"2": "off",
"3": "auto"
},
"unit": "",
"comment": "hot water mode"
}
]
},
line from hwcmode.inc

Code: Select all

w,,SetMode,Set operation mode,,,,02,,,hwcmode,,,
and new situation:
1. Trying to change "hwc:SetMode:0" on --> auto
2. plugin is trying to write hwcmode auto
3. after 1-2 seconds Mode on is back


Debug log (is setmode ON)

Code: Select all

2018-02-12 16:00:12.688 (E) Handle
2018-02-12 16:00:12.689 (E) Telnet write: write -c hwc setmode on 
2018-02-12 16:00:12.689 (E) Sending 25 bytes of data:
2018-02-12 16:00:12.689 (E) 77 72 69 74 65 20 2d 63 20 68 77 63 20 73 65 74 6d 6f 64 65 write.-c.hwc.setmode
2018-02-12 16:00:12.689 (E) 20 6f 6e 0d 0a .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .on..
2018-02-12 16:00:12.839 (E) Received 6 bytes of data:
2018-02-12 16:00:12.839 (E) 64 6f 6e 65 0a 0a .. .. .. .. .. .. .. .. .. .. .. .. .. .. done..
2018-02-12 16:00:12.839 (E) Calling message handler 'onMessage'.
2018-02-12 16:00:12.839 (E) onMessage called
2018-02-12 16:00:12.840 (E) Parse telnet buffer size 6
2018-02-12 16:00:12.840 (E) Reveived value: 'done'
2018-02-12 16:00:12.840 (E) handleFifo() called
2018-02-12 16:00:12.840 (E) Handle
2018-02-12 16:00:12.840 (E) Telnet write: read -v -c hwc setmode 
2018-02-12 16:00:12.840 (E) Sending 25 bytes of data:
2018-02-12 16:00:12.840 (E) 72 65 61 64 20 20 2d 76 20 2d 63 20 68 77 63 20 73 65 74 6d read..-v.-c.hwc.setm
2018-02-12 16:00:12.840 (E) 6f 64 65 0d 0a .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ode..
2018-02-12 16:00:12.991 (E) Received 24 bytes of data:
2018-02-12 16:00:12.991 (E) 68 77 63 20 53 65 74 4d 6f 64 65 20 68 77 63 6d 6f 64 65 3d hwc.SetMode.hwcmode=
2018-02-12 16:00:12.991 (E) 33 31 0a 0a .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 31..
2018-02-12 16:00:12.991 (E) Calling message handler 'onMessage'.
2018-02-12 16:00:12.991 (E) onMessage called
2018-02-12 16:00:12.991 (E) Parse telnet buffer size 24
2018-02-12 16:00:12.991 (E) Reveived value: 'hwc SetMode hwcmode=31'
2018-02-12 16:00:12.991 (E) Save whole fields values 31
2018-02-12 16:00:12.991 (E - hwc:SetMode:0 - hwcmode) Updating device from 31:'31' to have values 31:'31'.
2018-02-12 16:00:12.997 (E) handleFifo() called
Image

I'm afraid, then value 31 is an ebusd error..
Barberousse
Posts: 140
Joined: Wednesday 02 December 2015 21:47
Target OS: Raspberry Pi / ODroid
Domoticz version:
Location: France
Contact:

Re: Python Plugin: ebusd

Post by Barberousse »

Esper wrote: Monday 12 February 2018 16:03 My JSON for hwc.SetMode
Is your JSON definition for hwc.SetMode the same with http://EbusIP:EbusPort/data?def&write ?
Esper
Posts: 12
Joined: Friday 02 February 2018 20:07
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: Python Plugin: ebusd

Post by Esper »

Barberousse wrote: Monday 12 February 2018 17:40 Is your JSON definition for hwc.SetMode the same with http://EbusIP:EbusPort/data?def&write ?

Code: Select all

"SetMode": {
"name": "SetMode",
"passive": false,
"write": true,
"lastup": 1518451958,
"zz": 37,
"id": [
181,
5,
2
],
"fields": {
"hwcmode": {
"value": "auto"
}
},
"fielddefs": [
{
"name": "hwcmode",
"slave": false,
"type": "UCH",
"isbits": false,
"length": 1,
"values": {
"0": "disabled",
"1": "on",
"2": "off",
"3": "auto"
},
"unit": "",
"comment": "hot water mode"
}
]
},
After ebusd restart its not 31, its write only.. (like yesterday)

Code: Select all

ebusctl -p 8000 r -c hwc SetMode
ERR: element not found
but in JSON:

Code: Select all

"fields": {
"hwcmode": {
"value": "auto"
}
Barberousse
Posts: 140
Joined: Wednesday 02 December 2015 21:47
Target OS: Raspberry Pi / ODroid
Domoticz version:
Location: France
Contact:

Re: Python Plugin: ebusd

Post by Barberousse »

I'm confused, maybe you should fill a bug report in https://github.com/john30/ebusd or https://github.com/john30/ebusd-configuration, it seems to be an issue there, the read command should return "disabled", "on, "off" or "auto", not 31...
pigloox
Posts: 22
Joined: Tuesday 09 February 2016 23:02
Target OS: Raspberry Pi / ODroid
Domoticz version: BETA
Location: France
Contact:

Re: Python Plugin: ebusd

Post by pigloox »

Barberousse wrote: Saturday 09 December 2017 16:33 I can read external probe and internal room thermostat for sure (f47:RoomTemp, broadcast:outsidetemp), pipe pressure can be read with bai:WaterPressure, for gaz consumption I'm not sure.

I have these registers:

Code: Select all

bai AccessoriesOne = no data stored
bai AccessoriesTwo = no data stored
bai ACRoomthermostat = no data stored
bai APCComStatus = no data stored
bai APCLegioProtection = no data stored
bai averageIgnitiontime = no data stored                                                                                                                                                                       
bai BlockTimeHcMax = no data stored                                                                                                                                                                            
bai BoilerType = no data stored                                                                                                                                                                                
bai ChangesDSN = no data stored                                                                                                                                                                                
bai CirPump = no data stored                                                                                                                                                                                   
bai CounterStartattempts1 = no data stored                                                                                                                                                                     
bai CounterStartattempts2 = no data stored
bai CounterStartAttempts3 = no data stored
bai CounterStartAttempts4 = no data stored
bai currenterror = no data stored
bai DateTime = no data stored
bai dcfState = no data stored
bai DCFTimeDate = no data stored
bai DCRoomthermostat = no data stored
bai DeactivationsIFC = no data stored
bai DeactivationsTemplimiter = no data stored
bai DeltaFlowReturnMax = no data stored
bai DisplayMode = no data stored
bai DSN = no data stored
bai DSNOffset = no data stored
bai DSNStart = no data stored
bai EBusHeatcontrol = no data stored
bai EbusSourceOn = no data stored
bai EbusVoltage = no data stored
bai errorhistory = no data stored
bai expertlevel_ReturnTemp = no data stored
bai ExternalFaultmessage = no data stored
bai externalFlowTempDesired = no data stored
bai externalHwcSwitch = no data stored
bai ExternGasvalve = no data stored
bai ExtFlowTempDesiredMin = no data stored
bai ExtStorageModulCon = no data stored
bai extWP = no data stored
bai FanHours = no data stored
bai FanMaxSpeedOperation = no data stored
bai FanMinSpeedOperation = no data stored
bai FanPWMSum = no data stored
bai FanPWMTest = no data stored
bai FanSpeed = no data stored
bai FanSpeedOffsetMax = no data stored
bai FanSpeedOffsetMin = no data stored
bai FanStarts = no data stored
bai Flame = no data stored
bai FlameSensingASIC = no data stored
bai FloorHeatingContact = no data stored
bai FlowsetHcMax = no data stored
bai FlowsetHwcMax = no data stored
bai FlowSetPotmeter = no data stored
bai FlowTemp = 43.12;ok
bai FlowTempDesired = 51.50
bai FlowTempMax = no data stored
bai Fluegasvalve = no data stored
bai FluegasvalveOpen = no data stored
bai Gasvalve3UC = no data stored
bai Gasvalve = no data stored
bai GasvalveASICFeedback = no data stored
bai GasvalveUC = no data stored
bai GasvalveUCFeedback = no data stored
bai HcHours = no data stored
bai HcPumpMode = no data stored
bai HcPumpStarts = no data stored
bai HcStarts = no data stored
bai HcUnderHundredStarts = no data stored
bai HeatingSwitch = no data stored
bai HoursTillService = no data stored
bai HwcDemand = no data stored
bai HwcHours = no data stored
bai HwcImpellorSwitch = no data stored
bai HwcPostrunTime = no data stored
bai HwcSetPotmeter = no data stored
bai HwcStarts = no data stored
bai HwcSwitch = no data stored
bai HwcTemp = no data stored
bai HwcTempDesired = no data stored
bai HwcTempMax = no data stored
bai HwcTypes = no data stored
bai HwcUnderHundredStarts = no data stored
bai HwcWaterflow = no data stored
bai HwcWaterflowMax = no data stored
bai Ignitor = no data stored
bai InitialisationEEPROM = no data stored
bai IonisationVoltageLevel = no data stored
bai maintenancedata_HwcTempMax = no data stored
bai maxIgnitiontime = no data stored
bai minIgnitiontime = no data stored
bai ModulationTempDesired = no data stored
bai OutdoorstempSensor = no data stored
bai OverflowCounter = no data stored
bai ParamToken = no data stored
bai PartloadHcKW = no data stored
bai PartloadHwcKW = no data stored
bai PartnumberBox = no data stored
bai PositionValveSet = no data stored
bai PowerValue = no data stored
bai PrAPSCounter = no data stored
bai PrAPSSum = no data stored
bai PrEnergyCountHc1 = no data stored
bai PrEnergyCountHc2 = no data stored
bai PrEnergyCountHc3 = no data stored
bai PrEnergyCountHwc1 = no data stored
bai PrEnergyCountHwc2 = no data stored
bai PrEnergyCountHwc3 = no data stored
bai PrEnergySumHc1 = no data stored
bai PrEnergySumHc2 = no data stored
bai PrEnergySumHc3 = no data stored
bai PrEnergySumHwc1 = no data stored
bai PrEnergySumHwc2 = no data stored
bai PrEnergySumHwc3 = no data stored
bai ProductionByte = no data stored
bai PrVortexFlowSensorValue = no data stored
bai PumpHours = no data stored
bai PumpHwcFlowNumber = no data stored
bai PumpHwcFlowSum = no data stored
bai RemainingBoilerblocktime = no data stored
bai ReturnRegulation = no data stored
bai ReturnTemp = 42.31;64858;ok
bai ReturnTempMax = no data stored
bai SecondPumpMode = no data stored
bai SerialNumber = no data stored
bai SetFactoryValues = no data stored
bai SetMode = auto;51.5;55.0;-;0;0;0;0;0;0
bai SHEMaxDeltaHwcFlow = no data stored
bai SHEMaxFlowTemp = no data stored
bai SolPostHeat = no data stored
bai Statenumber = no data stored
bai Status01 = 38.0;33.0;-;53.0;52.5;on
bai Status02 = auto;60;75.0;100;65.0
bai Status16 = no data stored
bai Status = no data stored
bai Storageloadpump = no data stored
bai StorageLoadPumpHours = no data stored
bai StorageloadPumpStarts = no data stored
bai StorageLoadTimeMax = no data stored
bai StoragereleaseClock = no data stored
bai StorageTemp = 38.50;ok
bai StorageTempDesired = 55.00
bai StorageTempMax = no data stored
bai TargetFanSpeed = no data stored
bai TargetFanSpeedOutput = no data stored
bai TempDiffBlock = no data stored
bai TempDiffFailure = no data stored
bai TempGradientFailure = no data stored
bai Templimiter = no data stored
bai TemplimiterWithNTC = no data stored
bai TempMaxDiffExtTFT = no data stored
bai Testbyte = no data stored
bai TimerInputHc = no data stored
bai ValveMode = no data stored
bai ValveStarts = no data stored
bai VolatileLockout = no data stored
bai VolatileLockoutIFCGV = no data stored
bai VortexFlowSensor = no data stored
bai WarmstartDemand = no data stored
bai WarmstartOffset = no data stored
bai WaterHcFlowMax = no data stored
bai WaterPressure = no data stored
bai WaterpressureBranchControlOff = no data stored
bai WaterpressureMeasureCounter = no data stored
bai WaterpressureVariantSum = no data stored
bai WP = no data stored
bai WPPostrunTime = no data stored
bai WPSecondStage = no data stored
broadcast datetime = no data stored
broadcast error = no data stored
broadcast hwcStatus = no data stored
broadcast id = no data stored
broadcast id = no data stored
broadcast load = no data stored
broadcast netloss = no data stored
broadcast netresetcfg = no data stored
broadcast netresetstate = no data stored
broadcast outsidetemp = 5.000
broadcast signoflife = no data stored
broadcast vdatetime = 16:28:52;09.12.2017
f47 ACTOstorDetected = no data stored
f47 actoSTOROPMode = no data stored
f47 ActualRoomTempDesiredHc1 = no data stored
f47 ActualWeekday = no data stored
f47 ADCValueTempabove = no data stored
f47 ADCValueTempbelow = no data stored
f47 ASCDetected = no data stored
f47 B51000M10HwcFlowSetMon = no data stored
f47 B51000M12DisableBitsMon = no data stored
f47 B51000M14Monitor = no data stored
f47 B51000M7OpModeMonitor = no data stored
f47 B51000M8HeatFlowSetMonitor = no data stored
f47 B51000M9TappingSetMon = no data stored
f47 B51000TempDesiredLoadingPump = no data stored
f47 BMUB51101BoilerFlowTemp = no data stored
f47 BMUB51101ErrorStatus = no data stored
f47 BMUB51101HwcState = no data stored
f47 BMUB51101StorageTemp = no data stored
f47 BMUFlowTempOrVF1 = no data stored
f47 CalculatedKickStopTime = no data stored
f47 ccTimer.Friday = no data stored
f47 ccTimer.Monday = no data stored
f47 ccTimer.Saturday = no data stored
f47 ccTimer.Sunday = no data stored
f47 ccTimer.Thursday = no data stored
f47 ccTimer.Tuesday = no data stored
f47 ccTimer.Wednesday = no data stored
f47 ChimneySweepModeActive = no data stored
f47 CirPump = no data stored
f47 ClockSwitchSummerWinterDone = no data stored
f47 ContactName = no data stored
f47 ContinuosHeating = no data stored
f47 CountryVariant = no data stored
f47 CPLPLast24started = no data stored
f47 currenterror = no data stored
f47 Date = no data stored
f47 DcfIsValid = no data stored
f47 DisplayedHc1RoomTempDesired = no data stored
f47 DisplayedHwcStorageTemp = no data stored
f47 DisplayedRoomTemp = no data stored
f47 EepromUpdateActive = no data stored
f47 EnermanState = no data stored
f47 errorhistory = no data stored
f47 ExcessTemp = no data stored
f47 FactoryTestActive = no data stored
f47 FrostOverRideTime = no data stored
f47 FrostProtectDelayMonitor = no data stored
f47 FrostProtectionRequiredMonitor = no data stored
f47 FrostProtectStateMonitor = no data stored
f47 GlobalSystemOff = no data stored
f47 Hc1ActualFlowTempDesired = no data stored
f47 Hc1AutoOffMode = no data stored
f47 Hc1BankHolidayEndPeriod = no data stored
f47 Hc1BankHolidayStartPeriod = no data stored
f47 Hc1DayTemp = 18.5
f47 Hc1FloorPavementDryingDay = no data stored
f47 Hc1FloorPavementDryingTemp = no data stored
f47 Hc1HcType = no data stored
f47 Hc1HeatCurve = no data stored
f47 Hc1HolidayEndPeriod = no data stored
f47 Hc1HolidayRoomTemp = no data stored
f47 Hc1HolidayStartPeriod = no data stored
f47 Hc1MinimalFlowTempDesired = no data stored
f47 Hc1NightTemp = no data stored
f47 Hc1OPMode = auto
f47 Hc1PreCutOffActive = no data stored
f47 Hc1PreOrContinuosHeatingActive = no data stored
f47 Hc1Pump = no data stored
f47 Hc1PumpLast24started = no data stored
f47 Hc1QuickVetoTemp = no data stored
f47 Hc1RoomTempSwitchOn = no data stored
f47 Hc1SFMode = none
f47 Hc1SummerOffset = no data stored
f47 Hc2BankHolidayEndPeriod = no data stored
f47 Hc2BankHolidayPeriodIsActive = no data stored
f47 Hc2BankHolidayStartPeriod = no data stored
f47 Hc2HcType = no data stored
f47 Hc2HolidayEndPeriod = no data stored
f47 Hc2HolidayPeriodIsActive = no data stored
f47 Hc2HolidayStartPeriod = no data stored
f47 Hc2OPMode = no data stored
f47 Hc2SFMode = no data stored
f47 Hc2TempDesiredB50418 = no data stored
f47 HcMc1ConfigCPLP = no data stored
f47 HcMc1CPLPState = no data stored
f47 HcMc1Detected = no data stored
f47 HcName1 = no data stored
f47 HcName2 = no data stored
f47 hcTimer.Friday = no data stored
f47 hcTimer.Monday = no data stored
f47 hcTimer.Saturday = no data stored
f47 hcTimer.Sunday = no data stored
f47 hcTimer.Thursday = no data stored
f47 hcTimer.Tuesday = no data stored
f47 hcTimer.Wednesday = no data stored
f47 HwcActualTempDesired = no data stored
f47 HwcCircuitActive = no data stored
f47 HwcLegioStartDay = no data stored
f47 HwcLegioStartTime = no data stored
f47 HwcLoadingIn430Active = no data stored
f47 HwcLoadingOffset = no data stored
f47 HwcOPMode = no data stored
f47 HwcParallelLoading = no data stored
f47 HwcPressLowpostrunningtime = no data stored
f47 HwcTempDesired = no data stored
f47 hwcTimer.Friday = no data stored
f47 hwcTimer.Monday = no data stored
f47 hwcTimer.Saturday = no data stored
f47 hwcTimer.Sunday = no data stored
f47 hwcTimer.Thursday = no data stored
f47 hwcTimer.Tuesday = no data stored
f47 hwcTimer.Wednesday = no data stored
f47 HydraulicMap = no data stored
f47 HydraulicSwitch = no data stored
f47 InstallAssistant = no data stored
f47 KeyCodeforConfigMenu = no data stored
f47 LanguageVariant = no data stored
f47 LcdContrastValue = no data stored
f47 LegioProtectActive = no data stored
f47 MaintenanceDate = no data stored
f47 MonitorCurrentIPart = no data stored
f47 MonitorEEpromInkonsiNumber = no data stored
f47 OpModeEffect = no data stored
f47 OutsideTemp = 9.81;ok
f47 OutsideTempOffset = no data stored
f47 PhoneNumber = no data stored
f47 PreheatingTime = no data stored
f47 PreStopTime = no data stored
f47 PumpBlockingTimeMax = no data stored
f47 PumpEnergySaveCalculatedTimeMonitor = no data stored
f47 PumpEnergySaveStateMonitor = no data stored
f47 RaumtempIstOben = no data stored
f47 RaumtempIstUnten = no data stored
f47 RoomTemp = 18.56;ok
f47 RoomTempCorrection = no data stored
f47 RoomTempOffsetSelfWarming = no data stored
f47 SolModuleDetected = no data stored
f47 StartEepromUpdate = no data stored
f47 StatusDcf = no data stored
f47 SummerWinterTimeAdjust = no data stored
f47 TestVarActivateFunction = no data stored
f47 Time = no data stored
f47 V430PluggedIn = no data stored
f47 VF1 = no data stored
f47 VR81ActiveForHc1 = no data stored
f47 VR81ActiveForHc2 = no data stored
f47 VR81Detected = no data stored
f47 YieldLastYear = no data stored
f47 YieldThisYear = 0;0;0;0;0;0;0;0;0;0;0;0
general valuerange = no data stored
mc ActualTempDesired = no data stored
mc AutoOffMode = no data stored
mc BoilerCircuitPump = no data stored
mc BoilerMaxPreShutdown = no data stored
mc CirPump = no data stored
mc currenterror = -;-;-;-;-
mc Date = no data stored
mc DayNightState = no data stored
mc DisplayedRoomTempDesired = no data stored
mc errorhistory = no data stored
mc FloorPavingDryingDay = no data stored
mc FloorPavingDryingTemp = no data stored
mc Flow1Sensor = 25.38;ok
mc FlowTempDesired = 26.0
mc FlowTempMax = no data stored
mc FlowTempMin = no data stored
mc FrostProtConfig = no data stored
mc FrostProtectDelay = no data stored
mc FrostProtState = no data stored
mc Hc1PumpKol1PP1Port = no data stored
mc Hc2aLegPumpP2Port = no data stored
mc Hc2CircuitType = no data stored
mc Hc2ContinuosHeating = no data stored
mc Hc2ManualOPRoomTempDesired = no data stored
mc Hc2pDemand = no data stored
mc Hc2PumpAlPort = no data stored
mc Hc2QuickVetoActive = no data stored
mc Hc2QuickVetoTemp = no data stored
mc Hc2RoomControlMode = no data stored
mc Hc2SummerOffset = no data stored
mc Hc2zPort = no data stored
mc HcFlowIncrease = no data stored
mc HcParallelStorageFillingEnabled = no data stored
mc HcPreHeatingActive = no data stored
mc HcPreShutdownActive = no data stored
mc HcPumpIdlePeriod = no data stored
mc HcPumpIdlePeriodActive = no data stored
mc hcTimer.Friday = no data stored
mc hcTimer.Monday = no data stored
mc hcTimer.Saturday = no data stored
mc hcTimer.Sunday = no data stored
mc hcTimer.Thursday = no data stored
mc hcTimer.Tuesday = no data stored
mc hcTimer.Wednesday = no data stored
mc HeatingCurve = no data stored
mc HolidayTempDesired = no data stored
mc InternalOperatingMode470 = auto
mc IsInBankHoliday = no data stored
mc IsInHoliday = no data stored
mc IsInImpactVentilation = no data stored
mc IsInOneDayBankHoliday = no data stored
mc IsInOneDayHoliday = no data stored
mc IsInParty = no data stored
mc IsInSystemOff = no data stored
mc Mixer1DutyCycle = no data stored
mc Mixer1State = no data stored
mc MonitorEEpromInkonsiNumber = no data stored
mc OffConfig = no data stored
mc PreheatingMinutesMax = no data stored
mc PsTempDesired = no data stored
mc PumpSavingState = no data stored
mc Setpoints.Friday = no data stored
mc Setpoints.Monday = 18.5;18.5;18.5
mc Setpoints.Saturday = no data stored
mc Setpoints.Sunday = no data stored
mc Setpoints.Thursday = no data stored
mc Setpoints.Tuesday = no data stored
mc Setpoints.Wednesday = no data stored
mc SfState = no data stored
mc SunMoonInfo = no data stored
mc TempDesiredLow = no data stored
mc ThermostatState = no data stored
mc Time = no data stored
mc Weekday = no data stored
memory eeprom = no data stored
memory ram = no data stored
scan id = no data stored
scan.08  = Vaillant;BAI00;0609;5502
scan.08 id = 21;16;38;0020221905;0001;005608;N2
scan.15  = Vaillant;F4700;0114;6102
scan.15 id = 21;16;31;0020108135;0082;008704;N0
scan.50  = Vaillant;V6100;0418;1902
scan.50 id = 21;16;05;0020139850;0082;005136;N0
scan.f6  = Vaillant;F4700;0114;6102
scan.f6 id = 21;16;31;0020108135;0082;008704;N0
Hi,

How can you list these registers ?
RPI3 Stretch (Hard disk)
-RFXtrx433 USB
-OpenZwave USB
-Teleinfo USB
fantom
Posts: 269
Joined: Thursday 26 March 2015 10:40
Target OS: Raspberry Pi / ODroid
Domoticz version:
Location: Poland
Contact:

Re: Python Plugin: ebusd

Post by fantom »

Hi

ebusctl find

Fantom
ps. I today connect Vaillant to my RPI. Next i look on this script.
Barberousse
Posts: 140
Joined: Wednesday 02 December 2015 21:47
Target OS: Raspberry Pi / ODroid
Domoticz version:
Location: France
Contact:

Re: Python Plugin: ebusd

Post by Barberousse »

pigloox wrote: Thursday 15 February 2018 20:16 How can you list these registers ?
Or you can open and see available registers from your favorite internet browser, for instance at this address: http://192.168.0.10:8889/data?def (change IP address to ebusd hosting device IP address or name, change 8889 port to whatever port you configured for HTTP JSON). But before, ebusd must be configured with --httpport 8889 option for instance:

Code: Select all

# /etc/default/ebusd:
# config file for ebusd service.

# Options to pass to ebusd (run "ebusd -?" for more info):
EBUSD_OPTS="--scanconfig --httpport 8889"
The httpport option is needed for the plugin to work.
fantom
Posts: 269
Joined: Thursday 26 March 2015 10:40
Target OS: Raspberry Pi / ODroid
Domoticz version:
Location: Poland
Contact:

Re: Python Plugin: ebusd

Post by fantom »

I have first prolem with plugin:

2018-02-15 21:14:00.382 (ebus) Started.
2018-02-15 21:14:00.688 (ebus) Entering work loop.
2018-02-15 21:14:00.688 (ebus) Initialized version 1.1.9, author 'Barberousse'
2018-02-15 21:14:00.693 (ebus) onStart called
2018-02-15 21:14:00.693 (ebus) IP or named address set to 192.168.1.2
2018-02-15 21:14:00.693 (ebus) Telnet port set to 8888
2018-02-15 21:14:00.693 (ebus) JSON HTTP port set to 8889
2018-02-15 21:14:00.693 (ebus) Registers set to bai:SetMode:hwctempdesired
2018-02-15 21:14:00.693 (ebus) Refresh rate set to 600
2018-02-15 21:14:00.693 (ebus) Disable cache set to False
2018-02-15 21:14:00.693 (ebus) Read-only set to True
2018-02-15 21:14:00.693 (ebus) Debug set to Normal
2018-02-15 21:14:00.809 PluginSystem: Restarting I/O service thread.
2018-02-15 21:14:01.097 (ebus) Add device bai:setmode:hwctempdesired (bai:bai:2) unit 1 as type Temperature: temperature
2018-02-15 21:14:01.262 Error: (ebus) Error from telnet client: no data stored
2018-02-15 21:14:10.286 Error: (ebus) Error from telnet client: no data stored
2018-02-15 21:14:12.331 (ebus) Stop directive received.
2018-02-15 21:14:12.770 (ebus) Exiting work loop.
2018-02-15 21:14:17.337 Error: (ebus) Plugin did not stop after 5 seconds, flushing event queue...
2018-02-15 21:14:17.337 (ebus) Stopping threads.
2018-02-15 21:14:17.337 (ebus) Stopped.

Fantom
Barberousse
Posts: 140
Joined: Wednesday 02 December 2015 21:47
Target OS: Raspberry Pi / ODroid
Domoticz version:
Location: France
Contact:

Re: Python Plugin: ebusd

Post by Barberousse »

fantom wrote: Thursday 15 February 2018 21:17 I have first prolem with plugin:
Hi,

Thank you for you message, I saw an error in the plugin, but it won't solve your problem. Could you upgrade the plugin to version 1.2.0? After that, you should have a "bai:bai:2" device and "bai:setmode:2" device in Domoticz / Setup / Devices, delete "bai:bai:2" device (look at hardware column).

For your problem, could you post the log with Debug enabled in plugin settings? Could you post the result of the command

Code: Select all

ebusctl read -v -c bai setmode
But the error is probably not an error in the plugin, but an error reported by ebusd itself, probably meaning that ebusd didn't receive any data for setmode register.
pigloox
Posts: 22
Joined: Tuesday 09 February 2016 23:02
Target OS: Raspberry Pi / ODroid
Domoticz version: BETA
Location: France
Contact:

Re: Python Plugin: ebusd

Post by pigloox »

Barberousse wrote: Thursday 15 February 2018 20:49
pigloox wrote: Thursday 15 February 2018 20:16 How can you list these registers ?
Or you can open and see available registers from your favorite internet browser, for instance at this address: http://192.168.0.10:8889/data?def (change IP address to ebusd hosting device IP address or name, change 8889 port to whatever port you configured for HTTP JSON). But before, ebusd must be configured with --httpport 8889 option for instance:

Code: Select all

# /etc/default/ebusd:
# config file for ebusd service.

# Options to pass to ebusd (run "ebusd -?" for more info):
EBUSD_OPTS="--scanconfig --httpport 8889"
The httpport option is needed for the plugin to work.

Thank you for the info, it works well and related to your first post, I confirm that your plugin also works for my boiler saunier duval.

Another question, is it possible to send values ​​to the boiler (temperature setpoint or time) ??? And if yes, how please ?

Thx
RPI3 Stretch (Hard disk)
-RFXtrx433 USB
-OpenZwave USB
-Teleinfo USB
Barberousse
Posts: 140
Joined: Wednesday 02 December 2015 21:47
Target OS: Raspberry Pi / ODroid
Domoticz version:
Location: France
Contact:

Re: Python Plugin: ebusd

Post by Barberousse »

pigloox wrote: Friday 16 February 2018 13:46 is it possible to send values ​​to the boiler (temperature setpoint or time) ??? And if yes, how please ?
Yes, it works for me, but you have to choose carefully the right register, they don't have all write access, some registers are read-only copy from others. To see writable registers, go to http://192.168.0.10:8889/data?def&write (change IP address to ebusd hosting device IP address or name, change 8889 port to whatever port you configured for HTTP JSON). Don't forget the "&write". Look at registers with name ending with "-w", for instance "SetPoint-w".

For writable registers containing temperature for instance, the plugin will create a Setpoint you can change. For multiple values, it will create a selector switches, for on/off or yes/no values, it will create a simple switch.

If you initially started the plugin with read-only option enabled, delete devices from Setup -> Devices, and after that disable the read-only option, and click on modify in setup page of the plugin. It will recreate devices as writable, when declared as such by ebusd configuration.
pigloox
Posts: 22
Joined: Tuesday 09 February 2016 23:02
Target OS: Raspberry Pi / ODroid
Domoticz version: BETA
Location: France
Contact:

Re: Python Plugin: ebusd

Post by pigloox »

Barberousse wrote: Friday 16 February 2018 14:00
Yes, it works for me, but you have to choose carefully the right register, they don't have all write access, some registers are read-only copy from others. To see writable registers, go to http://192.168.0.10:8889/data?def&write (change IP address to ebusd hosting device IP address or name, change 8889 port to whatever port you configured for HTTP JSON). Don't forget the "&write". Look at registers with name ending with "-w", for instance "SetPoint-w".

For writable registers containing temperature for instance, the plugin will create a Setpoint you can change. For multiple values, it will create a selector switches, for on/off or yes/no values, it will create a simple switch.

If you initially started the plugin with read-only option enabled, delete devices from Setup -> Devices, and after that disable the read-only option, and click on modify in setup page of the plugin. It will recreate devices as writable, when declared as such by ebusd configuration.
I have only this with "write": true

Code: Select all

"queryexistence": {
    "name": "queryexistence",
    "passive": false,
    "write": true,
    "lastup": 0,
    "zz": 254,
    "id": [7, 254],
    "fielddefs": [
    ]
   },
   
   "ident-w": {
    "name": "ident",
    "passive": false,
    "write": true,
    "lastup": 0,
    "zz": 254,
    "id": [7, 4],
    "fielddefs": [
    ]
   },  
   
What should I conclude?

Nothing can be written or there is also an option at the level of the deamon to activate to be in writing?

(see all datas if you want in attachements)
data.txt
(74.16 KiB) Downloaded 145 times
RPI3 Stretch (Hard disk)
-RFXtrx433 USB
-OpenZwave USB
-Teleinfo USB
Barberousse
Posts: 140
Joined: Wednesday 02 December 2015 21:47
Target OS: Raspberry Pi / ODroid
Domoticz version:
Location: France
Contact:

Re: Python Plugin: ebusd

Post by Barberousse »

pigloox wrote: Friday 16 February 2018 14:18 Nothing can be written or there is also an option at the level of the deamon to activate to be in writing?
I don't know what the "write" : "true" means in JSON data, we should ask to ebusd author, or look at source code. I know that to be able to read registers, also know as messages, the ebusd configuration must define a write message, and the only one I can see in your data.txt file is "ident-w", and is not very useful. It probably means that your ebusd configuration must be updated to include more write messages. You can still do trial/error tests by modifying the CSV file of you boiler, replacing "r" with "r;w" in first column when you think it should be writable, restart ebusd daemon, and try to write and see with "ebusctl write" command. If you succeed, propose a modification opening an issue or a pull request on https://github.com/john30/ebusd-configuration
Post Reply

Who is online

Users browsing this forum: Google [Bot] and 1 guest