fwupd/plugins/wacom-usb
Mario Limonciello 6abe21efbd trivial: stop including fu-hash.h as part of fu-plugin-vfuncs.h
Explicitly include it in all "in-tree" plugins.

If headers are exported out of tree we will likely explicitly not
export this header.
2019-11-25 09:29:46 +00:00
..
data trivial: Add some debugging data to wacom-usb 2019-01-02 09:50:39 +00:00
fu-plugin-wacom-usb.c trivial: stop including fu-hash.h as part of fu-plugin-vfuncs.h 2019-11-25 09:29:46 +00:00
fu-self-test.c Allow a custom FuFirmwareImage->write() in superclassed objects 2019-10-15 08:10:11 -05:00
fu-wac-common.c wacom-usb: Make updating less verbose 2019-02-12 10:16:42 -06:00
fu-wac-common.h trivial: Remove G_BEGIN_DECLS from all private headers 2019-10-09 20:02:16 +01:00
fu-wac-device.c Allow a custom FuFirmwareImage->write() in superclassed objects 2019-10-15 08:10:11 -05:00
fu-wac-device.h trivial: Remove G_BEGIN_DECLS from all private headers 2019-10-09 20:02:16 +01:00
fu-wac-firmware.c Use FuFirmware as a container for firmware images 2019-08-08 13:10:57 +01:00
fu-wac-firmware.h trivial: Remove G_BEGIN_DECLS from all private headers 2019-10-09 20:02:16 +01:00
fu-wac-module-bluetooth.c Never use memcpy() in a possibly unsafe way 2019-08-12 09:22:09 -05:00
fu-wac-module-bluetooth.h trivial: Remove G_BEGIN_DECLS from all private headers 2019-10-09 20:02:16 +01:00
fu-wac-module-touch.c Allow a custom FuFirmwareImage->write() in superclassed objects 2019-10-15 08:10:11 -05:00
fu-wac-module-touch.h trivial: Remove G_BEGIN_DECLS from all private headers 2019-10-09 20:02:16 +01:00
fu-wac-module.c Use fu_common_string_append_kv() in subclassed device 2019-08-14 16:48:37 +01:00
fu-wac-module.h trivial: Remove G_BEGIN_DECLS from all private headers 2019-10-09 20:02:16 +01:00
meson.build Use FuFirmware as a container for firmware images 2019-08-08 13:10:57 +01:00
README.md Fix some typos spotted using codespell 2019-04-08 12:47:53 +01:00
wacom-usb.quirk remove those PIDs with Bluetooth interface, Wacom updater doesn't support updating from Bluetooth interface 2019-07-15 09:09:29 +01: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 their 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