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.

CCS/UNIFLASH: UniFlash v3.4 CLI on a PC with non-ASCII symbols in "C:/Users..." folder name

Part Number: UNIFLASH

Tool/software: Code Composer Studio

Hello everyone.

I have a problem with UniFlash v3.4. Since it has Command Line Interface, it's a perfect program for programming series of controllers. Thanks TI for that.

But on some PCs (Win10) we have User names with Cyrillic symbols and spaces, for example "C:\Users\Alexey Popov\" or "C:\Users\Алексей Попов". In this way, Uniflash crashes, when it tries to create a file called 
"brd_info" or smth. like. I have no possibility to give error text right now, but I'll do it as soon as possible.

Uniflash is invoked with parameters: -ccxml %CONFIG_FILE_PATH% -core "C28" -loadSettings %SESSION_PATH% -program %C28_OUT_FILE_PATH%. All of this variables doesn't contain bad symbols - only english letters without spaces.

So the question is: is there a way to avoid this problem without creating new User with correct name? For example, maybe i can edit a *.js file, that is capable for creating this temporal configs in such way, that it will create this configs in another folder?

  • Disona,

    We are going to try to set up an equivalent environment to come up with a workaround.

    Regards,
    John
  • Thank you
  • Disona,

    Can you try setting the "TI_APPDATA_DIR" environment variable in your command line before running the uniflash command? This variable controls where the application data are written; by default, it will go into the user directory.

    For example:
    > set TI_APPDATA_DIR="c:\somewhereWritable"

    Please let me know if this works for you or now.

    Thanks,
    Ricky
  • Thank you for your reply, Mr. Lau. I've tried to do what you say, it changed something, but unfortunately, it didn't help =(

    I can see, that the folder was created, and some files appeared there - ".lock" and a folder ".ti" with some files, BUT the main file in folder "TI_APPDATA_DIR/ti/0/0/BrdDat/" is missing - this folder is empty.

    I've tried to set this variable on a PC with correct username (where UniFLash CLI worked just fine before), and everything is OK - ccBoard0.dat is created in "BrdDat" folder, the controller is programmed well.

    Below are links to the output of Command Line on a bad PC, and a ".zip"-file with created subfolders (ti/0/0 etc.)

    appdata.zip

  • Disona,

    Unfortunately, I'm not sure why it still isn't able to generate the ccBoard0.dat file.

    Let's try something else. Can you check if you have 8.3 filename support enabled or not? More information here:

    technet.microsoft.com/.../ff621566(v=ws.11).aspx

    In short, open command line as admin, and run the following:

    > fsutil 8dot3name query c:

    Let me know what gets printed when you run the command.

    Thanks,
    Ricky
  • Ricky,

    thanks for your interest. I've done what you said on both PCs (working and notworking). Result is the same - names creation enabled.

    Since we have russian language on our PCs, i don't think there's a need to copy the text from the CL, I'lljust translate result of that command. I reads something like:

    "Volume state: 0 (8dot3 names creation enabled)

    Registry state: 2 (value by default, setting by volume)

    According to the parameters set above, 8dot3 names creation is enabled for c:"

  • Disona,

    Looking closer at the pastebin you provided, it looks like the relevant line might be the following:

    "Could not load library C:\ti\uniflash_3.4\ccs_base\common\uscif\jtagdata.dll: ?? ?????? ????????? ??????."

    Since it cannot load jtagdata.dll, it is not able to generate the ccBoard0.dat. Unfortunately, the error message came out as a bunch of question marks.

    We can try a couple of things to determine why jtagdata.dll is not able to load properly.

    1. Download "Dependency Walker", and open jtagdata.dll in C:\ti\uniflash_3.4\ccs_base\common\uscif\. This should provide information on if it is missing any dependencies.

    2. Generate the DebugServer logs. To do this, set the following environment variables before running uniflash CLI.

    set TI_DS_ENABLE_LOGGING=1
    set TI_DS_LOGGING_OUTPUT=c:/path/file.log

    Please let me know if you are able to run these tests.

    Thanks,
    Ricky
  • Ricky,

    Thank you for your help.

    I've performed tests you asked, the results are in the attachments.

    In UniFlash log you'll find three errors in Cyrillic - "Не найден указанный модуль." - this means "The module was not found".

    If you encounter problems with opening log, try Windows-cp1251 encoding.

    I've also run DependencyWalker on a working PC to compare the results. Anyway, i don't understand anything in these logs =)

    UniFlashLogs.zip

  • Disona,

    From the Dependency Walker logs, it looks like the 'Problem PC' is missing the MSVCR120.DLL library. This should have been installed alongside the UniFlash installation, so I'm not sure why it is missing.

    Which version of UniFlash are you using? Maybe you can try installing it again. You can also try downloading and installing the redistributable package manually (I think this is what you need: support.microsoft.com/.../update-for-visual-c-2013-and-visual-c-redistributable-package).

    Thanks,
    Ricky
  • Ricky,
    It's missing, because I actually didn't install UniFlash, I have just copied UniFlash folder from one PC to another, like I did many times. I'll try to UniFlash with installer and then let you know about the result. Thank you for your advice.
  • Ricky,
    sorry for not aswering so long, I was extremly busy with projects.
    And thank you for you help. It turned out, that UniFlash works correctly on that PC if it was installed properly, instead of just copying an installed copy of UniFlash from another PC as i did before. But on some other PCs copying worked well. I guess, the problem was in missing MSVCR120.DLL, just like you said.
  • Disona,

    Good to hear. Yeah, if the PC already had the dependencies installed, you can use a version of UniFlash without going through the installation. Otherwise, you should go through the installation to make sure all the dependencies are installed on your PC.

    Thanks,
    Ricky