fbergama / pigfx

PiGFX is a bare metal kernel for the Raspberry Pi that implements a basic ANSI terminal emulator with the additional support of some primitive graphics functions.
MIT License
275 stars 60 forks source link

Potential Feature? Making some of the keyboard more customizable. #37

Closed lindoran closed 4 years ago

lindoran commented 4 years ago

Since discovering that certain keyboards behave differently with the interface, how hard would it be to make the keyboard settings available in the .ini file. things like manual key repeat through software (for keyboards that do not support this behavior), de bounce delays, repeat behavior or general key reassignments for odd keyboards (not just the backspace)? Just a thought i was having, it should not be considered in any way a high priority. Might also be good to make it posible to switch all that functionality off if everything is working normal..

chregu82 commented 4 years ago

USB keyboards never do key repeat on their own. It's always done in software. PS/2 keyboard on the other hand do key repeat on their own. If I had a non repeating USB keyboard, I probably could make it working. Something must be different from keyboard to keyboard.

lindoran commented 4 years ago

I have several I could send you one if you would like for testing I would pay the shipping

On Thu, Sep 3, 2020, 11:05 AM Christian Lehner notifications@github.com wrote:

USB keyboards never do key repeat on their own. It's always done in software. PS/2 keyboard on the other hand do key repeat on their own. If I had a non repeating USB keyboard, I probably could make it working. Something must be different from keyboard to keyboard.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/fbergama/pigfx/issues/37#issuecomment-686594528, or unsubscribe https://github.com/notifications/unsubscribe-auth/AQIK5ZB4OCUKSC3GNTWPQBDSD65FVANCNFSM4QU6QCMQ .

lindoran commented 4 years ago

I I might also be able to run USB debugging and read information from the keyboard that's not working and compare it to the one that is would that be helpful?

On Thu, Sep 3, 2020, 11:23 AM dave collins lindoranster@gmail.com wrote:

I have several I could send you one if you would like for testing I would pay the shipping

On Thu, Sep 3, 2020, 11:05 AM Christian Lehner notifications@github.com wrote:

USB keyboards never do key repeat on their own. It's always done in software. PS/2 keyboard on the other hand do key repeat on their own. If I had a non repeating USB keyboard, I probably could make it working. Something must be different from keyboard to keyboard.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/fbergama/pigfx/issues/37#issuecomment-686594528, or unsubscribe https://github.com/notifications/unsubscribe-auth/AQIK5ZB4OCUKSC3GNTWPQBDSD65FVANCNFSM4QU6QCMQ .

chregu82 commented 4 years ago

Let's try option 2 first. This is a test version which outputs the raw keypress data to the screen. I would expect that on key press a hex number >0 is displayed, and on key release 00. Modifier keys like control or alt should display 00 too. Image Image is for Pi1 / Zero only.

lindoran commented 4 years ago

the link doesn't appear to be working

chregu82 commented 4 years ago

I'm sorry, please try again.

lindoran commented 4 years ago

ok so here's what happens ... on all the keyboards that don't support autorepeat. they continually send key release 00 unless you press a key then they continually send the hex code for that key... Ill send a video in a few minutes i have to upload it the keyboard that works is exactly as you described.

lindoran commented 4 years ago

https://drive.google.com/file/d/1whNoy8TbhnPC_fQVS_o2-RFWYeuaPC26/view?usp=sharing

chregu82 commented 4 years ago

I don't seem to have access to this file.

lindoran commented 4 years ago

Sorry try this

https://drive.google.com/file/d/1whNoy8TbhnPC_fQVS_o2-RFWYeuaPC26/view?usp=drivesdk

https://drive.google.com/file/d/1whNoy8TbhnPC_fQVS_o2-RFWYeuaPC26/view?usp=drivesdk

On Thu, Sep 3, 2020, 3:28 PM Christian Lehner notifications@github.com wrote:

I don't seem to have access to this file.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/fbergama/pigfx/issues/37#issuecomment-686743900, or unsubscribe https://github.com/notifications/unsubscribe-auth/AQIK5ZBISNYRQESP4PXMZG3SD737NANCNFSM4QU6QCMQ .

lindoran commented 4 years ago

I also found that a 00 is sent when releasing a key holding a modifier down and releasing that modifier. So if you tap a key 00 is sent much faster...

On Thu, Sep 3, 2020, 3:44 PM dave collins lindoranster@gmail.com wrote:

Sorry try this

https://drive.google.com/file/d/1whNoy8TbhnPC_fQVS_o2-RFWYeuaPC26/view?usp=drivesdk

https://drive.google.com/file/d/1whNoy8TbhnPC_fQVS_o2-RFWYeuaPC26/view?usp=drivesdk

On Thu, Sep 3, 2020, 3:28 PM Christian Lehner notifications@github.com wrote:

I don't seem to have access to this file.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/fbergama/pigfx/issues/37#issuecomment-686743900, or unsubscribe https://github.com/notifications/unsubscribe-auth/AQIK5ZBISNYRQESP4PXMZG3SD737NANCNFSM4QU6QCMQ .

chregu82 commented 4 years ago

Please try if this works for all your keyboard: img

lindoran commented 4 years ago

tested and is working :) actually a bit better than the other keyboard seams far more responsive thank you so much! its probably fine to push to current. I tried out the modifier keys as well and caps lock everything works. you work so fast! I wish I had your stamina. I got a bit more done on my sprite editor tonight, but its like 1:20 in the morning where I am, im headed to bed. thanks again, much appreciated!