Visualization for Steam with Arduino

Visualization for Steam with Arduino is a PC software and Arduino firmware package for players who want to build a custom faceplate for their Steam Machine or Steam gaming PC.

The app runs on your PC alongside the Steam client, detects the active Steam user and the currently running Steam game, then streams various metrics to an externally attached Arduino-based display setup. A single USB cable powers the board, flashes the firmware, and carries the serial data connection. With the matching firmware installed on the board, your custom faceplate can show Steam context, system metrics, and achievement information while you play.

Concept rendering of a custom Steam Machine faceplate with an Arduino display

Advantages of this custom faceplate build

  • Easy to install and update through Steam. Buy it once to receive future updates.
  • Uses off-the-shelf parts that are available worldwide.
  • Requires no battery: the board is powered via USB, and the Modulino panels are powered through Qwiic cables.
  • Requires no soldering, just connecting the modules via Qwiic cables.
  • Makes no permanent changes to the hardware, so the components can be reused for other projects later.
  • Does not modify the Steam Machine hardware and should not void its warranty.
  • Is not Steam Machine-specific: the same faceplate concept can be adapted to any gaming PC.

What this Steam app does

  • Connects to the locally running Steam client.
  • Detects the active Steam user and the currently running Steam game.
  • Discovers a supported Arduino board connected over USB.
  • Flashes the supported firmware to the board, if needed.
  • Streams metrics over a USB serial connection.
  • Sends game context and system metrics: FPS, CPU, GPU, RAM, and VRAM usage.
  • Supports player and global achievement text for games where the required achievement data is available.
  • Runs quietly in the background and can be minimized to the system tray.

Compatible hardware

The current release is designed for the following Arduino boards:

The current display setup is designed for:

Supported and planned input modules:

The reference module layout uses Qwiic cables for Modulino connections. Each Modulino panel comes with a short cable. If your layout needs more space between modules, we recommend this Qwiic cables bundle (~$10 / ~€11). Your own faceplate, enclosure, mounting, and cable routing are up to your project design.

Possible hardware topologies

The faceplate can be assembled in the following supported configurations:

  1. Main topology: Arduino UNO R4 Minima or Arduino UNO R4 WiFi, Adafruit 2.8-inch TFT Display Shield V2, four Arduino Modulino LED Matrix modules, and an Arduino Modulino Knob.
  2. Without the TFT display and knob: Arduino UNO R4 WiFi and four Arduino Modulino LED Matrix modules. The UNO R4 WiFi is required for this topology because it has its own Qwiic connector. This is a much cheaper alternative because the TFT display is the most expensive part of the main topology.

Faceplate fit and airflow

The Arduino board and TFT display must physically fit behind your custom Steam Machine faceplate. The reference board and display stack is approximately 2 cm tall, so your design needs a larger gap between the faceplate and the machine chassis to leave room for the electronics, and cables.

No additional cooling is required for the faceplate electronics because the Steam Machine already draws enough intake air through that area. Your custom build should still avoid blocking the machine's existing airflow path.

Supported data

Visualization for Steam with Arduino is built around compact, real-time status updates that fit on small displays and LED matrices. Depending on the game, system, drivers, and available Steam data, the board can receive:

  • Steam persona name
  • Steam game name
  • FPS data
  • CPU usage
  • GPU usage
  • RAM usage
  • VRAM usage
  • Player and global achievements where available
  • Player stats (planned)

Some fields may be unavailable on some systems or in some games. Hardware counters, driver support, operating system permissions, and game-specific Steam data can affect what the app can detect.

System requirements and setup notes

The app is intended for Windows and Linux desktop systems, including SteamOS, running the Steam client. A compatible Arduino board must be connected by USB and visible to the operating system as a serial device. Internet access is required during setup and normal use for firmware download, game artwork, and supported Steam achievement data.

Not an official hardware bundle

This is an independent companion utility and firmware package for hobbyist faceplate projects. It is not made by, endorsed by, sponsored by, or affiliated with Valve, Arduino, or Adafruit. Steam, Steam Machine, SteamOS, Arduino, Modulino, and Adafruit names are used only to identify compatibility with the relevant software, boards, and accessories.

Contact

Questions, feedback, feature requests, and compatibility reports are welcome. Email us at v4swa@dunaparty.hu.