Basic Information:
Printer Model: Modified RigidBot with a Smoothieboard V1
MCU / Printerboard: Smoothieboard V1
Host / SBC: rPI 3b
klippy (2).log (148.2 KB)
Hi all,
I’m running into what appears to be a new-ish issue affecting LPC176x (LPC1769) USB CDC enumeration in recent Klipper MCU builds. I wanted to see if anyone else is seeing the same thing, or if this is already a known issue, or if I’m missing something obvious. This is on an old Smoothieboard V1 5x coupled to an rPI v3b.
Somewhere between v0.13.0‑114‑g841a9ca2f (last known working)
And v0.13.0‑579‑g6416d3e2c (currently broken)
The USB serial interface on LPC176x boards stops enumerating entirely when flashing newly‑built firmware. The same hardware, cable, Pi, and configuration work perfectly when reverting to older Klipper commits. I am currently running an old compile I had of v0.12.0‑85‑gd785b396a, and USB CDC works normally again immediately after re-flashing my MCU.
When flashing a new MCU firmware built from the current Klipper commit, the board powers up but the USB interface fails to enumerate. The Raspberry Pi logs the following every time:
usb 1-1.2: new full-speed USB device number XX using dwc_otg
usb 1-1.2: device not accepting address XX, error -32
usb 1-1-port2: unable to enumerate USB device
No /dev/ttyACM0 appears, and /dev/serial/by-id remains empty.
This happens:
- with the same cable and port that worked seconds earlier
- with the same .config settings
- after a clean rebuild (make clean)
I’ve confirming the firmware does flash properly (SD card renames firmware.bin → FIRMWARE.CUR and the file size changes to match the firmware build). So the MCU is running the new firmware, but the USB peripheral never comes up. When reverting to older commits (e.g., v0.12.0‑85‑gd785b396a), USB CDC enumerates normally and everything works as expected.
usb 1-1.2: New USB device found, idVendor=1d50, idProduct=614e
usb 1-1.2: Product: lpc1769
usb 1-1.2: Manufacturer: Klipper
cdc_acm 1-1.2:1.0: ttyACM0: USB ACM device
I’m using the same LPC1769 settings I Always have, but I even tried 1768 with the same result, here’s my normal build settings
- Architecture: LPC176x
- Processor: LPC1769
- Bootloader offset: 16KiB
- Interface: USB
- No extra options
Host-side Klipper works fine, only the MCU firmware is affected. Reverting to older commits restores USB immediately. Is anyone else having an issue with recent LPC176x MCU firmware builds affecting USB CDC enumeration?
Thanks!
-JT