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.

AM625: AM625: Android SDK Flashing Instruction ValueError

Part Number: AM625

Tool/software:

Host: Ubuntu 22.04 (python3.10.x)

Board: SK-AM625 EVM

I have been working on SK-AM625 EVK board on Android SDK 09_02_00 and I tried to build the SDK myself from

1.3. Flashing Instruction — Processor SDK AM62x Documentation

I got a erro message ValueError: The device has no langid (permission issue, no string descriptors supported or device error) while running snagrecover on host using binaries built locally.

Starting recovery of am625 board
Installing firmware tiboot3
Searching for partition id...
Downloading file...
Done
Done installing firmware tiboot3
Installing firmware tispl
Searching for partition id...
Traceback (most recent call last):
  File "/home/user/.local/bin/snagrecover", line 8, in <module>
    sys.exit(cli())
  File "/home/user/.local/lib/python3.10/site-packages/snagrecover/cli.py", line 147, in cli
    am62x_recovery()
  File "/home/user/.local/lib/python3.10/site-packages/snagrecover/recoveries/am62x.py", line 22, in main
    run_firmware(dev, "tispl")
  File "/home/user/.local/lib/python3.10/site-packages/snagrecover/firmware/firmware.py", line 110, in run_firmware
    am62x_run(port, fw_name, fw_blob)
  File "/home/user/.local/lib/python3.10/site-packages/snagrecover/firmware/firmware.py", line 70, in am62x_run
    partid = dfu.search_partid(dev, partname)
  File "/home/user/.local/lib/python3.10/site-packages/snagrecover/protocols/dfu.py", line 36, in search_partid
    desc = usb.util.get_string(dev, intf.iInterface)
  File "/home/user/.local/lib/python3.10/site-packages/usb/util.py", line 313, in get_string
    raise ValueError("The device has no langid"
ValueError: The device has no langid (permission issue, no string descriptors supported or device error)

But the DFU intruction works on the pre-built binaries from SDK download page with the command below:

cd AM62x_09.02.00_emmc
snagrecover -s am625 -f ./am62x-sk-evm.yaml

BTW, in eMMC flashing instructions step 4. running snagrecover for host & step 7. run flashall.sh, I could not find the path of the binaries directories as out/target/product/am62x.

I found the am62x-sk-evm.yaml from $WORK_DIR/ti-aosp-14/device/ti/am62x/config/dfu, is there any configuration I should setup before Build Instructions ?

I'm not familiar with the binman code and thus do not understand the nature of the problem. Maybe you guys could help me out ?

Thanks in advance !