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.

AM243x-EVM Debug (Error -1170 @ 0x0)

Other Parts Discussed in Thread: LP-AM243, UNIFLASH

Hi,

I'm trying to use the AM243x -EVM.

Test Connection passes without any failures.

Using the SDK example code  "enet_cpsw_tcp_server " 

I'm using XDS110 USB Debug probe 

On debugger start getting 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.11.0.00128)

I've tried to reset the board.

I've tried to reduce the TCLK to 1Mhz - same result.

Please Advice.

Thanks,

Eli

  • Hi Eli,

    A couple of questions:

    1. What version of the board do you have?  There should be a sticker near the LCD screen that says something like "PROC101C(005)" or similar.  Can you let me know what this says?

    2. Have you gone through the EVM Setup as outlined on this page of the SDK Getting Started Guide?  https://software-dl.ti.com/mcu-plus-sdk/esd/AM243X/latest/exports/docs/api_guide_am243x/EVM_SETUP_PAGE.html  Note that the page covers both the LP-AM243 and the AM243 EVM, so make sure you are following the steps for the EVM.

    Thanks,
    Mike

  • Hi Eli,

    Could you please take a look at this page? https://software-dl.ti.com/ccs/esd/documents/xdsdebugprobes/emu_xds_target_connection_guide.html#buffered-case

    The error (Error -1170 @ 0x0) is caused by the inability of the JTAG debugger to access the DAP or one of its ARM subcores. This is usually caused by either a hardware failure on the board or invalid code on the CPU core that causes it to reset itself continuously.

  • Hi Mike,

    I'm using a completely new EVM .

    The previous one I used wasn't lilting the LEDs as described in the PDF - so I ordered and now got a new one.

    Near the LCD it says PROC101(005)

    I've started with the BOOT MODE switches as in the PDF 11011111 00000000.

    After powering up , I have all LEDs besides LED2 (I'm using AM243x) , lit.

    I've pushed the test connection button and got result that all is ok.

    Now I'm starting the debugger and after a short time get the 1170 error.

    I'll try to follow the link you've added.

    Thanks,

    Eli 

  • Hi,

    I've got the second link you've sent.

    I'll try to follow.

    Please explain the process and what is the DAP.

    Thanks,

    Eli

  • Hi,

    I see on the CCS debugger setup MAIN_Cortex_R5_0_0

    Could you please explain what does it mean , I'm I on the correct one ?

    Thanks,

    Eli

  • Hi,

    Now I try with a simple "Hello world" example.

    I read the recommended PDF's but no luck.   (error: 1170 no connection to target)

    When I test the connection, I get:

    [Start: Texas Instruments XDS110 USB Debug Probe]

    Execute the command:

    %ccs_base%/common/uscif/dbgjtag -f %boarddatafile% -rv -o -S integrity

    [Result]


    -----[Print the board config pathname(s)]------------------------------------

    C:\Users\ELI~1.MOR\AppData\Local\TEXASI~1\
    CCS\ccs1230\0\0\BrdDat\testBoard.dat

    -----[Print the reset-command software log-file]-----------------------------

    This utility has selected a 100/110/510 class product.
    This utility will load the adapter 'jioxds110.dll'.
    The library build date was 'Jun 2 2023'.
    The library build time was '12:47:07'.
    The library package version is '9.12.0.00150'.
    The library component version is '35.35.0.0'.
    The controller does not use a programmable FPGA.
    The controller has a version number of '5' (0x00000005).
    The controller has an insertion length of '0' (0x00000000).
    This utility will attempt to reset the controller.
    This utility has successfully reset the controller.

    -----[Print the reset-command hardware log-file]-----------------------------

    The scan-path will be reset by toggling the JTAG TRST signal.
    The controller is the XDS110 with USB interface.
    The link from controller to target is direct (without cable).
    The software is configured for XDS110 features.
    The controller cannot monitor the value on the EMU[0] pin.
    The controller cannot monitor the value on the EMU[1] pin.
    The controller cannot control the timing on output pins.
    The controller cannot control the timing on input pins.
    The scan-path link-delay has been set to exactly '0' (0x0000).

    -----[Perform the Integrity scan-test on the JTAG IR]------------------------

    This test will use blocks of 64 32-bit words.
    This test will be applied just once.

    Do a test using 0xFFFFFFFF.
    Scan tests: 1, skipped: 0, failed: 0
    Do a test using 0x00000000.
    Scan tests: 2, skipped: 0, failed: 0
    Do a test using 0xFE03E0E2.
    Scan tests: 3, skipped: 0, failed: 0
    Do a test using 0x01FC1F1D.
    Scan tests: 4, skipped: 0, failed: 0
    Do a test using 0x5533CCAA.
    Scan tests: 5, skipped: 0, failed: 0
    Do a test using 0xAACC3355.
    Scan tests: 6, skipped: 0, failed: 0
    All of the values were scanned correctly.

    The JTAG IR Integrity scan-test has succeeded.

    -----[Perform the Integrity scan-test on the JTAG DR]------------------------

    This test will use blocks of 64 32-bit words.
    This test will be applied just once.

    Do a test using 0xFFFFFFFF.
    Scan tests: 1, skipped: 0, failed: 0
    Do a test using 0x00000000.
    Scan tests: 2, skipped: 0, failed: 0
    Do a test using 0xFE03E0E2.
    Scan tests: 3, skipped: 0, failed: 0
    Do a test using 0x01FC1F1D.
    Scan tests: 4, skipped: 0, failed: 0
    Do a test using 0x5533CCAA.
    Scan tests: 5, skipped: 0, failed: 0
    Do a test using 0xAACC3355.
    Scan tests: 6, skipped: 0, failed: 0
    All of the values were scanned correctly.

    The JTAG DR Integrity scan-test has succeeded.

    [End: Texas Instruments XDS110 USB Debug Probe]

    But when I look at CCS Debug Configuration I get

    Device Library source - no 'src' folder for AM2434-ALV.   

    Is that a problem - What  should I do ?

    Do I have to change port or something ?  

    Thanks,

    Eli

  • Hi,

    On the CCS script console I see

    Initializing .. (Completed)

    js:> Connecting to DMSC_Cortex_M3_0!
    Connecting to DMSC_Cortex_M3_0!
    Connecting to DMSC_Cortex_M3_0!
    Connecting to DMSC_Cortex_M3_0!

    What is M3 ? 

    Please HELP !

    Thanks,

    Eli

  • Hi Eli,

    The JTAG test connection printout you provided shows the JTAG interface is working fine.  Note the lines that say the integrity tests succeeded.

    With this, I strongly suspect that you have not completed the EVM Setup procedure as outlined in my first post:  https://software-dl.ti.com/mcu-plus-sdk/esd/AM243X/latest/exports/docs/api_guide_am243x/EVM_SETUP_PAGE.html  Can you make sure you complete this procedure and get the expected printouts and messages to the terminal at the correct spots in the procedure?  If not, please provide details on where it is failing and any details you can about the setup you have.

    Thanks,
    Mike

  • Hi Mike ,

    Thank you so much for helping me - I'm lost here !

    I have CCS 12.4.0   with a new Sitara AM243x Evaluation Module PROC101C(005)

    I've  set all the boot switches as in the PDF - to no boot 11000000 and 00000000

    I've  connected the power supply to the board then plugged it to the wall AC power

    I switched the SW1 on - then all LEDs went on , as in PDF.

    I then connected the JTAG j28 connector to the board then to my PC - I saw the connection on PC's device manager as in PDF

    I've tested connection from CCS button - all success !

    I've loaded the "Hello World" example from the SDK (without any changes)

    I've compiled the code then started the debugger.

    After a while it says error 1170. 

    Then I repeated the steps with an external XDS110 debugger connected to 20pin connector on the board.

    Also error:1170.

    I've tried without the *.gel files 

    I've tried from the Debug  Icon

    I've tried to launch from "Target Configurations" then connect target from the debugger

    I've tried 1Mhz TCLK as in some PDFs 

    I've tried xds110reset .exe -a toggle 

    No luck - error: 1170

    Is there something I'm missing here ?

    Thanks,

    Eli

  • Hi Mike,

    I'm using a new EVM - Do I still  have to use Phyton-3 step with the UART - erasing FLASH ?

    Which connection fails and makes error 1170 ?

    Thanks,

    Eli 

  • Eli,

    I'm using a new EVM - Do I still  have to use Phyton-3 step with the UART - erasing FLASH ?

    Yes, you still need to do the python step shown here:

      cd ${SDK_INSTALL_PATH}/tools/boot
      python uart_uniflash.py -p COM<x> --cfg=sbl_prebuilt/am243x-evm/default_sbl_null.cfg
    

    This is important as it initializes the SOC.  Failure to complete this step (and the rest of the procedure outlined in the EVM Setup page) will prevent you from being able to connect to the SoC via JTAG, exactly like what you are seeing.

    One note, I know you said there was a sticker that said "PROC101(005)".  However, I believe there is a letter missing between the "101" and the "(005)".  It should read "PROC101C(005)".  Assuming this is the case, then you actually have an HSFS (High Security Field Securable) device, which needs a different config file to be run by uniflash in the python step.  Instead of the "default_sbl_null.cfg" file, you should specify the "default_sbl_null_hsfs.cfg" file.

    Once you complete the board setup correctly, you will be able to connect to the device via jtag.

    Thanks,
    Mike

  • Hi Mike,

    Thanks for your effort and clarification, I will try it.

    What is the best way to debug using ion board XDS110 or external one or doesn't matter ?

    Eli

  • Hi Eli,

    There is no difference in performance between on board XDS110 and external.  I usually regard the onboard option as "easier" since you just need to connect a USB cable to it, but functionally, there is no difference.

    Thanks,
    Mike

  • Hi Mike,

    Yes you are right my board is "PROC101C(005)" so I'm following the instructions - I type 

    C:\ti\mcu_plus_sdk_am243x_08_06_00_43\tools\boot>python uart_uniflash.py -p COM7 --cfg=sbl_prebuilt/am243x-evm/default_sbl_nul_hsfs.cfg

    then get error

    [ERROR] Dependant modules not installed, use below pip command to install them. MAKE sure proxy for pip is setup if needed.

    I type

    C:\ti\mcu_plus_sdk_am243x_08_06_00_43\tools\boot>python -m pip install pyserial tqdm xmodem 

    getting error:

    C:\msys64\mingw64\bin\python.exe: No module named pip

    I'm not familiar with python.

    Please help.

    Thanks,

    Eli

  • Hello Eli,

    What version of Python do you have?

    Try using python –version.

    If that doesn't work, try python3 –version instead.

    Best Regards,

    Ralph Jacobi

  • Hi Ralph,

    python --version  says Python 3.10.12

    What does it mean "Dependant modules not installed"

    it asks for         python -m pip install pyserial tqdm xmodem

    How do I install it ?

    I've never used python before.

    Thanks,

    Eli

  • Hello Eli,

    Frankly I am not sure and I'm confused that pip isn't installed. It's supposed to be installed by default with Python 3.4 and newer.

    Our instructions on Python installation and verification are here: https://dev.ti.com/tirex/content/mcu_plus_sdk_am263x_08_06_00_34/docs/api_guide_am263x/SDK_DOWNLOAD_PAGE.html#INSTALL_PYTHON3

    If pip really isn't installed, you should try and re-install python. Beyond that, you will need to search for a solution, I don't know how to install pip from python because I've never had to do that and none of our other users ran into this issue.

    Best Regards,

    Ralph Jacobi

  • Hi Ralph,

    I installed new python 3.11.4

    C:\ti\mcu_plus_sdk_am243x_08_06_00_43\tools\boot>python uart_uniflash.py -p COM7 --cfg=sbl_prebuilt/am243x-lp/default_sbl_null_hsfs.cfg
    [ERROR] Dependant modules not installed, use below pip command to install them. MAKE sure proxy for pip is setup if needed.

    python -m pip install pyserial tqdm xmodem --proxy={http://your proxy server:port or leave blank if no proxy}

    Which python should I use ?

    Is there a way around to get my EVM going ?

    Thanks,

    Eli

  • Hello Eli,

    Have you tried

    python -m pip install pyserial tqdm xmodem 

    If so what result did you get?

    Best Regards,

    Ralph Jacobi

  • Hi Ralph,

    Yes I did.

    It installed the missing python packages.

    Now I can run - python uart_uniflash.py -p COM7 --cfg=sbl_prebuilt/am243x-lp/default_sbl_null.cfg

    Mike suggested I run default_sbl_null_hsfs.cfg but in AM243x SDK ther's no such option only default_sbl_null.cfg

    Were can I get the default_sbl_null_hsfs.cfg for AM243x ?

    Please advice.

    Thanks,

    Eli

  • Hi Ralph,Mike,

    I've found a similar question in TI forum and the answer was:

    1.  SDK/tools/boot>python uart_uniflash.py -p COM<x> –flash-writer=sbl_prebuilt/am243x-evm/sbl_uart_uniflash.release.hs_fs.tiimage

    2.  SDK/tools/boot>python uart_uniflash.py -p COM<x> --file=sbl_prebuilt/am243x-evm/sbl_null.release.hs_fs.tiimage --operation=flash –flash-offset=0x0

    After that the EVM works with the CCS and hello world example.

    Thanks,

    Eli

  • Hi Eli,

    Glad you were able to get your board working.  If you run into any more issues, please feel free to open a new E2E post as neede.

    Thanks,
    Mike