Mbed studio kills usb ports (OpenSuSE 15.2)

I installed Mbed Studio 1.4.4 under OpenSuSE 15.2. “mbed-studio” starts and I can load a blinky example as per the documentation. However when I plug in a microcontroller device (Raspberry PI pico / RP2040) the computer’s usb ports are all (?) lost after a few seconds. Presumably the system is attempting to locate the RP2040. My mouse and keyboard are connected on completely separate USB ports, and both are disabled when this happens (even keyboard lights are gone, so usb power has been cut). The only way to recover is to unplug the microcontroller board and reboot the computer via the power button. This is repeatable, and I have tried various USB ports for the device (different from the keyboard and mouse channels). On installation, it asked if I wanted to add udev rules, and I responded yes. Nothing under /etc/udev/rules.d has changed, so no new rules were added. Any idea of what is wrong or how to fix it?

Further information:

I added additional udev rules from github’s pyOCD/udev directory as per the installation instructions. The st-link and cmsis rules were already in place as were several others (system + arduino entries). I added picoprobe.rules and vtlinkii.rules. I found that plugging in the RP2040 board will shutdown the usb ports after about 1 minute. This happens outside of Mbed studio so the problem seems related to some rule triggering. The board was programmed with GNU ARM C++ compilers directly in the past, and also ran circuitpython.

Is it possible the microcontroller is somehow defective and drawing too much power? I don’t see anything in any any of udev rules files that should force power off for usb hubs. When plugged in, dmesg will show it detected a device. Its suspicious that it takes O(1 minute) to shut down power to all usb ports. Any other ideas of what could be going wrong?


maybe other information are required:

  • Does this only if Mbed Studio runs on your PC or also without?
  • Did you use any version of Mbed Studio before or this is the first time?
  • Are you trying to run MbedOs on a Raspberry PI pico or what is your goal?

BR, Jan

I just added some more info – 1) I found that loss of usb power happens outside of Mbed studio, so its not that software. 2) This is the first time trying Mbed, but the board was programmed with GNU ARM compilers (C++) in the past, and it also ran circuitpython. 3) Yes, the goal is to run MBedOS on a RP pico.

Note my comment about drawing too much power. (just a guess) The length of time before usb shutdown is fairly long (> 1 minute) the system does not reset until I reboot the computer. The machine is built around an Asus MB. I have never seen any behavior like this before (on this or any other computer).

The RP2040 has a blink program installed (which works when plugged in). I plugged it into a usb power supply (not the computer) and it continues to run blinking away indefinitely. Nothing on the board gets warm. This would seem to indicate that its not drawing too much power, or that anything is wrong with the board.

Maybe removing all usb rules that were installed outside of the main Suse OS would fix the issue.

I went back and generated a new blink program (different rate to be sure it changed). I compiled and installed it on the RP2040 (copy uf2 file to device in mass-storage mode), and it all works correctly. This would disprove the theory of drawing too much power. It seems something must be wrong with the udev rules that triggers when the controller is plugged in (and the mass storage button is not pressed).