This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Cortex-m SW device not found

Hello, I am using the Dialog Semiconductor DA14531 Tiny module which I programmed with the SDK6.0.16.1144 from DA14531 - SmartBond  Ultra-Low Power Bluetooth® 5.1 System-on-Chip | Renesas by following their getting started tutorial. I am using the Keil uvision5 software and opened the "project/target_apps/ble_examples/ble_app_peripheral/Keil5/ble_app_peripheral" project.

With my ble module plugged in (through USB), I compiled the project in Keil5, started 'debug' mode and started 'run code execution' successfully and I could detect the ble module from my smartphone.

Next, I used the SmartSnippets Toolbox and burned the hex file (I got from compiling the ble_app_peripheral project from Keil5) to the device and received a 'burning was successful' prompt.

The problem started when I made some changes to the ble_app_peripheral project and wanted to test it in the device, when i tried to start debug mode again, Keil5 gave me a 'cortex-m sw device not found' error message (problem persists with the unchanged project as well).

And when I tried the SmartSnippets Toolbox, the software couldn't detect any device

The pictures below are of the device I am using:

I apologize for the bad picture quality; I do not have a good camera. I think the pin connections are all good because before flashing the device, it was running fine.

And the error messages are attached here:

I found this tutorial later on and I fear the problem arised because I did not follow these steps.

OTP Tutorial:

16. OTP Programming — DA145XX Tutorial SDK Getting started (

Does anyone have any idea what I can do, I am stuck with this at work.

Thank you once again.

  • Hello Mewan,

    I am not familiar with this device. But if you wrote your program into the OTP memory, then, according to the "Note" in the "OTP Tutorial", SWD is disabled:

    The ROM based bootloader on the DA14531 DOES NOT enable the SWD(19.serial wire Debug) interface when loading an application from OTP to RAM. This means that, after programming your application into OTP on the DA14531, you will no longer be able to access the device using the SWD interface.

    So I guess in this case, there is probably no way out. You might check with the device manufacturer, if there are still other options to access the device and maybe continue debugging programs in RAM. Else, you need to switch to a new device.