• I've updated the firmware using nRF Toolbox. When I pair to the chrome IDE I get the following error after it attempts to connect. I also attached a screenshot.

    WARNING: No result found for "process.env" - just got ""
    ERROR: [notify_error] Unable to retrieve board information. Connection Error?
    Device found {"portName":"Wave AD2833"}
    [success] Connected to Web Bluetooth, Wave AD2833 (No response from board)

    Connected to Web Bluetooth, Wave AD2833 (No response from board)

    The second screenshot shows the errors I get when go ahead and try to send the code. It says the firmware is pre-1v96 but it's not. It's 2.01.

    I've tried a hard reset and it doesn't seem to work. The green light stays lit which is probably from our firmware.

    This is a MDBT42Q module built into our custom PCB that's made by macro fab. Also, we had 8 other boards that connected and uploaded successfully, which is why this is so puzzling.

    Is there another reset option beyond the 5 second hard reset I could try? Any other thoughts? Thanks in advance.


    2 Attachments

    • Screen Shot 2019-03-28 at 12.15.10 PM.png
    • Screen Shot 2019-03-28 at 12.17.35 PM.png
  • Hi - so you renamed your MDBT42 to Wave AD2833 in the code? My guess would be that your code does something that either takes hold of or breaks the Bluetooth UART connection. The IDE isn't seeing a response to its query so it is assuming an old firmware - realistically you're not going to get any luck out of the module connecting straight with the IDE like that.

    ... potentially it could just be a hardware issue - if the MDBT42 wasn't powered correctly it might be getting just enough power to advertise, but not to sustain a connection. I think that's probably unlikely, but I have had it happen.

    Do you have a button connected between D0 and VCC (or a way to connect D0 to VCC?) that you used for the hard reset? If that works then you really should be able to just hold it and boot without loading any of the saved code - and it should appear as MDBT42... again.

    Even if somehow that doesn't work you should be able to short-press to enter DFU. When that's done you can upload a new firmware and then the new firmware will automatically ignore anything saved with save() - if you saved with 'save on send' then it'll still load it though

  • Thanks, @Gordon.

    Unlikely that it's power since all the other boards were powered the same way, so it's good to know that it's probably not a hardware issue.

    We do have a reset button. I can use it successfully with the short press to update the firmware, but the 5-second press doesn't work unless I'm able to connect the IDE and run reset(true) first. Of course I can't do that since it won't connect to the IDE.

    Can you clarify what mean by "If that works then you really should be able to just hold it and boot without loading any of the saved code - and it should appear as MDBT42... again." - Is this different from holding it while I power it on for a hard reset?

    I have tried uploading new firmware but that didn't change anything. Probably because we had 'save on send' set to flash - execute code at boot. even after reset.

  • Unlikely that it's power since all the other boards were powered the same way

    It might still be worth checking the VCC voltage - since it's a small production run it might be one component isn't connected properly.

    Can you clarify what mean...

    The 'hard reset' - a long (~5s) press at boot should boot without loading any of the previously saved code, so the device will advertise as it came before (MDBT42...) and should work again until the next power cycle. It won't remove any of the saved code on MDBT42 afaik, but it should still allow you to connect with the IDE and issue that reset().

    Probably because we had 'save on send' set to flash - execute code at boot. even after reset.

    In that case it may still get loaded, regardless of the button press state. That's going to make your life really painful.

    One more option is to attempt to connect using the UART pins which may still work even if the code you uploaded somehow messed up bluetooth: http://www.espruino.com/MDBT42Q#pinout - but they may not be brought out on your board.

    You could also connect using an SWD programmer if you have those pins available and erase everything that way as well.

    Potentially there might be a way to have a specially formed DFU upload that erased all the saved code in the device as well, but I don't have one of those available at the moment.

  • Just to confirm - saving as execute code at boot, even after reset will mean the hard reset doesn't work. I should probably make it come with a warning as it was only really intended for very specific use cases.

  • Very helpful - thank you!!

    If I discover anything else I'll keep the forum updated.

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

MDBT42Q - IDE is "Unable to Retrieve Board Information"

Posted by Avatar for Tywilliams44 @Tywilliams44

Actions