description: Advanced UART Serial Terminal and debugging GUI tool (built with Python/CustomTkinter) for hardware engineers to read logs and debug issues.
upstream-relation: I am the upstream developer and publisher
interfaces:
raw-usb:
request-type: auto-connection
reasoning: Required by the underlying `pyserial` library (`serial.tools.list_ports.comports()`) to scan the system's USB hardware trees and enumerate USB interface descriptors (such as `bNumInterfaces`). Without this, retrieving these values returns `None`, crashing the application with a `TypeError` during its initial launch port-scan attempt.
hardware-observe:
request-type: auto-connection
reasoning: Also required by `pyserial` to safely traverse `/sys/class/tty` and udev to list available USB-to-Serial TTL adapters to the user in the GUI dropdown.
serial-port:
request-type: auto-connection
reasoning: Required to actually open the connection to the `/dev/ttyUSB*` or `/dev/ttyACM*` devices to read and write the serial data through the application's graphical interface without requiring users to run manual terminal commands prior to using the app.
This will not be possible, the serial port slots are either provided by a gadget snap and have some randomly picked name by the gadget author or are coming from the hotplug feature in snapd which also makes up a random name (out of the info it has about the device) for the slot, so a generic auto connection can not work for this interface …
Since auto-connect won’t work for serial-port hotplugging, I would like to request Classic Confinement for this snap under the Programming Tools / Hardware Debuggers category instead.
We are happy to review this snap for possible classic confinement. To do so, could you please create a new forum request in the classic confinement subcategory as described here and provide your detailed justification there describing the need for classic. Thank you!