Skip to content

Accessibility, RSI and hands-free use

Short answer: if typing hurts, is slow, or is not possible, dictation stops being a convenience and becomes the interface. YazSes is built with that in mind — it calibrates to your voice rather than expecting broadcast-clear speech, it has a mode for dysfluent speech, and it can be triggered without a keyboard at all.

Everything here runs offline, which matters more than usual for this audience: assistive tooling that stops working when the network does is not dependable assistive tooling.

Repetitive strain injury

The common pattern is that you can still type, but every keystroke has a cost, so you want to move the bulk of your text entry off the keyboard without changing how you work.

  • Hold-to-talk keeps you in control. One key held, speak, release. No wake word, no always-listening.
  • It types into whatever has focus — your editor, browser, Slack, terminal — so nothing about your workflow has to change.
  • Voice commands cover the repetitive keystrokes that hurt most: "undo that", "save file", "go to line 42".

If holding a key is itself the problem, see non-keyboard triggers below.

Dysfluent speech — stutter and dysarthria

Mainstream speech recognition is trained on fluent speech and transcribes a stutter literally: "b-b-because" comes out as "b b because". YazSes has an explicit mode for this:

yazses features enable dysfluency
yazses restart

It collapses stutters and repeats — "b-b-because""because" — as a post-processing pass. It is recommended (not experimental), and it is opt-in because collapsing repeats is wrong for people who do not need it.

Related capabilities worth knowing about:

Capability Enable with For
Hesitation-Hold Endpointing yazses features enable hesitation Not being cut off mid-sentence when you pause
Breath-Paced Dictation yazses features enable breath Pacing around breath, not clock timeouts
Whisper-Aware Mode yazses features enable whispermode Speaking quietly, or with limited volume
Involuntary-Vocalization Excision yazses features enable involuntary Filtering involuntary sounds
Vocal-Strain Guard yazses features enable voicehealth Warning before you overuse your voice

Calibrating to your voice

The single biggest accuracy factor is the voice-activity threshold. If it is set for a loud room and you speak quietly, your speech is discarded as silence — the daemon logs Silent audio -- discarding and nothing is typed.

yazses enroll            # guided calibration wizard
yazses mic-level --set   # measure your actual level and write the threshold
yazses doctor --mic      # compare room noise against the current threshold

Lower the threshold for quiet or breathy speech. This is a five-minute fix that resolves the majority of "it doesn't hear me" reports.

Triggers that are not a keyboard

If holding a key is difficult or impossible, the trigger is replaceable — the rest of the pipeline is unchanged:

  • EMG muscle sensor. A USB muscle sensor over serial can act as the hold-to-talk trigger, so a small muscle contraction starts and stops dictation. Configure it under [emg] with the serial device path.
  • Hands-Free Auto-Stop (yazses features enable autostop) ends the burst on silence rather than on key release.
  • Wake-word activation exists but is marked experimental and is not recommended yet — it is listed honestly as such in yazses features.

Eyes-free use

If you cannot or do not want to look at the screen:

yazses features enable read-back

The transcript is spoken back to you with an on-device TTS model (downloaded on first use — still no cloud). Complementary capabilities include Earcon Feedback for non-speech audio cues, Screen-Reader Pacing to cooperate with a screen reader, and Interruptible Proofreading.

Driving the pointer by voice

Where there is no accessibility tree to target, a numbered grid overlay lets you move and click by voice:

yazses features enable mousegrid

Say a grid number to move the cursor, then "click". There is also a Head-Pointer capability, and an experimental camera-based Glance-Type mode that focuses the window you look at (X11 only — Wayland does not allow an application to focus another window).

Honest limits

  • Several of the more exotic input modalities (vocal joystick, mouth-sound switch access, pitch-contour gestures, lip-reading, sign-language input) are marked experimental — not advised yet in yazses features. They exist, they are not yet dependable, and the CLI says so rather than pretending otherwise.
  • Dictation accuracy for heavily dysarthric speech varies a great deal by individual. The opt-in learning loop (yazses tune) is designed to close that gap from your own corrections over time, but it needs usage to work.
  • Accessibility feedback is the most valuable feedback this project can receive. If something does not work for you, please open an issue.