Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Using colemak-dh on the Remarkable 2 Type Folio #68

Closed
mkborregaard opened this issue May 4, 2023 · 13 comments
Closed

Using colemak-dh on the Remarkable 2 Type Folio #68

mkborregaard opened this issue May 4, 2023 · 13 comments

Comments

@mkborregaard
Copy link

Hi,
I read that I need a "qmap" file of my keyboard layout to use it in a Qt application. Is a qmap file of this layout available?
Thanks!

@stevep99
Copy link
Member

stevep99 commented May 4, 2023

I'm not familiar with qmap files, but I would say you should be setting your layout at the OS level. I don't think anything Qt-specific would be relevant.

@mkborregaard
Copy link
Author

Just to give context to the question: This is for the "remarkable", a paper tablet with an attachable keyboard, and my information is given under 6.1 here https://benkku.medium.com/the-remarkable-2-tablet-as-a-coding-writing-device-3981570343e2

So I can't really do anything on the OS level. But I honestly had never heard of qmaps either :-)

I just bought the device, then remembered that I've been using mod-dh for a small decade and have no chance of ever using a qwerty keyboard anymore :-D

@DreymaR
Copy link

DreymaR commented May 4, 2023

I just have to wave to you, Michael! Long time, no see! ( のvの) c[_]

(For any other readers: This is the guy who masterfully implemented my Big Bag of Kbd Tricks for Mac, years ago.)

@mkborregaard
Copy link
Author

Haha hey DreymaR, long time indeed :-)
Yeah I'm still using your layout, and very happy with it (except for edge cases like this one where it seems to be hard to implement it on a new device).

@stevep99
Copy link
Member

stevep99 commented May 4, 2023

Oh, I haven't seen such a device before!
I guess you may have seen this already?
Sounds like the best would be for the vendor to provide more info on this, then it ought to be pretty easy to adjust an existing layout definition.

The other option - and the one I would most recommend - would be to get a programmable keyboard or a USB remapper device. The latter is a good option if you already have a keyboard you want to use. It takes away all the pain of configuring software.

@mkborregaard
Copy link
Author

Yeah the Remarkable is amazing, it's a non-backlit e-reader and writer device that feels really deceptively like paper.

Keywriter, which you link to, is a hack to associate an external keyboard to the remarkable - but now the device itself can come with a small inbuilt keyboard instead, and that's the one I have bought and now want to remap.

I contacted company support and they said it's not possible to remap keys at this point but they would take a feature request. However the device is open source, and the keymapping is hardcoded into the kernel, so I'm considering if I'm adventurous enough to recompile the kernel and replace it...

@mkborregaard
Copy link
Author

Alright, someone (@Eeems) on the Remarkable forum gave me an incredible amount of help, and I managed to make my type folio work for the remarkable. It requires a bit of fiddling. Essentially I needed to edit the keyboard driver of the remarkable's operating system (which is open source), then use a docker container with linux and the entire remarkable toolchain preloaded (which @Eeems was kind enough to prepare). In the docker container I download my updated driver, recompile the kernel, then use ssh (scp) to copy the new driver to the device. And it works!

Here are the steps if anyone should be adventurous enough:

Instructions

Install docker first. Then:

docker pull eeems/remarkable-toolchain:latest
docker run -ti eeems/remarkable-toolchain:latest

In the docker session, type:

git clone https://github.com/mkborregaard/remarkable_linux_colemak_dh.git
cd linux
git checkout colemak
source /opt/codex/rm11x/3.1.15/environment-setup-cortexa7hf-neon-remarkable-linux-gnueabi
make mrproper
touch .scmversion
cp arch/arm/configs/zero-sugar_defconfig .config
make olddefconfig
make drivers/misc/rm-pogo/pogo.ko
make modules_prepare

Then, in a normal terminal, first get **container_name** by typing:

docker ps

then use that to copy the pogo.ko file to your host system.

docker cp **container_name**:/root/linux/drivers/misc/rm-pogo/pogo.ko .

Then connect the remarkable and make an ssh connection. In a normal terminal, type:

scp pogo.ko root@10.11.99.1:/lib/modules/5.4.70-v1.3.3-rm11x/kernel/drivers/misc/rm-pogo

Disconnect remarkable, restart it, and connect to the type folio

@mkborregaard mkborregaard changed the title qmap file Using colemak-dh on the Remarkable 3 Type Folio May 10, 2023
@mkborregaard
Copy link
Author

mkborregaard commented May 10, 2023

I should add that I use a slightly out-of-date version of the layout where k and m are swapped. If anyone is interested I'm happy to edit and provide one that is consistent with the current gospel.

Also, if one does not want to go through all of the steps above - they can also just use my pogo.ko file and copy it to the remarkable. Own risk, of course. The file is here

@mkborregaard
Copy link
Author

Should we close the issue or what works best?

@mkborregaard mkborregaard changed the title Using colemak-dh on the Remarkable 3 Type Folio Using colemak-dh on the Remarkable 2 Type Folio May 10, 2023
@stevep99
Copy link
Member

stevep99 commented Jun 2, 2023

Thanks for the updated info, useful for anyone else having the same issue. I'll mark it is as closed now.

@NQNStudios
Copy link

@mkborregaard Using these instructions and your fork as an example, I was able to do this for dvorak: https://github.com/nqnstudios/remarkable_dvorak

So thanks!

@alphashuro
Copy link

alphashuro commented Mar 30, 2024

@mkborregaard thanks for this info! I also managed to use your instructions and a diff of your fork to do this for the not-outdated version of mod-dh here https://github.com/alphashuro/remarkable-linux-kernel/tree/colemak-dh (as you say, "consistent with the current gospel")

I also summarised your instructions with some changes to make it work for the current version here

@mkborregaard
Copy link
Author

@alphashuro amazing, thank you for doing this!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants