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

Add support for Filco 91 JIS + Pegasus Hoof #28

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

cmack
Copy link

@cmack cmack commented Apr 2, 2017

Needs Review

This is my first time hacking on this project so I may not be doing this "The Right Way"...

I have a Filco JIS layout Majestouch 2 TKL keyboard. I just put a Pegasus Hoof in today and everything worked almost as expected except for my JIS-unique keys. Here is an image of the keyboard for reference

Goals

My goal with this patch is to

  1. Make the additional JIS keys addressable / assignable
  2. Assign good default codes to the new keys so that switching to Japanese input in one's preferred OS produces the expected results.

Status

  1. I believe I succeeded at Goal 1. All five of my additional keys can be assigned any of the standard letters and they work.
  2. Goal 2 is where I'm having a little trouble. AFAICT the new keys should have values HID_KEYBOARD_SC_INTERNATIONAL1 - HID_KEYBOARD_SC_INTERNATIONAL5. I had to uncomment these key code definitions in the scancodes.py file. These values are now assignable via the UI but don't seem to send the keycodes to the OS after flashing. (I'm testing this using xev on linux). Is there something simple I'm missing? Is there a different approach I should follow instead?

Other Impact

I made this layout as an alternate to the current filco87v2. The addition of 5 new keys made it necessary to put more overrides / key hiding in the costar87.cfg so that All keys, iso 88, ansi, and jis layouts look nice.

* Make 5 missing JIS keys addressable via matrix coordiates.

* Enable HID_KEYBOARD_SC_INTERNATIONAL{1-5}

* Assign new keys to their corresponding keys

* Adjust costar87.cfg to look nice with the various layouts
@cmack cmack changed the title Add support for Filco 91 JIS Add support for Filco 91 JIS + Pegasus Hoof Apr 2, 2017
@dhowland
Copy link
Owner

dhowland commented Apr 3, 2017

this is great. I'm really thrilled someone is able to test JIS. I have no idea how it works so the help is appreciated.

I have not yet gone through the changes (on mobile right now) but I think more will be needed to get it working.

Going to make a branch with this pull and work it tomorrow

@dhowland dhowland self-assigned this Apr 4, 2017
@cmack
Copy link
Author

cmack commented Apr 4, 2017

I'm glad to help any way I can. I see now that there might need to be an adjustment to the firmware/keymap.c which would require a recompile with tools I don't have access to... afaict

@dhowland
Copy link
Owner

dhowland commented Apr 4, 2017

Yes, that needs to be updated. Also the NKRO vector isn't long enough to cover these keys, so I will have to attempt to adjust that.

Also, we will want to add the new keys to the scancode picker. I'm still on it.

@dhowland
Copy link
Owner

dhowland commented Apr 6, 2017

I committed some updates. I don't really have time to check if they will work. Want to give it a shot?

@cmack
Copy link
Author

cmack commented Apr 6, 2017

I just tried it out and no joy :( I am trying on a mac which is a new variable. However I was able to assign normal letters to the new keys on a function layer and they worked as expected, so I think this test should be accurate (true negative). I'll take the keyboard home with me tonight and try on my linux machine to be sure.

Is there a way to create and send debug logs of what the keyboard is doing? Or is there any other helpful info I can generate and send?

@dhowland
Copy link
Owner

dhowland commented Apr 6, 2017

Hey, I forgot to mention. Please try it with NKRO turned off. You can do it in the config menu. That will really help, thanks.

@cmack
Copy link
Author

cmack commented Apr 6, 2017

Alright. "6KRO boot-compatible keyboard only" still appears to be no-joy on macos. Will try again with linux tonight

@cmack
Copy link
Author

cmack commented Apr 6, 2017

good news! I just plugged it in to my linux box and all new keys are recognized!

@cmack
Copy link
Author

cmack commented Apr 6, 2017

I just tried with NKRO... it did not seem to like that; had to reset with ENTER held down

@dhowland
Copy link
Owner

dhowland commented Apr 7, 2017

Okay well the important thing is that the 5 new keys work. I can deal with the USB stuff on my own US keyboard. Probably this weekend... busy lately.

By the way, when you hold down Enter it resets to the default, which is NKRO.

Also, keep in mind that these new builds alter the structure of the USB interface, so you should completely unplug and replug the keyboard after reprogramming the first time.

@dhowland
Copy link
Owner

dhowland commented Apr 8, 2018

I'm going through and cleaning up old stuff. I have to admit I don't even remember working this last year. Based on the timing I probably got distracted by the new baby.

Should this request be revived?

@cmack
Copy link
Author

cmack commented Apr 9, 2018

Well now I'm dealing with a new baby myself. I haven't had time for keyboard programming lately and sometimes it feels like I'm the only westerner working on a JIS layout...

I'd hate to see it die but testing the conflict resolution might take a long while to confirm on my end :/

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

Successfully merging this pull request may close these issues.

None yet

2 participants