fwupd/plugins/wacom-usb
Richard Hughes bc7475f1a1 wacom-usb: Use the correct buffer format for the touch module
The specifications are wrong...
2019-02-12 10:16:42 -06:00
..
data trivial: Add some debugging data to wacom-usb 2019-01-02 09:50:39 +00:00
fu-plugin-wacom-usb.c wacom-usb: Only reboot the device when all composite devices have been updated 2019-02-06 14:48:48 +00:00
fu-self-test.c wacomhid: Rename to wacom-usb 2018-11-29 13:26:29 +00:00
fu-wac-common.c wacom-usb: Make updating less verbose 2019-02-12 10:16:42 -06:00
fu-wac-common.h Use '#pragma once' to avoid a lot of boilerplate 2019-02-09 08:42:30 -06:00
fu-wac-device.c wacom-usb: Set the install duration for each device type 2019-02-12 10:16:42 -06:00
fu-wac-device.h wacom-usb: Make updating less verbose 2019-02-12 10:16:42 -06:00
fu-wac-firmware.c wacomhid: Rename to wacom-usb 2018-11-29 13:26:29 +00:00
fu-wac-firmware.h Use '#pragma once' to avoid a lot of boilerplate 2019-02-09 08:42:30 -06:00
fu-wac-module-bluetooth.c wacom-usb: Set the install duration for each device type 2019-02-12 10:16:42 -06:00
fu-wac-module-bluetooth.h Use '#pragma once' to avoid a lot of boilerplate 2019-02-09 08:42:30 -06:00
fu-wac-module-touch.c wacom-usb: Use the correct buffer format for the touch module 2019-02-12 10:16:42 -06:00
fu-wac-module-touch.h Use '#pragma once' to avoid a lot of boilerplate 2019-02-09 08:42:30 -06:00
fu-wac-module.c wacom-usb: Return with an error if there were too many retries 2019-02-12 10:16:42 -06:00
fu-wac-module.h Use '#pragma once' to avoid a lot of boilerplate 2019-02-09 08:42:30 -06:00
meson.build trivial: Fix potential compile failures for high -j values 2019-02-01 16:52:16 +00:00
README.md wacom-usb: Add some more information to the README 2019-01-31 11:55:12 +00:00
wacom-usb.quirk wacom-usb: Fix the plugin name to allow devices to be updated 2019-01-30 13:09:54 +00:00

Wacom USB Support

Introduction

Wacom provides interactive pen displays, pen tablets, and styluses to equip and inspire everyone make the world a more creative place.

From 2016 Wacom has been using a HID-based proprietary flashing algorithm which has been documented by support team at Wacom and provided under NDA under the understanding it would be used to build a plugin under a LGPLv2+ licence.

Wacom devices are actually composite devices, with the main ARM CPU being programmed using a more complicated erase, write, verify algorithm based on a historical update protocol. The "sub-module" devices use a newer protocol, again based on HID, but are handled differently depending on thier type.

Firmware Format

The daemon will decompress the cabinet archive and extract a firmware blob in the following formats:

  • Touch module: Intel HEX file format
  • Bluetooth module: Unknown airoflash file format
  • EMR module: Plain SREC file format
  • Main module: SREC file format, with a custom WACOM vendor header

This plugin supports the following protocol ID:

  • com.wacom.usb

GUID Generation

These devices use the standard USB DeviceInstanceId values, e.g.

  • USB\VID_056A&PID_0378&REV_0001
  • USB\VID_056A&PID_0378
  • USB\VID_056A