embassy-rs / embassy-rs/embassy

USB serial example for RP2040 will work a couple of times then require host machine (MacOS) reboot

Open
#1,663 1 comment 0 reactions 0 assignees View on GitHub
e-rp
Dominant language
Rust
Stars
9.8k
Forks
1.7k
Avg merge
20h 30m
Merged PRs (30d)
178

Description

I'm not able to debug this very well but I'm seeing it as a reproducible thing both in the example code & my code based off of the example code.

### What I'm seeing
- Upload USB Serial code (Pi Pico, upload via `probe-rs` & the pico debug probe)
- Click allow on "Allow USB Device To Connect" warning
- Find the tty via `ls /dev/tty.*`
- `screen` in to it, everything works
- On re-flashing the device neither the warning nor the tty device appears & System Information doesn't list it as a USB device
- When I restart the whole machine the `Allow USB Device To Connect` warning will re-appear and it'll work for a while

Occasionally I've been able to get it work work between flashes but that's not consistent (might be related to `screen` being open during flashing, or the last input over serial being fairly recent, I'm not sure and it's not reliable).

I've tried turning the USB security feature off completely but that doesn't result in a change.
Holding BOOTSEL to get the `RPI-RP2` boot drive will also not work until after a restart.
Physically disconnecting & reconnecting the USB does nothing.

Could be a macOS (Ventura, M1 Pro) issue, but other USB devices seem to all work alright

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.