This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS320F28379D: Bootloader Problem via debug mode and Uniflash

Part Number: TMS320F28379D
Other Parts Discussed in Thread: C2000WARE, , TMDSDOCK28379D, UNIFLASH

Hello everyone,

We have a problem about SCI bootloader located in ti\C2000Ware_5_00_00_00\utilities\flash_programmers directory. We are using SCIA GPIO 84, 85 for updating code via USB-ttl.

Also, our board is TI C2000 TMS320F28379D based TMDSDOCK28379D Experimenter's Kit.

TMS320F28379Dhttps://www.ti.com/product/TMS320F28379D

TMDSDOCK28379Dhttps://www.ti.com/tool/TMDSCNCD28379D 

First of all, we configured related switch that is:

for boot from SCI after that reset the board.

Runing this command on terminal (CMD):  serial_flash_programmer.exe  -d f2837xD -k F2837xD_sci_flash_kernels_cpu01.txt  -a blinky_dc_cpu01.txt -b 76800 -p COM7 located in C:\ti\C2000Ware_5_00_00_00\utilities\flash_programmers\serial_flash_programmer directory. This command executed successfully but it took 5 minutes for flashing Kernel + Application code in this baudrate. 

We are trying to increase baudrate but serial_flash_programmer executable didn't work, it stuck in loopback state but not print anything.

What is the problem here? We are using USB-ttl modules that support 1000000 baud for communication.

Also we are tring to port SCIA default pinout GPIO 84, 85 to GPIO 28, 29 for our custom board.  We saw this GPIO Assignments in referance manual:

We can change the default GPIOs for bootloader in MCU via this BMODE register. How can we implement this topic in practical case. If I am not mistaken, we can change this register in debug mode, how this work done? This lower speed SCIA problem, also we want to change the boot peripheral that is SCI. How can we change default bootloader peripheral SCI to USB peripheral?

We saw that in referance manual on Emulation Boot Flow Diagrams:

If I am not mistaken, this block diagram is showing us, related registers to succeed this operation. What I understand, we can connect to target board via JTAG and in debug mode. We must change EMU_BMODE value to 0x0C, EMU_KEY 0x5A and CPU reset via CCS debug environment, and run again application in debug mode and process done. Connect TMDSDOCK28379D Experimenter's Kit’s USB peripheral to Host PC and we should see device name in Device Manager that related USB name. Is this work flow correct? We are doing all this steps and we have installed all USB drivers via C200 ware (Windows Device Manager) but we are not seeing related USB port info in Device Manager. (Unknown USB Device  or Hidden Device).

Last question about this boot mode selection for OTP. We find this block in referance manual;

If Emulation boot flow SCI to USB changes works, we must add related value 0x0C5A to Zx-BOOTCTRL registers to brun (permanently). But how can we realise this topic? Can we use UNIFLASH for this purpose or we must change this register on debug mode?

Thanks for everything! 

Best Regards,

Furkan S. 

  • Hi Furkan,

    >If I am not mistaken, we can change this register in debug mode, how this work done?

    You can test GPIO28/29 operation in debug mode by setting the bootMode register at 0xD00 to 0x815A, as well as setting the kernel to use the SCI Boot mode associated with GPIO28/29.

    >What I understand, we can connect to target board via JTAG and in debug mode. We must change EMU_BMODE value to 0x0C, EMU_KEY 0x5A and CPU reset via CCS debug environment, and run again application in debug mode and process done

    Yes, by doing this you can test in debug the USB boot mode option.

    >Connect TMDSDOCK28379D Experimenter's Kit’s USB peripheral to Host PC and we should see device name in Device Manager that related USB name. Is this work flow correct? We are doing all this steps and we have installed all USB drivers via C200 ware (Windows Device Manager) but we are not seeing related USB port info in Device Manager. (Unknown USB Device  or Hidden Device)

    The flow for the serial flash host programmer is different compared to the USB Flash host programmer. I would consult that project first if your current goal is to use the USB boot mode.

    >How can we change default bootloader peripheral SCI to USB peripheral?

    You would have to change the boot mode table to include USB as a boot option. To attempt this as a permanent solution, you would need to set the boot mode select pins (BMSP0, BMSP1) and boot mode table value to 0x0C5A at Z1-BOOTCTRL address.

    >Can we use UNIFLASH for this purpose or we must change this register on debug mode?

    Programming the OTP is an option within Uniflash settings & utilities for CPU1 Z1-BOOTCTRL.

    Thanks and regards,

    Charles

  • Hello Charles,

    Thanks for your response! We are trying to boot via USB option but it is not working.

    1. Connecting the target with SW1<-- 1 1 and A:SW1<-- 1 1
    2. Opening memory browser and updating the memory location 0xD00 with 0x0C5A
    3. After second step, we connect USB from Micro USB Port on top of F2837xD Control Card to PC.
    4. Then we reset the CPU via CCS (Fig-1).
    5. Pressing run button on CCS.

    Fig-1. CPU Reset Command

    Fig-2. Memory Browser

     Fig-3. Device Manager

    Thanks for everything!

    Best Regards,

    Furkan S.

  • There is an update for USB Boot. I can see our TMS320F28379D in device manager but it is Unknown USB Device (Fig-4). This output is only seen with F2837xD_usb_flash_kernels_cpu01.When we attempted the simple LED blink example for USB boot, the 'Unknown USB Device' does not appear as shown in Fig-4.

     Fig-4. Unknown USB Device in Device Manager

    Unknown USB Device Information

    Device USB\VID_0000&PID_0002\6&8bfbd&0&4 was configured.

    Driver Name: usb.inf
    Class Guid: {36fc9e60-c465-11cf-8056-444553540000}
    Driver Date: 06/21/2006
    Driver Version: 10.0.19041.4046
    Driver Provider: Microsoft
    Driver Section: BADDEVICE.Dev.NT
    Driver Rank: 0xFF0000
    Matching Device Id: USB\DEVICE_DESCRIPTOR_FAILURE
    Outranked Drivers: usb.inf:USB\DEVICE_DESCRIPTOR_FAILURE:00FF2000
    Device Updated: false
    Parent Device: USB\VID_05E3&PID_0610\5&2eda7e1e&0&1

    Thanks!

    Best Regards,

    Furkan S.

  • Furkan,

                If your original issue is solved and you have a new issue, please open a new thread with an appropriate title. Not only does this help in routing your query to the correct expert quickly, it also helps other users search for similar issues in the future.

  • Hello Hareesh,

    Our issue is not solved and we are waiting. Thanks for your advice.

    Best Regards,

    Furkan S.

  • Furkan,

       If your original issue is resolved, please close this thread and post a new one. My understanding is that your original issue pertained to SCI but your new issue pertains to USB. If so, these are two different issues and should not be discussed in the same thread. Please let me know if my understanding is incorrect.

  • Okay, I will open new issue for USB Bootload. Thanks Mr. Hareesh.
    Best Regards,

    Furkan S.