fix dual chan wip

This commit is contained in:
Eduardo 2026-05-11 13:30:34 +02:00
parent accf5dc72b
commit 3e57f4b559
4 changed files with 20 additions and 7 deletions

View File

@ -19,7 +19,7 @@ second_leak_test: present
barcode_recipe_selection: present
external_flush_blow: present # EXTERNAL BOX CONTROLLING MULTI-CHANNEL TEST (IF PRESENT), BLOW-CLEANING AND EXTERNAL FLUSH
dual_channel: present
freefall: present # Added freefall setting
freefall: absent
#fixture_id: present
[tecna_t3]
@ -56,7 +56,7 @@ blow_led:7 # CLEAN INDICATOR
ch1_led:6 # CHANNEL 1 ACTIVE INDICATOR
ch2_led:5 # CHANNEL 2 ACTIVE INDICATOR
flush_led:4 # FLUSH INDICATOR
first_output: 8 # Added first_output for freefall
#first_output: 8 # Added first_output for freefall
[recipe]
recipe_name_field: codice_ricetta

View File

@ -1122,7 +1122,8 @@ class Test(Widget):
# Process any {M43:X:Y} patterns in the barcode format
processed_barcode_format = self.process_m43_patterns(self.barcode_format, context)
formatted_barcode = processed_barcode_format.format(**context)
if processed_barcode_format is not None:
formatted_barcode = processed_barcode_format.format(**context)
context['BCODE'] = formatted_barcode
self.printed_barcode = formatted_barcode
if self.archived is not None:

View File

@ -53,9 +53,11 @@ class Test_Leak(Test_Test):
def start_test(self):
# 1. HANDLE FREEFALL SPECIFIC OUTPUTS
if self.step.step_type == "test_freefall_leak":
hardware_config = self.config.get("hardware_config", [])
if self.step.step_type == "test_freefall_leak" and hardware_config.get("freefall") == "present":
self.set_digital_out("first_output", 1, component_name="digital_io_flush_blow")
else:
self.log.info("Skipping Bit 8: Freefall hardware is absent.")
# 2. PRINT LABELS IF NECESSARY
if self.step.step_type == "leak_1":
self.parent.print_extra_labels()

View File

@ -236,8 +236,18 @@ class Test_Test(Widget):
return
def resizeEvent(self, event=None):
if hasattr(self, "img_l"):
self.img_l.setPixmap(self.img.scaled(self.img_l.width(), self.img_l.height(), Qt.KeepAspectRatio, Qt.SmoothTransformation))
# 1. Check if the label widget exists
# 2. Check if the image attribute has been initialized
# 3. Check if the image is not None
if hasattr(self, "img_l") and hasattr(self, "img") and self.img is not None:
# Ensure the label has a valid width/height to avoid scaling errors
if self.img_l.width() > 0 and self.img_l.height() > 0:
self.img_l.setPixmap(self.img.scaled(
self.img_l.width(),
self.img_l.height(),
Qt.KeepAspectRatio,
Qt.SmoothTransformation
))
def challenge_admin(self, info):
if not self.admin_challenged: