Arm Mbed OS support forum

Mbed-tools cannot detect target

Hi Sir/Madam,

My Mbed studio is 1.4.0, mbed-os 6.9. The host OS is Windows 10 Pro.

mbed-tools -v -t detect
No connected Mbed devices found.

If I try mbed cli 1.0:

*mbed detect *
[mbed] No mbed targets were detected on your system.

Mbed studio can recognize the STLink V3 in the Target area. Any idea?

When I debug the file ‘’ in:
C:\ProgramData\Mbed Studio\mbed-studio-tools\python\Lib\site-packages\mbed_tools\cli\

I added a few print:
UsbIdentifier(UID=WindowsUID(4&18c109a3&0), VID=None, PID=None, REV=None, MI=None), is composite False, associated with disk False
UsbIdentifier(UID=WindowsUID(000020580994), VID=‘1366’, PID=‘0101’, REV=None, MI=None), is composite False, associated with disk False
UsbIdentifier(UID=WindowsUID(5&225b7e07&0), VID=‘413C’, PID=‘2113’, REV=None, MI=None), is composite False, associated with disk False
UsbIdentifier(UID=WindowsUID(001a001d3156501320323443), VID=‘0483’, PID=‘374F’, REV=None, MI=None), is composite True, associated with disk True

The bold part is the jlink debugger. The STLink cannot be detected at all. I just try different debuggers

I believe that Mbed doesn’t have any working built-in support for using a J-Link. You will have to use the J-Link command line tools to flash the bin or elf file that got built. Maybe the ST-Link isn’t showing up because there are drivers or Python dependencies missing?

For what it’s worth, mbed-cmake does have built-in support for flashing Mbed projects using a J-Link, and it also works better with flashing custom boards.

Have you installed an ST-Link probe driver?
According to the description this one should work.

Thanks for suggestions. I installed drivers , it is not working.

The STLink V2 and V3 cannot be detected…

Install the STM32CubeProgrammer. In the ST-LINK configuration group check the Serial number. If it shows No ST-LINK detected then replacement of the USB cable or using other USB socket on your computer might help. Try other NUCLEO board(s), if available.


Mbed Studio can recognize the device and get the serial number immediately. (I think it uses the code path of pyocd)

mbed-tools detect cannot. (It uses its own code path)

I do not think STM32CubeProgrammer helps. But I will have a try later.


On my system mbed detect works even when there is no path to the mbed tools. It is able to detect the connected target, however, with limited information:

zoli@zoli-ubuntu:~$ mbed detect
[mbed] Working path "/home/zoli" (directory)
[mbed] WARNING: The mbed-os tools were not found in "/home/zoli". 
       Limited information will be shown about connected targets/boards
[mbed] Detected "NUCLEO_F446RE" connected to "/media/zoli/NODE_F446RE" and using com port "/dev/ttyACM0"

After moving to the mbed-os directory the same command returns:

zoli@zoli-ubuntu:~$ cd src/arm/sys/mbed-os-6.9.0/
zoli@zoli-ubuntu:~/src/arm/sys/mbed-os-6.9.0$ mbed detect
[mbed] Working path "/home/zoli/src/arm/sys/mbed-os-6.9.0" (program)

[mbed] Detected NUCLEO_F446RE, port /dev/ttyACM0, mounted /media/zoli/NODE_F446RE, interface version V2J37M26:
[mbed] Supported toolchains for NUCLEO_F446RE
| Target        | mbed OS 2 | mbed OS 5 | uARM |    IAR    |    ARM    |  GCC_ARM  |
| NUCLEO_F446RE |     -     | Supported |  -   | Supported | Supported | Supported |
Supported targets: 1
Supported toolchains: 3

I trust you :grinning:.

However, you are using Ubuntu, while I am using Windows.