03-10-2022, 11:34 AM
(This post was last modified: 03-10-2022, 11:35 AM by Hook.)
I admit to being a noob. I am pretty good at researching before asking a question, and I follow directions well, but I am limited in my ability to troubleshoot on my own.
Has anyone on Manjaro (Phosh, but that shouldn't matter) switched to the userspace driver ( ppkb-i2c) for the keyboard case? If so, can you post how you did it?
I was hoping maybe I could just use the instructions for Arch starting at step 3:
https://forum.pine64.org/showthread.php?tid=16156
Unfortunately, I can't even get out the gate because Manjaro Arm does not seem to have a mkscr command (The boot.txt file says at the top to run "pp-uboot-mkscr" but that fails to with a "command not found" message. and there is no ".scr" file with a similar name on the boot directory). There is a boot.scr file in the boot directory, and, yes, I am in that directory when issuing the commands.
Any help from someone using Manjaro Arm would be appreciated.
TIA
03-17-2022, 12:01 AM
(This post was last modified: 03-17-2022, 12:14 AM by neil_swann80.)
Did you run the last couple of commands from Step 2? In particular the second...
Quote:Update and upgrade with the following:
$ sudo pacman -Syu
Install some stuff you'll need...
$ sudo pacman -S nano terminus-font git gcc php make
For Step 4 I had to change:
Code: git clone https://mff.cz/git/pinephone-keyboard/
for:
Code: git clone https://megous.com/git/pinephone-keyboard
(The link in the first command gave a 404)
(03-17-2022, 12:01 AM)neil_swann80 Wrote: Did you run the last couple of commands from Step 2? In particular the second...
Quote:Update and upgrade with the following:
$ sudo pacman -Syu
Install some stuff you'll need...
$ sudo pacman -S nano terminus-font git gcc php make
For Step 4 I had to change:
Code: git clone https://mff.cz/git/pinephone-keyboard/
for:
Code: git clone https://megous.com/git/pinephone-keyboard
(The link in the first command gave a 404)
Yes, I did do those two commands at the end of step 2, but I can't get past the first part of step 3 still because of what I described in my last paragraph above. I assume there is some fundamental difference in how an scr file is generated in Manjaro, but I don't know what that is and can't find it.
So, are you running ManjaroARM and were you able to do step 3?
03-18-2022, 01:04 PM
(This post was last modified: 03-18-2022, 01:35 PM by neil_swann80.)
Does the file:
/boot/mkscr
exist? It should be with the files '/boot/boot.txt' and '/boot/boot.scr'
And is it executable (-rwxr-xr-x) ?
to list the files and their permissions in the '/boot' directory:
cd /boot
ls -l
If it doesn't exist, manually create it:
sudo nano /boot/mkscr
Code: #!/bin/bash
if [[ ! -x /usr/bin/mkimage ]]; then
echo "mkimage not found. Please install uboot-tools:"
echo " pacman -S uboot-tools"
exit 1
fi
mkimage -A arm -O linux -T script -C none -n "U-Boot boot script" -d boot.txt boot.scr
To save changes and close Nano, type CTRL-X, Y, and Enter.
and set permissions to executable:
sudo chmod 755 /boot/mkscr
Okay, here is what finally worked for me. I started with MajaroArm with all updates. I also installed from the software app (Phosh) pinephone-keyboard-git and pinephone-toolkit-git, which may have helped. I did not have to do any building of the userland driver, so an update may have already provided it, or maybe one of the git files I mentioned. Whatever, it already existed at the proper location when I started this.
Here are all of the exact steps I took:
1. Create systemd file
a. Navigate to /etc/systemd/system
b. sudo nano keeb2.service (use whatever name you like before the ".service")
c.In file, type:
[Unit]
Description=PinePhone keyboard userspace daemon
[Service]
Type=simple
ExecStart=/usr/bin/ppkb-i2c-inputd
[Install]
WantedBy=multi-user.target
d. Save and exit Nano
2. Enable service for next boot
a. Run: sudo systemctl enable keeb2.service
3. Set up boot.txt file to disable kb151
a. cd /boot
b. sudo nano boot.txt
c. Type kb151.disable_input at the end of setenev bootargs line (there should be one space between last parameter in the line and this addition).
d. save and close.
4. Create the new boot.scr from the boot.txt file to apply disabling kb151 at next boot.
a. Run: /usr/bin/pp-uboot-mkscr
5. Reboot
This worked for me with MajaroArm. I have F1-F10 working with the pine key, and Fn-num keys actually type what is printed on the lower part of the keys.
I potched this together from different sources, (the link in the first post and the very helpful comments in this thread) and a lot of exploring to see where files were actually located and if I had them. Many thanks to @ Megamemnon and @neil_swan80, as well as another not on this forum. And, of course, thanks to the ManjaroArm devs.
Hope this helps someone else.
(03-25-2022, 12:32 PM)Hook Wrote: Okay, here is what finally worked for me. I started with MajaroArm with all updates. I also installed from the software app (Phosh) pinephone-keyboard-git and pinephone-toolkit-git, which may have helped. I did not have to do any building of the userland driver, so an update may have already provided it, or maybe one of the git files I mentioned. Whatever, it already existed at the proper location when I started this.
Here are all of the exact steps I took:
1. Create systemd file
a. Navigate to /etc/systemd/system
b. sudo nano keeb2.service (use whatever name you like before the ".service")
c.In file, type:
[Unit]
Description=PinePhone keyboard userspace daemon
[Service]
Type=simple
ExecStart=/usr/bin/ppkb-i2c-inputd
[Install]
WantedBy=multi-user.target
d. Save and exit Nano
2. Enable service for next boot
a. Run: sudo systemctl enable keeb2.service
3. Set up boot.txt file to disable kb151
a. cd /boot
b. sudo nano boot.txt
c. Type kb151.disable_input at the end of setenev bootargs line (there should be one space between last parameter in the line and this addition).
d. save and close.
4. Create the new boot.scr from the boot.txt file to apply disabling kb151 at next boot.
a. Run: /usr/bin/pp-uboot-mkscr
5. Reboot
This worked for me with MajaroArm. I have F1-F10 working with the pine key, and Fn-num keys actually type what is printed on the lower part of the keys.
I potched this together from different sources, (the link in the first post and the very helpful comments in this thread) and a lot of exploring to see where files were actually located and if I had them. Many thanks to @Megamemnon and @neil_swan80, as well as another not on this forum. And, of course, thanks to the ManjaroArm devs.
Hope this helps someone else.
Hi,
it was helpful, and it stopped working scince last manjaro update for me ... is it the same for you ?
(06-01-2022, 04:01 AM)lolgzs Wrote: (03-25-2022, 12:32 PM)Hook Wrote: Okay, here is what finally worked for me. I started with MajaroArm with all updates. I also installed from the software app (Phosh) pinephone-keyboard-git and pinephone-toolkit-git, which may have helped. I did not have to do any building of the userland driver, so an update may have already provided it, or maybe one of the git files I mentioned. Whatever, it already existed at the proper location when I started this.
Here are all of the exact steps I took:
1. Create systemd file
a. Navigate to /etc/systemd/system
b. sudo nano keeb2.service (use whatever name you like before the ".service")
c.In file, type:
[Unit]
Description=PinePhone keyboard userspace daemon
[Service]
Type=simple
ExecStart=/usr/bin/ppkb-i2c-inputd
[Install]
WantedBy=multi-user.target
d. Save and exit Nano
2. Enable service for next boot
a. Run: sudo systemctl enable keeb2.service
3. Set up boot.txt file to disable kb151
a. cd /boot
b. sudo nano boot.txt
c. Type kb151.disable_input at the end of setenev bootargs line (there should be one space between last parameter in the line and this addition).
d. save and close.
4. Create the new boot.scr from the boot.txt file to apply disabling kb151 at next boot.
a. Run: /usr/bin/pp-uboot-mkscr
5. Reboot
This worked for me with MajaroArm. I have F1-F10 working with the pine key, and Fn-num keys actually type what is printed on the lower part of the keys.
I potched this together from different sources, (the link in the first post and the very helpful comments in this thread) and a lot of exploring to see where files were actually located and if I had them. Many thanks to @Megamemnon and @neil_swan80, as well as another not on this forum. And, of course, thanks to the ManjaroArm devs.
Hope this helps someone else.
Hi,
it was helpful, and it stopped working scince last manjaro update for me ... is it the same for you ?
No, still working fine here.
(06-01-2022, 07:35 AM)Hook Wrote: (06-01-2022, 04:01 AM)lolgzs Wrote: Hi,
it was helpful, and it stopped working scince last manjaro update for me ... is it the same for you ?
No, still working fine here.
Whoops! Just did a new update this morning and now the keyboard isn't responding at all. Will have to sort this out...
(06-02-2022, 07:53 AM)Hook Wrote: (06-01-2022, 07:35 AM)Hook Wrote: (06-01-2022, 04:01 AM)lolgzs Wrote: Hi,
it was helpful, and it stopped working scince last manjaro update for me ... is it the same for you ?
No, still working fine here.
Whoops! Just did a new update this morning and now the keyboard isn't responding at all. Will have to sort this out...
I also use Manjaro ARM, with PinePhone (v1.2).
I recently updated it to the latest version, then KB151 fails to start, the following error is output.
Jun 03 00:31:33 manjaro-arm systemd[1]: ppkb-i2c-inputd.service: Scheduled restart job, restart counter is at 5.
Jun 03 00:31:33 manjaro-arm systemd[1]: Stopped PinePhone Keyboard I2C Input Daemon.
Jun 03 00:31:33 manjaro-arm systemd[1]: ppkb-i2c-inputd.service: Start request repeated too quickly.
Jun 03 00:31:33 manjaro-arm systemd[1]: ppkb-i2c-inputd.service: Failed with result 'exit-code'.
Jun 03 00:31:33 manjaro-arm systemd[1]: Failed to start PinePhone Keyboard I2C Input Daemon.
The default kernel driver keyboard can be used by disabling KB151 and rebooting.
sudo systemctl disable ppkb-i2c-inputd.service
sudo systemctl stop ppkb-i2c-inputd.service
sudo systemctl reboot
I have investigated the cause, and it's still unknown.
(06-02-2022, 01:34 PM)presire Wrote: (06-02-2022, 07:53 AM)Hook Wrote: (06-01-2022, 07:35 AM)Hook Wrote: (06-01-2022, 04:01 AM)lolgzs Wrote: Hi,
it was helpful, and it stopped working scince last manjaro update for me ... is it the same for you ?
No, still working fine here.
Whoops! Just did a new update this morning and now the keyboard isn't responding at all. Will have to sort this out...
I also use Manjaro ARM, with PinePhone (v1.2).
I recently updated it to the latest version, then KB151 fails to start, the following error is output.
Jun 03 00:31:33 manjaro-arm systemd[1]: ppkb-i2c-inputd.service: Scheduled restart job, restart counter is at 5.
Jun 03 00:31:33 manjaro-arm systemd[1]: Stopped PinePhone Keyboard I2C Input Daemon.
Jun 03 00:31:33 manjaro-arm systemd[1]: ppkb-i2c-inputd.service: Start request repeated too quickly.
Jun 03 00:31:33 manjaro-arm systemd[1]: ppkb-i2c-inputd.service: Failed with result 'exit-code'.
Jun 03 00:31:33 manjaro-arm systemd[1]: Failed to start PinePhone Keyboard I2C Input Daemon.
The default kernel driver keyboard can be used by disabling KB151 and rebooting.
sudo systemctl disable ppkb-i2c-inputd.service
sudo systemctl stop ppkb-i2c-inputd.service
sudo systemctl reboot
I have investigated the cause, and it's still unknown.
With the following settings, the default kernel driver keyboard could be disabled.
sudo vi /boot/boot.txt
# /boot/boot.txt file
setenv bootargs 〜 pinephone-keyboard.disable_input
Then, Uboot update.
sudo pp-uboot-mkscr
Restart PinePhone.
sudo systemctl reboot
Start KB151.
sudo systemctl enable ppkb-i2c-inputd.service
sudo systemctl start ppkb-i2c-inputd.service
I was able to start KB151 successfully,
but for some reason, I cannot KB151 keyboard input.
|