I'm not sure how this would work in practice. Thoughts are incredibly noisy. Any mechanism that could filter out the noise basically can decipher intent. I'd argue intent deciphering is the actual problem trying to be solved by these devices (e.g. I wish I didn't have to type. I wish the computer just knew what I wanted to type, not that I wish the computer simply typed out what I thought). Solutions like "oh, just keep on thinking of the same thing over and over again" is highly error prone and will definitely be slower than typing. Say you wanted to type "[the quick brown brown quick the quick brown quick the brown]" a strategy of repeatedly thinking of the phrase to be typed will be error prone, regardless of any ML techniques you use, simply because it cannot be known in advance what you wanted to type unless you knew the intent.
Perhaps it'll pick it up as "the quick brown", or "quick brown the", and so forth.
---
Another problem can be illustrated below:
Say you had your brain device on now. You're ready to reply to this.
Horse poop.
Oh, I guess you read the above and now have "horse poop" typed. Well, you can just remove that ---
I don't disagree with your analysis but I think you're making the assumption that brain signals.
So instead of "that is stupid", "add comment", "you're wrong on the internet", "submit", I think we could be able to have more information about the context of the words:
(:commentary "that is stupid")
(:request-interaction "add comment) ; from which the AI figures out it is a button on the screen
(:request-input "You're wrong on the internet")
(:request-interaction "submit)
In essence, maybe it is possible to detect beyond just words and understand the context, just from the signals too.
Your horse poop example has an equivalent for voice interfaces. A naive implementation might get confused by its own output and interpret it as input. But that problem can be solved by predicting the coupling between the two channels, and subtracting that prediction from the input to get a cleaner signal.
The same procedure would be more difficult to implement for thought-based interfaces, though, because you need to predict the brain's reactions to filter the signal. Maybe you could instead use a non-verbal thought to activate the command interface, so that it doesn't get triggered accidentally.
That's a weak analogy because the voice input sounds like the voice output in speech recognition.
When I see "horse poop" the thing I'm imagining and hearing in my head is not the individual letters as they appear on the screen at all. I'm hearing it in an internal monologue and I'm imagining and image and a smell.
In other words, the output generates wildly different input so 'subtracting it out' won't really work.
So maybe your natural thought process wouldn't work for said use case, but like keyboards and other user interfaces, you could surely learn to control it fairly simply. Maybe it's as simple as training yourself to imagine the words spelled out (if that was all it took).
We've all seen people who are new to keyboards, mice and even GUI's attempt to navigate a computer. It's clunky, slow, there's a lot of noise in the movements and erred clicks made.
I think it was here on HN I saw a great write-up once about leaving the gap in UX—that there is a threshold where the use just simply has to learn something in order to effectively use the device.
I don't know how the control interface for thought could look in the end in so few words, but I'm reasonably confident it could be brought down to a certain level that is more than attainable for the average user to meet.
I think it might be easier to type on a virtual keyboard with your mind than it is to dictate with thought. When you move your hand and fingers there is no conscious effort or thought, will is translated into action. Our body is an interface to the physical world, we currently make the jump form physical to digital. Advanced technology, I imagine, would simply eliminate the jump and make digital interfaces feel like physical ones.
Perhaps it'll pick it up as "the quick brown", or "quick brown the", and so forth.
---
Another problem can be illustrated below:
Say you had your brain device on now. You're ready to reply to this.
Horse poop.
Oh, I guess you read the above and now have "horse poop" typed. Well, you can just remove that ---
"add comment"
"submit"
Too late.