Sscom English Version Apr 2026

def receive_data(self): while self.running and self.serial_port and self.serial_port.is_open: try: if self.serial_port.in_waiting: data = self.serial_port.read(self.serial_port.in_waiting) if data: self.display_received(data) except Exception as e: print(f"Receive error: {e}") break time.sleep(0.01)

def send_text_data(self): if not self.serial_port or not self.serial_port.is_open: messagebox.showerror("Error", "Port not opened.") return data = self.send_text.get("1.0", tk.END).encode('utf-8') self.serial_port.write(data) sscom english version

def send_hex_data(self): if not self.serial_port or not self.serial_port.is_open: messagebox.showerror("Error", "Port not opened.") return hex_str = self.send_text.get("1.0", tk.END).strip() # Remove spaces, newlines hex_str = ''.join(hex_str.split()) try: data = bytes.fromhex(hex_str) self.serial_port.write(data) except ValueError: messagebox.showerror("Hex Error", "Invalid hex string (e.g., '01 AB CD')") def receive_data(self): while self

tk.Label(settings_frame, text="Port:").grid(row=0, column=0, sticky="w") self.port_combo = ttk.Combobox(settings_frame, values=self.ports, width=15) self.port_combo.grid(row=0, column=1, padx=5) if self.ports: self.port_combo.current(0) tk.END).strip() # Remove spaces