Pixelbook Go Backlight driver

This repository contains instructions and source code to build, package and run the Fuchsia backlight driver that is used in the workstation_eng.chromebook-x64-dfv2 product.


  1. Make sure this repository has the required submodules:

    git submodule update --recursive --init
  2. Run the bootstrap script that downloads the appropriate Bazel binary:

  3. Ensure that there are Fuchsia SSH keys in your host machine. You will need them for running the Fuchsia emulator.

     [[ -f "${HOME}/.ssh/fuchsia_ed25519" ]] || ssh-keygen -P "" -t ed25519 -f "${HOME}/.ssh/fuchsia_ed25519" -C "${USER}@$(hostname -f) Shared SSH Key for Fuchsia"
     [[ -f "${HOME}/.ssh/fuchsia_authorized_keys" ]] || ssh-keygen -y -f "${HOME}/.ssh/fuchsia_ed25519" > "${HOME}/.ssh/fuchsia_authorized_keys"

Build, run and test the samples

The repository is ready to build the samples.

Note: in order to use an SDK produced by a local Fuchsia platform tree, you can set an environment variable named LOCAL_FUCHSIA_PLATFORM_BUILD as described in https://fuchsia.googlesource.com/sdk-integration/+/refs/heads/main/using_local_sdk.md

  1. Fetch the system images

    tools/ffx product-bundle get workstation_eng.chromebook-x64-dfv2 --repository workstation
  2. Prepare and connect the Pixelbook Go, by flashing and/or paving it (not covered here), and connect using Ethernet.

  3. The product bundle comes with on-demand packages in a separate repository.

    Use the following command to register it with the device:

    tools/ffx target repository register -r workstation --alias fuchsia.com
  4. Update (OTA) the device to the version of the SDK:

    tools/ffx target update check-now --monitor
  5. (optional) watch the device log in a separate window

    tools/ffx log
  6. Load the driver

    Now you are ready to register the driver.

    First, let's confirm that the driver is not loaded:

    tools/ffx driver list | grep backlight

    The command above should not return any driver because it has not been registered.

    Now register the driver:

    tools/bazel run --config=fuchsia_x64 driver:pkg.component

    The driver now should show in the list of loaded drivers:

    tools/ffx driver list | grep backlight