Skip to content

itsyaasir/litra-control

Repository files navigation

Litra Control Logo

Litra Control

A modern Linux desktop application for controlling Logitech Litra devices

Build Status License Downloads Platform

FeaturesInstallationUsageDevelopmentContributing

Litra Control Screenshot

✨ Features

🎛️ Device Control
Precise brightness and color temperature adjustment
🎨 Smart Presets
5 professional lighting scenarios with intelligent detection
📹 Auto Camera
Automatically activates when camera is detected
🖥️ Modern UI
Clean, responsive interface with dark/light themes
🔗 Multi-Device
Control multiple Litra devices simultaneously
🐧 Native Linux
Built with Tauri for optimal performance

🎯 Supported Devices

  • Logitech Litra Glow - Perfect for video calls and streaming
  • Logitech Litra Beam - Professional-grade adjustable lighting
  • Logitech Litra Beam LX - Premium streaming key light

🚀 Installation

Quick Install (Recommended)

Ubuntu/Debian (.deb)
# Download and install
wget https://github.com/itsyaasir/litra-control/releases/latest/download/litra-control_amd64.deb
sudo dpkg -i litra-control_amd64.deb
sudo apt-get install -f  # Fix any missing dependencies
Fedora/RHEL/openSUSE (.rpm)
# Download and install
wget https://github.com/itsyaasir/litra-control/releases/latest/download/litra-control.x86_64.rpm
sudo rpm -i litra-control.x86_64.rpm
Universal Linux (AppImage)
# Download and run
wget https://github.com/itsyaasir/litra-control/releases/latest/download/litra-control.AppImage
chmod +x litra-control.AppImage
./litra-control.AppImage

📦 Package Managers

Arch Linux (AUR)

Coming soon

Flatpak

Coming soon


💡 Usage

First Time Setup

  1. Connect your Litra device via USB
  2. Launch Litra Control from your applications menu
  3. Grant permissions when prompted (automatic with package install)
  4. Select your device from the dropdown menu

Features

  • 🔆 Brightness: Adjust from 0-100% with smooth sliders
  • 🌡️ Temperature: Fine-tune color temperature (2700K-6500K)
  • ⚡ Power: Toggle device on/off with custom titlebar controls
  • 🎨 Presets: One-click professional lighting scenarios
  • 📹 Auto Camera: Automatically activates when camera is detected

🎨 Lighting Presets

Preset Temperature Brightness Best For
Cozy Daylight 5200K 60% Natural video calls
Natural Balance 5600K 70% Accurate color representation
Cool Blue 6500K 75% Crisp, energetic streaming
Warm Candlelight 3000K 40% Ambient, comfortable lighting
Bright Companionship 5000K 100% Maximum illumination

🛠️ Development

Prerequisites

System Dependencies

Ubuntu/Debian
sudo apt update
sudo apt install libwebkit2gtk-4.0-dev build-essential curl wget \
  libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev libudev-dev
Fedora
sudo dnf install webkit2gtk3-devel openssl-devel gtk3-devel \
  libappindicator-gtk3-devel librsvg2-devel systemd-devel
Arch Linux
sudo pacman -S webkit2gtk openssl gtk3 libappindicator-gtk3 librsvg systemd

Build Instructions

# Clone the repository
git clone https://github.com/itsyaasir/litra-control.git
cd litra-control

# Install dependencies
pnpm install

# Development mode (hot reload)
pnpm tauri dev

# Build for production
pnpm tauri build

Bundles

The bundles will be in the src-tauri/target/release/bundle directory.

Project Structure

litra-control/
├── src/                    # Vue.js frontend
│   ├── components/         # UI components
│   ├── composables/        # Vue composables
│   ├── stores/             # Pinia stores
│   └── assets/             # Static assets
├── src-tauri/              # Rust backend
│   ├── src/                # Rust source code
│   ├── icons/              # Application icons
│   └── scripts/          # Linux packaging files
└── docs/                   # Documentation

Technology Stack

  • Frontend: Vue 3 + TypeScript + Vite
  • Backend: Rust + Tauri
  • UI Framework: Tailwind CSS + Shadcn/ui
  • State Management: Pinia
  • Build System: Vite + Cargo

🤝 Contributing

We welcome contributions! Please see our Contributing Guide for details.

Quick Start

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Development Guidelines


📋 Troubleshooting

Device not detected
  1. Ensure device is connected via USB
  2. Check udev rules: ls -la /etc/udev/rules.d/99-litra-control.rules
  3. Verify group membership: groups $USER
  4. Reload udev rules: sudo udevadm control --reload-rules && sudo udevadm trigger
  5. Log out and log back in
Permission denied
  1. Check the device permissions: ls -la /dev/hidraw*
  2. If the device is not in the plugdev group, add the user to the group: sudo usermod -a -G plugdev $USER
  3. Log out and log back in
  4. Check device permissions: ls -la /dev/hidraw*
Build issues
  1. Update Rust: rustup update
  2. Clear cache: cargo clean && pnpm store prune
  3. Reinstall dependencies: pnpm install
  4. Check system dependencies above

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.


🙏 Acknowledgments

  • Logitech for creating the Litra device series
  • timrogers/litra-rs for the Rust Litra library
  • timrogers/litra-autotoggle for auto-toggle inspiration
  • Tauri team for the amazing framework
  • Vue.js community for the excellent ecosystem

Made with ❤️ for the Linux community

DownloadReport BugRequest Feature