PINE64
Trackpad firmware update - Printable Version

+- PINE64 (https://forum.pine64.org)
+-- Forum: Pinebook Pro (https://forum.pine64.org/forumdisplay.php?fid=111)
+--- Forum: General Discussion on Pinebook Pro (https://forum.pine64.org/forumdisplay.php?fid=112)
+--- Thread: Trackpad firmware update (/showthread.php?tid=8407)

Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27


Trackpad firmware update - Luke - 11-22-2019

[edit 03/04/2021] These instruction's do not apply to Pinebook Pros shipping in 2021. The new and improved keyboard/ trackpad firmware is already flashed on the devices. This thread is now archived and locked.


[edit 10/01/2020] FW flahing Instructions have been edited for both ISO and ANSI users now


Credit goes to @tllim , @xalius , @ayufan and @anarsoul 

N.B. This trackpad/ keyboard firmware update applies to all Pinebook Pros produced in 2019

Before you start:
Your Pinebook Pro should be either fully charged or, preferably, running of mains. This utility will be writing chips on the keyboard and trackpad, so a loss of power during any stage of the update can result in irrecoverable damage to your trackpad or keyboard.

The scripts ought to work on all OSs available for the Pinebook Pro. Some OSs may, however, require installation of relevant dependencies.

Please report any issues you encounter in this thread.

What you'll need:
  • Your Pinebook Pro fully charged / running of mains power
  • Connection to WiFi
  • An external USB keyboard/ access to the Pinebebook Pro via ssh 

What you need to do:

Please follow @ayufan's instructions exactly

[edit 14/01/2020] If you encounter issues please try this.
[url=https://forum.pine64.org/showthread.php?tid=8407&pid=56570#pid56570][/url]
Instruction Brief for BOTH models (read original instructions for further details):

ISO version
Code:
git clone https://github.com/ayufan-rock64/pinebook-pro-keyboard-updater
cd pinebook-pro-keyboard-updater
sudo apt-get install build-essential libusb-1.0-0-dev xxd
make

First Step:

Code:
sudo ./updater step-1 iso
sudo reboot

Second Step:
Code:
cd pinebook-pro-keyboard-updater
sudo ./updater step-2 iso
sudo reboot
------------------------------------------------------------------------

ANSI version
Code:
git clone https://github.com/ayufan-rock64/pinebook-pro-keyboard-updater
cd pinebook-pro-keyboard-updater
sudo apt-get install build-essential libusb-1.0-0-dev xxd
make

First Step:
Code:
sudo ./updater step-1 ansi
sudo reboot

Second Step:
Code:
cd pinebook-pro-keyboard-updater
sudo ./updater step-2 ansi
sudo reboot



RE: Trackpad firmware update - jsfrederick - 11-22-2019

Just ran the updater. Worked well. Trackpad is MUCH better now. Is actually usable. I just followed the Ayufan's instructions exactly and had no issues.

A GREAT BIG thanks to all involved ( @tllim , @xalius , @ayufan and @anarsoul )


RE: Trackpad firmware update - tsys - 11-22-2019

Hi,

thanks a lot for the firmware update! Missed keyboard keystrokes and bad tracking from the touchpad where major pain points for me. 

Would it be possible to open source keyboard and touchpad firmware? I'd love to see this device become even more open  Smile


RE: Trackpad firmware update - m80 - 11-22-2019

Worked great for me too.  Thank you all very much.

Matthew


RE: Trackpad firmware update - MatejSpindler - 11-22-2019

Code:
Running STEP-2...
[*] Flashing touchpad firmware...
[*] Opening in touchpad mode
>>> Trying to open VID:258a PID:001f...
>>> Kernel Driver Active
>>> Writing offset:0 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:1024 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:2048 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:3072 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:4096 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:5120 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:6144 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:7168 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:8192 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:9216 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:10240 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:11264 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:12288 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:13312 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:14336 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:15360 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:16384 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:17408 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:18432 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:19456 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:20480 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:21504 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:22528 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:23552 length:1024...
>>> Verifying '1k-data'...
[*] Verifying 'end-program'...
[*] Verifying 'checksum'...
[*] Verifying 'program'...
[*] Finished succesfully!
>>> release interface
[*] Flashing keyboard firmware...
>>> Fix hex file
[*] Opening in user mode...
>>> Trying to open VID:258a PID:001e...
>>> Device not found
>>> Trying to open VID:258a PID:001f...
[*] Sending command to switch to boot mode...
[*] Command send
>>> release interface
[*] Opening in boot mode
>>> Trying to open VID:0603 PID:1020...
>>> Device not found
>>> Trying to open VID:0603 PID:1020...
>>> Device not found
>>> Trying to open VID:0603 PID:1020...
>>> Device not found
>>> Failed to open in boot mode
[*]
 
This doesn't look OK. And touchpad doesn't work.
Tried flashin second time, same result.
Anything I can  try to solve this?


RE: Trackpad firmware update - tsys - 11-22-2019

(11-22-2019, 12:11 PM)MatejSpindler Wrote:
Code:
Running STEP-2...
[*] Flashing touchpad firmware...
[*] Opening in touchpad mode
>>> Trying to open VID:258a PID:001f...
>>> Kernel Driver Active
>>> Writing offset:0 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:1024 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:2048 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:3072 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:4096 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:5120 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:6144 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:7168 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:8192 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:9216 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:10240 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:11264 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:12288 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:13312 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:14336 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:15360 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:16384 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:17408 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:18432 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:19456 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:20480 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:21504 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:22528 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:23552 length:1024...
>>> Verifying '1k-data'...
[*] Verifying 'end-program'...
[*] Verifying 'checksum'...
[*] Verifying 'program'...
[*] Finished succesfully!
>>> release interface
[*] Flashing keyboard firmware...
>>> Fix hex file
[*] Opening in user mode...
>>> Trying to open VID:258a PID:001e...
>>> Device not found
>>> Trying to open VID:258a PID:001f...
[*] Sending command to switch to boot mode...
[*] Command send
>>> release interface
[*] Opening in boot mode
>>> Trying to open VID:0603 PID:1020...
>>> Device not found
>>> Trying to open VID:0603 PID:1020...
>>> Device not found
>>> Trying to open VID:0603 PID:1020...
>>> Device not found
>>> Failed to open in boot mode
[*]
 
This doesn't look OK. And touchpad doesn't work.
Tried flashin second time, same result.
Anything I can  try to solve this?
[*]

Had that happen to me, too. It seems the touchpad does not enter boot mode reliably. Just rebooting and retrying fixed it for me.


RE: Trackpad firmware update - MatejSpindler - 11-22-2019

(11-22-2019, 12:15 PM)tsys Wrote:
(11-22-2019, 12:11 PM)MatejSpindler Wrote:
Code:
Running STEP-2...
[*] Flashing touchpad firmware...
[*] Opening in touchpad mode
>>> Trying to open VID:258a PID:001f...
>>> Kernel Driver Active
>>> Writing offset:0 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:1024 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:2048 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:3072 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:4096 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:5120 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:6144 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:7168 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:8192 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:9216 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:10240 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:11264 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:12288 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:13312 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:14336 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:15360 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:16384 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:17408 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:18432 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:19456 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:20480 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:21504 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:22528 length:1024...
>>> Verifying '1k-data'...
>>> Writing offset:23552 length:1024...
>>> Verifying '1k-data'...
[*] Verifying 'end-program'...
[*] Verifying 'checksum'...
[*] Verifying 'program'...
[*] Finished succesfully!
>>> release interface
[*] Flashing keyboard firmware...
>>> Fix hex file
[*] Opening in user mode...
>>> Trying to open VID:258a PID:001e...
>>> Device not found
>>> Trying to open VID:258a PID:001f...
[*] Sending command to switch to boot mode...
[*] Command send
>>> release interface
[*] Opening in boot mode
>>> Trying to open VID:0603 PID:1020...
>>> Device not found
>>> Trying to open VID:0603 PID:1020...
>>> Device not found
>>> Trying to open VID:0603 PID:1020...
>>> Device not found
>>> Failed to open in boot mode
[*]
 
This doesn't look OK. And touchpad doesn't work.
Tried flashin second time, same result.
Anything I can  try to solve this?
[*]

Had that happen to me, too. It seems the touchpad does not enter boot mode reliably. Just rebooting and retrying fixed it for me.
[*]
 
Just step-2 or everything from the start ?


RE: Trackpad firmware update - tsys - 11-22-2019

(11-22-2019, 12:21 PM)MatejSpindler Wrote:  Just step-2 or everything from the start ?

While the manual states that you should always restart from step-1 I did only step-2 again after rebooting. It worked for me, but no gurantees. I believe the update steps are somewhat independent once step-1 has completed but that is just an intuitive assumption I got from the log output.


RE: Trackpad firmware update - gabeeg - 11-22-2019

Updating worked like a champ. A quick sloppy typing session in leafpad and it is a vast improvement, love it! Thank you.


RE: Trackpad firmware update - brent.thierens - 11-22-2019

Updated without a problem. Works much better!
However, when I am using the touchpad and I want to left click and I touch the touchpad, my mouse jumps around (also present previously). In general, much better and way more accurate. No problems with the upgrade as well.