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.

IWR6843AOP: MMWave diag_sbl project doesn't work

Part Number: IWR6843AOP
Other Parts Discussed in Thread: UNIFLASH, IWR6843, IWR6843ISK,

Hello,

I'm trying to get the mmwave_diag_sbl CCS project from the Platform Toolbox to work. I have taken out the diagnostic functions, because I'm only interested in the bootloader part and I currently still lack access to the TI mmWave SDL.

In the current implementation, where the bootloader works on the TCMB Ram, debugging doesn't work and when I compile the code and flash it to the chip via Uniflash, I can use it to flash a program, but afterwards neither the bootloader nor the flashed program works.

If I start the bootloader from the TCMA Ram (by taking out the functions in the _system_pre_init(void)-function (main.c) and adjusting the corresponding linker file xwr_r4f.cmd) I can debug and flash a program. But after program transport via XMODEM, the bootloader crashes in function SBL_imageAuthentication (image_validity.c) during multicore image parsing. Do I have to make changes to the defines in sbl_xwr68xx.c for the memory regions, when i run the bootloader on TCMA?

Do you have a debugable SBL project that you can provide me?

Kind regards,
David

  • In the current implementation, where the bootloader works on the TCMB Ram, debugging doesn't work and when I compile the code and flash it to the chip via Uniflash, I can use it to flash a program, but afterwards neither the bootloader nor the flashed program works.

    To be more precise: The program flashed with the bootloader works directly after the flash process. But when I reset the chip, neither the bootloader nor the flashed application software starts.
    By the way, this is the same with the precompiled binary in the project folder of TI, so i think there is a bug in the software project.

  • David:

    I will be checking into this behavior. Please give me a couple of days to replicate and characterize your issue.

    Best regards,

    Connor Desmond

  • David:

    Before removing the diagnostic mechanisms were you able to run/debug the unmodified offering?

    Best regards,

    Connor Desmond

  • Hello Connor,
    thanks for working on the problem.
    As I wrote before, I lacked the rights to use your diagnostic library. Nevertheless, I managed to compile the project (without diagnostics) and get the same (buggy) bootloader behavior as your precompiled binary behaves.

    But debugging is unfortunately not possible with the project. So my question is, how can I debug and where is the error in the project.

  • David:

    The main point of this demo is demonstrate the safety diagnostics associated with IWR6843. You have stated that you have removed these diagnostics and just want to enable the secondary boot loader. Can you elaborate as to what you are trying to debug or assess with this lab if all of the diagnostics have been removed. Below is link to some documentation that you may find useful pertaining to the SBL:

    <SDK_INSTALL_PATH>\mmwave_sdk_03_05_00_04\packages\ti\utils\sbl

    Best regards,

    Connor Desmond

  • Hello Connor,

    as I mentioned before:

    I'm only interested in the bootloader part

    I know the sbl project out of SDK, but as it is not a CSS project it's not very helpful. So I thought the diagnosis SBL projekt is a better startpoint for my own development. But there seems to be a bug in the bootloader part, so after a reset nothing is working anymore.

    If you could provide me the SDK SBL project as CSS project, it would help me a lot. (There the precompiled binary works as expected.)

    Thank you and best regards,

    David

  • David:

    As you have mentioned there is not a CSS project for the SBL provided in the link I provided. We do not have a CCS project for SBL in the industrial toolbox. In the automotive toolbox there exists a CAN based SBL which you could possibly leverage in combination with the resources I provided previously to create a CCS SBL project that suits your needs. With regards to the safety monitoring and diagnostics lab, my official response is that this lab is only for customers who have acquired the SDL.

    Best regards,

    Connor Desmond

  • Thank you for the hint with the CAN SBL.
    It’s not so easy to evaluate, if this project is useful for me, because I don't have CAN Hardware for a quick test and it's a software project for another chip and I don't know the differences yet.
    Will the error in the diagnostic SBL be fixed anyway? Meanwhile I got the access to the safety library.

    Best regards,
    David
  • David:

    Since you have access to the safety library now lets have a little bit of a reset. Can you please take the original demo without modifications and detail exactly how the SBL fails. This information I can take the relevant expert to see what is going on.

    Best regards,

    Connor Desmond

  • Hello Connor,

    I have now compiled the project with the SDL library and flashed it into the IWR (with uniflash tool). I can load a program on the chip with the bootloader (e.g. the out of box demo) and this program is also started regularly afterwards.
    But if I reset the controller, neither the bootloader nor the flashed program starts.
    The same behavior shows up for the precompiled binary from TI.

    Furthermore, I was not able to debug the program with CCS. Maybe it's because the sbl runs on TCMB and not on TCMA?

    Thank you in advance,
    David

  • David:

    Thank you for your patience. I am going to reach out to a reliable source who has used the SBL in the field with your issue and bring back to you what I find out.

    Best regards,

    Connor Desmond

  • David:

    You mention that you reset the controller. Is this a soft-reset or a hard reset (NRST) ?

    Best regards,

    Connor Desmond

  • I reset the controller via NRST.

    Best regards,
    David

  • David:

    I am going to try to recreate your issue. I am going to see if I can run the bootloader + flashed program after NRST assertion as well as CCS debug. I will be doing this on an IWR6843ISK.

    I noticed that you are using an IWR6843AOP, and that device is not specified on the hardware requirements section of the lab's user guide. I don't know if that is causing problems, but it is a deviation from the user guide.

    Specifically, when you state that CCS debug is not working can you please be more specific. The reason I am asking is I am going to hop into CCS myself to see if I get the same behavior that you are getting.

    Note: I will be doing this on the default project with no source code modifications which you have previously stated had issues as well.

    Best,

    Connor Desmond

  • Hello Connor,

    I have now got the debugging working. There were some problems with the default optimization settings, so the debugger always jumped. Setting the debugger optimization level to zero solved this problem.
    The only problem left with debugging is that sometimes breakpoints are just ignored, which makes no sense to me, but I can work with it now.

    Could you already reproduce the error that nothing works after a hard reset?

    Best regards,
    David

  • David:

    With regards to the remaining debugging issue, make sure that you a putting hardware breakpoints. Additionally, are the places where the break points are ignored consistent?

    Best regards,

    Connor Desmond

  • Hello David,

    Before load progrom, click the cpu reset in the toolbar. The sbl will load succesful.

    And I also find your issue. Did you fix this issue?

  • Hello,

    thanks for the hints for debugging, I'll try that out!
    No I didnt't fix it and I'm still interested in a solution.

    Best regards,
    David

  • David:

    It has been a while since I have worked on this thread, so lets start here. Are you still having issues with breakpoints still being ignored. Additionally, are you still having issues with the SBL? Since it has been so long if you are interested in finding a solution to this problem then we should reestablish a baseline of what is and what isn't working as of today.

    Best regards,

    Connor Desmond

  • Hello Connor,

    it's still like I described here:

    I have now compiled the project with the SDL library and flashed it into the IWR (with uniflash tool). I can load a program on the chip with the bootloader (e.g. the out of box demo) and this program is also started regularly afterwards.
    But if I reset the controller, neither the bootloader nor the flashed program starts.
    The same behavior shows up for the precompiled binary from TI.

    Debugging is working fine, there seems to be no problem with the breakpoints anymore.

    Thank you and best regards,


    David

  • David:

    Thanks for the refresh. I believe that this might be related to when you reset the device is not placed in a correct state and thus won't work properly there after. What procedure do you have to go through to get it working after reset? Power cycle? Reflash?

    Best regards,

    Connor Desmond

  • As mentioned above the problem is, that after a power cycle nothing works anymore.
    So I need to reflash the bootloader software to get it working again.

    Regards,
    David

  • David:

    Understood. Let me loop some people in on my side and I will get back to you soon.

    Best regards,

    Connor Desmond

  • David:

    Could you please give a description of your HW setup.

    Best regards,

    Connor Desmond