Skip to content

gawgua/media-display-arduino

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Media to Arduino Display

A project that captures currently playing media information from Windows and displays it on an Arduino device.

Overview

This project consists of two main components:

  • Windows Side: Rust application that retrieves current media information using Windows APIs
  • Arduino Side: Microcontroller code that receives and displays the media information

Features

  • 🎵 Real-time media information retrieval (title, artist, album) through GlobalSystemMediaTransportControlsSession of windows-rs
  • 🔗 Wireless Bluetooth communication between Windows PC and Arduino

Architecture

Windows PC (Rust)  ←→  Bluetooth (HC-06)  ←→  Arduino (C++)
     ↓                                           ↓
Windows Media Control API                    Display Module

Wiring (Arduino Uno + HC-06 + 16x2 LCD with I2C)

HC-06 Bluetooth Module:
Arduino    HC-06
VCC   →    5V
GND   →    GND
TX    →    D10 (SoftwareSerial RX)

16x2 LCD with I2C:
Arduino    LCD Module
VCC   →    5V
GND   →    GND
SDA   →    A4
SCL   →    A5

Installation

1. Clone the Repository

git clone https://github.com/yourusername/windows-media-arduino-display.git
cd windows-media-arduino-display

2. Windows Side Setup

cd media_control_reader
cargo build --release

3. Arduino Side Setup

  1. Open bluetooth_display.ino in Arduino IDE
  2. Install required libraries:
    • LiquidCrystal_I2C (for LCD)
  3. Select your board and COM port
  4. Upload the sketch

Usage

1. Pair HC-06 with Windows PC

  1. Open Windows Bluetooth settings
  2. Add a new Bluetooth device
  3. Find and connect to "HC-06"
  4. Enter pairing code when prompted
  5. Note the assigned COM port (e.g., COM5) in Device Manager

2. Run Windows Application

  1. Select COM port of HC-06
  2. Select session you want to display info to Arduino

The application will automatically connect to the paired HC-06 module.