From emassey0135 at gmail.com Wed Jul 2 00:37:57 2025 From: emassey0135 at gmail.com (Elijah Massey) Date: Tue, 1 Jul 2025 19:37:57 -0500 Subject: [BRLTTY] Monarch BRLAPI Server Message-ID: Hello, I now have a working BRLAPI server running on the Monarch. First I wrote a library in Rust to parse and write BRLAPI packets. Then I wrote a simple server based on this library, and wrote an Android app that runs on the Monarch and displays Braille output from this server on the Monarch's dot matrix. After running the app, I can set braille-driver to ba and the ba:host parameter to the Ip address of the Monarch, and start BRLTTY, and have my terminal displayed on the Monarch. Each line of text is displayed as its own line of Braille, and because of this I have found it useful to run "stty cols 32", so that the terminal is 32 columns wide and text is not cut off. This also works with Orca and speechd-el, with them connecting to the local BRLTTY instance which forwards their requests to the Monarch. It even works with NVDA, if you install BRLTTY on Windows, set the config values mentioned above, start it, and set NVDA's Braille display setting to BRLTTY. However, it seems that only BRLTTY itself has good multi-line Braille support, where it will display 10 lines of a document on the Monarch. NVDA, Orca, and Speechd-el only display the current line of text. Right now it doesn't support sending keycodes, Braille commands, cursor routing, or panning yet, but the foundations of these things are there. It also doesn't support the parameter request and update packets yet, or send error packets. So it's still very much incomplete, although it's already useful for displaying the terminal in Braille. If you want to try it, it's on Github at https://github.com/emassey0135/monarch-brlapi-server . To build it, you should only need Java and Cargo installed, although you might need to run "rustup target add aarch64-linux-android" first. Then just run "./gradlew assembleDebug", and you will find an APK in app/build/outputs/apk/debug or something like that. Sent from my iPhone From kperry at blinksoft.com Wed Jul 2 03:46:28 2025 From: kperry at blinksoft.com (kperry at blinksoft.com) Date: Tue, 1 Jul 2025 23:46:28 -0400 Subject: [BRLTTY] Monarch BRLAPI Server In-Reply-To: References: Message-ID: <004201dbeb03$e47abd80$ad703880$@blinksoft.com> I sent this to APH -----Original Message----- From: BRLTTY On Behalf Of Elijah Massey Sent: Tuesday, July 1, 2025 8:38 PM To: brltty at brltty.app Subject: [BRLTTY] Monarch BRLAPI Server Hello, I now have a working BRLAPI server running on the Monarch. First I wrote a library in Rust to parse and write BRLAPI packets. Then I wrote a simple server based on this library, and wrote an Android app that runs on the Monarch and displays Braille output from this server on the Monarch's dot matrix. After running the app, I can set braille-driver to ba and the ba:host parameter to the Ip address of the Monarch, and start BRLTTY, and have my terminal displayed on the Monarch. Each line of text is displayed as its own line of Braille, and because of this I have found it useful to run "stty cols 32", so that the terminal is 32 columns wide and text is not cut off. This also works with Orca and speechd-el, with them connecting to the local BRLTTY instance which forwards their requests to the Monarch. It even works with NVDA, if you install BRLTTY on Windows, set the config values mentioned above, start it, and set NVDA's Braille display setting to BRLTTY. However, it seems that only BRL TTY itself has good multi-line Braille support, where it will display 10 lines of a document on the Monarch. NVDA, Orca, and Speechd-el only display the current line of text. Right now it doesn't support sending keycodes, Braille commands, cursor routing, or panning yet, but the foundations of these things are there. It also doesn't support the parameter request and update packets yet, or send error packets. So it's still very much incomplete, although it's already useful for displaying the terminal in Braille. If you want to try it, it's on Github at https://github.com/emassey0135/monarch-brlapi-server . To build it, you should only need Java and Cargo installed, although you might need to run "rustup target add aarch64-linux-android" first. Then just run "./gradlew assembleDebug", and you will find an APK in app/build/outputs/apk/debug or something like that. Sent from my iPhone _______________________________________________ This message was sent via the BRLTTY mailing list. To post a message, send an e-mail to: BRLTTY at brltty.app For general information, go to: http://brltty.app/mailman/listinfo/brltty