Pinebook Pro Revised Keyboard Firmware
#1
Hey all! 

I've been digging into the keyboard firmware recently and trying to figure out how it all works, and luckily it's been pretty straight-forward 8051 assembly. I've started writing some pseudo-code to figure out the flow and data that's being read from the memory. From all that, it's been pretty easy to tackle some of the issues people have been reporting in the forums and Github, and I've put together a "revised" version of the binaries that contain some modifications that you might enjoy:
  • Corrected Fn+F9-12 keys for ANSI (ISO version didn't have this issue)
  • Arrow (and other) keys work with the Pine (GUI) key
  • NumLock is respected only in the Fn layer, i.e. NumLock can be left on all the time
  • Privacy switches now send keycodes when being enabled/disabled, for working into scripts/notifications:
Code:
F14: Microphone Enabled
F18: Microphone Disabled
F13: Wifi Enabled
F17: Wifi Disabled
F15: Camera Enabled
F19: Camera Disabled

Check out the fork of the updater with flashing instructions here!

2020-01-31 Update: You can make your own keymaps

I've converted the revised changes into C code that allows you to actually compile things, and combine the changes with the .hex file automatically - this means you can easily create your own keymap, compile (from your PBP) and flash it to your PBP's keyboard. Both default ANSI and ISO versions have been used by community members, but I think it needs more thorough testing before it's ready for production.

Check out all of the documentation for building your own keymaps here!

These changes also fix a bug with the F3 key, adds arbitrary file flashing to the updater, along with some other changes that are documented in the PR itself.

If you have any bug reports or suggestions for other features, feel free to open an issue/PR in the repo, or discuss things here!
  Reply
#2
(01-22-2020, 03:18 PM)jackhumbert Wrote: ...
If you have any bug reports or suggestions for other features, feel free to open an issue/PR in the repo, or discuss things here!

Ask, and you shall receive. 2 new issues submitted for your consideration;

New privacy like function - Sound on / off - Pine + F9? #7
Keyboard & trackpad firmware version returned by USB #8
--
Arwen Evenstar
Princess of Rivendale
  Reply
#3
Thanks for this. Smile

Just one question - does this mean that with your keyboard firmware original privacy switches Pine+F10, Pine+F11 and Pine+F12 do not work ?
  Reply
#4
(01-23-2020, 03:09 AM)as400 Wrote: does this mean that with your keyboard firmware original privacy switches Pine+F10, Pine+F11 and Pine+F12 do not work ?

All the privacy switches should still work as intended Smile they just also send F keys so that you can be notified more clearly in the OS, or run scripts based on their status.
  Reply
#5
OK - thanks again Smile
  Reply
#6
@jackhumbert Thank you for your work ^_^

With reverse engineered keyboard and touchpad firmware we'll be one step closer to a blob free device
  Reply
#7
excellent project idea. will play with this tonight.
  Reply
#8
Well done! A very quick test of corner grabbing seems to show an improvement...I was able to grab a screen corner on the first go. Not much of a test and may be pure accident but...It looks good at quick glance. I will give more of a go this weekend. Thanks!
  Reply
#9
(01-24-2020, 12:37 PM)gabeeg Wrote: Well done! A very quick test of corner grabbing seems to show an improvement...I was able to grab a screen corner on the first go. Not much of a test and may be pure accident but...It looks good at quick glance. I will give more of a go this weekend. Thanks!

I was going to install this today or tomorrow just for the fix to the Function keys. If it's also improved the cursor that's awesome (corner grabbing is practically impossible with the trackpad, as-is, in my experience).
  Reply
#10
(01-24-2020, 01:33 PM)inkslinger Wrote: If it's also improved the cursor that's awesome (corner grabbing is practically impossible with the trackpad, as-is, in my experience).

No changes have been made to the trackpad firmware yet, so far only the keyboard firmware seems to have been revised.

Should I post an issue about the trackpad problem, or is the focus intended to be the keyboard?
  Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Replacing the Keyboard gabb 5 920 10-20-2021, 06:51 PM
Last Post: tllim
  PineBook led got red/green (intermittent), then... Ice-O-Star 1 138 10-14-2021, 05:50 PM
Last Post: belfastraven
  PineBook Pro revision 2.2: Wishlist for the hardware issue fixes dsimic 105 30,587 10-10-2021, 06:25 AM
Last Post: slyecho
  Pinebook pro Hardware failure: how should I diagnose it? alxndr.psclt 5 550 09-08-2021, 09:03 PM
Last Post: KC9UDX
  PineBook Pro dead ottahe 2 489 08-23-2021, 04:47 PM
Last Post: KC9UDX
  pinebook pro trackpad randomly stops working chewie 5 1,676 08-10-2021, 04:33 PM
Last Post: chewie
  Replacement scissor switches (ANSI keyboard)? zackw 3 724 08-09-2021, 09:20 PM
Last Post: tllim
  Pinebook Pro/Pinetab replacement as400 11 2,030 07-30-2021, 04:40 AM
Last Post: as400
  Touchpad notchy on new 2021 pinebook pro Neilcob 21 5,243 07-28-2021, 09:14 AM
Last Post: dsimic
Question PINEBOOK Pro USB-C Docking Deck issues pawzy 2 833 07-18-2021, 09:15 AM
Last Post: bluekeys

Forum Jump:


Users browsing this thread: 1 Guest(s)