BRLTTY(1)
β¨ BRLTTY(1) β¨
okay so this is the BRLTTY User's Manual page for brltty, bestie. It's giving braille display driver energy for Linux/Unix. π
πΈ NAME πΈ
brltty β refreshable braille display driver for Linux/Unix.
π¦ SYNOPSIS π¦
brltty [option ...]
π DESCRIPTION π
So basically, brltty is a background process (daemon) which provides access to the console screen (when in text mode) for a blind person using a refreshable braille display. It drives the braille display, and provides complete screen review functionality. Some speech capability has also been incorporated. periodt. β¨
π₯ OPTIONS π₯
Options can be passed to brltty in a number of ways. From most to least influential, these are:
- Command Line Options
- Boot Parameters
- Environment Variables (if the
-E(--environment-variables) option is in effect) - The Configuration File
- Built-in Defaults
π Command Line Options π
The options are processed sequentially from left to right. If an option is specified more than once, or in case of a conflict, the rightmost specification takes precedence.
The following options are supported:
-a table,--attributes-table=β The path to the attributes table. Relative paths are anchored at/etc/brltty/Attributes. The.atbextension is optional. The built-in default isleft_right.atb.-b driver,...|auto,--braille-driver=β The driver for the braille display (see Driver Specification). The built-in default isauto.-c table,--contraction-table=β The path to the contraction table. Relative paths are anchored at/etc/brltty/Contraction. The.ctbextension is optional.-d device,...,--braille-device=β The device to which the braille display is connected. The built-in default isusb:,bluetooth:.
The general form of a braille device specification is qualifier:data. For backward compatibility with earlier releases, if the qualifier is omitted then serial: is assumed. The following device types are supported:
- Bluetooth β For a bluetooth device, specify
bluetooth:address. The address must be six two-digit hexadecimal numbers separated by colons, e.g.01:23:45:67:89:AB. - Serial β For a serial device, specify
serial:device. Theserial:qualifier is optional (for backward compatibility). If a relative path is given then it's anchored at/dev/(the usual location where devices are defined on a Unix-like system). The following device specifications all refer to the primary serial device on Linux:serial:ttyS0,serial:/dev/ttyS0,ttyS0,/dev/ttyS0. - USB β For a USB device, specify
usb:.brlttywill search for the first USB device which matches the braille display driver being used. If this is inadequate, e.g. if you have more than one USB braille display which requires the same driver, then you can refine the device specification by appending the serial number of the display to it, e.g.usb:12345. N.B.: The "identification by serial number" feature doesn't work for some models because some manufacturers either don't set the USB serial number descriptor at all or do set it but not to a unique value.
A comma-delimited list of braille devices may be specified. If this is done then autodetection is performed on each listed device in sequence. This feature is particularly useful if you have a braille display with more than one interface, e.g. both a serial and a USB port.
-e,--standard-errorβ Write logs to standard error rather than to the system log (useful for debugging).-f file,--configuration-file=β The path to the configuration file. Relative paths are anchored at the current working directory. The built-in default is/etc/brltty.conf.-h,--helpβ Print a command line usage summary (commonly used options only), and then exit.-i name,--speech-input=β The file system object (FIFO, named pipe, named socket, etc) which gives other applications access tobrltty's speech driver for text-to-speech conversion. It's created at start-up and removed at termination. Relative paths are anchored at the current working directory. The built-in default is that the file system object is not created.-k table,--keyboard-table=β The path to the keyboard table. Relative paths are anchored at/etc/brltty/Keyboard. The.ktbextension is optional.-l level,--log-level=β The minimum severity level for messages written to the log. Any of the following numbers, or any abbreviation of their corresponding names, may be specified:0β emergency1β alert2β critical3β error4β warning5β notice6β information7β debug
The built-in default is notice.
-m device,--midi-device=β The device to use for the Musical Instrument Digital Interface. For ALSA it'sclient:port, where each may be either a number or a case-sensitive substring of its name. For other interfaces it's the full path to an appropriate system device. The built-in default is:- Linux/ALSA β the first available MIDI output port
- Linux/OSS β
/dev/sequencer
-n,--no-daemonβ Remain in the foreground (useful for debugging).-o name=value,...,--override-preference=β Override a preference setting. For the location of the preferences file, see the-F(--preferences-file) option.-p device,--pcm-device=β The device to use for digital audio. For ALSA it'sname[:argument,...]. For other interfaces it's the full path to an appropriate system device. The built-in default is:- FreeBSD β
/dev/dsp - Linux/ALSA β
hw:0,0 - Linux/OSS β
/dev/dsp - NetBSD β
/dev/audio - OpenBSD β
/dev/audio - Qnx β the preferred PCM output device
- Solaris β
/dev/audio
- FreeBSD β
-q,--quietβ Suppress the start-up messages. This is done by reducing the default log level (see the-l(--log-level=) option) towarning(informationif either-v(--verify) or-V(--version) is also specified).-r,--release-deviceβ Release the device to which the braille display is connected when the current screen or window can't be read.-s driver,...|auto,--speech-driver=β The driver for the speech synthesizer (see Driver Specification). The built-in default isauto.-t table,--text-table=β The path to the text table. Relative paths are anchored at/etc/brltty/Text. The.ttbextension is optional. The built-in default isen-nabcc.ttb(the North American Braille Computer Code).-v,--verifyβ Print the start-up messages and then exit. This always includes the versions ofbrlttyitself, the server side of its application programming interface, and each of the selected braille and speech drivers. If the-q(--quiet) option isn't also specified then it also includes the values of the options after all sources have been considered. If more than one braille driver and/or more than one braille device has been specified then braille display autodetection is performed. If more than one speech driver has been specified then speech synthesizer autodetection is performed.-x driver,--screen-driver=β The screen driver. The built-in default is operating system appropriate.-A name=value,...,--api-parameters=β Parameters for the application programming interface. If the same parameter is specified more than once then the rightmost specification is used. Parameter names may be abbreviated.-B [driver:]name=value,...,--braille-parameters=β Parameters for the braille display driver. If the same parameter is specified more than once then the rightmost specification is used. Parameter names may be abbreviated. If a parameter assignment is qualified with a driver identification code then it's only processed if that braille display driver is being used.-D directory,--drivers-directory=β The path to the directory which contains the dynamically loadable driver objects. The built-in default is/usr/lib64/brltty.-E,--environment-variablesβ Recognize environment variables.-F file,--preferences-file=β The path to the preferences file. Relative paths are anchored at/var/lib/brltty. The built-in default isbrltty.prefs.-H,--full-helpβ Print a command line usage summary (all options), and then exit.-I,--install-serviceβ (Windows only) Installbrlttyas the BrlAPI service so that it will be automatically started when the system is booted, and so that applications can know that a BrlAPI server is running.-K arg,--keyboard-properties=β Properties of the keyboard.-L file,--log-file=β The file to which log messages are written. Relative paths are anchored at the current working directory. The default is to send log messages to the system log.-M csecs,--message-delay=β The message hold time in hundredths of a second. The built-in default is400(4 seconds).-N,--no-apiβ Don't start the application programming interface.-P file,--pid-file=β The full path to the process identifier file. If this option is supplied,brlttywrites its process identifier (pid) into the specified file at start-up. The file is removed whenbrlttyterminates.-R,--remove-serviceβ (Windows only) Remove the BrlAPI service so thatbrlttywill not be automatically started when the system is booted, and so that applications can know that no BrlAPI server is running.-S [driver:]name=value,...,--speech-parameters=β Parameters for the speech synthesizer driver. If the same parameter is specified more than once then the rightmost specification is used. Parameter names may be abbreviated. If a parameter assignment is qualified with a driver identification code then it's only processed if that speech synthesizer driver is being used.-Tdirectory,--tables-directory=directory β where the tables live, bestie: text, contraction, attributes, keyboard, and input tables all chill in this directory. Built-in default is/etc/brltty.-Udirectory,--updatable-directory=directory β the directory holding files that can be updated. Built-in default is/var/lib/brltty.-V,--versionβ prints the versions ofbrlttyitself, the server side of its application programming interface, and every driver that got configured in at build-time, then dips out. And if you didn't also pass-q(--quiet), it prints copyright info too. π-Wdirectory,--writable-directory=directory β the directory that can be written to. Built-in default is/run/brltty.-Xname=value,...,--screen-parameters=β parameters for the screen driver. If you specify the same parameter more than once, the rightmost one wins (last one standing, periodt). Parameter names may be abbreviated. β¨-Ytext,--start-message=β the text shown when the braille driver starts, and spoken when the speech driver starts. Built-in default isBRLTTY 6.8.-Ztext,--stop-message=β the text shown when the braille driver stops. Built-in default isBRLTTY stopped.
π Environment Variables π
Okay so these environment variables are recognized if you specify the -E (--environment-variables) option. No -E, no vibes:
BRLTTY_API_PARAMETERS=name=value,...β parameters for the application programming interface. Peep the-A(--api-parameters=) option for details.BRLTTY_ATTRIBUTES_TABLE=tableβ the attributes table. See the-a(--attributes-table=) option for details.BRLTTY_BRAILLE_DEVICE=device,...β the device the braille display is connected to. See the-d(--braille-device=) option for details.BRLTTY_BRAILLE_DRIVER=driver,...|autoβ the driver for the braille display. See the-b(--braille-driver=) option for details.BRLTTY_BRAILLE_PARAMETERS=[driver:]name=value,...β parameters for the braille display driver. See the-B(--braille-parameters=) option for details.BRLTTY_CONFIGURATION_FILE=fileβ the configuration file. See the-f(--configuration-file=) option for details.BRLTTY_CONTRACTION_TABLE=tableβ the contraction table. See the-c(--contraction-table=) option for details.BRLTTY_MIDI_DEVICE=deviceβ the device to use for the Musical Instrument Digital Interface. See the-m(--midi-device=) option for details.BRLTTY_PCM_DEVICE=deviceβ the device to use for digital audio. See the-p(--pcm-device=) option for details.BRLTTY_PREFERENCES_FILE=fileβ the preferences file. See the-F(--preferences-file=) option for details.BRLTTY_RELEASE_DEVICE=on|offβ release the device the braille display is connected to when the current screen or window can't be read. See the-r(--release-device) option for details.BRLTTY_SCREEN_DRIVER=driverβ the screen driver. See the-x(--screen-driver=) option for details.BRLTTY_SCREEN_PARAMETERS=name=value,...β parameters for the screen driver. See the-X(--screen-parameters=) option for details.BRLTTY_SPEECH_DRIVER=driver,...|autoβ the driver for the speech synthesizer. See the-s(--speech-driver=) option for details.BRLTTY_SPEECH_INPUT=nameβ the file system object that gives other applications access tobrltty's speech driver for text-to-speech conversion. See the-i(--speech-input=) option for details.BRLTTY_SPEECH_PARAMETERS=[driver:]name=value,...β parameters for the speech synthesizer driver. See the-S(--speech-parameters=) option for details.BRLTTY_TEXT_TABLE=tableβ the text table. See the-t(--text-table=) option for details.
π The Configuration File π
Blank lines? Ignored, we don't see them. And if the character # shows up anywhere on a line, everything from that # to the end of the line is treated as a comment. Sashay away, comment text. π
These are the configuration directives that are supported, and yes, all of them:
api-parameters name=value,...β parameters for the application programming interface. See the-A(--api-parameters=) option for details.attributes-table tableβ the attributes table. See the-a(--attributes-table=) option for details.braille-device device,...β the device the braille display is connected to. See the-d(--braille-device=) option for details.braille-driver driver,...|autoβ the driver for the braille display. See the-b(--braille-driver=) option for details.braille-parameters [driver:]name=value,...β parameters for the braille display driver. See the-B(--braille-parameters=) option for details.contraction-table tableβ the contraction table. See the-c(--contraction-table=) option for details.midi-device deviceβ the device to use for the Musical Instrument Digital Interface. See the-m(--midi-device=) option for details.pcm-device deviceβ the device to use for digital audio. See the-p(--pcm-device=) option for details.preferences-file fileβ the preferences file. See the-F(--preferences-file=) option for details.release-device on|offβ release the device the braille display is connected to when the current screen or window can't be read. See the-r(--release-device) option for details.screen-driver driverβ the screen driver. See the-x(--screen-driver=) option for details.screen-parameters name=value,...β parameters for the screen driver. See the-X(--screen-parameters=) option for details.speech-driver driver,...|autoβ the driver for the speech synthesizer. See the-s(--speech-driver=) option for details.speech-input 0meβ the file system object that gives other applications access tobrltty's speech driver for text-to-speech conversion. See the-i(--speech-input=) option for details.
Not me pointing out that this one is written as0mein the manual and notnameβ I'm just the messenger, bestie, the typo is not mine. π
speech-parameters [driver:]name=value,...β parameters for the speech synthesizer driver. See the-S(--speech-parameters=) option for details.text-table tableβ the text table. See the-t(--text-table=) option for details.
π₯ Driver Specification π₯
A braille display driver or a speech synthesizer driver has to be specified by its identification code. Here's the whole roster, alphabetically iconic:
alβ Alvaanβ Androidatβ Albatrossbaβ BrlAPIbcβ BrailCommbdβ Braudiblβ BrailleLitebmβ Baumbnβ BrailleNotecbβ CombiBrailleceβ Cebracnβ Canutedpβ DotPadecβ EcoBrailleenβ eSpeak-NGesβ eSpeakeuβ EuroBraillefaβ FrankAudiodataflβ FestivalLitefsβ FreedomScientificfvβ Festivalgsβ GenericSayhdβ Hedohmβ HIMShtβ HandyTechhwβ HumanWareirβ Irisicβ Inceptorlbβ Libbrailleltβ LogTextmbβ MultiBraillemdβ MDVmmβ BrailleMemomnβ MiniBraillempβ Mikropuhemtβ Metecnoβ no drivernpβ NinePointpgβ Pegasuspmβ Papenmeiersdβ SpeechDispatcherskβ Seikaswβ Swiftthβ Thetatnβ TechniBraille Systems Inc.tsβ Telesensory Systems Inc.vdβ VideoBraillevoβ Voyager, Part232 (serial adapter), BraillePen/EasyLinkvsβ VisioBraillevvβ ViaVoicexsβ ExternalSpeech
You can hand it a comma-delimited list of drivers. If you do that, autodetection happens using each listed driver in sequence. And heads up β you might genuinely need to experiment to figure out the most reliable order, because some drivers autodetect better than others. It's giving trial and error, and that's okay. π
If you specify the single word auto, then autodetection is performed using only those drivers that are known to be reliable for this purpose. Lowkey the safe pick.
π SEE ALSO π
For the full documentation, go look at brltty's on-line manual at [http://brltty.app/documentation.html].
That's the whole page, bestie, you made it to the end and you ate. π β¨
This manual page is for brltty version 6.8, and it's dated July 2025. Slay, go forth, and may your display autodetect on the first try. π¦
π¦ where this page comes from
- fedora 43: brltty 6.8-4.fc43 Β· LGPL-2.0-or-later AND LGPL-2.1-or-later AND GPL-2.0-or-later
- fedora 44: brltty 6.8-8.fc44 Β· LGPL-2.0-or-later AND LGPL-2.1-or-later AND GPL-2.0-or-later
- Copyright (C) 1995-2025 by The BRLTTY Developers
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms