Skip to content

Allow by-path addressing when flashing Klipper firmware #696

@Shobai-Original

Description

@Shobai-Original

Is your feature request related to a problem? Please describe

Context: using multiple 32-bit Creality boards, both in multi-instance installations and in multi-mcu configurations, where Creality used CH431 ICs rather than native USB. E.g. v4.x, Ender 3 S1, etc: these all enumerate to the same by-id string, " /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 ".

Image

Issue: when attempting to flash firmware using the KIAUH options to make use of stm32flash, when it comes time to select the board to flash only one device will be listed (the most-recently-plugged-in device) because by-id addressing is used.

Describe the solution you'd like

"ls /dev/serial/by-id/" will list only one entry in the CH431 format (" /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 ") when multiple boards are connected to the host, but "ls /dev/serial/by-path/" will list additional entries for each board. "Ls /dev/serial/*" will show both lists.

For instances where the magic string " /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 " is found allow the user to select by-path addressing to select the board they want to flash. Include suitable warnings as required.

Describe alternatives you've considered

Alternatively, allow by-path addressing as an option regardless of whether the magic string is found.

Additional information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions