Skip to content

DELLigieren turns a low-power Optiplex-style node into a central committee for your homelab: it wakes your heavy AMD worker only when needed, coordinates tasks, monitors services, and aggressively suspends it to eliminate idle power waste.

License

Notifications You must be signed in to change notification settings

marx161-cmd/DELLigieren

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

DELLigieren

Event-Driven, Energy-Efficient Homelab Scheduling

DELLigieren turns a low-power control node (e.g. an Optiplex-style office PC) into the central committee of your homelab.
It wakes your high-power workstation only when tasks require it, supervises activity, and aggressively suspends it again to eliminate idle power waste.

This creates a fully automated, eco-friendly compute mesh where heavy workloads run on demand, not 24/7.


🚩 Why DELLigieren?

Modern homelabs often rely on a big, power-hungry machine for tasks like:

  • AI workloads
  • compiling
  • video encoding
  • gaming / streaming
  • media processing

…but these machines waste huge amounts of power when idle.

DELLigieren solves this by introducing a lightweight β€œmanager” node that:

  • stays always-on at minimal wattage
  • detects when services or workloads need compute
  • wakes the heavy machine instantly via HID / WoL
  • tracks state and activity
  • suspends the worker as soon as it's idle
  • provides an API + registry for services to request wake time

This achieves massive energy savings without sacrificing performance.


🧠 How it works (High-Level)

DELLigieren consists of three layers:

1. Control Node (e.g. Dell Optiplex)

  • Runs DELLigieren daemon
  • Monitors service activity
  • Sends wake signals (HID, USB, BTLE, or WoL)
  • Suspends the worker when idle
  • Hosts registry of tasks and uptime windows

2. Worker Node (e.g. AMD workstation)

  • Provides heavy compute on demand
  • Runs tasks triggered by the controller
  • Auto-suspends after work is done

3. Coordination Layer

  • Rich state machine (awake, idle, pending tasks, cooldown)
  • Service registry with priorities & time windows
  • Network activity monitoring
  • REST API for orchestrating tasks
  • Event-driven scheduling

For full architecture details, see the complete design document:

πŸ“„ docs/DELLigieren.md


🌱 Project Status

Early Development / Specification Phase

The architecture is fully drafted.
Implementation begins next.
Feedback, issues, and contributions are welcome at all stages.


🧩 Features (Planned & Designed)

  • πŸ”Œ HID-based wake (uHID virtual keyboard)
  • 🌐 Wake-on-LAN as fallback
  • πŸ”‹ Aggressive power-saving policies
  • πŸ“‘ Service-aware scheduling
  • 🧠 Multi-stage state machine
  • πŸ›  Systemd-managed daemon
  • πŸ–₯ REST API for external orchestration
  • πŸ“Š Dashy/Home Assistant integration planned
  • πŸ”’ Clear separation of control vs. worker nodes

πŸ›  Contributing

Discussions, ideas, and pull requests are welcome β€” especially for:

  • Linux input & HID subsystem quirks
  • systemd integration
  • Python daemon structure
  • suspend/wake edge cases

πŸ“œ License

Licensed under the GNU General Public License v3.0 (GPLv3).

This ensures DELLigieren remains free, collective, and open for all.


πŸš€ Long Live Efficient Compute

Together, we can build an energy-aware, worker-driven, eco-conscious homelab that only consumes power when the people demand it.

About

DELLigieren turns a low-power Optiplex-style node into a central committee for your homelab: it wakes your heavy AMD worker only when needed, coordinates tasks, monitors services, and aggressively suspends it to eliminate idle power waste.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published