DFU Zephyr using USB

Hello,

In my application I'm using NORA B106 and I would like to update the firmware using USB.

In my device there isn't any FTDI and I want to use the USB layer available in Zephyr.

Can you help me to understand what are the steps to implement the application?

I think that I need to : 

  • Enable the usb software module using Kconfig ( I found the following example)
  • Install the driver in Windows to recognize the device

Can I use Zadig?

I tried but no Virtual COM has been detected

  • Flashing the software using dedicated tool.

Thank you a lot for your support.

MP

Parents Reply
  • Hello Vidar,

    I found some trouble with driver installed with Zadig but I solved and finally using your example with a small adjastment for button to enter in DFU mode I can recognize the device in device manager.

    Thank you very much.

    Then, I created a new project (based on your) where i turned on a led when button is pushed.

    Practically I used the same project shared but I updated the main.c file and updated the versioning:

    CONFIG_MCUBOOT_IMAGE_VERSION="1.1.0+0"
    So, I started the DFU procedure suggested after entering in DFU mode:
    The procedure seems work but flash memory is not updated.
    Versioning not updated and application not updated. 
    At the next power on, led is not turned on.
    I used the bin file app_update.bin (means signed variant) where I suppose that creation of public or private keys is not necessary for development phase.
    Zephtr should be create them automatically.
    Anyway, I tried also to generate them (following this guide) and updating the prj.conf but with negative result.
    Do you have some suggestion?
    Have I miss something?
    Thank you again.
Children
Related