10000 GitHub - damachine/coolerdash at refs/heads/main
[go: up one dir, main page]

Skip to content

damachine/coolerdash

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 


CoolerDash 🐧

This tool is intended to simplify display real-time sensor on an AIO liquid cooler LCD displays.

I made the tool because the LCD display of my NZXT Kraken 2023 under Linux does not correspond to the desired features. :P
I've been using this tool successfully for quite a whileβ€”maybe it will help you too!❀️

Features

  • Extends the LCD functionality of CoolerControl with additional features.
  • Support for additional sensor values, and a sophisticated, customizable user interface.
  • Two display modes:
    • Dual Mode (default): Shows CPU and GPU temperatures simultaneously
    • Circle Mode (new): Alternates between CPU and GPU every 5 seconds - optimized for round high-resolution displays (>240x240px)
Special thanks to @codifryed, the founder of CoolerControl

CoolerDash LCD Demo round CoolerDash LCD Demo quad

System Requirements

  • OS: Linux
  • CoolerControl: Version >=2.2.2 REQUIRED - must be installed and running Installation Guide
  • CPU: x86-64-v3 compatible (Intel Haswell+ / AMD Excavator+)
  • LCD: AIO liquid cooler LCD displays (NZXT, etc.)

Note

See the Supported Devices, for a list of confirmed working hardware.
To confirm a device: Submit a Device confirmation.
In principle, all devices supported by CoolerControl/-liquidctl should work with CoolerDash.


Installation

Arch Linux


AUR

  • Using an AUR helper:
# STEP 1: Install
yay -S coolerdash-git
#OR any other AUR helper

# STEP 2: Enable/Start CoolerDash sytemd service
systemctl daemon-reload
systemctl enable --now coolerdash.service

All Distributions

  • Manual installation:
# STEP 1: Clone repository
git clone https://github.com/damachine/coolerdash.git
cd coolerdash

# STEP 2: Build and install (auto-detects Linux distribution and installs dependencies)
make install

# STEP 3: Enable/Start CoolerDash sytemd service
systemctl daemon-reload
systemctl enable --now coolerdash.service

For manual installations, please make sure all required dependencies are installed correctly.
At this time, manual installations need to be updated manually.


Configuration

Important

CoolerControl GUI:

  • In the CoolerControl settings, under Device and Sensor, select one sensor for the CPU and one for the GPU. Set your LCD display to Image/gif.

Important

CoolerDash Runtime:

  • Don't forget to enable/start the service systemctl enable --now coolerdash.service.
  • The application starts with preset default settings.
  • If needed. All settings are managed in /etc/coolerdash/config.ini.
  • After editing the config file, restart the service with systemctl restart coolerdash.service to apply your changes.

Note

Display Modes:

  • Dual Mode (default): Shows CPU and GPU simultaneously - works best on all display sizes
  • Circle Mode (new): Alternates between CPU and GPU every 5 seconds (configurable: 1-60s) - recommended for round high-resolution displays (>240x240px) where dual mode scaling might not be optimal yet
  • Enable Circle Mode: Edit /etc/coolerdash/config.ini β†’ Under [display] section β†’ Set mode=circle
  • CLI Override: Use coolerdash --circle to force circle mode or coolerdash --dual to force dual mode
  • Display Shape Override: Set shape=rectangular or shape=circular in config.ini to manually control the inscribe factor (see Configuration Guide)
  • Customization: Adjust circle_switch_interval (1-60s) and content_scale_factor (0.5-1.0) for fine-tuning

Tip

  • When CoolerDash stops (for example during system shutdown or reboot), it automatically displays the shutdown.png image from the install path. This happens because sensor data is no longer available at that point.
  • You can customize this and much more as you wish, by editing the /etc/coolerdash/config.ini file.
  • For detailed configuration options and examples, see: πŸ“– Configuration Guide

Advanced Usage

Service Management

# Service control
systemctl enable --now coolerdash.service  # Enable and Start!
systemctl start coolerdash.service         # Start
systemctl stop coolerdash.service          # Stop
systemctl restart coolerdash.service       # Restart
systemctl status coolerdash.service        # Status + recent logs

# Journal log
journalctl -u coolerdash.service

