DFU error with NRF Toolbox

Posted on
  • I have an MDBT42q module. Trying to update the firmware before loading my code.

    I've made several attempts on iOS and Android versions to perform a DFU using the nRF Toolbox app (the only way I know how to update the firmware). I consistently get the following error.

    "Error: DFU Service not found"

    I've always updated my boards using this method. Any ideas? Here's a few things I've already tried.

    • Reset bluetooth
    • Tried different devices
    • Tried iOS and Android
    • Toggled on/off "external MCP DFU" in settings.


  • no direct experience with the bare module but like the Puck it needs to be in boot loader mode before the DFU is available. You don’t say if you have others that you can “flash”. The docs page on here may help if this is your only module. In the absence of a button you need to make a wired connection. I don’t know what that is but it is in the docs, I recall reading it, when I was considering the module.

  • As @Ollie says you'll need to be in bootloader mode - you can't just connect to a device running normally and enter bootloader mode. See here for a bit more info: http://www.espruino.com/MDBT42Q#firmware­-updates

    You can enter bootloader mode with some other devices but this was actually a conscious decision. Since Espruino is open source, the 'private key' for firmware uploads has to be public. This means that if you could put the device into bootloader mode without any manual intervention then you'd be able to upload whatever code you wanted to any Espruino device - which would obviously be a huge security issue.

  • Got it! Thanks so much @Ollie and @Gordon. I've done that before completely forgot about that.

    Makes perfect sense on why it was designed like that.

    Appreciate it!

  • Post a reply
    • Bold
    • Italics
    • Link
    • Image
    • List
    • Quote
    • code
    • Preview

DFU error with NRF Toolbox

Posted by Avatar for Tywilliams44 @Tywilliams44