Plugin: PixArt RF

Introduction

This plugin allows the user to update any supported Pixart RF Device using a custom HID-based OTA protocol

Firmware Format

The daemon will decompress the cabinet archive and extract a firmware blob in an unspecified binary file format.

This plugin supports the following protocol ID:

  • com.pixart.rf

GUID Generation

These devices use the standard HIDRAW DeviceInstanceId values for both Pixart Imaging, Inc and Primax Electronics, Ltd, e.g.

  • HIDRAW\VEN_093A&DEV_2801
  • HIDRAW\VEN_0461&DEV_4EEF
  • HIDRAW\VEN_0461&DEV_4EEF&NAME_${NAME}
  • HIDRAW\VEN_0461&DEV_4EEF&MODEL_${MODEL_NAME}

Additionally, a custom GUID values including the name is used, e.g.

Update Behavior

The firmware is deployed when the device is in normal runtime mode, and the device will reset when the new firmware has been written.

Vendor ID Security

The vendor ID is set from the USB vendor, in this instance set to USB:0x093A

External Interface Access

This plugin requires ioctl HIDIOCSFEATURE and HIDIOCGFEATURE access.

Version Considerations

This plugin has been available since fwupd version 1.5.5.

Owners

Anyone can submit a pull request to modify this plugin, but the following people should be consulted before making major or functional changes:

  • Sam Chen: sam412081go