pyebus.circuitinfodecoder module

Cirucit Information Decoder.

pyebus.circuitinfodecoder.decode_circuitinfos(info)[source]

Decode Circuit Information.

Parameters:

info – dict or list of strings.

>>> info = {
...     "version": "ebusd 21.1.v21.1-12-gccfc025",
...     "update check": "version 3.4 available",
...     "signal": "acquired",
...     "symbol rate": "48",
...     "max symbol rate": "229",
...     "min arbitration micros": "301",
...     "max arbitration micros": "3550",
...     "min symbol latency": "2",
...     "max symbol latency": "15",
...     "reconnects": "0",
...     "masters": "7",
...     "messages": "1006",
...     "conditional": "14",
...     "poll": "171",
...     "update": "10",
...     "address 03": "master #11",
...     'address 08': 'slave #11, scanned "MF=Vaillant;ID=BAI00;SW=0204;HW=9602", loaded "vaillant/bai.0010015600.inc" ([HW=9602]), "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 17": "master #17",
...     'address 1c': 'slave #17, scanned "MF=Vaillant;ID=RC C ;SW=0508;HW=6201", loaded "vaillant/1c.rcc.4.csv"',
...     'address 23': 'slave, scanned "MF=Vaillant;ID=VR630;SW=0500;HW=6301", loaded "vaillant/23.vr630.cc.csv"',
...     'address 25': 'slave, scanned "MF=Vaillant;ID=VR630;SW=0500;HW=6301", loaded "vaillant/25.vr630.hwc.csv"',
...     'address 26': 'slave, scanned "MF=Vaillant;ID=VR630;SW=0500;HW=6301", loaded "vaillant/26.vr630.hc.csv"',
...     "address 31": "master #8, ebusd",
...     "address 36": "slave #8, ebusd",
...     "address 37": "master #18",
...     'address 3c': 'slave #18, scanned "MF=Vaillant;ID=RC C ;SW=0508;HW=6201", loaded "vaillant/3c.rcc.5.csv"',
...     'address 50': 'slave, scanned "MF=Vaillant;ID=VR630;SW=0500;HW=6301", loaded "vaillant/50.vr630.mc.csv"',
...     'address 51': 'slave, scanned "MF=Vaillant;ID=VR630;SW=0500;HW=6301", loaded "vaillant/51.vr630.mc.3.csv"',
...     'address 52': 'slave, scanned "MF=Vaillant;ID=MC2  ;SW=0500;HW=6301", loaded "vaillant/52.mc2.mc.4.csv"',
...     'address 53': 'slave, scanned "MF=Vaillant;ID=MC2  ;SW=0500;HW=6301", loaded "vaillant/53.mc2.mc.5.csv"',
...     "address 70": "master #4",
...     'address 75': 'slave #4, scanned "MF=Vaillant;ID=RC C ;SW=0508;HW=6201", loaded "vaillant/75.rcc.csv"',
...     "address f0": "master #5",
...     'address f5': 'slave #5, scanned "MF=Vaillant;ID=RC C ;SW=0508;HW=6201", loaded "vaillant/f5.rcc.3.csv"',
... }
>>> for circuitinfo in decode_circuitinfos(info):
...     print(circuitinfo)
CircuitInfo(circuit='bai', manufacturer='Vaillant', model='BAI00', swversion='0204', hwversion='9602', address=8)
CircuitInfo(circuit='cc', manufacturer='Vaillant', model='VR630', swversion='0500', hwversion='6301', address=35)
CircuitInfo(circuit='hc', manufacturer='Vaillant', model='VR630', swversion='0500', hwversion='6301', address=38)
CircuitInfo(circuit='hwc', manufacturer='Vaillant', model='VR630', swversion='0500', hwversion='6301', address=37)
CircuitInfo(circuit='mc', manufacturer='Vaillant', model='VR630', swversion='0500', hwversion='6301', address=80)
CircuitInfo(circuit='mc.3', manufacturer='Vaillant', model='VR630', swversion='0500', hwversion='6301', address=81)
CircuitInfo(circuit='mc.4', manufacturer='Vaillant', model='MC2', swversion='0500', hwversion='6301', address=82)
CircuitInfo(circuit='mc.5', manufacturer='Vaillant', model='MC2', swversion='0500', hwversion='6301', address=83)
CircuitInfo(circuit='rcc', manufacturer='Vaillant', model='RC C', swversion='0508', hwversion='6201', address=117)
CircuitInfo(circuit='rcc.3', manufacturer='Vaillant', model='RC C', swversion='0508', hwversion='6201', address=245)
CircuitInfo(circuit='rcc.4', manufacturer='Vaillant', model='RC C', swversion='0508', hwversion='6201', address=28)
CircuitInfo(circuit='rcc.5', manufacturer='Vaillant', model='RC C', swversion='0508', hwversion='6201', address=60)
CircuitInfo(circuit='ui', manufacturer='Vaillant', model='UI', swversion='0508', hwversion='6201', address=21)