Skip to main content

Philips Speech Extensions guide

Troubleshooting G13 Philips Speech Extensions

If you experience any issue, the best way to get help is to contact us via support.speech.com and add all details of your particular setup.

In the following sections, we describe problem solving approaches which can be followed by end-users, admins or partners without contacting our support.

Verifying installation

target_icon.png Target

On the Target, nothing needs to be installed since G13 target side extensions are integrated to Philips Hardware SDK components directly. However, after launching your dictation software, you can look up a process called PSPDispatcherS.exe in Task Manager:

troubleshooting_target1.png

If this process is running, you installed/copied everything properly on both the target and the client side.

If PSPDispatcherS.exe is not running, there might be an access rights issue. Depending on the way the dictation software is integrating Philips SDKs, PSPDispatcherS.exe might be located in the 32-bit system folder. The user must be allowed to start the process from there.

Note

PSPDispatcherS.exe is not supposed to run when you´re using Full USB redirection (thus not having installed any Philips extensions on the client), or when the session is disconnected.

If you find a process called PSPDispatcher.exe (without ‘S’), you have still old Philips server extensions installed and running on your system. Please uninstall these old drivers properly by downloading Philips Speech Extensions package and running \3_SDK_upgrade_patch\registered\philips_sdk_upgrade.exe.

By running philips_sdk_upgrade.exe a multitude of factors are checked and executed:

  • Old Philips Speech server extensions are removed.

  • All registered Philips Hardware SDK components are upgraded.

    These new components inherently contain the server side control extensions (for buttons and LEDs) and auto-detect whether you´re running Citrix, VMware, WTS/RDP or locally. The local use case is detected in case no Philips client extensions are installed, which might be useful in case of full USB redirection.

Note

If other software relying on old Philips Speech server extensions is running on this machine, philips_sdk_upgrade.exe might break Philips dictation device related remote session functionality of that software under following circumstances:

  • That other software is integrating Philips Hardware SDK (e.g. SpeechMike SDK) and

  • Philips Hardware SDK is integrated by that other software in a side-by-side fashion and

  • Philips Hardware SDK´s version used by that other software is lower than 4.4.441

You would notice that in such a software, button events would not arrive anymore (among other Philips dictation device related functionalities). You can fix this by following these steps:

  • Find the installation path of the other software. Locate folders named Philips.SpeechMike or Philips.DPMControl or both right next to the application´s executable.

  • Copy files from \3_SDK_upgrade_patch\sxs\[bitness]\[used SDK] to the respective folders. The bitness must match the other software´s bitness.

For Enterprise environments, it´s possible to run philips_sdk_upgrade.exe via command line. The following parameters are supported:

Parameter

Description

/silent

Silent installation (no UI)

/remove

Uninstall

/repair

Repair

/debuglog"<path_to_log_file>"

Log combined setup. This is path to a file. The folder must exist.

/log"<path_to_log_folder>"

Log embedded setups. This is a path to a folder. The folder must exist.

The embedded setup for the 32 bit components logs to "{100D881C-DF57-4F34-AD13-F7D6091B6B3B}.log"

The embedded setup for the 64 bit components logs to "{700565C9-248D-46D7-AD5F-D3AC8F62D203}.log"

The embedded setup for the SpeechAir SDK upgrade logs to "{7C9D3AC6-3674-4F3C-9CF4-BBABB21F57B4}.log"

Note

If philips_sdk_upgrade.exe run via command line does not find any Philips components to be upgraded, it will not install anything and exit.

Windows clients

Verify that Philips client extensions are installed, and the version is equal to or higher than 4.4.441.30:

troubleshooting_target2.png

Note

If you are using Full USB redirection or if you use the Device splitting method for redirecting the Philips dictation device´s control interface, you must not install Philips client extensions (see Introduction for more details).