# Live logs
journalctl -xeu coolerdash.service -f

Build Commands

make            # Standard C99 build
make clean      # Clean up
make install    # System installation with dependency auto-detection
make uninstall  # Remove installation (service, binary, files)
make debug      # Debug build with AddressSanitizer
make help       # Show all options

Manual Usage

# Run manually (with minimal status logging)
coolerdash

# Run with detailed verbose logging
coolerdash --verbose
# or short form:
coolerdash -v

# Force specific display mode
coolerdash --dual      # Force dual mode (CPU+GPU simultaneously)
coolerdash --circle    # Force circle mode (alternating CPU/GPU)

Debugging Steps

# 1. Check CoolerControl status
systemctl status coolercontrold
curl http://localhost:11987/devices

# 2. Test CoolerDash manually (with clean output)
coolerdash

# 3. Test CoolerDash with detailed verbose logging
coolerdash --verbose
# or short form:
coolerdash -v

# 4. Debug build for detailed information (if needed)
make debug && coolerdash --verbose

# 5. Check service logs (STATUS messages always visible)
journalctl -xeu coolerdash.service -f

# 6. View recent logs with context
journalctl -u coolerdash.service -n 50

The systemd service must be stopped before running manually to avoid conflicts:

systemctl stop coolerdash.service

Troubleshooting

Common Issues

Warning

  • Installation: If you see errors like "conflicting files" or "manual installation detected" during Arch/AUR makepkg -si, this means CoolerDash was previously installed manually (via make install).

Tip

  • If problems persist, run:
  sudo systemctl stop coolerdash.service
  sudo make uninstall
  • Remove any leftover files:
   sudo rm -rf /opt/coolerdash/ \
               /usr/bin/coolerdash \
               /etc/systemd/system/coolerdash.service
  • Then retry the installation.

Warning

  • Device/-Connection failed: No devices found or wrong device UID.
  • Please post this outputs when you report any issue.

Tip

  • Check CoolerControl configuration and LCD connection β†’ Verify device with:
   liquidctl --version
Example output:
   liquidctl v1.15.0 (Linux-6.17.1-273-linux-tkg-x86_64-with-glibc2.42)

Tip

   curl http://localhost:11987/devices | jq
Example output:
{
      "name": "NZXT Kraken 2023",
      "type": "Liquidctl",
      "type_index": 1,
      "uid": "8d4becb03bca2a8e8d4213ac376a1094f39d2786f688549ad3b6a591c3affdf9",
      "lc_info": {
        "driver_type": "KrakenZ3",
        "firmware_version": "2.0.0",
        "unknown_asetek": false
      }
}

Note

πŸ“š For developers and contributors:

  • Display Modes Guide - Complete technical reference for Dual and Circle display modes - architecture, layout algorithms, rendering pipeline, and how to add new modes
  • CoolerControl API Guide - Comprehensive documentation of all cc_*.c/h modules - session management, device caching, temperature retrieval, API communication flow, and troubleshooting
  • Developer Guide - Complete architecture, API integration, rendering pipeline, and function reference
  • Display Detection - How circular vs rectangular displays are detected
  • Configuration Guide - All configuration options explained
  • Supported Devices - List of confirmed working hardware

Tip

Have a question or an idea?

  • Suggest improvements or discuss new features in our Discussions.
  • Report a bug or request help by opening an Issue.


πŸ“„ License

MIT License - See LICENSE file for details.

MIT License

Individual Coolercontrol package have their own licenses:


πŸ’ Support the Project

If you find CoolerDash useful and want to support its development:

  • ⭐ Star this repository on GitHub.
  • πŸ› Report bugs and suggest improvements.
  • πŸ”„ Share the project with others.
  • πŸ“ Contribute Add device support, code or documentation.
  • Sponsor

πŸ™ Your support keeps this project alive and improving β€” thank you!.

⭐ Stargazers over time

Stargazers over time


πŸ‘¨β€πŸ’» Developed by DAMACHINE πŸ“§ Contact: christkue79@gmail.com 🌐 Repository: GitHub

About

Displays real-time sensor on an AIO liquid cooler with integrated LCD displays

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Sponsor this project

 

Contributors 3

  •  
  •  
  •  
0