Skip to content

HoloPlayService Related

Device Status

If HoloPlay Service receives an info command, it will respond with information about HoloPlay Service and any connected devices.

Example Response

  "error": 0,
  "version": "1.0.0",
  "devices": [
      "hwid": "LKG030nffpp24",
      "state": "hidden",
      "windowCoords": [1920, 0],
      "hardwareVersion": "standard",
      "buttons": {
        [0, 0, 0, 0]
      "calibration": {
        "pitch": 50.060001373291016,
        "slope": -7.7369561195373535,
        "center": 0.26147353649139404,

Field Descriptions


The version of HoloPlay Service installed on the machine.


An array of all devices currently connected.


The state of the specified device. Can be one of the following states:

  • hidden — the window is not visible.
  • ok — the window exists and is ready to receive content.
  • nocalibration — there's an error reading calibration, please ensure your cables are connected.


Display position of the device as Windows display coordinates.


Can be standard, large, pro, or 8k.


Whether or not each of the buttons is currently pressed for the specified device.


Calibration data for the specified device.

Quilt Settings

A description of quilt view count and tiling. All parameters are optional.

  • vx (int) - number of columns.
    • default value: 1.
  • vy (int) - number of rows.
    • default value: 1.
  • vtotal (int) - total number of views in quilt.
    • default value: vx * vy.
    • only necessary for quilts that have "missing" views in some positions.
  • aspect (float) - original aspect ratio of the quilt.
    • default value: if unspecified, will match aspect ratio of target display (16/10 for the 8.9" Looking Glass, 16/9 for the 15.6" Looking Glass, etc).
  • overscan (bool/int) - scaling setting when on a device with a different aspect ratio than the quilt.
    • default value: 0.
    • overscan=1 causes the image to stretch to fill the display, cutting off the sides. (LETTERBOXING?)
    • overscan=0 causes the image to scale to fit within the display. (I DON'T UNDERSTAND THESE TWO)
    • overscan has no effect if aspect is either unspecified or equal to the resolution of the target display.
  • invert (bool/int) - inverted view cone setting.
    • default value: 0.
    • invert=1 causes the views to be read in the opposite order as they are encoded in the texture.

Error Codes

Every command issued to the driver has a corresponding response issued in CBOR format. At minimum, the response contains an error code, which may be one of the following:

Error Description
0 No error, everything ok.
1 CBOR parser failure.
2 Driver could not understand the command.
3 Driver expected an image file in binary data, but could not read one.
4 Client attempted to draw to a Looking Glass that is not connected or has no calibration.
5 Client attempted to load a nonexistent key from the cache.
6 Client attempted to register an app ID after sending one or more messages.
7 Client attempted to do something that is not allowed (i.e., tried to take over a display currently occupied by a greedy process).