If you´re running Citrix, you can also check whether the Philips virtual channels are properly registered. Under HKLM\SOFTWARE\WOW6432Node\Citrix\ICA Client\Engine\Configuration\Advanced\Modules\ you should find the following registry keys:

  • PSPA: Philips audio channel, only used by Philips SpeechExec Enterprise and SpeechExec SDK integrations

  • PSPM: Philips mixer channel, only used by Philips SpeechExec Enterprise and SpeechExec SDK integrations

  • PSPS: G13 Philips control channel for redirecting buttons and LEDs, used by any Philips software supported in remote environments

  • PSPN: G12 Philips control channel for redirecting buttons and LEDs, installed by G13 client setup for backwards compatibility to target-side extensions < 4.4.441.

Linux clients running Citrix

You can verify that following Philips components are listed in module.ini located in the base directory of Citrix ICA client:

[PSPHID]
LIB_DIR=/opt/Citrix/ICAClient 
LIB_NAME=libCtxHIDManagaerRemote.so
DriverName = VDPSPHID.dll
[PSPHID2]
LIB_DIR=/opt/Citrix/ICAClient 
LIB_NAME= libCtxHIDManagaerRemote.so
DriverName = VDPSPHID2.dll
[SpeechMikeAudio]
DriverName = VDPSPAUD.dll
LIB_DIR=/opt/Citrix/ICAClient
LIB_NAME=libCtxSbExtAlsa.so
[SpeechMikeMixer]
DriverName = VDPSPMIX.dll 
LIB_DIR=/opt/Citrix/ICAClient
LIB_NAME=libCtxMixerAlsa.so 

Virtual Drivers listed above should be also turned on in module.ini:

[ICA 3.0] 
VirtualDriver = PSPHID, PSPHID2, SpeechMikeAudio, SpeechMikeMixer, […other VD settings…]
PSPHID=On
PSPHID2=On
SpeechMikeAudio=On
SpeechMikeMixer=On

Following components have to be installed on Linux clients running Citrix:

Component

Description

Path

libCtxHIDManagaerRemote.so

Philips control channel lib for Citrix (responsible for buttons and LEDs)

same as LIB_DIR setting in module.ini, or in standard lib directory

libCtxMixerAlsa.so

Philips mixer channel lib for Citrix (only used by Philips SpeechExec Enterprise and SpeechExec SDK integrations)

same as LIB_DIR setting in module.ini, or in standard lib directory

libCtxSbExtAlsa.so

Philips audio channel lib for Citrix (only used by Philips SpeechExec Enterprise and SpeechExec SDK integrations)

same as LIB_DIR setting in module.ini, or in standard lib directory

libpspusb.so

Philips USB library, responsible for communication between the control channel lib and Philips dictation devices

Standard lib directory (/usr/lib/)

VDPSPHID.dll

G12 Philips control driver for Citrix (responsible for buttons and LEDs) – installed for backwards compatibility to target-side extensions < 4.4.441

base directory of Citrix ICA client

VDPSPHID2.dll

G13 Philips control driver for Citrix (responsible for buttons and LEDs) – channel 2

base directory of Citrix ICA client

VDPSPAUD.dll

Philips audio driver for Citrix (only used by Philips SpeechExec Enterprise and SpeechExec SDK integrations)

base directory of Citrix ICA client

VDPSPMIX.dll

Philips mixer driver for Citrix (only used by Philips SpeechExec Enterprise and SpeechExec SDK integrations)

base directory of Citrix ICA client

DPMMountd

Only when DPMs or SpeechAirs are used: this daemon keeps a symbolic link for attached Philips DPM or Speech Air drive mountpoint under /tmp/PhilipsDPM. These locations are configured in sessions as P and S drives.

Standard bin directory (/usr/bin/)

Logging

It is possible to generate logfiles of all Philips HWSDK and driver components running in remote environments as well as locally. Contact us via support.speech.com to learn which component to log when you are facing issues.

However, if you want to troubleshoot yourself, please follow the sections below, they contain further instructions on how to troubleshoot and how to enable and configure logging on both Windows and Linux platforms.

Windows

How logging for Philips HWSDK and driver components on Windows needs to be configured, depends on the version of the components to log:

Log configuration tool (Philips drivers version 4.6 or later)

