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.

IWR1443: UART communication on bootup

Part Number: IWR1443

I have noticed that when I power up the IWR1443 board, there is some UART communication that occurs before the micro starts.  Specifically, the IDE is in the debug mode and debug firmware is loaded into the IWR1443 board, but before the target configuration is launched in the IDE.  When power is applied to the board, the UART associated with the data port (IWR1443 Pin R5) sends out about 10 ms of data at what appears to be 57.6 kb/s.

Where is this data coming from in the code?

What is the purpose?

Can it be removed from the debug build?

Will it occur in a production build of firmware?

Best regards,

Alan

  • Hi Alan,

    I will need some time to consult the IWR1443 Bootrom experts for this question. Could you please provide the following information:

    1. Is this related to TI IWR1443BOOST EVM or a custom board?

    2. What is the status of the SOP pins? Is the device in Functional mode or Flashing mode?

    3. Is this is a custom board, do you have a serial flash on the board?

    Thanks

    -Nitin

  • Hi Nitin,

    1.  We are using a custom board that is based on the IWR1443BOOST EVM.  The main difference is that the TM4C129 chip is de-powered.  We are running the stock high-accuracy lab firmware along with the stock pre-built debugging firmware.

    2.  The SOP pins are set as follows:  P2 and P3 are disconnected.  P4 is connected.

    3.  As noted in item 1, the circuitry is essentially the same as the EVM, so no additional flash on the board.

    Best regards,

    Alan

  • Hi Alan,

    Thanks for your patience. Could you indicate which particular UART do you see this data on?

    Thanks

    -Nitin

  • Hi Nitin,

    I was seeing it on the logging UART.  That's the one that is set up in the MmwDemo_initTask() function of main.c.

        /* Open the Logging UART Instance: */

        gMmwMCB.loggingUartHandle = UART_open(1, &uartParams);
        if (gMmwMCB.loggingUartHandle == NULL)
        {
            System_printf("Error: Unable to open the Logging UART Instance\n");
            return;
        }
          System_printf("Debug: UART Instance %p has been opened successfully\n", gMmwMCB.loggingUartHandle);

    When the system starts up, the print message says that the Instance is @0800ad08.

    Best regards,

    Alan

  • Hi Alan,

    Thanks for the information. This output is coming from the debug logging in MSS bootloader and this logging is always enabled in the bootloader. Could you please clarify what is the application level concern with this output? The UART peer entity should be able to ignore it.

    Thanks

    -Nitin

  • Hi Nitin,

    The application level concern is one of total power consumption.  We are building a device that will work on a 4-20mA loop, so that the total power budget is on the order of 50 mW.  To make that work, we will have to store power in some super capacitors.  Most likely, we will have to shut down the IWR1443 and PMIC after a set of radar measurements in order to charge the caps back up.  Therefore, each time a measurement is to be made, the IWR1443 will go through its bootup sequence.  The shorter that sequence, the less power consumed over a measurement cycle.  The UART output in question takes about 10 ms.  That's a significant portion of the startup time.  So if there's a way to eliminate it, it would save quite a bit of power.

    Best regards,

    Alan

  • Hi Nitin,

    I want to make sure I understand your previous response correctly.  You stated that the transmitted output is coming from the debug logging in the MSS bootloader.  Does that mean it is only present when building the debug version of the firmware and that it will not be present in a production build?

    As I noted in my reply, it's not a matter of having the UART peer entity ignore the output, it's a matter of not running the micro any longer than necessary.

    Best regards,

    Alan