PINE64
PPKB certain keys not working after kernel update - Printable Version

+- PINE64 (https://forum.pine64.org)
+-- Forum: PinePhone (https://forum.pine64.org/forumdisplay.php?fid=120)
+--- Forum: PinePhone Software (https://forum.pine64.org/forumdisplay.php?fid=121)
+---- Forum: Arch Linux on PinePhone (https://forum.pine64.org/forumdisplay.php?fid=159)
+---- Thread: PPKB certain keys not working after kernel update (/showthread.php?tid=16521)

Pages: 1 2


RE: PPKB certain keys not working after kernel update - primary-suaerkraut - 05-13-2022

(05-10-2022, 03:14 PM)rotwang Wrote:
Quote:You can create similar keymaps for XKB, for use with Xorg server


I know this is what is in the megi post. Has anyone actually done this... and maybe they have a keymap for xkb for the pinephone keyboard I could get a copy of?

I too couldn't get megi's loadkeys example to work in console. I could live without it in console if I could get my under-number-keys characters back in X.

I've been reading and reading the arch documentation on xkb, but not making any serious progress. (Is it me, or is that page much more opaque than usual for Arch documentation?)


I got AltG working as modifier to reach the under-number-keys by editing the beginning of

/usr/share/X11/xkb/symbols/en

Code:
default partial alphanumeric_keys modifier_keys
xkb_symbols "basic" {

    name[Group1]= "English (US)";

    key <TLDE> {        [    grave,    asciitilde      ]      };
    key <AE01> {        [        1,    exclam,      bar        ]      };
    key <AE02> {        [        2,    at,          backslash  ]      };
    key <AE03> {        [        3,    numbersign      ]      };
    key <AE04> {        [        4,    dollar,         ]      };
    key <AE05> {        [        5,    percent,    asciitilde        ]      };
    key <AE06> {        [        6,    asciicircum, grave      ]      };
    key <AE07> {        [        7,    ampersand,  minus      ]      };
    key <AE08> {        [        8,    asterisk,    equal      ]      };
    key <AE09> {        [        9,    parenleft,  underscore ]      };
    key <AE10> {        [        0,    parenright,  plus      ]      };
    key <AE11> {        [    minus,    underscore      ]      };
    key <AE12> {        [    equal,    plus            ]      };

    key <AD01> {        [        q,    Q              ]      };
    key <AD02> {        [        w,    W              ]      };
    key <AD03> {        [        e,    E              ]      };
    key <AD04> {        [        r,    R              ]      };
    key <AD05> {        [        t,    T              ]      };
    key <AD06> {        [        y,    Y              ]      };
    key <AD07> {        [        u,    U              ]      };
    key <AD08> {        [        i,    I              ]      };
    key <AD09> {        [        o,    O              ]      };
    key <AD10> {        [        p,    P              ]      };
    key <AD11> {        [ bracketleft,  braceleft      ]      };
    key <AD12> {        [ bracketright, braceright      ]      };

    key <AC01> {        [        a,    A              ]      };
    key <AC02> {        [        s,    S              ]      };
    key <AC03> {        [        d,    D              ]      };
    key <AC04> {        [        f,    F              ]      };
    key <AC05> {        [        g,    G              ]      };
    key <AC06> {        [        h,    H              ]      };
    key <AC07> {        [        j,    J              ]      };
    key <AC08> {        [        k,    K              ]      };
    key <AC09> {        [        l,    L              ]      };
    key <AC10> {        [ semicolon,    colon          ]      };
    key <AC11> {        [ apostrophe,  quotedbl        ]      };

    key <AB01> {        [        z,    Z              ]      };
    key <AB02> {        [        x,    X              ]      };
    key <AB03> {        [        c,    C              ]      };
    key <AB04> {        [        v,    V              ]      };
    key <AB05> {        [        b,    B              ]      };
    key <AB06> {        [        n,    N              ]      };
    key <AB07> {        [        m,    M              ]      };
    key <AB08> {        [    comma,    less            ]      };
    key <AB09> {        [    period,    greater        ]      };
    key <AB10> {        [    slash,    question        ]      };

    key <BKSL> {        [ backslash,        bar        ]      };
    include "level3(ralt_switch)"
};



RE: PPKB certain keys not working after kernel update - mr_growl - 05-18-2022

I found this, which looks like a nicer way of solving the problem (compared to the wtype option) with swmo and possibly phosh as well: https://codeberg.org/HazardChem/PinePhone_Keyboard .


RE: PPKB certain keys not working after kernel update - rotwang - 05-25-2022

Awesome thanks!
I ended up downgrading the kernel. But that's inevitably a temporary solution.


RE: PPKB certain keys not working after kernel update - sado1 - 05-26-2022

(05-18-2022, 04:53 PM)mr_growl Wrote: I found this, which looks like a nicer way of solving the problem (compared to the wtype option) with swmo and possibly phosh as well: https://codeberg.org/HazardChem/PinePhone_Keyboard .

I confirm it works for Phosh. In my case, Danctnix already includes necessary xkb configuration, and all I needed to do, was to follow the instructions at the bottom of https://wiki.mobian-project.org/doku.php?id=ppaccessories to add systemd service override, which adds a necessary environment variable for Phosh service.


RE: PPKB certain keys not working after kernel update - SwordfishII - 05-29-2022

(05-26-2022, 04:12 PM)sado1 Wrote:
(05-18-2022, 04:53 PM)mr_growl Wrote: I found this, which looks like a nicer way of solving the problem (compared to the wtype option) with swmo and possibly phosh as well: https://codeberg.org/HazardChem/PinePhone_Keyboard .

I confirm it works for Phosh. In my case, Danctnix already includes necessary xkb configuration, and all I needed to do, was to follow the instructions at the bottom of https://wiki.mobian-project.org/doku.php?id=ppaccessories to add systemd service override, which adds a necessary environment variable for Phosh service.

Which instructions? If you wouldn't mind spoon feeding me a little.

I think you are talking about this part "Add the following to /etc/systemd/system/phosh.service.d/override.conf" but phosh.service.d doesnt exist.

Came here to post asking for help getting the userland driver working, but it seems like I am not the only one having issues.


RE: PPKB certain keys not working after kernel update - SwordfishII - 05-30-2022

For anyone looking for step by step:


Code:
sudo systemctl edit phosh.service


Add this between the comment lines as directed:


Code:
[Service]
Environment=XKB_DEFAULT_MODEL=ppkb


Write out, close and reboot.

AltG will now provide the correct symbols. It works for me.

I pulled this from the github issues section, user by the name of Dan-Sun who clarified sado1 who I believe is the same person I responded to initially. So thanks to both of you. I had to add sudo in front of the systemctl command.


RE: PPKB certain keys not working after kernel update - Dan-Sun - 05-30-2022

Hey all

We try to keep track of the issues there too https://github.com/dreemurrs-embedded/Pine64-Arch/issues/376 until it's working via the kernel or another easy solution.

The last solution works, but the FN key would be better option because you still need to use it for arrow keys etc… This means that you have to move your thumb a little bit more Smile And I use the pine64 key instead because I like to use altg to switch between applications.


RE: PPKB certain keys not working after kernel update - SwordfishII - 05-30-2022

(05-30-2022, 01:24 PM)Dan-Sun Wrote: Hey all

We try to keep track of the issues there too https://github.com/dreemurrs-embedded/Pine64-Arch/issues/376 until it's working via the kernel or another easy solution.

The last solution works, but the FN key would be better option because you still need to use it for arrow keys etc… This means that you have to move your thumb a little bit more Smile And I use the pine64 key instead because I like to use altg to switch between applications.

Agree, but at least I can now use "|\-_" and thanks again for your write-up on github.

I assume I could change it to the pine key in Accessibility? Which one is the pine key there?

Edit: Yep its there, "Left Super"


RE: PPKB certain keys not working after kernel update - joe_w - 08-21-2022

(04-22-2022, 01:34 PM)EdnZWOYJWMiU Wrote: The wtype config equivalent for Phosh would be:

1. Check existing custom keybindings:

Code:
$ gsettings get org.gnome.settings-daemon.plugins.media-keys custom-keybindings
['/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/']
2. Declare new keybindings (offset by the existing keybindings index, "custom0" in this case)
Code:
gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1/ name 'wtype1'
gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1/ command 'wtype "|"'
gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1/ binding '<Super>1'

gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom2/ name 'wtype2'
gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom2/ command 'wtype "\\"'
gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom2/ binding '<Super>2'

gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom3/ name 'wtype5'
gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom3/ command 'wtype "~"'
gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom3/ binding '<Super>5'

gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom4/ name 'wtype6'
gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom4/ command 'wtype "`"'
gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom4/ binding '<Super>6'

gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom5/ name 'wtype7'
gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom5/ command 'wtype -k "Minus"'
gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom5/ binding '<Super>7'

gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom6/ name 'wtype8'
gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom6/ command 'wtype "="'
gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom6/ binding '<Super>8'

gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom7/ name 'wtype9'
gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom7/ command 'wtype "_"'
gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom7/ binding '<Super>9'

gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom8/ name 'wtype0'
gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom8/ command 'wtype "+"'
gsettings set  org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom8/ binding '<Super>0'
3. Update custom keybindings list
Code:
gsettings set  org.gnome.settings-daemon.plugins.media-keys custom-keybindings "['/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/', '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom1/', '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom2/', '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom3/', '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom4/', '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom5/', '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom6/', '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom7/', '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom8/']"

It's laggy, but better than nothing.



Quote:Couldn't get file descriptor referring to the console
Loadkeys is for console (not Wayland)

Smile   Note: this method worked for me on pmos phos wayland.   Also had to install wtype from repository.