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.

MSP430F5659: Digital Signed USB driver give "warning message" while installing through application

Part Number: MSP430F5659

Hi,

We are working on MSP430F5659 based controller and using inbuilt USB for PC communication(UI). We are facing problem with signed driver when we integrate and install through UI application.

But if we select the device in Device Manager and search the driver and install no issues, Even Using .bat file run in admin mode also no issues.

Only if we integrate with UI application and then application dynamically executes .inf file. Once installation runs windows through warning " windows can't verify the publisher of this driver software"

as shown below

Please need help how to resolve this, we need solve this for our cyber security clearance. IF warning come like this cyber security clearance for the product is rejected. Our goal is one application for UI as well Driver installation.

I appreciate if some helps in resolving this warning issue.

Thanks in advance

Nitesh

  • Hi,

    Some more details for the same issue, Please find the log file after installation

    setupapi.dev_MSP430_USB.txt
    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    >>> [SetupCopyOEMInf - C:\USB_Signed_Drivers\msp430_ti_signed.inf]
    >>> Section start 2018/02/15 11:10:32.464
    cmd: pnputil -i -a C:\USB_Signed_Drivers\msp430_ti_signed.inf
    sto: {Import Driver Package: C:\USB_Signed_Drivers\msp430_ti_signed.inf} 11:10:32.494
    sto: Importing driver package into Driver Store:
    sto: Driver Store = C:\Windows\System32\DriverStore (Online | 6.1.7601)
    sto: Driver Package = C:\USB_Signed_Drivers\msp430_ti_signed.inf
    sto: Architecture = amd64
    sto: Locale Name = neutral
    sto: Flags = 0x00000000
    sto: Copying driver package files to 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}'.
    inf: Opened INF: 'C:\USB_Signed_Drivers\msp430_ti_signed.inf' ([strings])
    inf: Opened INF: 'C:\Windows\System32\DriverStore\FileRepository\mdmcpq.inf_amd64_neutral_b53453733bd795bc\mdmcpq.inf' ([strings])
    inf: Opened INF: 'C:\USB_Signed_Drivers\msp430_ti_signed.inf' ([strings])
    flq: {FILE_QUEUE_COPY}
    flq: CopyStyle - 0x00000000
    flq: SourceRootPath - 'C:\USB_Signed_Drivers'
    flq: SourceFilename - 'MSP430_CDC.cat'
    flq: TargetDirectory- 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}'
    flq: {FILE_QUEUE_COPY exit(0x00000000)}
    flq: {FILE_QUEUE_COPY}
    flq: CopyStyle - 0x00000000
    flq: SourceRootPath - 'C:\USB_Signed_Drivers'
    flq: SourceFilename - 'msp430_ti_signed.inf'
    flq: TargetDirectory- 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}'
    flq: {FILE_QUEUE_COPY exit(0x00000000)}
    flq: {_commit_file_queue}
    flq: CommitQ DelNodes=0 RenNodes=0 CopyNodes=2
    flq: {_commit_copy_subqueue}
    flq: subqueue count=2
    flq: source media:
    flq: SourcePath - [C:\USB_Signed_Drivers]
    flq: SourceFile - [MSP430_CDC.cat]
    flq: Flags - 0x00000000
    flq: {_commit_copyfile}
    flq: CopyFile: 'C:\USB_Signed_Drivers\MSP430_CDC.cat'
    flq: to: 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\SETF569.tmp'
    flq: MoveFile: 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\SETF569.tmp'
    flq: to: 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\MSP430_CDC.cat'
    flq: {_commit_copyfile exit OK}
    flq: {_commit_copyfile}
    flq: CopyFile: 'C:\USB_Signed_Drivers\msp430_ti_signed.inf'
    flq: to: 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\SETF579.tmp'
    flq: MoveFile: 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\SETF579.tmp'
    flq: to: 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\msp430_ti_signed.inf'
    flq: {_commit_copyfile exit OK}
    flq: {_commit_copy_subqueue exit OK}
    flq: {_commit_file_queue exit OK}
    pol: {Driver package policy check} 11:10:32.634
    pol: {Driver package policy check - exit(0x00000000)} 11:10:32.634
    sto: {Stage Driver Package: C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\msp430_ti_signed.inf} 11:10:32.634
    inf: Opened INF: 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\msp430_ti_signed.inf' ([strings])
    inf: Opened INF: 'C:\Windows\System32\DriverStore\FileRepository\mdmcpq.inf_amd64_neutral_b53453733bd795bc\mdmcpq.inf' ([strings])
    inf: Opened INF: 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\msp430_ti_signed.inf' ([strings])
    sto: Copying driver package files:
    sto: Source Path = C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}
    sto: Destination Path = C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}
    flq: {FILE_QUEUE_COPY}
    flq: CopyStyle - 0x00000010
    flq: SourceRootPath - 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}'
    flq: SourceFilename - 'MSP430_CDC.cat'
    flq: TargetDirectory- 'C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}'
    flq: {FILE_QUEUE_COPY exit(0x00000000)}
    flq: {FILE_QUEUE_COPY}
    flq: CopyStyle - 0x00000010
    flq: SourceRootPath - 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}'
    flq: SourceFilename - 'msp430_ti_signed.inf'
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    Check " Verifying file against specific (valid) catalog failed! (0x800b0109)" in attached mail, it seems cat file validation failed, Can we get correct Cat file for the USB signed driver.

    Thanks in advance

    Nitesh

  • Nitesh,

    The Cat file that is delivered with the example is the correct .cat file.  There is no other.  I looked through your log and it looks like the 'moved' cat file is being verified against a 'specific' catalog file.   Can you verify that it is being compared to the MSP430_CDC.cat file and not to something else like the SETF606.tmp file?  Also I am not sure how the comparison is occurring since the .cat file is an executable file.  I also noticed that the .inf and .cat files are first being copied to SETF606.tmp file and then moved over to their respective filenames.  Can you verify that there are no extra spaces or lines inserted when this copy and move happens? 

    Regards,

    Arthi

  • Arthi,

    This is done by dynamically done by windows API during execution, I am not aware of this, Our Application i calling windows API to do the auto installation. We just providing path for the .inf and .cat file. I will share the application part while we auto installation once i am office on monday.

    Thanks for replying
    Nitesh
  • Nitesh,

    Are you able to share the auto installation you mentioned to help debug this issue? If no response soon, then I will assume you resolved your issue and I will close this thread.
  • Hi Jace,

    Sorry i was not well for a week, I will share the details by my next response i.e. EOD today.

    Sorry for the inconvenience.

    Nitesh

  • Hi Jace,

    Sorry for delay in response, please find the application code for invoking driver installation.

    We trigger USB driver installation through installer script, will use command line approach

     

    Below are steps,  also included installer script for your reference

     

    1. Driver (Inf & cat files) are placed under the folder called ‘Driver’

    2. While installation copy the driver and place in the program Files, open the command line through the script and trigger driver installation by referring the program file driver path.

    3. Refer below installation script

       

          public void DSADriverInstallation()

            {

                var DsaFolderPath = Path.GetPathRoot(Environment.SystemDirectory) + @"DsaPortDriver";

                var DsaFilePath = DsaFolderPath + @"\msp430_ti_signed.inf";

                var DsaINFSrcPath = path + @"\msp430_ti_signed.inf";

     

                if (!Directory.Exists(DsaFolderPath))

                {

                    Directory.CreateDirectory(DsaFolderPath);

                    File.Copy(DsaINFSrcPath, DsaFilePath, true);

                    //Copy(DsaINFSrcPath, DsaFilePath);

                }

                var process = new Process();

                process.StartInfo.UseShellExecute = false;

                process.StartInfo.CreateNoWindow = true;

                process.StartInfo.RedirectStandardOutput = true;

                process.StartInfo.RedirectStandardError = true;

                process.StartInfo.FileName = "cmd.exe";

                //string driverPath = @"D:\msp430_ti_signed.inf";

     

                process.StartInfo.Arguments = "/c C:\\Windows\\System32\\InfDefaultInstall.exe " + DsaFilePath; // where driverPath is path of .inf file

                process.Start();

                process.WaitForExit();

                process.Dispose();

                if (Directory.Exists(DsaFolderPath))

                {

                    Directory.Delete(DsaFolderPath, true);

                }

     

            }

     

    Please let us know whether any thing better we can do for the installation

    thanks in advance

    Nitesh

  • Hi Nitesh,

    I am thinking that permissions might be an issue here since you stated that you can install the .inf file through .bat script and manually. 

    Make sure that your UI application installs the .inf file as administrator.  I don't see where admin rights are being set in your script.  If that does not work then try setting the appropriate read/write/execute for the folders you are copying the .cat file to.  

    In fact in your script trying opening up the permissions for folders/files, etc... to see if you can install the .inf via the UI application.

    Regards,

    Arthi

**Attention** This is a public forum