Initial commit: Chatter — assistive-writing app for reMarkable Paper Pro Move
Direct-framebuffer ink pipeline (stock-quality strokes), finger-wipe erase, growable scrolling canvas with color-ghost cleanup, bidirectional toggle with a persistent 4-finger return launcher, instant button feedback. Includes prebuilt aarch64 binaries (dist/), build/deploy/install scripts, a user guide, and a complete technical reference. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
96
doc/Chatter_application_proposal.md
Normal file
96
doc/Chatter_application_proposal.md
Normal file
@@ -0,0 +1,96 @@
|
||||
# Chatter — A custom application for the reMarkable tablet
|
||||
|
||||
## Background
|
||||
|
||||
I am helping someone who has a hard time speaking and who is using a
|
||||
[reMarkable tablet](https://image.email.remarkable.com/lib/fe3511737364047c771479/m/1/e39f7595-fc99-4f8c-b7e3-dde042451668.pdf)
|
||||
in conversations to write what she cannot say. I believe that the
|
||||
reMarkable table is the best choice for a digital handwriting interface.
|
||||
However, the tablet is designed for taking notes that can be preserved or even
|
||||
transformed into digital text. It is not intentionally designed to be used as an
|
||||
*assistive-speech device*. There are also a wide variety of customizable options
|
||||
that are typically unnecessary if using the table in that way.
|
||||
|
||||
## Project goal
|
||||
|
||||
I would like to create a replacement for the reMarkable graphical user interface
|
||||
(GUI) that would be tailored for using the table as an assistive-speech device.
|
||||
This interface would not replace the standard GUI; choosing tablet settings for
|
||||
the writing style or other interface parameters would still be done in the
|
||||
standard GUI. This assumes, however, that the user can change settings as needed
|
||||
in the normal way (or that technical help is available when necessary).
|
||||
The goal here is to make the interaction with the tablet during conversation as
|
||||
simple as possible.
|
||||
|
||||
The custom application's name is "Chatter", with the implication that
|
||||
conversational interaction can be accelerated. The word also can refer to the
|
||||
speaker as well as to the result of speaking.
|
||||
|
||||
## User-interface elements
|
||||
|
||||
In watching the user with the tablet's standard GUI, I have noticed a confusion
|
||||
about whether writing or erasing is the active mode. A simple action like
|
||||
clearing the page requires several user-interface gestures. The user's
|
||||
inability to easily use the table is often not wholly due to a lack of technical
|
||||
understanding but a failure to remember technical details when they are not
|
||||
intuitive.
|
||||
|
||||
Chatter implements four actions, ordered here by their potential frequency of
|
||||
use:
|
||||
|
||||
- *Erase part of the text* — This should be simple and intuitive gesture. For
|
||||
example, I have seen the user wiping her fingers back and forth across some
|
||||
text to erase it.
|
||||
|
||||
- *Erase the page* — Erasing the entire page should be a single gesture. The
|
||||
blank page that results continues to use the current pen styling and other
|
||||
parameters set in the standard GUI.
|
||||
|
||||
- *Save current text to a file named by time* — The current page is saved
|
||||
with an automatically generated name that contains a human-readable text of the year,
|
||||
month, date, hour, minutes and seconds. The seconds may not be necessary, but
|
||||
I would rather have an elaborate name than risk losing a previously saved
|
||||
file. These Chatter transcripts should be saved to a separate directory to
|
||||
avoid cluttering the main screen. Deleting and renaming these files are
|
||||
possible through the standard GUI; a tutorial about that should be provided if
|
||||
the user expresses interesting in managing the transcripts in that way.
|
||||
|
||||
- *Toggle between the standard GUI and Chatter* — The standard GUI should still
|
||||
be available through a single gesture; Chatter augments the tablet's interface
|
||||
and does not replace it. However, returning to Chatter will require an
|
||||
addition to the standard GUI that will be memorable for the user.
|
||||
|
||||
### Implementation considerations
|
||||
|
||||
If the table can differentiate between a fingertip and the stylus, then erasing
|
||||
part of the text as well as the entire page could be implemented by a finger
|
||||
gesture. Rubbing the finger back and forth of an area of text could remove any
|
||||
drawing close to that area (where "close" might be determined experimentally
|
||||
working with the user). A diagonal stroke with a finger from upper-right to
|
||||
lower-left would be interpreted as a request to erase the entire page.
|
||||
|
||||
If differentiating between fingertip and stylus is not possible, then Chatter
|
||||
should define some shortcut for the stylus that easily creates the standard
|
||||
region-based erase gesture. For example, if the user circles an area twice,
|
||||
that could signify erasure, not drawing. A stylus stroke from upper-right to
|
||||
lower-left could specify whole-page erasure, even if the finger stroke
|
||||
method is also possible.
|
||||
|
||||
The toggling the standard GUI and saving a file are not actions that the user
|
||||
would frequently perform. I think that small icons at the bottom of the page,
|
||||
activated by stylus or finger, would provide an ongoing reminder of how to do
|
||||
those actions. The standard GUI will need to provide some way of switching to
|
||||
Chatter; the user should suggest a method that she would find memorable.
|
||||
|
||||
|
||||
## Deployment and refinement
|
||||
|
||||
A developer working on this project will install the custom GUI on the user's
|
||||
tablet. After verifying that the installation is successful, the developer will
|
||||
watch the user with the tablet to evaluate the current interface efficiency of
|
||||
Chatter, talking with the user about what is missing and what could be improved.
|
||||
Paying attention to the user's questions that begin, "Why does this..." and "Why
|
||||
doesn't this..." will be very important in refining the design. I believe that
|
||||
using a custom interface for the tablet might also inspire the user to suggest
|
||||
other features that would not be obvious to the developers.
|
||||
|
||||
Reference in New Issue
Block a user