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

    >>>  [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'
         flq:                TargetDirectory- 'C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}'
         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:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}]
         flq:                          SourceFile   - [MSP430_CDC.cat]
         flq:                          Flags        - 0x00000000
         flq:                     {_commit_copyfile}
         flq:                          CopyFile: 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\MSP430_CDC.cat'
         flq:                                to: 'C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\SETF5F5.tmp'
         flq:                          MoveFile: 'C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\SETF5F5.tmp'
         flq:                                to: 'C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\MSP430_CDC.cat'
         flq:                     {_commit_copyfile exit OK}
         flq:                     {_commit_copyfile}
         flq:                          CopyFile: 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\msp430_ti_signed.inf'
         flq:                                to: 'C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\SETF606.tmp'
         flq:                          MoveFile: 'C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\SETF606.tmp'
         flq:                                to: 'C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\msp430_ti_signed.inf'
         flq:                     {_commit_copyfile exit OK}
         flq:                {_commit_copy_subqueue exit OK}
         flq:           {_commit_file_queue exit OK}
         sto:           {DRIVERSTORE_IMPORT_NOTIFY_VALIDATE} 11:10:32.767
         inf:                Opened INF: 'C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\msp430_ti_signed.inf' ([strings])
         sig:                {_VERIFY_FILE_SIGNATURE} 11:10:32.787
         sig:                     Key      = msp430_ti_signed.inf
         sig:                     FilePath = C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\msp430_ti_signed.inf
         sig:                     Catalog  = C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\MSP430_CDC.cat
    !    sig:                     Verifying file against specific (valid) catalog failed! (0x800b0109)
    !    sig:                     Error 0x800b0109: A certificate chain processed, but terminated in a root certificate which is not trusted by the trust provider.
         sig:                {_VERIFY_FILE_SIGNATURE exit(0x800b0109)} 11:10:32.917
         sig:                {_VERIFY_FILE_SIGNATURE} 11:10:32.917
         sig:                     Key      = msp430_ti_signed.inf
         sig:                     FilePath = C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\msp430_ti_signed.inf
         sig:                     Catalog  = C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\MSP430_CDC.cat
         sig:                     Success: File is signed in Authenticode(tm) catalog.
         sig:                     Error 0xe0000242: The publisher of an Authenticode(tm) signed catalog has not yet been established as trusted.
         sig:                {_VERIFY_FILE_SIGNATURE exit(0xe0000242)} 11:10:33.037
    !    sto:                Driver package signer is unknown but user trusts the signer.
         sto:           {DRIVERSTORE_IMPORT_NOTIFY_VALIDATE exit(0x00000000)} 11:10:35.257
         sto:           Verified driver package signature:
         sto:                Digital Signer Score = 0xFF000000
         sto:                Digital Signer Name  = <unknown>
         sto:           {DRIVERSTORE_IMPORT_NOTIFY_BEGIN} 11:10:35.257
         inf:                Opened INF: 'C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\msp430_ti_signed.inf' ([strings])
         sto:                Create system restore point:
         sto:                     Description = Device Driver Package Install: Texas Instruments Ports (COM & LPT)
         sto:                     Time        = 15ms
         sto:                     Status      = 0x00000422 (FAILURE)
         sto:           {DRIVERSTORE_IMPORT_NOTIFY_BEGIN: exit(0x00000000)} 11:10:35.277
         sto:           Importing driver package files:
         sto:                Source Path      = C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}
         sto:                Destination Path = C:\Windows\System32\DriverStore\FileRepository\msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c
         sto:           {Copy Directory: C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}} 11:10:35.287
         sto:                Target Path = C:\Windows\System32\DriverStore\FileRepository\msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c
         sto:           {Copy Directory: exit(0x00000000)} 11:10:35.287
         sto:           {Index Driver Package: C:\Windows\System32\DriverStore\FileRepository\msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c\msp430_ti_signed.inf} 11:10:35.287
         idb:                Registered driver store entry 'msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c'.
         idb:                Published 'msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c\msp430_ti_signed.inf' to 'C:\Windows\INF\oem143.inf'
         idb:                Published driver store entry 'msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c'.
         sto:                Published driver package INF 'oem143.inf' was changed.
         sto:                Active published driver package is 'msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c'.
         sto:           {Index Driver Package: exit(0x00000000)} 11:10:35.367
         sto:           {DRIVERSTORE_IMPORT_NOTIFY_END} 11:10:35.367
         ndv:                No system restore point was set earlier.
         sto:           {DRIVERSTORE_IMPORT_NOTIFY_END: exit(0x00000000)} 11:10:35.367
         sto:      {Stage Driver Package: exit(0x00000000)} 11:10:35.377
         ndv:      Doing device matching lookup!
         inf:      Opened INF: 'C:\Windows\System32\DriverStore\FileRepository\msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c\msp430_ti_signed.inf' ([strings])
         inf:      Saved PNF: 'C:\Windows\System32\DriverStore\FileRepository\msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c\msp430_ti_signed.PNF' (Language = 0409)
         sto:      Driver package was staged to Driver Store. Time = 2933 ms
         sto:      Imported driver package into Driver Store:
         sto:           Filename = C:\Windows\System32\DriverStore\FileRepository\msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c\msp430_ti_signed.inf
         sto:           Time     = 3057 ms
         sto: {Import Driver Package: exit(0x00000000)} 11:10:35.557
         inf: Opened INF: 'C:\USB_Signed_Drivers\msp430_ti_signed.inf' ([strings])
         inf: Driver Store location: C:\Windows\System32\DriverStore\FileRepository\msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c\msp430_ti_signed.inf
         inf: Published Inf Path: C:\Windows\INF\oem143.inf
         inf: Opened INF: 'C:\USB_Signed_Drivers\msp430_ti_signed.inf' ([strings])
         inf: Installing catalog MSP430_CDC.cat as: oem143.CAT
    <<<  Section end 2018/02/15 11:10:35.607
    <<<  [Exit status: SUCCESS]

    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