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.

MSP432E401Y: use MSP432E401Y on CC1352P7-4 kit as MCU : test timer led example

Part Number: MSP432E401Y
Other Parts Discussed in Thread: UNIFLASH, EK-TM4C123GXL

Hi,

I have an LP-CC1352P7-4 launchpad kit.This board also has an MSP432E401Y chip which is used as a debugger chip.

I want to use that chip as a standalone MCU to try the timer led example( modified to toggle LEDs on PD2 and PD3 pins).

Not able to flash code into it. Please see the snapshot( including picture of the launchpad kit)

SDK used: simplelink_msp432e4_sdk_4_20_00_12

What I am doing wrong?

Thanks

Karthik

  • This board also has an MSP432E401Y chip which is used as a debugger chip.

    I want to use that chip as a standalone MCU to try the timer led example( modified to toggle LEDs on PD2 and PD3 pins).

    The MSP432E401Y chip on the LP-CC1352P7-4 is loaded with a XDS110 debug probe firmware. This chip's sole purpose is a debug probe. You cannot use it as a general purpose MCU for evaluation.  If you want a general purpose MCU like MSP432E, you can refer to these low cost LaunchPads like https://www.ti.com/tool/EK-TM4C123GXL or  https://www.ti.com/tool/EK-TM4C1294XL. You could purchase the https://www.ti.com/tool/MSP-EXP432E401Y Lauchpad too but at a slightest higher cost. 

  • Hi Charles,

    I understand its purpose.  I wanted to test something for which I want to load an application and see how it behaves.

    Technically, is it possible to reflash it using Uniflash? or any other procedure?

    Thanks

    Karthik

  • I guess you are willing to sacrifice that debugger and accept you might brick it in the process!
    I know nothing about that board, but I assume the processor has had some protection fuses set - you might try a full reset described here:-
    https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1051754/msp432e411y-reserving-jtag-ports-in-pinmux-sysconfig
    That unlocked some JTAG pins for me but I don't know if it will reset absolutely everything. If it does work, it will erase the debugger app, and clear the MAC address.

    If that works, then the processor should boot into its ROM bootloader which, I believe, will accept code from various different comms channels (Ethenet, UART, CAN, USB). I believe it takes the first thing that looks like it's talking. You will have to see which channels can be got at on that board. Or, you might be able to get to its JTAG pins.
    Happy hacking!

  • Hi Jim,

      Thanks for chiming in here and many other posts. I really appreciate it.  Just one note of caution for the poster, not only the board is rendered useless to debug his target chip on the board, the MSP432E on the board has no connection to any of the connectors. He can load a blinky code or PWM code but he can't observe it on the board because most of the MSP432E GPIO pins are unconnected except for those that are solely intended for XDS110 implementation. 

  • Hi Charles,

    I am trying to load an application that can blink LEDs connected to PD2 and PD3 pins of this chip. Not controlling anything else.

    So, I am keen to know the procedure to load such application on this chip.

    Since, bootloader would be intact, can't I roll back the chip with debugger functionality by loading the firmware available at the following:

    C:\ti\ccs1200\ccs\ccs_base\common\uscif\xds110)?

    Thanks

    Karthik

  • Hi Karthik,

      I'm not family with CC1352P7-4 LaunchPad and neither XDS110 in details.  All I can say is that you are risking yourself doing so and you may not be able to restore its XDS110. The CC1352P7-4 costs much more to replace if you render it useless compared to purchasing a cheaper EK-TM4C123GXL LP for which you can use as a general purpose MCU to develop various applications. Even if you somehow get the CC1352P7-4 LaunchPad to load a blinky program to blink PD2 and PD3, you are only limited to these two pins and nothing more. 

      There is a document for XDS110 as to how to restore the flash bootloader and the firmware in event that is unknown and however rare where the XDS110 is bricked. There is no JTAG interface to load the bootloader and firmware. Everything has to be done through the MSP432E's USB interface. In order to use the ROM bootloader on the MSP432E, you must first erase the flash content on it. How would you do that? 

     Finally, we will not support you if you intentionally brick the XDS110 and unable to restore it knowing all the warmings I have given you here. 

  • Hi Charles,

    I understand the risks. Thanks for pointing it out explicitly. I don't intend to bother you guys if the chip fails.

    My query was very simple. I just need a mechanism to load code into MSP432. How do I do that?

    On a side note, I have a custom board designed with MSP432 as an on-board debugger unit and CC2652 target chip.

    Unfortunately, I am not able to debug or flash firmware into CC2652 chip.

    Thanks

    Karthik

  • I don't think there is a way to do it. I will forward your question to the XDS110 expert. 

  • Karthik, I guess you could put the MSP432 in DFU mode using the xdsdfu utility and load firmware using that interface. There are various DFU utilities available you might find useful. In the same folder as xdsdfu you will find a pdf document explaining how to recover a bricked MSP432.

  • Hi Andy,

    I am using Uniflash tool to download the code into the chip.

    (1) The *.out file executed fine.

    (2) The *.hex file,though the Uniflash tool shows successfully downloaded, the code wont execute.

    What is the reason?

    Thanks
    Karthik

  • I am using Uniflash tool to download the code into the chip.

    You mentioned you are using a LP-CC1352P7-4. What kind of physical connection to the MSP432 on the launchpad did you use to have JTAG debug access to it from UniFlash? 

  • Hi Ki,

    To give you the context, I have a custom board. It has an MSP432 chip to be used an onboard debugger.

    I had used another launchpad kit as an external programmer.

    Connection between external launchpad kit and custom board's MSP432 is through a ribbon cable (10 pin connector).

    Thanks

    Karthik

  • To give you the context, I have a custom board. It has an MSP432 chip to be used an onboard debugger.

    I had used another launchpad kit as an external programmer.

    Connection between external launchpad kit and custom board's MSP432 is through a ribbon cable (10 pin connector).

    Ok so if I understand correctly, The JTAG signals on the MSP432 on the customer board is accessible via 10-pin JTAG header which you connect to with the XDS110 out header of the launchpad after removing the jumpers for TDI, TDO, etc and use the launchpad as an external XDS110 probe. You were able to use UniFlash to connect to the MSP432 on the customer board this way and program your application, which was succesful. The issue now is that while the out file runs fine, the hex file does not. If that is the case, then it looks like the hex file was not generated correctly. How was the hex file generated? What parameters were used?

  • Your understanding is absolutely correct.

    I had used the same project to generate the hex file. In CCS there is an option to enable hex utility

    In additon to this, I am facing another issue:

    I was trying to flash XDS110 firmware into MSP432 to make it work like a debugger. I was successful in loading the bootloader bin file. On executing, xds flash utlity, the custom board was in DFU mode. When flashing the firmware binary and a subsequent power cycle of the board, the board does not enumerate at all. I had following instructions given in supporting documents. Nothing worked. Kindly help on this too.

    Thanks

    Karthik

  • I had used the same project to generate the hex file. In CCS there is an option to enable hex utility

    Looks like you simply just enabled the utility with the default settings. Often times you need to set additional parameters depending on the device. Please make sure you pass in the correct additional parameters.

    I was trying to flash XDS110 firmware into MSP432 to make it work like a debugger. I was successful in loading the bootloader bin file. On executing, xds flash utlity, the custom board was in DFU mode. When flashing the firmware binary and a subsequent power cycle of the board, the board does not enumerate at all

    What is the exact MSP432 device on the custom board? Provide the full name including the package informatio (ex: MSP432E401YTPDT).

  • Not sure what else to configure. Any reference to such configuration to properly generate a .hex file?

    Exact part number: MSP432E401YTPDT

    Thanks

    Karthik

  • Not sure what else to configure. Any reference to such configuration to properly generate a .hex file?

    I don't know, as this is beyond my area of expertise. It is something the device experts can suggest. I suggest started another thread for this.

    I did find one thread, though it is for a different MSP432 device:

    https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/692514/ccs-msp432p401r-hex-file-generation-options-for-uniflash/2565666#2565666