mirror of
https://git.proxmox.com/git/fwupd
synced 2026-03-28 00:52:55 +00:00
48 lines
1.2 KiB
Markdown
48 lines
1.2 KiB
Markdown
# CH341A
|
|
|
|
## Introduction
|
|
|
|
The CH341A is an affordable SPI programmer.
|
|
|
|
The assumed map between UIO command bits, pins on CH341A chip and pins on SPI chip:
|
|
|
|
UIO CH341A SPI CH341A
|
|
0 D0/15 CS/1 CS0
|
|
1 D1/16 unused CS1
|
|
2 D2/17 unused CS2
|
|
3 D3/18 SCK/6 DCK
|
|
4 D4/19 unused DOUT2
|
|
5 D5/20 SI/5 DOUBT
|
|
6 D6/21 unused DIN2
|
|
7 D7/22 SO/2 DIN
|
|
|
|
## Firmware Format
|
|
|
|
The daemon will decompress the cabinet archive and extract a firmware blob of unspecified format.
|
|
|
|
This plugin supports the following protocol ID:
|
|
|
|
- com.winchiphead.ch341a
|
|
|
|
## GUID Generation
|
|
|
|
These devices use the standard USB DeviceInstanceId values, e.g.
|
|
|
|
- `USB\VID_1A86&PID_5512&REV_0304`
|
|
- `USB\VID_1A86&PID_5512`
|
|
|
|
## Update Behavior
|
|
|
|
The device programs devices in raw mode, and can best be used with `fwupdtool`.
|
|
|
|
To write an image, use `sudo fwupdtool --plugins ch341a install-blob firmware.bin` and to backup
|
|
the contents of a SPI device use `sudo fwupdtool --plugins ch341a firmware-dump backup.bin`
|
|
|
|
## Vendor ID Security
|
|
|
|
The vendor ID is set from the USB vendor, in this instance set to `USB:0x1A86`
|
|
|
|
## External Interface Access
|
|
|
|
This plugin requires read/write access to `/dev/bus/usb`.
|