Author Topic: Keyboard with memory for copying text across computers.  (Read 3041 times)

0 Members and 1 Guest are viewing this topic.

Offline zeroni13

  • Thread Starter
  • Posts: 97
  • Location: Oslo, Norway
Keyboard with memory for copying text across computers.
« on: Wed, 09 April 2014, 15:52:09 »
I want to make a keyboard with the ability to copy text and remember it, then I can move the keyboard over to another computer and paste the text. Does this sound doable? I know I could probably do something with software, but I want this running on hardware level so that i can plug this into any computer without needing to install any software (plug and play).

The keyboard will then be able to copy text with CTRL+V and then paste it on another unit with CTRL+V.
Phantom with Silver Vortex Case   Keychron Q6 Pro ISO Knob
                               

Offline Pacifist

  • Report me *again* if there are gifs in my sig
  • * Elevated Elder
  • Posts: 3599
  • Location: Cali
  • on hiatus
Re: Keyboard with memory for copying text across computers.
« Reply #1 on: Wed, 09 April 2014, 15:57:36 »
reminds me of tech support stories where the person copies, takes the mouse to another computer, and tries to paste

but if keyboards can remember macros, then they should remember copied text as long as there is enough memory for it

Offline zeroni13

  • Thread Starter
  • Posts: 97
  • Location: Oslo, Norway
Re: Keyboard with memory for copying text across computers.
« Reply #2 on: Wed, 09 April 2014, 16:02:36 »
But how would you extract the text from the computer and into the memory chip on the keyboard. That's what I can't figure out.

Plain text doesn't use too much space anyway, but an extra memory module on the keyboard would be preferred.
Phantom with Silver Vortex Case   Keychron Q6 Pro ISO Knob
                               

Offline swill

  • * Elevated Elder
  • Posts: 3365
  • Location: Canada eh
  • builder & enabler
    • swillkb.com
Re: Keyboard with memory for copying text across computers.
« Reply #3 on: Wed, 09 April 2014, 16:44:12 »
I think this is more complicated than you think. Basically what you are trying to do is flash additional data to your keyboard controller on copy that can then be later accessed on paste.

A few problems:
you will have to generate a new hex file on the fly which includes your existing layout as well as your custom macro. Then automatically turn on boot mode on your keyboard controller and then flash this new hex to the controller.

Automating this will not be trivial and it would be tied to one computer for copy. Paste of your macro would then work anywhere.

I'm not saying it's impossible, but it's not possible. :P

Offline hashbaz

  • Grand Ancient One
  • * Moderator Emeritus
  • Posts: 5057
  • Location: SF Bae Area
Re: Keyboard with memory for copying text across computers.
« Reply #4 on: Wed, 09 April 2014, 16:52:45 »
I'm curious what your use case is for this.  If it's something small, why not just retype it?  If it's something large, why not {email, USB stick, Dropbox}?  If it's something you type over and over, why not use an existing keyboard that supports macros?

Offline AKmalamute

  • HHKB Scrub
  • Posts: 837
  • Location: Western WA, USA
Re: Keyboard with memory for copying text across computers.
« Reply #5 on: Wed, 09 April 2014, 18:34:27 »
keylogger? Paste into notepad and cut out the section you want -- or maybe there are keyloggers with on/off switches.

HHKB-lite2, Dvorak user

Offline swill

  • * Elevated Elder
  • Posts: 3365
  • Location: Canada eh
  • builder & enabler
    • swillkb.com
Re: Keyboard with memory for copying text across computers.
« Reply #6 on: Wed, 09 April 2014, 18:34:50 »
I'm curious what your use case is for this.  If it's something small, why not just retype it?  If it's something large, why not {email, USB stick, Dropbox}?  If it's something you type over and over, why not use an existing keyboard that supports macros?

If it is large it won't fit on the controller as well.

Offline Grendel

  • Posts: 462
  • Location: OR, USA
    • Firmware for Costar Replacement Controllers
Re: Keyboard with memory for copying text across computers.
« Reply #7 on: Wed, 09 April 2014, 20:04:09 »
I think this is more complicated than you think. Basically what you are trying to do is flash additional data to your keyboard controller on copy that can then be later accessed on paste.

A few problems:
you will have to generate a new hex file on the fly which includes your existing layout as well as your custom macro. Then automatically turn on boot mode on your keyboard controller and then flash this new hex to the controller.

Automating this will not be trivial and it would be tied to one computer for copy. Paste of your macro would then work anywhere.

I'm not saying it's impossible, but it's not possible. :P

Well, you could just simply add another general purpose HID interface (like the debug interface in tmk) and let it listen for simple commands. Like "Store this string in the EEPROM", "Retrieve string from EEPROM", and "Send EEPROM data via KB interface". You still need a host program to issue these, not too bad really ;)
Currently using: RK-9000WH/GR, CMS QFXT w/ Ghost Squid
- I'm game !

