LinuxCommandLibrary

brltty

Provide braille display access to the console

SYNOPSIS

brltty [options...]

PARAMETERS

-h, --help
    Displays a brief help message and exits.

-v, --version
    Prints the brltty version information and exits.

-b <driver>, --braille-driver=<driver>
    Specifies the braille display driver to use (e.g., 'al' for Alva, 'bm' for BrailleMemo).

-s <driver>, --speech-driver=<driver>
    Specifies the software speech synthesizer driver to use (e.g., 'espeak' for eSpeak, 'flite' for Flite).

-p <port>, --port=<port>
    Defines the communication port for the braille display or speech device (e.g., '/dev/ttyS0', 'usb:', 'bluetooth:').

-f, --foreground
    Runs brltty in the foreground instead of detaching and running as a daemon.

-C <configfile>, --config-file=<configfile>
    Specifies an alternate configuration file to load instead of the default /etc/brltty.conf.

-d, --debug
    Enables verbose debugging output, useful for troubleshooting issues.

-L <logfile>, --log-file=<logfile>
    Redirects log output to the specified file instead of the default system log.

DESCRIPTION

brltty is a powerful background process (daemon) that enables blind and visually impaired users to interact with the Linux text console. It acts as a bridge between the operating system's text-mode output and a refreshable braille display or a software speech synthesizer. By translating screen content into braille dots or spoken words, brltty provides essential accessibility for console-based tasks, system administration, or early boot environments where graphical interfaces might not be available or desired.

It supports an extensive array of braille devices and speech engines, offering flexibility to users. Furthermore, brltty allows navigation of the console, inputting commands, and reading output directly from the braille display's keys or through specialized keyboard commands, making the traditionally visual console environment fully accessible.

CAVEATS

Setting up brltty often requires careful identification of the correct braille or speech driver and the associated communication port. Proper user or system permissions (e.g., access to serial ports or USB devices) are crucial for its operation, sometimes requiring it to run as a privileged process. brltty is primarily designed for the text-mode console environment and does not directly provide accessibility for graphical desktop environments, which typically rely on dedicated screen readers like Orca or NVDA.

CONFIGURATION FILE

The primary configuration for brltty is typically managed via the /etc/brltty.conf file. This file specifies default drivers, port settings, display options, key bindings, and other behavioral parameters. Changes to this file usually require restarting the brltty service to take effect.

DAEMON OPERATION

brltty is designed to run as a system service, usually started automatically at boot by systemd or a similar init system. This ensures that braille and speech access is available from the earliest stages of the system's boot process, including login prompts and recovery modes, without requiring manual intervention.

DRIVER MODULES

brltty's extensibility comes from its modular architecture. It utilizes specific driver modules for each supported braille display and speech synthesizer. These modules handle the low-level communication protocols and specific features of the diverse hardware and software devices it supports, allowing for broad compatibility.

HISTORY

brltty has a long and significant history in the Linux accessibility landscape, with its development beginning in the late 1990s (circa 1996-1997). It was conceived to provide essential low-level access to the Linux console for blind users, a critical gap at the time. Over the decades, it has continuously evolved, adding support for a vast array of braille displays and software speech synthesizers, and remains a cornerstone tool for console accessibility within the Linux ecosystem, maintained by a dedicated community.

SEE ALSO

systemctl(1), tmux(1), screen(1), getty(8), udev(7)

Copied to clipboard