Index:


Introduction

This article contains the USB HID commands that are supported by Snom headsets and conference phones. This documentation helps PBX and softphone vendors to enhance their application, let it be native or written in Javascript using Web HID, to control and be controlled by the Snom device connected via USB port.

In order to not limit the use of our devices only to certain applications, and provide the best possible interoperability options "on-board", all of them are mode compatible with the USB HID Specification. However, we do use some proprietary commands which are not described neither in the consumer nor in other sections. These are mainly used for some device related actions, like firmware upgrade.



Supported USB devices

A100, A330, C300

Our Vendor ID (VID) is 0x251c. This can be used to determine if a Snom device is connected to the USB.

If a device does not support an input or output report it is marked directly at the command. As you can see below, Snom devices are supporting not only the Telephony Page (0x0B) of the USB HID specification, but also the Consumer Page (0x0C), enabling the products to be used as a "normal" headset or speaker.



USB HID Input

Considering input

Input is considered as a button press, or basically a signal which is initiated by the device, or by the person using the device. These signals are encoded within reports, according to the USB Specification, accessible on https://www.usb.org/hid.

Control



Output

Considering output

Output, among audio or video is considered also as representation of a status. This is mainly done using LEDs, or any other representation of a status change.


External Links


Diagrams were made with  https://sequencediagram.org/