Offline swill

  • * Elevated Elder
  • Posts: 3365
  • Location: Canada eh
  • builder & enabler
    • swillkb.com
Re: Keyboard with memory for copying text across computers.
« Reply #8 on: Wed, 09 April 2014, 22:06:16 »
I think this is more complicated than you think. Basically what you are trying to do is flash additional data to your keyboard controller on copy that can then be later accessed on paste.

A few problems:
you will have to generate a new hex file on the fly which includes your existing layout as well as your custom macro. Then automatically turn on boot mode on your keyboard controller and then flash this new hex to the controller.

Automating this will not be trivial and it would be tied to one computer for copy. Paste of your macro would then work anywhere.

I'm not saying it's impossible, but it's not possible. :P

Well, you could just simply add another general purpose HID interface (like the debug interface in tmk) and let it listen for simple commands. Like "Store this string in the EEPROM", "Retrieve string from EEPROM", and "Send EEPROM data via KB interface". You still need a host program to issue these, not too bad really ;)

thats a pretty good idea actually.

Offline jdoraemon

  • Posts: 6
Re: Keyboard with memory for copying text across computers.
« Reply #9 on: Thu, 10 April 2014, 00:19:52 »
There's a software called input director that allows one set of keyboard/mouse to control both computers. And you can copy and paste across both computers.

Offline jacobolus

  • Posts: 3661
  • Location: San Francisco, CA
Re: Keyboard with memory for copying text across computers.
« Reply #10 on: Thu, 10 April 2014, 01:43:04 »
You’re going to need a little daemon running on the computer you want to copy from to get data from the clipboard to the keyboard (easiest is probably making your own little serial protocol over USB, unrelated to HID, for sending the data). On the computer you want to paste on, you could either have another little daemon running to collect data from the keyboard and transfer it to that computer’s clipboard, or you could just have the keyboard send the relevant USB HID packets to type out the copied text character by character.

Offline rowdy

  • HHKB Hapster
  • * Erudite Elder
  • Posts: 21175
  • Location: melbourne.vic.au
  • Missed another sale.
Re: Keyboard with memory for copying text across computers.
« Reply #11 on: Thu, 10 April 2014, 01:46:19 »
NSA?
"Because keyboards are accessories to PC makers, they focus on minimizing the manufacturing costs. But that’s incorrect. It’s in HHKB’s slogan, but when America’s cowboys were in the middle of a trip and their horse died, they would leave the horse there. But even if they were in the middle of a desert, they would take their saddle with them. The horse was a consumable good, but the saddle was an interface that their bodies had gotten used to. In the same vein, PCs are consumable goods, while keyboards are important interfaces." - Eiiti Wada

NEC APC-H4100E | Ducky DK9008 Shine MX blue LED red | Ducky DK9008 Shine MX blue LED green | Link 900243-08 | CM QFR MX black | KeyCool 87 white MX reds | HHKB 2 Pro | Model M 02-Mar-1993 | Model M 29-Nov-1995 | CM Trigger (broken) | CM QFS MX green | Ducky DK9087 Shine 3 TKL Yellow Edition MX black | Lexmark SSK 21-Apr-1994 | IBM SSK 13-Oct-1987 | CODE TKL MX clear | Model M 122 01-Jun-1988

Ị̸͚̯̲́ͤ̃͑̇̑ͯ̊̂͟ͅs̞͚̩͉̝̪̲͗͊ͪ̽̚̚ ̭̦͖͕̑́͌ͬͩ͟t̷̻͔̙̑͟h̹̠̼͋ͤ͋i̤̜̣̦̱̫͈͔̞ͭ͑ͥ̌̔s̬͔͎̍̈ͥͫ̐̾ͣ̔̇͘ͅ ̩̘̼͆̐̕e̞̰͓̲̺̎͐̏ͬ̓̅̾͠͝ͅv̶̰͕̱̞̥̍ͣ̄̕e͕͙͖̬̜͓͎̤̊ͭ͐͝ṇ̰͎̱̤̟̭ͫ͌̌͢͠ͅ ̳̥̦ͮ̐ͤ̎̊ͣ͡͡n̤̜̙̺̪̒͜e̶̻̦̿ͮ̂̀c̝̘̝͖̠̖͐ͨͪ̈̐͌ͩ̀e̷̥͇̋ͦs̢̡̤ͤͤͯ͜s͈̠̉̑͘a̱͕̗͖̳̥̺ͬͦͧ͆̌̑͡r̶̟̖̈͘ỷ̮̦̩͙͔ͫ̾ͬ̔ͬͮ̌?̵̘͇͔͙ͥͪ͞ͅ

