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.

LP-AM243: Unable to get the LP-AM243 LaunchPad to work, always LD9 is lit

Part Number: LP-AM243
Other Parts Discussed in Thread: TUSB320

I am unable to get the LP-AM243 Launchpad to do anything. When I connect power from my laptop or from a 5v 3Amp Power Supply (which I use with my Raspberry PI), then the Red LED 9 lights up and remains lit.

I have tried all the recommended settings for the Boot Mode Selection, but no matter what I do, the Red LED 9 remains lit.

Nothing is sent out of the UART and if I try to connect to the board from Code Composer Studio 11.0, then I get the following error:

Error connecting to the target:
(Error -1170 @ 0x0)
Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK).
(Emulation package 9.6.0.00172)

I have numerous TI evaluation boards, but this is the first time that the out of the box experience is disappointing.

  • Hi Mark,

    First of all, you will need to download and install MCU+ SDK 8.1.0.36 from MCU-PLUS-SDK-AM243X_08.01.00.36 | TI.com

    Then follow the instructions in  AM243x MCU+ SDK: EVM Setup (ti.com)

    Best regards,

    Ming

  • I have done that, but as I mentioned, no matter what I do, the LED 9 remains lit indicating a power supply issue.

  • Hi Mark,

    I am using a Raspberry Pi AC Adaptor 5.1V 3A (USB type C). If you are using the right AC adaptor, then it must be a defect board. You may need to exchange it.

    Best regards,

    Ming

  • This is what I am thinking as well.

  • Hi Mark,

    Can you arrange the exchange from ti.com? Or do you need my help for exchange?

    Best regards,

    Ming

  • I am not sure how to arrange an exchange, can you let me know what I need to do?

  • Hi Mark,

    I will forward your thread to our hardware team for further assistance. They will get back to you soon.

    Best regards,

    Ming

  • Hi Mark,

    Before trying to initiate a return, there are a few more things that we should check first.  Lets start with the following:

    1. Measure 3.3V and 5V rails on the boosterpack header, J1
    2. 0.85V rail at R96 (either side of the shunt resistor is fine) - R96 is located on the top side, between the the upper set of boosterpack headers, right above the silk that says VDD_CORE_0V85
    3. Ensure you are following the correct power on sequencing of starting with an unplugged board, connecting the USB type C 5V, 3A power supply to J10 Board, Power In, then connecting the XDS110 USB to J20.

    Let me know what the measured voltages are and confirm you are following the sequence (and if not, give it a try and see if that helps).  Based on what you see, I may ask for a few more checks to be done.

    Thanks,
    Mike

  • I don't currently have access to a multimetre to be able to measure the voltage, but will on Friday.

  • managed to find a multimetre and was unable to measure any voltage anywhere on the board. Checked that the multimetre worked correctly and it did.

  • Hi Mark,

    Thanks for checking the voltages above,  I have a couple more I would like for you to check if possible:

    • R104 (either side)
    • R107 (either side)
    • R113 (either side)
    • TP53
    • TP39

    All of these are located on the top layer pretty close to the USB connectors.  For a ground reference, you can use the GND pin on the boosterpack header, or TP36 (also near the USB connectors).

    Do you have another LP-AM243 that is known to be working?  If so, can you take the same measurements on the known good board for comparison?

    I appreciate your help in trying to track down exactly which section of the LP is not functioning correctly, so if we have to set up an exchange, we can provide evidence of the board's issues.

    Thanks,
    Mike

  • I managed to measure the voltage on TP39 0v and TP53 5.05v, but my eyes are not good enough to locate and measure the voltage on the resistors.

  • Hi Mark,

    Based on the voltages (or lack thereof), that you are seeing, it seems that the TUSB320 on the LaunchPad is not successfully negotiating the higher power (5V 3A) required by the LP-AM243, which would explain why VUSB_5V0 is measuring as 5V, but all of the other voltage rails are at 0V.  R104 and R107 that I listed in the previous message are connected to the output signals of the TUSB320, and knowing the voltage on these pins would help us confirm if this is the issue or not.

    This image shows where on the board the two resistors are located (circled in blue):

    We have noticed similar issues in the past when power supplies (or USB hosts) or USB type C cables were used that were NOT capable of supporting 5V 3A.  Can you provide a link to the exact power supply you are using and we can help confirm that the supply is rated for the settings the LaunchPad needs.  For the PC connection, please confirm that port on your PC is rated to supply 5V 3A over USB C and that the USB C cable you are using is also rated for 5V 3A.  Please note that the power requirements for the LP are significantly higher than most of the previous LaunchPads we have released at TI.

    We could try replacing your LaunchPad, but if the issue is related to the power being supplied to the LP, then a new LP will have the same issue, so we should rule this out first.

    Thanks,
    Mike

  • The power adapter is model BS-24W0503000DUI and states that the output is 5V 3000mA. The usb c cable is integral to the power adapter, so I am presuming that it must be rated for the same 5V 3A.

  • Hi Mark,

    The images I am seeing of the power adapter you listed show a barrel jack plug and not a USB C.  If yours has the USB C plug built in instead of the barrel jack, I suspect that it still does not have the necessary Power Delivery logic to negotiate the the 5V 3A power delivery over USB C, even if the adapter is rated to be able to deliver the voltage/current.

    USB Type C defaults to the traditional USB power of 5V 0.5A until a higher power is negotiated by the PD (Power Delivery) ports on either end of the connection.  The LP-AM243 uses the TUSB320 to negotiate on it's end, but i suspect the power adapter you are using either does not have a negotiator or if it does, that it is unable to successfully negotiate with the TUSB device.

    I also suspect your connection to you PC is suffering from the same issue of the port on the PC is not able to negotiate to 5V 3A.  Please note that on the PC, you have to use a USB Type C port with PD to be able to negotiate up to 5V 3A.  If you use a USB 2.0 or even a USB 3 port in the traditional USB A form factor with a cable that is USB A on one end and Type C on the other, you will not be able to negotiate up to 5V 3A.

    The LP-AM243 User's Guide references a Belkin USB-C Power Delivery adapter as an option for an external power supply.  Can you try getting one of these, or an equivalent?  The critical characteristics of the adapter are that it has a Type C plug on it and it says "Power Delivery" and 25W which means it negotiate up to 25W of power over the connection.  Another option would be the power adapter for a flagship cellphone released in the last year or so, as it's power adapter is most like USB C PD capable of at least 15W, but you would need to look at it to confirm.

    Thanks,
    Mike

  • my power adapter does have a USB C connector. I have just ordered a 25W Belkin USB-C "Power Delivery" adapter, should get this on Monday. Hopefully it will work.

  • I am surprised that changing the power supply makes a difference, but it does! The red led is now no longer lit and instead I get the three green leds, so that it good and when I then connect the XDS110, another green led lights up. However I am still unable to conect to the board from CCS. I get the following error:

    MAIN_Cortex_R5_0_0: GEL Output: CPU reset (soft reset) has been issued through GEL.
    MAIN_Cortex_R5_0_0: Trouble Writing Memory Block at 0x60100000 on Page 0 of Length 0x7ff0: (Error -1170 @ 0x60101000) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.6.0.00172)
    MAIN_Cortex_R5_0_0: File Loader: Verification failed: Target failed to write 0x60100000
    MAIN_Cortex_R5_0_0: GEL: File: C:\LDRA_Workarea_C_CPP_10.0.2\Examples\Tlps\TICCS\ARM_Workspace\xip_benchmark_am243x-lp_r5fss0-0_freertos_ti-arm-clang\Debug\xip_benchmark_am243x-lp_r5fss0-0_freertos_ti-arm-clang.out: Load failed.
    MAIN_Cortex_R5_0_0: Error: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 9.6.0.00172)
    MAIN_Cortex_R5_0_0: Unable to determine target status after 20 attempts
    MAIN_Cortex_R5_0_0: Failed to remove the debug state from the target before disconnecting.  There may still be breakpoint op-codes embedded in program memory.  It is recommended that you reset the emulator before you connect and reload your program before you continue debugging

  • Hi Mark,

    As mentioned in above, I suspect your USB power sources were not capable of successfully negotiating 5V 3A, so switching to one that does makes sense that the power would start working.

    Regarding the error that you are seeing, there is a known issue on AM243x regarding JTAG and power that requires a specific connection sequence.  The easiest resolution is to ensure you are applying power to the board first (with the JTAG cable NOT connected), then connect the XDS110 USB cable once the board is power up and the power LEDs are all on.  This is highlighted in the LP-AM243 Users Guide at the beginning in Note 2, and again in section 4.15.  Give this a shot and if that doesn't work, let me know and we can try to some other workarounds.

    Thanks,
    Mike

  • Hi Mike, I read about that as well and connected the xds110 usb cable only once the board was powered up, but still get the error message.

    Mark

  • Hi Mark,

    Another test we can do is try to manually issue a JTAG reset, as outlined in the TMDS243GPEVM User's Guide (the TMDS243GPEVM is a sister EVM to the LP-AM243), section 4.1.  You can try both the power cycle by unplugging and replugging the XDS USB cable, and the xds110reset utility.  Please try both of these options and let me know if either of them help.

    Thanks,
    Mike

  • Another thought, what version of CCS are you using, and what is the revision of the LaunchPad and the PCB revision of the board?  You can find the PCB revision in the middle of the board, underneath the TI Logo, last line is "PCB#: PROC109xx", what is the xx?

    Thanks,
    Mike

  • I have PCB# PROC109E2 and am using Code Composer 11.1.0.00011

    I have tried to reset using "xds110reset -a toggle"

    I have tried several example projects, but no matter what I always get the error.

    When the board boots, I get the following output on the serial port

    Starting NULL Bootloader ...

    DMSC Firmware Version 21.5.0--v2021.05 (Terrific Llam
    DMSC Firmware revision 0x15
    DMSC ABI revision 3.1

    INFO: Bootloader_runCpu:147: CPU r5f1-0  is initialized to 800000000 Hz !!!
    INFO: Bootloader_runCpu:147: CPU r5f1-1 is initialized to 800000000 Hz !!!
    INFO: Bootloader_runCpu:147: CPU m4f0-0 is initialized to 400000000 Hz !!!
    INFO: Bootloader_loadSelfCpu:199: CPU r5f0-0 is initialized to 800000000 Hz !!!
    INFO: Bootloader_loadSelfCpu:199: CPU r5f0-1 is initialized to 800000000 Hz !!!
    INFO: Bootloader_runSelfCpu:216: All done, reseting self ...

  • Mark,

    Thank you for the additional information.  I'm trying to get in touch with some folks who did some a bunch of JTAG work on the AM243 to try to help figure out what is going on.  Please give me another day or two to get in touch with them and get a next step figured out.

    Thanks,
    Mike

  • Thanks, I really appreciate the help!

  • Hi Mark,

    Apologies for the delay on a response.  After talking with the experts some and running some tests on hardware here, we had a few more questions to help with the debug:

    How far down the  AM243x MCU+ SDK: EVM Setup (ti.com) process did you get when you started seeing the error?  Also please note when going through these steps that the page supports both AM243 EVMs (the LaunchPad and the GPEVM), so please make sure you are following the instructions for the AM243X-LP.  In the third section (Flash SOC Initialization Binary), can you try to run the Build a Hello World example steps and see if you can successfully program and run the project on the LaunchPad.  If you run into any issues, let me know at which step the issue occurs and what the failure messages are.

    After going through the above, can you try doing the "Test Connection" in the ccxml file?  Please copy/paste the full output here for review, as well as attaching the ccxml file itself.

    Thanks,
    Mike

  • I have followed the instructions and ran the "

    python uart_uniflash.py -p COM<x> --cfg=sbl_prebuilt/am243x-lp/default_sbl_null.cfg" command successfully.
    I changed the bootmode and it printed on the UART as expected
    From CCS, I have created a simple hello world and the CCXML Test Connection passes
    When connecting from CCS, though I get the following error:

    MAIN_Cortex_R5_0_1: GEL Output: CPU reset (soft reset) has been issued through GEL.
    MAIN_Cortex_R5_1_0: GEL Output: CPU reset (soft reset) has been issued through GEL.
    MAIN_Cortex_R5_1_1: GEL Output: CPU reset (soft reset) has been issued through GEL.
    DMSC_Cortex_M3_0: GEL Output: This GEL is currently only supported for use from the Cortex-M3 inside the DMSC.
    DMSC_Cortex_M3_0: GEL Output: Do not run this GEL from any other CPU on the SoC.
    DMSC_Cortex_M3_0: GEL Output: This script sets the first address translation region to [0x8000_0000, 0x0000_0000].
    DMSC_Cortex_M3_0: GEL Output: It also sets the second address translation region to    [0x6000_0000, 0x4000_0000].
    DMSC_Cortex_M3_0: GEL Output: This is consistent with the SoC DV assumptions.
    DMSC_Cortex_M3_0: GEL Output: Configuring ATCM for the R5Fs
    DMSC_Cortex_M3_0: GEL Output: ATCM Configured.
    DMSC_Cortex_M3_0: GEL Output: R5F Halt bits set.
    DMSC_Cortex_M3_0: GEL Output: Configuring bootvectors
    DMSC_Cortex_M3_0: GEL Output: Bootvectors configured.
    DMSC_Cortex_M3_0: GEL Output: Programming all PLLs.
    DMSC_Cortex_M3_0: GEL Output: Programming Main PLL 0 (Main PLL)
    DMSC_Cortex_M3_0: GEL Output: Main PLL 0 (Main PLL) Set.
    DMSC_Cortex_M3_0: GEL Output: Programming Main PLL 1 (Peripheral 0 PLL)
    DMSC_Cortex_M3_0: GEL Output: Main PLL 1 (Peripheral 0 PLL) Set.
    DMSC_Cortex_M3_0: GEL Output: Programming Main PLL 2 (Peripheral 1 PLL)
    DMSC_Cortex_M3_0: GEL Output: Main PLL 2 (Peripheral 1 PLL) Set.
    DMSC_Cortex_M3_0: GEL Output: Programming Main PLL 8 (ARM0 PLL)
    DMSC_Cortex_M3_0: GEL Output: Main PLL 8 (ARM0 PLL) Set.
    DMSC_Cortex_M3_0: GEL Output: Programming Main PLL 12 (DDR PLL)
    DMSC_Cortex_M3_0: GEL Output: Main PLL 12 (DDR PLL) Set.
    DMSC_Cortex_M3_0: GEL Output: Programming Main PLL 14 (Main Domain Pulsar) PLL)
    DMSC_Cortex_M3_0: GEL Output: Main PLL 14 (Main Domain Pulsar PLL) Set.
    DMSC_Cortex_M3_0: GEL Output: Programming MCU PLL 0 (MCU PLL)
    DMSC_Cortex_M3_0: GEL Output: MCU PLL 0 (MCU PLL) Set.
    DMSC_Cortex_M3_0: GEL Output: All PLLs programmed.
    DMSC_Cortex_M3_0: GEL Output: Powering up all PSC power domains in progress...
    DMSC_Cortex_M3_0: GEL Output: Powering up MAIN domain peripherals...
    DMSC_Cortex_M3_0: GEL Output: Powering up GP_CORE_CTL.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_DMSC
    DMSC_Cortex_M3_0: GEL Output: No change needed.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_MAIN_TEST
    DMSC_Cortex_M3_0: GEL Output: Power domain and module state changed successfully.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_MAIN_PBIST
    DMSC_Cortex_M3_0: GEL Output: No change needed.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_EMMC_4B
    DMSC_Cortex_M3_0: GEL Output: Power domain and module state changed successfully.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_EMMC_8B
    DMSC_Cortex_M3_0: GEL Output: Power domain and module state changed successfully.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_USB
    DMSC_Cortex_M3_0: GEL Output: Power domain and module state changed successfully.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_ADC
    DMSC_Cortex_M3_0: GEL Output: Power domain and module state changed successfully.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_DEBUGSS
    DMSC_Cortex_M3_0: GEL Output: No change needed.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_GPMC
    DMSC_Cortex_M3_0: GEL Output: Power domain and module state changed successfully.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_EMIF_CFG
    DMSC_Cortex_M3_0: GEL Output: Power domain and module state changed successfully.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_EMIF_DATA
    DMSC_Cortex_M3_0: GEL Output: Power domain and module state changed successfully.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_MCAN_0
    DMSC_Cortex_M3_0: GEL Output: Power domain and module state changed successfully.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_MCAN_1
    DMSC_Cortex_M3_0: GEL Output: Power domain and module state changed successfully.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_SA2UL
    DMSC_Cortex_M3_0: GEL Output: No change needed.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_SERDES_0
    DMSC_Cortex_M3_0: GEL Output: Power domain and module state changed successfully.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_PCIE_0
    DMSC_Cortex_M3_0: GEL Output: Power domain and module state changed successfully.
    DMSC_Cortex_M3_0: GEL Output: Powering up GP_CORE_CTL done.
    DMSC_Cortex_M3_0: GEL Output: Powering up PD_PULSAR_0.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_PULSAR_0_R5_0
    DMSC_Cortex_M3_0: GEL Output: No change needed.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_PULSAR_0_R5_1
    DMSC_Cortex_M3_0: GEL Output: No change needed.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_PULSAR_PBIST_0
    DMSC_Cortex_M3_0: GEL Output: Power domain and module state changed successfully.
    DMSC_Cortex_M3_0: GEL Output: Powering up PD_PULSAR_0 done.
    DMSC_Cortex_M3_0: GEL Output: Powering up PD_PULSAR_1.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_PULSAR_1_R5_0
    DMSC_Cortex_M3_0: GEL Output: No change needed.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_PULSAR_1_R5_1
    DMSC_Cortex_M3_0: GEL Output: No change needed.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_PULSAR_PBIST_1
    DMSC_Cortex_M3_0: GEL Output: Power domain and module state changed successfully.
    DMSC_Cortex_M3_0: GEL Output: Powering up PD_PULSAR_1 done.
    DMSC_Cortex_M3_0: GEL Output: Powering up PD_ICSSG_0.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_ICSSG_0
    DMSC_Cortex_M3_0: GEL Output: Power domain and module state changed successfully.
    DMSC_Cortex_M3_0: GEL Output: Powering up PD_ICSSG_0 done.
    DMSC_Cortex_M3_0: GEL Output: Powering up PD_ICSSG_1.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_ICSSG_1
    DMSC_Cortex_M3_0: GEL Output: Power domain and module state changed successfully.
    DMSC_Cortex_M3_0: GEL Output: Powering up PD_ICSSG_1 done.
    DMSC_Cortex_M3_0: GEL Output: Powering up PD_CPSW.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_CPSW3G
    DMSC_Cortex_M3_0: GEL Output: Power domain and module state changed successfully.
    DMSC_Cortex_M3_0: GEL Output: Powering up PD_CPSW done.
    DMSC_Cortex_M3_0: GEL Output: Powering up all MAIN domain peripherals done.
    DMSC_Cortex_M3_0: GEL Output: Powering up MCU Domain peripherals.
    DMSC_Cortex_M3_0: GEL Output: Powering up GP_CORE_CTL_MCU.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_TEST
    DMSC_Cortex_M3_0: GEL Output: Power domain and module state changed successfully.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_MAIN2MCU
    DMSC_Cortex_M3_0: GEL Output: No change needed.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_MCU2MAIN
    DMSC_Cortex_M3_0: GEL Output: No change needed.
    DMSC_Cortex_M3_0: GEL Output: Powering up GP_CORE_CTL_MCU done.
    DMSC_Cortex_M3_0: GEL Output: Powering up PD_M4F.
    DMSC_Cortex_M3_0: GEL Output: Powering up LPSC_M4F
    DMSC_Cortex_M3_0: GEL Output: No change needed.
    DMSC_Cortex_M3_0: GEL Output: Powering up PD_M4F done.
    DMSC_Cortex_M3_0: GEL Output: Powering up MCU Domain peripherals done.
    DMSC_Cortex_M3_0: GEL Output: Powering up all PSC power domains done!
    DMSC_Cortex_M3_0: GEL Output:
    DMSC_Cortex_M3_0: File Loader: Verification failed: Values at address 0x00000000 do not match Please verify target memory and memory map.
    DMSC_Cortex_M3_0: GEL: File: C:\LDRA_Workarea_C_CPP_10.0.2\Examples\Tlps\TICCS\ARM_Workspace\gpio_led_blink_am243x-lp_r5fss0-0_nortos_ti-arm-clang\Debug\gpio_led_blink_am243x-lp_r5fss0-0_nortos_ti-arm-clang.out: a data verification error occurred, file load failed.

  • Hi Mark,

    What are the boot switches set to on your board?

    Thanks,
    Mike

  • The ones that were stated in the guide. So 2 and 6.

  • Hi Mark,

    To confirm, you are following the steps to download the program to the LaunchPad as outlined in this page, correct?  https://software-dl.ti.com/mcu-plus-sdk/esd/AM243X/08_01_00_36/exports/docs/api_guide_am243x/CCS_LAUNCH_PAGE.html

    Specifically, make sure after connecting to the target through the Launch Selected Configuration, connecting to the R5 core in the debug window, resetting the CPU, and loading the program through Run -> Load -> Load Program.  Note that this may be significantly different from previous LaunchPads that TI has released due to the nature of the Sitara MCU device.

    Thanks,
    Mike

  • I didn't realise how different it is to debug on this board compared to all the other LaunchPads that I have used. It took me some time to locate the "Launch Selected Configuration", but when I did that, then connect, reset, load I was finally able to debug. Thanks for your help.

  • Mark,

    I'm glad to hear we were finally able to come to a resolution, thanks for letting us know!

    Thanks,
    Mike

  • now I need to work out how to download and run from the command line, so that I can automate tests on the target from the command line, just like I did in this video on YouTube https://www.youtube.com/watch?v=n2-O2z6rMWU

    Thanks again for your help.