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
  Pinebook Pro won't turn on codebreaker 57 3,152 1 hour ago
Last Post: EverythingIsInput
  The RTL-SDR and the Pinebook Pro diodelass 0 45 Yesterday, 07:04 PM
Last Post: diodelass
  Pinebook Pro kit without the rockpro janat08 3 141 05-26-2020, 06:46 AM
Last Post: tophneal
Question No Power to Pinebook Pro jimsurvak 4 82 05-24-2020, 07:46 AM
Last Post: jimsurvak
Question Pinebook Pro Usb-C hub price TDC_PBP 0 145 05-22-2020, 03:55 PM
Last Post: TDC_PBP
  Pinebook Pro - No Audio bebop_man 13 1,620 05-20-2020, 03:16 PM
Last Post: polypode
  Keyboard - Some keys not working Christoph.Krn 0 48 05-19-2020, 05:36 AM
Last Post: Christoph.Krn
  Changing Boot Order on the PineBook Pro bb1netusaf2004 1 100 05-17-2020, 02:17 PM
Last Post: Arwen
  Pinebook Pro stuck in suspend charlief0x 4 164 05-05-2020, 08:36 PM
Last Post: wdt
  WiFi 6 for the Pinebook Pro tsys 12 877 04-28-2020, 12:19 AM
Last Post: pfeerick

Forum Jump:


Users browsing this thread: 1 Guest(s)