Skip to content

USB Serial Plugin

Yurii Solodzhuk edited this page Feb 12, 2026 · 3 revisions

Плагін для USB/Serial зв'язку з автоматичним виявленням портів.

Встановлення

pip install pyqtier[serial]

Використання

# app/widgets/main_window.py
from pyqtier.plugins.usb_plugin import UsbPluginManager, UsbDataProcessor


class MainWindow(PyQtierMainWindow):
    def setup_view(self):
        # Без вибору baudrate
        self.usb = UsbPluginManager()

        # З вибором baudrate
        self.usb = UsbPluginManager(with_baudrate=True, default_baudrate=115200)

        # Підключення до UI
        self.usb.setup_view(self.view.usb_widget, self.view.statusbar)

        # Встановлення обробника даних
        self.usb.set_data_processor(MyDataProcessor())

    def create_behavior(self):
        self.usb.connected.connect(self.on_connected)
        self.usb.disconnected.connect(self.on_disconnected)
        self.usb.connection_lost.connect(self.on_connection_lost)
        self.usb.error_occurred.connect(self.on_error)
        self.usb.data_ready.connect(self.on_data)
        self.usb.raw_data_received.connect(self.on_raw_data)
        self.usb.devices_list_updated.connect(self.on_ports_updated)

    def on_data(self, data):
        print(f"Отримано: {data}")

    def send(self):
        self.usb.send_data({"command": "start"})

Сигнали

Сигнал Опис
connected Успішне підключення
disconnected Відключення
connection_lost Втрата з'єднання
error_occurred Помилка
raw_data_received Сирі дані (bytes)
data_ready Оброблені дані (після Data Processor)
devices_list_updated Оновлення списку портів

Статичні методи

ports = UsbPluginManager.get_available_ports()

Підтримувані baudrate

9600, 19200, 38400, 57600, 115200, 230400, 460800, 921600


<< Плагіни протоколів зв'язку | CAN Plugin >>

Clone this wiki locally