Since version 4.6 we provide an UI tool to configure logging. You´ll find this tool in the Philips Speech Extensions package under \4_Logging.

philips_speech_driver_logging_tool.png

Logging can be enabled by selecting Error only or Detailed from the Log level selection. When logging is enabled, you can also further configure the tool, e.g. select the path where generated log files are saved or which components to log.

By default, all components are selected when logging is enabled. This hardly affects performance since logging is very fast since version 4.6.

The list of components might be overwhelming, which is why we describe the most important components in the components section.

When you´re done configuring the logging, you can just close the tool – the configuration is saved to a file instantly as you change it.

Note

For configuration changes to take effect, you need to restart the application(s) using the Philips Speech driver components you want to log.

Log configuration files (Philips drivers version 4.5 or earlier)

Any Philips HWSDK or driver component can be logged. You´ll find a description of the most important components in the components section.

Logging for a component is enabled by configuring an .ini file located at the same path and carrying the same name as the component itself. Here´s the content of a sample .ini file where logging is enabled:

[LOGInitSettings] 
Enable=yes 
File=[absolute or relative path to logfile].log 
MaxLines=nolimit 
LogParams=no 
LogComments=no 
LogVariables=no 
Timeout=2000 
WrapAtMax=no 
UseOutputDebug=no 
FilterFunctions=no 
FilterVariables=no 
FilterComments=no

Note

  • The application must have write-access to the path specified in “File=”.

  • Please be aware that logging has an affect on the performance and might cause application freezes. Don´t forget to turn it off when finished!

Linux

Following Philips components can be logged on Linux clients running Citrix:

Component to be logged

Log file

Philips USB library (libpspusb)

pspusblb.ini located in current working directory

Citrix audio driver (VDPSPAUD.dll)

pspaud.ini located in current working directory

Citrix control driver (VDPSPHID.dll)

psphid.ini located in current working directory

Citrix mixer driver (VDPSPMIX.dll)

pspmix.ini located in current working directory

Here´s the content of a sample .ini file where full logging is enabled:

# Enable or Disable 
Enable=y 
# Filename for LOG file  
FileName=./psphid.log  
# enable/disable log function entries/exits  
LogFunction=y  
# enable/disable log variables  
LogVariable=y  
# enable/disable log comments  
LogComment=y  
# enable/disable log events  
LogEvent=y  
# enable/disable log errors  
LogError=y

Furthermore, there are some Philips test tools installed with the drivers which can be used to analyze issues:

Test tool

Description

Path

PSPDeviceTest

Philips USB library test tool

Standard bin directory (/usr/bin/)

PSPDiag

Simplified Philips USB library test tool

Standard bin directory (/usr/bin/)

PSPDPMEventMonitor

DPMMountd test tool

Standard bin directory (/usr/bin/)

Components

In this section you'll find descriptions of the most important Philips SDK and driver components.

target_icon.png Target

Component

Description

Path

SpeechMike SDK

HWSDK for SpeechMike and Footcontrol device integration (button events, device configuration, LEDs, firmware updates...)

Since v4.4.441, Philips server side extension drivers are merged into this SDK

Binary name is SpMikeCtrl.dll

If the integrating software is using the SDK in a side-by-side fashion, you´ll find this dll right next to the integration´s executable in a folder called Philips.SpeechMike.

If the integrating software is using the SDK registered, you´ll find this dll here:

C:\Program Files (x86)\Common Files\Philips Speech Shared\Components

or here

C:\Program Files\Common Files\Philips Speech Shared\Components

depending on the bitness of the integrating software.

DPM SDK

HWSDK for DPM device integration (audio file operations, button events, device configuration...)

Since v4.4.441, Philips server side extension drivers are merged into DPMCtrl.dll

Binary name is DPMCtrl.dll

If the integrating software is using the SDK in a side-by-side fashion, you´ll find this .dll right next to the integration´s executable in a folder called Philips.DPMControl.

If the integrating software is using the SDK registered, you´ll find this dll here:

C:\Program Files (x86)\Common Files\Philips Speech Shared\Components

or here

C:\Program Files\Common Files\Philips Speech Shared\Components

depending on the bitness of the integrating software.

MCI Control

Philips Control driver (responsible for buttons and LEDs) only used by Philips SpeechExec Enterprise and SpeechExec SDK integrations.

Since v4.4.441, Philips server side extension drivers are merged into xmcipspct.dll

xmcipspct.dll in System folder

Dispatcher

The dispatcher brokers communication between any of the components described above and the Philips client extensions

Binary name is PSPDispatcherS.exe (driver versions 4.4.441 or later) or PSPDispatcher.exe (driver versions < 4.4.441).

It is always installed to the same folder as the Philips Hardware SDK .dll it is used by (SpMikeCtrl.dll, DPMCtrl.dll or xmcipspct.dll).

Citrix audio redirection server

Target-side audio extension for Citrix only used by Philips SpeechExec Enterprise and SpeechExec SDK integrations.

XPSPSBEXTCtxSrv.dll in 32-bit System folder

WTS audio redirection server

Target-side audio extension for WTS/RDP only used by Philips SpeechExec Enterprise and SpeechExec SDK integrations.

XPSPSBEXTWtsSrv.dll in 32-bit System folder

VMware audio redirection server

Target-side audio and mixer extension for VMware only used by Philips SpeechExec Enterprise and SpeechExec SDK integrations.

XPSPSBEXTVMWareHorizonSrv.dll in 32-bit System folder

client_icon.png Client

Component

Description

Path

Citrix control redirection client ch2

G13 Philips control extension driver for Citrix clients (responsible for buttons and LEDs, used by all Philips software and 3rd party software integrating Philips SDKs)

XPSPNC2.dll in the folder of the Citrix client containing module.ini, usually at C:\Program Files (x86)\Citrix\ICA Client

Citrix control redirection client ch1

G12 Philips control extension driver for Citrix clients (installed by G13 client setup for backwards compatibility to target-side extensions < 4.4.441)

XPSPNCln.dll in the folder of the Citrix client containing module.ini, usually at C:\Program Files (x86)\Citrix\ICA Client

Citrix audio redirection client

Philips audio extension driver for Citrix clients, only used by Philips SpeechExec Enterprise and SpeechExec SDK integrations

XPSPACln.dll in the folder of the Citrix client containing module.ini, usually at C:\Program Files (x86)\Citrix\ICA Client

Citrix mixer redirection client

Philips mixer extension driver for Citrix clients, only used by Philips SpeechExec Enterprise and SpeechExec SDK integrations

XPSPMCln.dll in the folder of the Citrix client containing module.ini, usually at C:\Program Files (x86)\Citrix\ICA Client

WTS control redirection client

Philips control extension driver for RDP/WTS and VMware clients, (responsible for buttons and LEDs, used by all Philips software and 3rd party software integrating Philips SDKs)

PSPWTSControlClient.dll in the 32 or 64-bit System folder, depending on the OS bitness. When in doubt, log both.

WTS audio redirection client

Philips audio extension driver for RDP/WTS and VMware clients, only used by Philips SpeechExec Enterprise and SpeechExec SDK integrations

XPspSbExtWtsClnt.dll in the 32 or 64-bit System folder, depending on the OS bitness. When in doubt, log both.

WTS mixer redirection client

Philips mixer extension driver for RDP/WTS and VMware clients, only used by Philips SpeechExec Enterprise and SpeechExec SDK integrations

XPSPMixerWtsClnt.dll in the 32 or 64-bit System folder, depending on the OS bitness. When in doubt, log both.

DPM mounter service

Only when DPMs are used: Mounts the DPM drive to the target

DPMMounterSvc.exe in C:\Program Files (x86)\Philips Speech\DPM Mounter Service\

USB library

Philips USB library, responsible for communication between all control client extensions and Philips dictation devices

Pspusblb is not a file. It is a library statically linked to a lot of other Philips drivers. However, you can log it. Find or place the ini file (see configuration below) in the 32 or 64-bit System folder, depending on the OS bitness.