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 revision 2.2: Wishlist for the hardware issue fixes dsimic 107 56,664 05-17-2022, 05:16 AM
Last Post: markifi
  Troubleshooting of pinebook Pro red light and black screen wangyukunshan 0 254 03-23-2022, 12:10 AM
Last Post: wangyukunshan
  Pinebook Pro Docking Deck Seems to be DOA Inig0M0nt0ya 1 1,020 02-19-2022, 10:22 PM
Last Post: angeloweb
Information Keyboard Duplicate Keypress Fix RjraymondDuplicate 0 245 02-17-2022, 11:52 PM
Last Post: RjraymondDuplicate
  keyboard and usb ports not working slig 3 532 02-15-2022, 10:12 AM
Last Post: wdt
  Replacing the Keyboard gabb 6 2,589 01-11-2022, 07:39 AM
Last Post: Valenoern
  power on PBP if your keyboard is dead? stozi 0 458 11-29-2021, 01:55 PM
Last Post: stozi
  PineBook led got red/green (intermittent), then... Ice-O-Star 1 935 10-14-2021, 05:50 PM
Last Post: belfastraven
  Pinebook pro Hardware failure: how should I diagnose it? alxndr.psclt 5 2,063 09-08-2021, 09:03 PM
Last Post: KC9UDX
  PineBook Pro dead ottahe 2 1,415 08-23-2021, 04:47 PM
Last Post: KC9UDX

Forum Jump:


Users browsing this thread: 1 Guest(s)