Version V1.0, March/April 2000

Driver for Tieman B.V.'s MultiBraille series

Copyright (C) 2000 by Wolfgang Astleitner.
( Modification of CombiBraille-driver: 
  Copyright (C) 1995, 1996 by Nikhil Nair.
)

This driver is part of BRLTTY, and as such it is placed under the
terms of the GNU Lesser General Public License, as published by the Free
Software Foundation.  Please see the file LICENSE-LGPL in the top-level
directory for details.

This driver is maintained by Wolfgang Astleitner <wolfgang.astleitner@liwest.at>.

-----------------------------------------------------------------------------

SUPPORTED HARDWARE
==================

This driver has only been tested on a "tieman Braillenotebook V2.1" with a
build-in MultiBraille MB145CR, but the following hardware should also be
supported:

- Brailleline 125 (MB125CR)
- Brailleline 145 (MB145CR) / PICO II
- Brailleline 185 (MB185CR)

I received the technical documentation for these displays from tieman germany
and developed the driver so that it should be able to identify the above listed
displays.

Problem:
the tech. doc. is poor (I know that my spoken/written english is not
good, but what I saw there made me believe that I am a native speaker ;-)
You have to be very creative to get something out from these docs...
A lot of trial and error-programming...

I did not include support for the speech synthesiser yet.
Mainly because I didn't get the clue how to realize it - the section in the
tech. docs about this is too poor or I didn't just get it ...


CONFIGURATION AND COMPILATION
=============================

For general information about configuring and compiling BRLTTY, please
see the BRLTTY manual.

Any MultiBraille-specific configuration is done by editing the
braille.h file in this directory.  However, such configuration is
probably unnecessary as the display size is autodetected during
initialisation at run-time.

By default, BRLTTY can be started even if the MultiBraille is switched
off or not connected - it will wait in the background, checking every
five seconds for a display.  This behaviour can be changed by
adjusting the values of ACK_TIMEOUT and MAX_ATTEMPTS.

The driver should probably set the autorepeat delay and rate of the
Braille display's keys during initialisation.  This is yet to be
implemented.

The braille dot keys, the front keys and 3 cursor routing keys can be
customized in 'tables.h' (read also below).


GETTING STARTED
===============

The MultiBraille must be connected to the serial device you chose
during configuration, unless of course you use the -d option to
BRLTTY.  The serial interface must be selected; this is done by
holding the left-most thumb key while turning on the display.  BRLTTY
should then display its startup message before starting to echo the
screen.


KEY BINDINGS
============

The key bindings - particularly with regard to the Braille dot keys -
have been redesigned from the DOS driver provided with the
CombiBraille.  However, the five thumb keys work similarly.  If we
label them A to E from left to right, then A is FWINLT (go left one
full window width), B is LNUP (go up one line), D is LNDN (go down one
line) and E is FWINRT (go right one full window width).  C toggles
cursor tracking, so C twice moves the window to the cursor position.

This can be customized in 'tables.h' (array cmd_T_trans[]).

The extra cursor routing key (over the gap between the status cells
and the main display) is used to bring up the help screen.  Pressing
this key again goes back to normal operation.  The help screen has a
full list of key bindings (apart from the cursor routing keys); it can
be found in plain text format in the file help.txt in this
directory.  The dot keys have been numbered (from left to right): 3,
2, 1, 4, 5, 6; capital letters in brackets refer to thumb keys,
e.g. (A) means A alone and (CC) means C twice.

All functions bound to the thumb keys can also be executed by using
the Braille dot keys.  The converse, however, is not the case, as
there are far more available combinations of Braille dot keys than of
thumb keys.

The commands bound to the Braille dot keys can be customized in 'tables.h'
(array cmd_S_trans[]).

Cursor Routing Keys
-------------------

The keys above the 20/40/80 cells of the main display can be used for
a more accurate form of cursor routing, specifying that particular
position rather than the start of the Braille window.

The extra six cursor routing keys have special meanings.  The sixth
from the left toggles help mode; the fifth is the RESET button and 
the fourth is the CONFMENU button.
Key number 1 seems to do nothing (not connected? - tech. doc says something
about that - funny, why then even put it there ????)

Cursor routing keys 4 to 6 can be customized in 'tables.h', array cmd_R_trans[].

Special Cut Function
--------------------

The main cursor routing keys, together with the leftmost two of the
working extra ones (key number 2 and 3), can be used for a more advanced
form of cutting.

To mark the top left corner of the rectangle to be cut, press the
leftmost cursor routing key followed immediately by the one over the
appropriate cell.  Then, to mark the bottom right corner, press the
second cursor routing key followed immediately by the one over the
appropriate cell.


THE STATUS CELLS
================

The status cells are used slightly differently from the DOS driver.
The first four cells are used to denote the positions of the cursor
and the Braille window, and form two lines of four numbers.  The top
line is the cursor position in the format CCRR where CC is the column
number and RR is the row number.  The second line is the window
position in the same format.  The top left corner of the screen is
0000, in this notation.

The fifth status cell is a set of flags, as follows:

Dot Number      Dot Present Means
     1          The screen is frozen
     2          Attribute display is on
     3          Audio signals are on
     4          The cursor is visible
     5          Cursor shape is block
     6          Cursor blink is on
     7          Cursor tracking is on
     8          Sliding window is on


THANKS
======

Guenter Grill   The owner of the braille display
(owner)         Testing, tips, phone calls to tieman germany and netherl.
                to organise technical documentation (was a really hard job -
                tieman ignored my emails, but Guenter didn't give up calling -
                finally we've received the needed information ;-)

Mario Lang      Tips, explanations, ...
(TU Graz)       Mario is also using linux and brltty and he had access to a
                combibraille. So he could help me finding the differences
                between CombiBraille and MultiBraille

Nicolas Pitre   For always emailing back so fast when I needed some
(brltty)        information about brltty itself

tieman          For sending me technical documentation


PERSONAL NOTES
==============

I myself can't read braille. Neither with sensing nor visually.
For me it's absolutely impressing how blind people work on computers
using a braille display that only displays 40 chars / 1 line.
The information (the whole screen) needs to be 'rebuilt internally'.
I even can't remember a number with six digits ... It is amazing to me.

My favorite resolution is 1280x1024. This is what blind people only can
dream about. When writing this driver I came in contact with the 'other
world'. A world without coloured text, fat-printing, highlighted text, 
and so on - finally I learned to use 'lynx'! (I began to like this tool).

At the beginning I only thought that I need to install linux on Guenter's
notebook.
But - his braille display wasn't supported. So I wrote this driver. I learned
many new things when writing the driver and I hope that this driver will help
many people who need braille displays. It was my first contact with braille and
I hope the result is not that bad ;-)

If you find bugs, have some comments (solving something in a better way, ..),
please contact me:

Wolfgang Astleitner
Email: wolfgang.astleitner@liwest.at

Problem: Responses will take some time because I am not the owner of the
braille-notebook. So if I want to build in improvements I have to borrow
the notebook from Guenter again!


PS: Please don't mind my english. As I wrote before, it's not good...


*******
This readme is mainly based on CombiBraille/README
Nikhil Nair
Trinity College, CAMBRIDGE, CB2 1TQ, England
Tel.: +44 1223 368353
Email: nn201@cus.cam.ac.uk

