Keyclick User's Guide

What to try when something doesn't work

        Introduction Using Keyclick Keyclick Application Troubleshooting Getting Help FAQ Thank You! Reviews & Comments About Us

No longer works on MacOS Sierra or Later

Due to changes in the way Apple configures Accessability preferences, the KeyclickServer (inside

the preference pane bundle) may no longer be authorized to monitor Keystrokes.  Navigate to:

System Preferences > Security > Privacy > Accessibility

Add System Preferences to the list of authorized apps.  Then restart the KeyclickServer by

turning off all sounds (Keyclick, scroll, etc.) and exiting the Keyclick preference pane.

Alternatively, you can just restart your computer.

For those who may be curious: Authorizing the the KeyclickServer application inside the

preference pane bundle no longer works. The application that launches it needs to be authorized

which in this case is System Preferences since preference panes are System Preferences plugins.

No Sound

Check that you have you enabled "Play user interface sound effects" in the Sound

preferences panel and that other "Alert Sounds" are working?

Check that you have you enabled access for assistive devices in the Universal

Access panel.

Troubleshooting

Keyclick itself is fairly simple.  It registers a Quartz Event Tap to receive keystroke events and

calls SystemSoundPlay() to play a previously loaded sound for each matching event.  The rest is

just user interface.

There are two things that might interrupt normal operation:

(1) Failure to receive keystroke events.  It turns out any application can request to deny other

applications the ability to monitor keystrokes by enabling "secure input mode".  Normally this is

used for password fields to prevent inadvertent logging of user passwords, but some programs

get confused and don't properly enable and disable this feature only when needed.

(2) Sound playback.  There are many options for controlling sound playback and many programs

that try to configure them.  User Interface Sound Effects must be enabled.  An appropriate

output device selected, and the playback volume set to an audible level.  Keyclick plays what are

called "alert sounds" (or "system sounds") which are controlled separately from the audio

playback path used by iTunes and other audio media. If the click sound doesn't appear on the

expected output device, try setting the alert sound output device in Audio system preferences,

or selecting "Use System Sound" under the More Options tab in Keyclick.

To resolve the first issue, I suggest downloading Event Taps Testbench from here:

<http://prefabsoftware.com/eventtapstestbench/

This will show you that the "KeyclickServer" process has installed a Quartz Event Tap, and if you

select Monitor Hardware will indicate when keystrokes are successfully tapped or intercepted.

To resolve the second issue, I suggest opening the "Sound" preference panel and verify whether

clicking on an alert sound causes it to playback as expected.  If not, you may need to re-set the

output device or volume for alert sound playback.

Finally, you can open Apple's Console.app to view the "system.log".  If Keyclick encounters an

unexpected problem, it will normally write a message here indicating what happened from its

perspective.  The Keyclick Preference panel normally configures a KeyclickServer process that

performs the actual work.  The KeyclickServer should start anytime Keyclick is enabled, and stop

when Keyclick is turned off and you exit from the Keyclick Preference Pane.  You can verify this

in Apple's Activity Monitor and also watch the Quartz Event Tap being installed and removed

using Event Taps Testbench.

Trouble with Registration

Open Apple's Console.app to examine the "system.log".  If the KeyclickServer reports that your

trial has expired you can correct this problem by removing both:

/Library/Application\ Support/Sustainable\ Softworks/Keyclick_key

and

~/Library/Application\ Support/Sustainable\ Softworks/Keyclick_key

Then re-enter your registration data.  This problem could occur if the PrefPane and underlying

KeyclickServer get out of synch over which of these files to use because the directory

permissions have changed.

Message: Registration data could not be written

In some cases, the logged in user may not have write access to one of the folders in the file path

shown above (also listed in the message).  You can correct this using the Finder's Get Info

command.  Alternatively, you can create a plain text file named "Keyclick_key" with the XML

plist from the message you received with your registration data and place it at the location

shown above (or in the message).

Notice /Library is at the top level of your hard drive, where as ~/Library is inside your Home

folder.

I designed the registration process to work for any user on your system so you would only need

to apply your registration data once when switching among user accounts. Only later I

discovered that the owner of files outside of your home directory can change when you upgrade

or migrate from one computer to another. Also, the Migration Assistant will not automatically

transfer files in shared directories. While most users are not effected, over the years it can be a

hassle. You can Email me directly if you need further assistance.

◀ Previous   Next ▶