[BRLTTY] TSI braille display protocol

Mario Lang mlang at blind.guru
Mon Oct 4 02:36:36 EDT 2021


deniz sincar <dsincar29 at gmail.com> writes:

> Hello. as i don't understand brltty driver code, i want to learn the
> tsi braille display driver serial communication protocol in a human
> understandable language.

I am afraid we dont have exhaustive protocol description in human
readable form.  Use the source is pretty much the way to go.

> for example what is the algorhythm to rase dots 125, 15, 123 and so
> on. how to empty the braille display.

Both of these questions can pretty easily be answered by
reading the function writeCells() from Drivers/Braille/TSI/braille.c

It constructs the raw bytes of a write request.
A header, some length and start offset bytes, and the actual payload
interleaved with NUL bytes.  If you are writing your code in C, you
could likely take this function almost unchanged and replace the
final call to writeBytes with whatever you use to write to the serial
port.

> i very hardly understand the source code. only what i could do is rase
> a very strange dot pattern on the first 2 sells of the display.
> i want to learn the protocol of braille output, and the routing keys
> because i want to connect it to arduino and output some
> information. or maybe i could do some bluetooth emulators, or other
> things.
> please help me on that, thanks in advance.

As said above, we dont have human readable protocol descriptions in most
cases.  The code is really the best reference you will ever find.
Also, I find your question rather vague.  It looks like you are planning to
do a rewrite of the TSI driver from scratch.  Thats fine if you want to
do it as an exercise, but I am rather lost on how to help you through
the process step by step.  Also, is there a particular reason why you
cant use BrlAPI for your Bluetooth emulator?  I dont see why you should
need to reimplement the TSI protocol from scratch.

P.S.: I have my own use case for a serial to bluetooth bridge.
My goal would be to emulate a display which is supported by iOS,
and bridge from a serial display to an iPad.  I have never tried to
emulate a bluetooth device on a PC, that sounds like a fun project.
And it appears it could be useful to others as well.
Maybe BRLTTY should have such a tool by default?
Does anyone know which iOS supported braille device is most
promising/easy to emulate?

-- 
CYa,
  ⡍⠁⠗⠊⠕


More information about the BRLTTY mailing list