Update the PinePhone keyboard driver to support missing characters?
#1
The goal is to run LibreOffice in Posh on the PinePhone. It can be run by typing:

OOO_FORCE_DESKTOP=gnome-wayland libreoffice

into to terminal. The GUI cannot be started, the LibreOffice installation prevents the start.

I have the PinePhone keyboard connected to the PinePhone, which works also for the terminal. I tried to type:

OOO_FORCE_DESKTOP=gnome-wayland libreoffice

Unfortunately, I cannot print a «_» with the PinePhone keyboard. The characters are on the PinePhone keyboard, but neither control, Fn, Alt, AltG nor the special Pine key works to get the characters to be printed in the terminal.

How can I modify the PinePhone keyboard driver to support the missing characters?
  Reply
#2
(05-31-2022, 02:35 AM)Peter Gamma Wrote: The goal is to run LibreOffice in Posh on the PinePhone. It can be run by typing:

OOO_FORCE_DESKTOP=gnome-wayland libreoffice

into to terminal. The GUI cannot be started, the LibreOffice installation prevents the start.

I have the PinePhone keyboard connected to the PinePhone, which works also for the terminal. I tried to type:

OOO_FORCE_DESKTOP=gnome-wayland libreoffice

Unfortunately, I cannot print a «_» with the PinePhone keyboard. The characters are on the PinePhone keyboard, but neither control, Fn, Alt, AltG nor the special Pine key works to get the characters to be printed in the terminal.

How can I modify the PinePhone keyboard driver to support the missing characters?

Look at threads in your OS specific forum regarding the keyboard userland driver. Many have step by step instructions
  Reply
#3
@Peter

  Below is what I did when after the latest updates and OS upgrades I lost (completely in Mobian and partially in PostmarketOS) the PPKC functionality.  The kb151 kernel module is not present anymore in either OS after all the above.  It will get some top row functionality back.
  These are the fixes for PostmarketOS.  I used this wiki page for inspiration:  https://wiki.mobian-project.org/doku.php...ccessories


Step 1
======
I changed the "kb151" to in "/sys/bus/i2c/drivers/kb151/2-0015" to "pinephone-keyboard" as below
/sys/bus/i2c/drivers/pinephone-keyboard/2-0015

In my home dir I created the "bin" subdir and in it I put the "kbd-external.sh" script.  Make sure it's executable.
Code:
mkdir bin
<vim, nano, your_editor> bin/kbd-external.sh
chmod +x bin/kbd-external.sh

kbd-external.sh

Code:
#!/usr/bin/env bash
# a11y is "a one one y" aka a-eleven-y aka accessibility
# Turns off onscreen keyboard when PPKC is present
# Disable vibration

if [ -L "/sys/bus/i2c/drivers/pinephone-keyboard/2-0015" ]; then
  gsettings set org.gnome.desktop.a11y.applications screen-keyboard-enabled false
else
  gsettings set org.gnome.desktop.a11y.applications screen-keyboard-enabled true
fi
# return status
echo "org.gnome.desktop.a11y.applications screen-keyboard-enabled is:"
gsettings get org.gnome.desktop.a11y.applications screen-keyboard-enabled
# disable vibration on mouse and key presses
gsettings set org.sigxcpu.feedback profile silent
echo "org.sigxcpu.feedback profile is:"
gsettings get org.sigxcpu.feedback profile

Step 2
======
Then, add this to “~/.config/autostart/kbd-external.desktop”

kbd-external.desktop

Code:
[Desktop Entry]
Name=Keyboard
Type=Application
Icon=object-rotate-left-symbolic
Exec=/home/user/bin/kbd-external.sh
Categories=Utility;
NoDisplay=true


Step 3
======
In my case this was already the case but if it isn't, make sure that XKB_DEFAULT_MODEL env variable is ppkb
  echo $XKB_DEFAULT_MODEL
should return
    ppkb

If NOT, add the following to /etc/systemd/system/phosh.service.d/override.conf:

override.conf

Code:
[Service]
Environment=XKB_DEFAULT_MODEL=ppkb


Step 4
======
In the Settings app in "Phosh -> Settings -> Keyboard -> Alternate Characters Key" select "Left Super"
to have the pinecone key act as Fn used to for the TOP ROW ONLY: Pinecone-[0-9]
The Fn key still worked/works for the arrow, Home, End keys.

Try setting some other special keys if you prefer something else as modifier.
  Reply
#4
For whatever it is worth in this context, for PostmarketOS with SXMO, the keyboard works perfectly out of the bix. AltG gets you the third layer symbols on the numkeys and Pine-numkey gets you the function keys. No mods of any sort required. Being a noob, SXMO was a little challenging, but once you get it, it is perfect for a phone sized device. I just installed nano and away I go. SXMO on a PinePhone makes the phone essentially a terminal with menus and gestures. Very nice.

I don't use Libre Office at all, so I haven't tried that.
  Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Case for Pinephone totilele 10 429 08-07-2022, 08:37 AM
Last Post: biketool
Bug PinePhone keyboard case renders itself brick failing to charge(?), help/input wanted e1337 0 87 08-03-2022, 04:17 PM
Last Post: e1337
  Keyboard drawing only 0.1A from charger qwazix 5 1,350 08-01-2022, 03:25 PM
Last Post: magdesign
  Convert Pinephone Keyboard into Powerbank magdesign 4 514 07-31-2022, 03:56 AM
Last Post: magdesign
  PP Keyboard question drh 3 331 07-24-2022, 02:15 AM
Last Post: grump_fiddle_reinstall
  Should I just never use the PP keyboard? Subsentient 4 508 07-10-2022, 02:55 PM
Last Post: alienklown
  Mouse for the PinePhone? Peter Gamma 18 5,169 07-05-2022, 12:13 PM
Last Post: pifou
  KB: Using bus powered USB peripherals with the pinephone keyboard mounted docsunset 5 427 06-30-2022, 10:46 AM
Last Post: docsunset
  Convergence docking bar and keyboard pifou 4 976 06-23-2022, 04:40 AM
Last Post: wibble
  Keyboards for the PinePhone? Peter Gamma 0 229 06-18-2022, 01:19 AM
Last Post: Peter Gamma

Forum Jump:


Users browsing this thread: 1 Guest(s)