General Category > Discussion - MCU

Can one program D2xx example using DFU? Answer: YES

(1/2) > >>

Rayman:
I'm just starting with FT93x...

Trying to program the "D2XX Example UART Bridge" example over USB using DFU...

I think I followed the directions in the video, but I get this error message:
"The binary file contains D2XX section.  DFU only allows firmware update.  The binary file is incompatible".

Does this mean that any program using D2XX cannot be programmed over DFU?

BRT Community:
Hello,

There are two ways to program the FT9xx MCUs with custom firmware using the FT9xx Programming Utility:

• Using the UMFTPD2A debugger/programmer module
• Using the USB DFU interface via the USB device interface (no need for the UMFTPD2A)

USB DFU programming can be a good option for production or field programming, since the user simply needs to plug the USB device port into the PC and there is no need to connect via the UMFTPD2A. It's not recommended for test and development stage of a project, since the USB DFU interface needs to be available in the application firmware. programming a device without this interface would mean the USB DFU interface is not available for subsequent programming.

Note the .bin file must be prepared before it can be used for DFU programming.
More detail on the DFU Programming options can be found within the FT9xx Programming Utility’s About --> Help menu.
The Add/Customize DFU-suffix (DFU binary) option provides this functionality.

However, if the application code doesn't include a USB DFU interface, it will not be available after programming.
More information can be found on the USB DFU interface in AN_365 FT9xx API Programmers Manual.
The GPIO DFU example in AN_360 FT9xx Example Applications is a good place to learn about this.

Best Regards,
BRT Community

Rayman:
Thank you.  I did figure out today how to program the "GPIO DFU" example using the DFU interface.

I changed this line in the example so I didn't have to mess with I/O pins or UART pins:
volatile int trigger = 1;//RJA Force DFU on startup 0;

However, I'm still not able to program the D2XX example over the DFU interface.
Still getting the error message described in top post.
Is it possible that D2XX code cannot be programmed over DFU?

BRT Community:
Hello,

There are no problems programming the D2XX Example 1 over DFU. You must prepare the .bin file first as described in my original post.

Here's some screenshots of the test I performed and it programs ok over USB DFU:





If you are seeing "The binary file contains D2XX section.  DFU only allows firmware update.  The binary file is incompatible".
Click on back, and reselect the DFU interface, and then it will successfully program.
I'm looking into this and whether it's a bug with the utility or software.

Best Regards,
BRT Community

Rayman:
Thank you.  I just tried this again and it worked!

I'm going to test on one of the other computers I was working on to see if it's something with the computer.
I also have this issue of the programmer utility not working when launched from Eclipse and it may be something to do with that...

Anyway, I'm glad that DFU programming with D2XX is possible!

Navigation

[0] Message Index

[#] Next page

Go to full version