Skip to main content

Stream Deck Classic

Introduction

The Stream Deck Classic Family are 15-Key USB 2.0-compliant input devices featuring a 3×5 grid of keys atop a single LCD screen. They communicate with the host via the USB HID protocol, enabling key event reporting, image upload, and device configuration.

For all concepts, data types, report structures, and shared commands refer to the General Reference page. This page documents only what is specific to the 15-key family.


Devices Overview

Summary

NameModelVIDPIDCapabilities
Stream Deck 15-Key Module20GBA99010x0FD90x00B915 Key Layout
Stream Deck 201920GAA99020x0FD90x006D15 Key Layout
Stream Deck Mk.220GBA99010x0FD90x008015 Key Layout
Stream Deck Mk.2 (Scissor Keys)20GBL99010x0FD90x00A515 Key Layout
note

All models in this family share the same HID command set and 15-key layout. Adjust the PID when targeting a specific model.

important

The Stream Deck with PID 0x0060 is not supported by this protocol. This device is part of the first models released in 2017 and uses its own protocol, which will be documented in the future.


Capabilities & Physical Characteristics

15 Key Layout

EntityProperty
LCD Image480 × 272 px (low DPI)
Keys matrix5 × 3
Key Image72 × 72 px
Keypad Keys Index Layout
Image showing the 15 keys keypad buttons index layout.
Unit Pixel Layout
Image showing the 15 keys unit pixel layout.

Command Descriptions

Output Reports

The Report ID of output reports is 0x02. When the payload does not fit into a single report, it must be split into multiple chunks.


Update Key Image

Uploads an image for a specific key.

OffsetTypeNote
+ 0x00Output ReportReport ID: 0x02, Command: 0x07
+ 0x02UINT8Key Index
+ 0x03UINT8Transfer is Done flag (0x01 = last chunk)
+ 0x04UINT16Chunk Contents Size
+ 0x06UINT16Chunk Index (zero-based)
+ 0x08UINT8[]Chunk Data

Update Full Screen Image

Uploads an image for the entire LCD.

OffsetTypeNote
+ 0x00Output ReportReport ID: 0x02, Command: 0x08
+ 0x02UINT8Reserved
+ 0x03UINT8Transfer is Done flag (0x01 = last chunk)
+ 0x04UINT16Chunk Contents Size
+ 0x06UINT16Chunk Index (zero-based)
+ 0x08UINT8[]Chunk Data

Update Background

Uploads an image to be stored as a background at a given index.

OffsetTypeNote
+ 0x00Output ReportReport ID: 0x02, Command: 0x0D
+ 0x02UINT8Background Index
+ 0x03UINT8Transfer is Done flag (0x01 = last chunk)
+ 0x04UINT16Chunk Index (zero-based)
+ 0x06UINT16Chunk Contents Size
+ 0x08UINT8[]Chunk Data

Device Setup & Communication

Uploading Images

Key Image

  1. Prepare a 72 × 72 px image.
  2. Rotate the image 180° before upload (required for all models in this family).
  3. Export in JPEG format.
  4. Send using the Update Key Image command sequence.

Full LCD Image

  1. Prepare a 480 × 272 px image.
  2. Rotate the image 180° before upload (required for all models in this family).
  3. Export in JPEG format.
  4. Send using the Update Full Screen Image command sequence.

INDEX

Input Reports Reference

Report IDCommandDescription
0x010x00Key press state change

Output Reports Reference

Report IDCommandDescription
0x020x07Update Key Image
0x020x08Update Full Screen Image
0x020x0DUpdate Background

Feature Reports Reference

Setter Feature Reports

Report IDCommandDescription
0x030x02Show Logo
0x030x05Fill LCD with Color
0x030x06Fill Key with Color
0x030x08Set Backlight Brightness
0x030x0DSet Sleep Mode Duration

Getter Feature Reports

Report IDCommandDescription
0x04Get Firmware Version (LD)
0x05Get Firmware Version (AP2)
0x06Get Unit Serial Number
0x07Get Firmware Version (AP1)
0x08Get Unit Information
0x0AGet Sleep Mode Duration