Offline zeroni13

  • Thread Starter
  • Posts: 97
  • Location: Oslo, Norway
Re: Keyboard with memory for copying text across computers.
« Reply #12 on: Thu, 10 April 2014, 02:02:39 »
I'll explain why this is usefull for me, then you will understand why I can't have software running on the computers.
I work in production and i build alot of computers each day. Most of the time we use hardware specific software on the units, but we also use a general installation which will not be optimised for the unts. That's where the ability to copy text from one unit to the other is usefull, and it would not work as a macro because I don't copy the same text every time.
This is why I need it to be independent of OS/SW on the units and work regardless of what kind of computer I connect it to.

I know the concept is kind of complicated to actually get to work, but that's why I asked you guys.

NSA?
If all else fails, yes.
Phantom with Silver Vortex Case   Keychron Q6 Pro ISO Knob
                               

Offline jacobolus

  • Posts: 3661
  • Location: San Francisco, CA
Re: Keyboard with memory for copying text across computers.
« Reply #13 on: Thu, 10 April 2014, 02:19:45 »
I'll explain why this is usefull for me, then you will understand why I can't have software running on the computers.
I don’t think this is possible without software running on the computers, sorry. As far as I know, USB devices don’t have access to a computer’s clipboard.

You could possibly record what you’re typing on one machine, and play it back on another later.

But if you want to get to the clipboard specifically, I think you basically need to run a software blob designed for each OS you’re planning to use. I think you could do with a user-space program: i.e. I don’t think you’d need any particular special permissions or anything.

Offline Findecanor

  • Posts: 5039
  • Location: Koriko
Re: Keyboard with memory for copying text across computers.
« Reply #14 on: Thu, 10 April 2014, 05:11:56 »
If it is large it won't fit on the controller as well.
You could use a separate EEPROM chip connected to the µC if the µC doesn't have any/enough - it is not uncommon. The newly released free Kinesis controller design/firmware does so for storing macros and keymaps.
BTW, the EEPROM in the ATmega32u4 that is in the Teensy 2.0 is rated to survive ten times more rewrites that its program memory, but it is only 1K. Using a separate EEPROM chip would be the preferred method.

You would need to implement this in software on the host in either case. That means, baking your own driver that does all this and uses a custom keyboard protocol.

An alternative would be to put a USB hub and a USB drive inside the keyboard's enclosure, and let it all be handled by a simpler software program on the host that reads and writes a file on the USB drive - then no firmware hacking would be necessary.
You could also put that software on the USB drive and run it from the drive. Older Windows machines could run it automatically from autorun.inf on the drive.
« Last Edit: Thu, 10 April 2014, 05:18:46 by Findecanor »
🍉

Offline lowpoly

  • Posts: 1749
Re: Keyboard with memory for copying text across computers.
« Reply #15 on: Thu, 10 April 2014, 14:22:24 »
You could also put that software on the USB drive and run it from the drive.
This.

Use keyboard macros to call the software on the memory stick and write the captured data back. Just get a board which already has a hub.

If you don't like that because too easy, there's the Teensy SD card adaptor. Start for ex. with the LUFA MassStorageKeyboard demo. :eek:

Miniguru thread at GH // The Apple M0110 Today

Offline zeroni13

  • Thread Starter
  • Posts: 97
  • Location: Oslo, Norway
Re: Keyboard with memory for copying text across computers.
« Reply #16 on: Thu, 10 April 2014, 14:50:15 »
You could also put that software on the USB drive and run it from the drive.
This.

Use keyboard macros to call the software on the memory stick and write the captured data back. Just get a board which already has a hub.

If you don't like that because too easy, there's the Teensy SD card adaptor. Start for ex. with the LUFA MassStorageKeyboard demo. :eek:
Is the SD card accessable as a storage device in windows? And will it work on my phantom keyboard, when the pins are already in use?
Phantom with Silver Vortex Case   Keychron Q6 Pro ISO Knob
                               

Offline lowpoly

  • Posts: 1749
Re: Keyboard with memory for copying text across computers.
« Reply #17 on: Fri, 11 April 2014, 05:02:05 »
Is the SD card accessable as a storage device in windows?
You'd have to talk to the card module via SPI. And setup a USB mass storage device using LUFA. You then have to provide the communication between these two. Well, this is how I'd start at least.

And will it work on my phantom keyboard, when the pins are already in use?
With the pins in use I don't think so. You sometimes can double-use pins and SPI would actually be a good example (for flashing a new boot loader) but you have to make sure the matrix is not in use when this happens. Could you reroute the 4 pins in question?

Miniguru thread at GH // The Apple M0110 Today