wip
This commit is contained in:
parent
8d96c770db
commit
78ed0c7ebd
@ -34,6 +34,9 @@ printer:
|
|||||||
[tecna_t3]
|
[tecna_t3]
|
||||||
port: COM3
|
port: COM3
|
||||||
baudrate: 115200
|
baudrate: 115200
|
||||||
|
admin_pin: 603
|
||||||
|
modify_pin: 603
|
||||||
|
select_pin: 603
|
||||||
|
|
||||||
[neo_pixels]
|
[neo_pixels]
|
||||||
port: COM1
|
port: COM1
|
||||||
|
|||||||
@ -12,12 +12,32 @@ class TecnaMarpossProvasetT3(ModbusComponent):
|
|||||||
def __init__(self, config=None, name=None, period=1, lazy=True, paused=False, threaded=True):
|
def __init__(self, config=None, name=None, period=1, lazy=True, paused=False, threaded=True):
|
||||||
super().__init__(config=config, name=name, period=period, lazy=lazy, paused=paused, threaded=threaded, registers=registers)
|
super().__init__(config=config, name=name, period=period, lazy=lazy, paused=paused, threaded=threaded, registers=registers)
|
||||||
|
|
||||||
|
pin_registers = {
|
||||||
|
"admin_pin": "PASSWORD: Administrator", # was 1909
|
||||||
|
"modify_pin": "PASSWORD: Modify program", # was 0
|
||||||
|
"select_pin": "PASSWORD: Select program", # was 0
|
||||||
|
}
|
||||||
|
|
||||||
def config_changed(self):
|
def config_changed(self):
|
||||||
super().config_changed()
|
super().config_changed()
|
||||||
# self.set_measure_units()
|
self.pins = {
|
||||||
|
"admin_pin": self.config.get("admin_pin", None),
|
||||||
|
"modify_pin": self.config.get("modify_pin", None),
|
||||||
|
"select_pin": self.config.get("select_pin", None),
|
||||||
|
}
|
||||||
|
self.unlock_tecna()
|
||||||
|
self.set_measure_units()
|
||||||
self.units = self.get_measure_units()
|
self.units = self.get_measure_units()
|
||||||
self.log.info(f"units: {self.units}")
|
self.log.info(f"units: {self.units}")
|
||||||
|
|
||||||
|
def unlock_tecna(self, **kwargs):
|
||||||
|
pins = self.pins.copy()
|
||||||
|
pins.update(kwargs)
|
||||||
|
for pin_name, register in self.pin_registers.items():
|
||||||
|
pin = pins[pin_name]
|
||||||
|
if pin is not None:
|
||||||
|
self.write(register, pin)
|
||||||
|
|
||||||
_pressure_units = {"mH2O": 0, "mbar": 1, "kPa": 2, "mmHg": 3, "inH2O": 4, "psi": 5, "mmH2O": 6, } # (se fondoscala <=6 bar)
|
_pressure_units = {"mH2O": 0, "mbar": 1, "kPa": 2, "mmHg": 3, "inH2O": 4, "psi": 5, "mmH2O": 6, } # (se fondoscala <=6 bar)
|
||||||
_leak_units = {"mmH2O": 0, "mbar": 1, "Pa": 2, "mmHg": 3, "inH2O": 4, "psi": 5, }
|
_leak_units = {"mmH2O": 0, "mbar": 1, "Pa": 2, "mmHg": 3, "inH2O": 4, "psi": 5, }
|
||||||
_leak_flow_units = {"cm3/min": 0, "cm3/h": 1, }
|
_leak_flow_units = {"cm3/min": 0, "cm3/h": 1, }
|
||||||
@ -133,9 +153,6 @@ class TecnaMarpossProvasetT3(ModbusComponent):
|
|||||||
recipe_name = recipe.spec["part_number"][:16].encode("ascii")
|
recipe_name = recipe.spec["part_number"][:16].encode("ascii")
|
||||||
recipe_name += b"\x00" * (16 - len(recipe_name))
|
recipe_name += b"\x00" * (16 - len(recipe_name))
|
||||||
recipe = {
|
recipe = {
|
||||||
"PASSWORD: Administrator": 603, # was 1909
|
|
||||||
"PASSWORD: Modify program": 603, # was 0
|
|
||||||
"PASSWORD: Select program": 603, # was 0
|
|
||||||
"INSTRUMENT SETTING: Various flags": 0b0000000000000000,
|
"INSTRUMENT SETTING: Various flags": 0b0000000000000000,
|
||||||
**{719 + i: (recipe_name[i * 2 + 1] << 8) + recipe_name[i * 2] for i in range(8)},
|
**{719 + i: (recipe_name[i * 2 + 1] << 8) + recipe_name[i * 2] for i in range(8)},
|
||||||
"Selection number of test table on which you intend to work": table,
|
"Selection number of test table on which you intend to work": table,
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user