Skip to content


Repository files navigation

Canute UI Travis CI Status

This is the repository for UI (user interface) development for the Canute electronic Braille reader.


./canute_ui runs a graphical display to emulate the hardware by default. The emulated hardware has the same interface as the real hardware, but also runs a graphical program called This shows how the machine will look, and provides the buttons.

usage: canute_ui [-h] [--pi-buttons] [--debug] [--text] [--tty TTY]
                 [--delay DELAY] [--real] [--both] [--fuzz FUZZ_DURATION]

Canute UI

optional arguments:
  -h, --help            show this help message and exit
  --debug               debugging content
  --text                show text instead of braille
  --tty TTY             serial port for the display and button board
  --delay DELAY         simulate mechanical delay in milliseconds in the
  --real                do not run the graphical emulator, run with real
  --both                run both the emulator and the real hardware at the
                        same time
  --fuzz FUZZ_DURATION  run with dummy display (emulated but without any
                        graphics) and press random buttons for duration (in
                        seconds), for debugging
  --dummy               run with the dummy display but without fuzz testing
                        button presses, for debugging

Getting started

Read for installation instructions.


Run the tests:


Run the linter:


Copy and amend the config file

cp config.rc
$EDITOR config.rc

Copy the test books to the home directory (or wherever you specified in config.rc):

cp -r books ~/

Run the UI using the emulator: