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.

TMDSIDK572: J45 USB port is offline even if SDK with Android Automotive image is in the SD card and SD is installed in the IDK SD slot.

Part Number: TMDSIDK572


Performed the following steps:

Enabling Android Automotive on Your TI Development Board

When performing these steps from 3 to 5, the following are the outcomes: 

3. Open a terminal debugger to view console output from the device (dmesg: kernel ring buffer, logcat: log of system messages): $ sudo picocom -b 115200 /dev/ttyUSB0

--> No response after sending this command. 

4. Enable fastboot on the device through the terminal debugger: => fastboot 0

--> "waiting for any device" is the response when sending the fastboot 0 in terminal.

5. In a different terminal, change directory to emmc_files and run the fastboot.sh script: $ cd ~/ti-processor-sdk-android--/board-support/emmc_files $ sudo ./fastboot.sh; sudo ./fastboot reboot 

--> "No device detected. Please ensure that fastboot is running on the target device"

It seems that the USB port  J45 is always offline.  Is there a steps need to be done first before inserting the SD card with the Android Automotive image to start the boot process? 

  • Hello Teresa,

    Unfortunately Android on AM57 is no longer supported by our software offering since 8.x SDK.

    The EVM you are using is the Industrial Development Kit which is not the EVM where the Android enablement was done.

    See:

    which corresponds to TMDSEVM572X.

    My advice is to attempt to use the other USB port on the board, J23, or see at the differences in setup for J25 in the IDK vs the EVM.

    I hope that helps,

    -Josue

  • Hi Josue,

    Thanks for your response. 

    What do you mean by the statement " The EVM you are using is the Industrial Development Kit which is not the EVM where the Android enablement was done."? Do you mean that TMDSIDK572 which is the board that we are using cannot be used for Android Automotive development? 

    In this site TMDSIDK572 Evaluation board | TI.com, is what we're referring to and the board that we are using.  Do you mean that this board is not using a Beagleboard X15 Sitara platform thus it is not possible to use this board for Android Automotive development? 

    In the TMDSIDK572 board we have tried performing the steps mentioned earlier in the original question and connecting 1 USB cable to J19 micro USB port (JTAG debugger port) and to USB Type A J23. 

    We used this SDK which is a version lower than 8.0 thus it should still work since it is lower version than 8.0?  Here you mentioned that IDKs are no longer supported for when using from SDK 8.0:  "Unfortunately Android on AM57 is no longer supported by our software offering since 8.x SDK.", but since we are using an SDK which is lower, I expect it should still support AM572X IDK boards, isn't it? 

    1.1. Getting Started Guide — Processor SDK Android Documentation

    R
    egarding this: "My advice is to attempt to use the other USB port on the board, J23, or see at the differences in setup for J25 in the IDK vs the EVM."

    In your advise earlier to use USB J23 of the TMSID572 board, can you share a step by step procedure to  follow and including which ports we need to connect  to in the board and the steps to execute or perform in the Linux system computer and the TMDSIDK572 board so that we can confirm accordingly.  We seem to find the documentations available in TI to be separate documents describing in terms of setting up the HW or board itself and the procedures needed to be done in the host machine, etc. When performing the boot procedure, do we have to connect the computer to the board in 2 USB ports (1 in the JTAG Port - J19 and the 2nd USB cable in the USBA J23 or is it only to USBA J23)? 
    Can you advise as well if we can use an HDMI capable display to connect to board when we perform this boot process so that we can see the display that will launch with a tablet similar interface once boot process was successful and the Android system can start successfully based on page 1 of this document Enabling Android Automotive on Your TI Development Board. If the display device we used does not have a touch screen capability, can we use a computer mouse and connect to board to be able for Android system to receive key inputs? If yes, which USB port can we use for that? 

    Hoping for your utmost response on the above. Thank you. 

  • Performed this step as per your advise "My advice is to attempt to use the other USB port on the board, J23, or see at the differences in setup for J25 in the IDK vs the EVM." using the Type A USB Port J23 in the TMDIDK5726 board that we have after sending this command: This was performed with the USB Micro port for JTAG was also connected to the Linux host machine + USB Type A J23 port also connected to host machine

    >minicom -w

    and got the response below: 
    "Device /dev/ttyUSB1 is locked."

     

  • Hello Teresa,

    What do you mean by the statement " The EVM you are using is the Industrial Development Kit which is not the EVM where the Android enablement was done."? Do you mean that TMDSIDK572 which is the board that we are using cannot be used for Android Automotive development? 

    This means that Android was not validated on the EVM you are using. Android was only tested and validated on a different EVM. Therefore we do not know if Android would work on it. From the other Documentation you have shared, it seems like it should work.

    We used this SDK which is a version lower than 8.0 thus it should still work since it is lower version than 8.0?  Here you mentioned that IDKs are no longer supported for when using from SDK 8.0:  "Unfortunately Android on AM57 is no longer supported by our software offering since 8.x SDK.", but since we are using an SDK which is lower, I expect it should still support AM572X IDK boards, isn't it? 

    Unfortunately Android was fully de-scoped from our SW so it is not supported by TI anymore on AM57x devices. The existing Application notes and other collateral, including older SDKs are maintained in an as-is state. Development on these is at the purview of the customer.

    I apologize for my loose suggestions. I was trying to nudge you to try another port as test but I can see this was not fruitful. 

    You could try to check at u-boot or at Linux user space that the board is registering the connection with your computer. The purpose of fastboot is to flash the emmc with the android image.

    So my assumption is you need to connect to the USB port that is in device mode and the computer from where you are downloading the files is the host.

    Best,

    Josue

  • Hi Josue,

    will you be able to clarify some items below or address the inquiries?

    1) When performing the boot procedure, do we have to connect the Linux host machine to the board in 2 USB ports (1 in the JTAG Port - J19 and the 2nd USB cable in the USBA J23 or is it only to USBA J23)? 

    2) What do you mean by "So my assumption is you need to connect to the USB port that is in device mode and the computer from where you are downloading the files is the host."? Are you referring to the USB-TypeA Port J23?  and how do we switch the TI board's USB port to device mode? In this, are you referring to a connection of only 1 USB cable connected from Linux host machine to 1 USB Type A port J23 in the TI Board, or host machine needs to be connected in both J23 Type A USB port and the J19 JTAG/Debugger USB Mini port?

    3) Can you provide the steps to do this "u-boot or at Linux user space that the board is registering the connection with your computer."? And is this referring to the USB Port J23 connected to the Linux Host machine? 

    4) "So my assumption is you need to connect to the USB port that is in device mode and the computer from where you are downloading the files is the host." --> Can we flash directly the Android OS from host machine to the TI Board's eMMC without the need of the SD card? How can that be done?

    5) Can you advise if we can use an HDMI capable display to connect to board when we perform this boot process so that we can see the display that will launch with a tablet similar interface once boot process was successful and the Android system can start successfully based on page 1 of this document Enabling Android Automotive on Your TI Development Board. If the display device we used does not have a touch screen capability, can we use a computer mouse and connect to board to be able for Android system to receive key inputs? If yes, which USB port can we use for that? 

    6) Need your confirmation on the purpose or features of the 3 USB ports (J19, J45 and J23) available in the board, e.g. J19 - Debugger/JTAG
    Is J19 only for JTAG? Can this be used for fastboot or data transfer?
    J45 - feature supported ?

    J23 - feature supported ?

  • Hello Tara,

    Finally dug up some old pertinent documentation. Please see:

    Processor SDK Android Setup Script - Texas Instruments Wiki.pdf

    1. Yes, please see the file provided. Both j45 and the JTAG ports have to be connected.
    2. see 1. Reference https://medium.com/@manuel.bl/usb-for-microcontrollers-part-1-basic-usb-concepts-519a33372cc9
    3. Reference: 
      1. https://www.google.com/search?q=check+usb+connections+on+linux+userspace&rlz=1C1GCEB_enUS940US940&oq=check+usb+connections+on+linux+userspace&gs_lcrp=EgZjaHJvbWUyBggAEEUYOTIHCAEQIRigAdIBCTE0NDg1ajBqN6gCALACAA&sourceid=chrome&ie=UTF-8
      2. https://github.com/ARM-software/u-boot/blob/master/doc/README.usb
    4. This is not in the scope of the App note, nor the SDK documentation. 
    5. Speculatively, yes this should be doable. The device has the capability of supporting this and I have seen the Matrix GUI demo on the 6.03 Linux SDK demonstrate this capability. Again, the Android SDK is no longer supported so I cannot guarantee that it would work.
    6. See attachment above. Can also reference AM572x Industrial Development Kit (IDK) Evaluation Module (EVM) Hardware

     Have you followed all the requirements as listed in the links?


    Based on this thread response (look for the blue highlight on the left of the reply), you can also use the fastboot utility to check for a connected device from the host computer. If you are not getting any detection, perhaps you need to install the utility on Linux:

    sudo apt install fastboot

    Best,

    Josue

  • Hi Josue,

    We followed the steps provided in Processor SDK Android Setup Script - Texas Instruments Wiki.pdf

    USB cables are connected to the Linux host machine in J45 and J19.
    In the minicom setup, we set the following input (in red font):

    >>Which serial port do you want to use with minicom?
    [ /dev/ttyUSB0 ] /dev/ttyUSB1

    >>Would you like to create a minicom script to configure the board (y/n)?
    [ y ] y

    >>Would you like to run the setup script now (y/n)?
    [ y ] y

    After sending 'y', we are getting the following window.

    As shown in the image above, it seems that the connection is offline.
    fastboot is already installed in the host machine.

    We are not seeing similar results after line 7 in the following link:
    e2e.ti.com/.../2465571

    After board power cycle, we are receiving the following error:

    >minicom -w

    and got the response below: 
    "Device /dev/ttyUSB1 is locked."

    Additional references:

    .minirc.dfl
    pu port /dev/ttyUSB1
    pu baudrate 115200
    pu bits 8
    pu parity N
    pu stopbits 1
    pu minit
    pu mreset
    pu mdialpre
    pu mdialsuf
    pu mdialpre2
    pu mdialsuf2
    pu mdialpre3
    pu mdialsuf3
    pu mconnect
    pu mnocon1 NO CARRIER
    pu mnocon2 BUSY
    pu mnocon3 NO DIALTONE
    pu mnocon4 VOICE
    pu rtscts No

    Kindly advise if there are additional steps we have to do to connect or perform fastboot.

    Thank you very much.

  • Hi Josue,

    In addition to the steps mentioned above, "After board power cycle, we are receiving the following error:", to confirm if we are executing the steps being mentioned "power cycle", is it correct to perform this in the board by doing a long push of the power button until the system is off and release the button.  Afterwards switch it to Power ON. 

    From the message outputted based from setup-uboot-env.sh as shown below, which USB cable is being referred to here? Is it the USB connected to the JTAG port or the port used for fastboot?
    echo "--------------------------------------------------------------------------------"
    echo "Would you like to run the setup script now (y/n)?"
    echo
    echo "Please connect the USB and USB/serial cables as described in the Quick Start"
    echo "Guide. Once answering 'y' on the prompt below, you will have 300 seconds to"
    echo "connect the board and power cycle it before the setup times out."
    echo
    echo "After successfully executing this script, your EVM will be set up. After power"
    echo "cycling the board, you will be able to connect to it by executing 'minicom -w'"
    echo "or by using the 'adb' utility. If you prefer a windows host, you can set up"
    echo "Tera Term as explained in the Software Developer's Guide."
    echo

  • Teresa, Patrick.

    Can you respond to may question?

     Have you followed all the requirements as listed in the links?

    Also, Did you perform the prerequisites?

    https://software-dl.ti.com/processor-sdk-android/esd/docs/latest/android/Overview_Getting_Started_Guide.html#prerequisites

    -Josue

  • Also, 

    Minicom is not the only serial connection you could use, You can use PUTTY or Tera term. Steps and availability for these can be searched for online. For a serial connection you would connect from the host machine to J19 which is labeled USB JTAG.. see AM572x Industrial Development Kit Quick Start Guide

    Steps for locked minicom window --> https://stackoverflow.com/questions/11988536/device-dev-ttyusb0-lock-failed-operation-not-permitted

    -Josue

  • HI Josue,

    In response to your question:

     Have you followed all the requirements as listed in the links?

    Yes, we have followed all the requirements listed in the links provided in the image above.

    1.1. Getting Started Guide — Processor SDK Android Documentation
    >> We have performed the steps indicated in the Getting Started Guide. Here are some details:
    a. Configure a Linux Host: Ubuntu 22.04
    b. Install the SDK: Followed the procedure indicated in step 1.1.1 (Version: ti-processor-sdk-android-am57xx-evm-06.03.00.106-Linux-x86-Install.bin)
    c. Create an SD Card: followed the steps in step 1.1.2
    d. Configure your development environment: As indicated above, connections are made in J45 and J19 ports of the IDK.
    e. Run the setup script: Performed the steps indicated in step 1.1.3

    1.3. Building the SDK — Processor SDK Android Documentation
    >> We've also followed the steps provided in Building the SDK from step 1.3.1 to step 1.3.3
    Followed steps for AM5x.

    Order of procedure performed:
    Downloaded the SDK -> Built the SDK -> Created the SD -> Configured the development environment -> Executed the setup script

    After executing the setup script, we encountered the errors specified above in this thread.

    Best Regards,
    Patrick

  • Hello Partick,

    Thanks for your response. Due to the regional holiday, please expect a 1~2 day delay in responses. Apologies for the delay, and thank you for your patience.

  • Hello Patrick,

    One thing that might help, this SDK was only tested and validated  as stated:
    "(Ubuntu 16.04 and Ubuntu 18.04 are the currently supported LTS version)"

    Using a different version of Ubuntu can make some things fail. I suggest you try to recreate using one of the supported distribution versions.

    Best,

    -Josue

  • Hi Josue,

    In addition to your suggestion, we tried Tera term as alternative to minicom, but we are still getting an offline connection.
    Followed the steps in the following link: https://chemyx.com/support/knowledge-base/how-to-guides-maintenance/troubleshooting-teraterm-windows/

    We'd like to confirm the correct power cycle procedure to perform?

    Here are our steps in performing power cycle:
    1. Run setup.sh script
    $ ./setup.sh
    $ Which serial port do you want to use with minicom?
    [ /dev/ttyUSB0 ] /devttyUSB1
    $ Would you like to create a minicom script to configure the board (y/n)?
    [ y ] y
    $ Would you like to run the setup script now (y/n)?
    [ y ] y

    Window will be similar to this


    2. Perform power cycle
    >>press SW3 until board turns OFF
    >>press SW3 to turn ON the board

    For confirmation:
    1. Is the correct procedure for power cycle performed in Step#2?
    2. If we do not exit the minicom prior to performing Step#2 above, after power ON, ttyUSB1 will be locked. ttyUSB2 will be created and serial connection will change ttyUSB1 → ttyUSB2.
    3. If minicom exit is performed prior to performing Step#2, after power ON, ttyUSB1 is still Offline.

    Thank you.

  • Hello Patrick,

    Just to confirm, you are able to see output from the processor as stated above using picocom correct?

    sudo picocom -b 115200 /dev/ttyUSB0

    If not, can you test your board using the latest Linux SDK?

    Unfortunately, I can only help you with questions within the scope of our current software offering. Android support has been officially dropped for AM57x since 2020.

    The scope of our support is what is available on this page: https://www.ti.com/tool/PROCESSOR-SDK-AM57X

    You are on your own to use the existing collateral in an as-is state. 

    -Best

    Josue