2 Punkte von GN⁺ 2024-12-19 | 1 Kommentare | Auf WhatsApp teilen
  • Solaar ist ein Tool zur Verwaltung verschiedener Logitech-Tastaturen, -Mäuse und anderer Geräte unter Linux, die über Unifying-, Bolt-, Lightspeed- oder Nano-Empfänger, per USB-Kabel oder Bluetooth verbunden sind
  • Solaar ist kein Gerätetreiber und reagiert nur auf spezielle Nachrichten von Geräten, die vom Linux-Eingabesystem ignoriert werden
  • Zu den wichtigsten Funktionen gehören Pairing/Entkoppeln von Empfängern und Geräten, Konfiguration von Geräteeinstellungen, Einrichtung benutzerdefinierter Tasten sowie das Ausführen von Regeln als Reaktion auf spezielle Nachrichten
  • Aktuelle vorgefertigte Pakete sind in den Standard-Repositories einiger Linux-Distributionen wie Fedora verfügbar; falls im Distributions-Repository keine aktuelle Version vorhanden ist, können Pakete für Arch, Ubuntu/Kubuntu PPA oder NixOS Flake genutzt werden
  • Auch in den Repositories von Debian, Ubuntu universe, Gentoo und Mageia ist Solaar verfügbar, diese können jedoch einige Versionen hinter der aktuellen Version zurückliegen

Von Solaar verwaltete Logitech-Geräte

  • Solaar ist ein Linux-Manager für viele Logitech-Tastaturen, -Mäuse und andere Geräte
  • Unterstützte Verbindungsarten sind:
    • Drahtlose Verbindung über Unifying-, Bolt-, Lightspeed- und Nano-Empfänger
    • Verbindung per USB-Kabel
    • Verbindung über Bluetooth
  • Solaar ist kein Gerätetreiber und reagiert nur auf spezielle Nachrichten von Geräten, die vom Linux-Eingabesystem ignoriert werden

Unterstützte Funktionen

  • Solaar unterstützt Pairing/Entkoppeln zwischen Empfänger und Gerät
  • Geräteeinstellungen können konfiguriert werden
  • Benutzerdefinierte Tasteneinstellungen werden unterstützt
  • Als Reaktion auf spezielle Nachrichten eines Geräts können Regeln ausgeführt werden
  • Dokumentationslinks

Installationspakete

  • Aktuelle vorgefertigte Pakete sind in den Standard-Repositories einiger Linux-Distributionen wie Fedora verfügbar
  • Falls im Standard-Repository der Distribution keine aktuelle Solaar-Version vorhanden ist, können folgende Pakete ausprobiert werden:

Repositories mit möglicherweise veralteten Versionen

1 Kommentare

 
GN⁺ 2024-12-19
Hacker-News-Kommentare
  • Ich benutze seit über 10 Jahren eine MX Master und bin mit Leistung, Akku, Design und Haptik sehr zufrieden.
    Mit der 150 MB großen Logitech-Software, die man zur Verwaltung unter Windows installieren muss, bin ich überhaupt nicht zufrieden, und es fühlt sich so an, als würde sie jede Menge unnötiger Telemetriedaten senden.
    Nachdem ich mich ständig über Bluetooth-Verbindungsprobleme geärgert hatte, fand ich vor ein paar Monaten Solaar; die Oberfläche ist besser, einfacher und leichter als die Logitech-Tools und zeigt die Vorteile von Open-Source-Software sehr gut.

    • Mit Logitech-Hardware hatte ich keine Bluetooth-Verbindungsprobleme, aber ich wollte, dass sie über einen Bolt-Empfänger funktioniert, damit ich sie auch ohne Betriebssystem nutzen kann.
      Solaar hat das Pairing in 30 Sekunden erledigt, und ich bin sehr zufrieden.
      Allerdings erscheint Bolt im Betriebssystem nicht als richtiges Bluetooth, daher kann man den Akkustand nur in Solaar prüfen.
    • Die Logitech-Windows-Software ist zwar ebenfalls groß beim Download, scheint aber deutlich besser optimiert zu sein als die von Corsair.
      Wenn sie ein paar Tage lief, hatte der Corsair-Prozess fast 1 Stunde CPU-Zeit angesammelt, bei Logitech waren es höchstens ein paar Minuten.
      Nachdem ich das gesehen hatte, habe ich mein gesamtes Corsair-Equipment durch Logitech oder andere Produkte ersetzt.
    • Zur Verteidigung von Logitech: In den Einstellungen gibt es direkt einen Schalter, um diagnostic data auszuschalten.
    • Ich erinnere mich, dass ich früher die Logitech-Software in einer virtuellen Maschine installiert, die Maus eingerichtet und danach die VM gelöscht habe.
      Ich wollte eigentlich nur die Regenbogen-LED ausschalten, und wenn ich das nächste Mal eine neue Maus kaufe, werde ich wohl Solaar ausprobieren.
    • Mein einziger Kritikpunkt an Logitech-Mäusen ist, dass die Office-Mäuse keine hohe Polling-Rate unterstützen.
  • Es wäre schön, wenn das auch auf den Mac portiert würde.
    Heute habe ich entdeckt, dass im Maustreiber standardmäßig ein AI Prompt Builder aktiviert ist, und das war noch absurder, weil ich seit Monaten hartnäckig Anfragen nach Berechtigung für den Eingabeverlauf ablehne.
    Ich nutze die Unternehmens-"Offline"-Version von Logitech, um den Großteil der Zusatzprogramme loszuwerden; diese Version soll nicht nach Hause telefonieren und keine zusätzlichen Berechtigungen verlangen. Das kann je nach Umgebung unterschiedlich sein.
    https://support.logi.com/hc/en-us/articles/11570501236119-Lo...

    • Dass im Maustreiber standardmäßig ein AI Prompt Builder aktiviert ist, war so absurd, dass ich zwangsläufig nachsehen musste, was das überhaupt ist.
      Was für eine Welt.
      https://www.logitech.com/en-us/software/logi-ai-prompt-build...
    • Logitech implementiert die Vor-/Zurück-Tasten unter macOS wirklich seltsam.
      Es emuliert Swipe-Events, und man kann sie nicht auf die standardmäßigen Mouse Forward und Mouse Backward (M4/M5) setzen.
      https://superuser.com/a/1216049
      Unter Windows stelle ich es genau so ein, um das Verhalten in jeder Anwendung konsistent zu halten.
    • Ich bin gerade von Logi Options auf SteerMouse umgestiegen.
      Damit kann man Tasten zuweisen und auch Tastenkombinationen hinzufügen.
      Allerdings scheint es noch keinen Trigger für Mausbewegungen zu geben, etwa die Spaces zu wechseln, indem man die Zurück-Taste gedrückt hält und nach links bewegt; ich suche noch danach.
      https://plentycom.jp/en/steermouse/
    • Immerhin ist es keine echte Spyware.
      https://news.ycombinator.com/item?id=29056847
      Der Wacom-Treiber sammelt und überträgt Anwendungsnamen und Fenstertitel und tut das selbst nach großer Kontroverse weiterhin.
    • Ich nutze BetterMouse mit einer MX Anywhere 3S, und es erledigt alles, was ich brauche.
      Es kostet ein paar Dollar, hat aber eine Testversion und lässt sich auch über Homebrew installieren.
      https://better-mouse.com
  • Ich frage mich, ob es unter Windows so eine Alternative gibt.
    Logitech-Mäuse sind im Allgemeinen gut, aber einer der großen Nachteile ist, dass die Makro-Funktion nicht onboard ist; selbst mehrere Tastenanschläge auf eine einzige Taste zu legen, geht ohne Begleitsoftware wie G-Hub nicht.
    Unter Linux gibt es Solaar und Piper/libratbagd, und unter macOS scheint SteerMouse auch für Mäuse mit vielen Tasten recht gut zu passen.
    Wenn es unter Windows etwas als Ersatz für G-Hub gäbe, könnte ich Logitech-Mäuse Freunden und Familienmitgliedern, die nur Windows nutzen, viel leichter empfehlen.
    Aus diesem Grund mochte ich früher Roccat am liebsten. Alles, was die Maus konnte, war vollständig onboard möglich, sodass es nach der einmaligen Einrichtung keine Einschränkungen gab, selbst wenn man die verwendete Software löschte.
    Allerdings war die Hardware-Qualitätskontrolle schon lange fragwürdig, und seit der Übernahme durch Turtle Beach wird es vermutlich noch schlimmer.

    • Der wirklich große Nachteil bei Logitech ist, dass absichtlich minderwertige Schalter verbaut werden, die schon nach wenigen Monaten kaputtgehen können.
      Das gilt selbst für absurd teure Gaming-Mäuse.
      Bevor ich Logitech kaufte, hatte ich nie eine Maus erlebt, bei der die Tasten kaputtgingen, und auch bei Leuten in meinem Umfeld ändert sich die Geschichte, wenn man nachfragt, wie viele sie nach all dem Lob schon erneut gekauft haben.
  • Als ich den Maus-Dongle verloren hatte und nur Ubuntu zur Verfügung stand, war Solaar wirklich eine große Hilfe.
    Ich konnte die Maus mit demselben Dongle koppeln, den die Tastatur benutzt hatte, und verwende sie seitdem ohne Probleme weiter.

    • Falls man es später wieder braucht: Logitech hat auch ein nur im Web verfügbares Tool, mit dem sich Empfänger per Web Serial koppeln lassen.
    • Logitech war einfach extrem frustrierend.
      Ich benutze eine MX Mechanical Mini-Tastatur und eine MX Ergo-Maus, aber die Dongles sind unterschiedlich und nicht kompatibel, sodass sie sich nicht mit demselben Dongle koppeln lassen.
      Außerdem hat der Dongle im rechten USB-A-Port meines Laptops aus irgendeinem Grund immer Latenz.
      Ich frage mich, ob Solaar solche Probleme lösen kann.
    • Maustasten gehen zwar in der Regel viel früher kaputt als Tastaturen, aber für Menschen, die viel am Computer arbeiten, sind drahtlose HID-Geräte im Großen und Ganzen fast Verbrauchsmaterial.
      Bei uns im Unternehmen werden drahtlose Tastatur-/Maus-Kits ausgegeben, weil das günstiger ist, als die fest verbaute Laptop-Tastatur zu ersetzen, und für die Nutzer wahrscheinlich auch das Risiko von RSI senkt.
      Wenn man das als Junior auf die harte Tour lernt, ist das überhaupt nicht lustig.
  • Ich benutze Solaar schon ziemlich lange mit einer alten MX Master 2S.
    Hauptsächlich nutze ich es, um den Punkt einzustellen, an dem das Scrollrad aufhört zu rasten und in den Freilauf übergeht.
    Logitech hat in die Maus einen elektrischen Hebel eingebaut, der die Ratsche steuert, und Solaar hat eine Option dafür, die bei mir sehr gut funktioniert.
    Schön ist auch, dass man bestimmte Gesten über die Daumentaste mit Tastatur-Shortcuts verknüpfen kann.

  • Ich kaufe Logitech wegen Solaar.
    Ich hoffe, die Solaar-Entwickler werden dafür wenigstens einigermaßen entlohnt, und dann fehlt eigentlich nur noch ein AI Prompt Builder.

    • Ich weiß nicht, ob der AI Prompt Builder als Witz gemeint ist oder ein ernsthafter Vorschlag.
      Ich habe wirklich keine Vorstellung, wie AI in ein Dienstprogramm zur Mauskonfiguration eingebaut werden könnte.
  • Es wäre gut, wenn jemand mit Linux-Kenntnissen das erklären könnte.
    So wie ich es verstehe, ist das so etwas wie eine Treiber-Implementierung für Linux, und ich frage mich, wie das vollständig nur in Python geschrieben sein kann.
    Treibercode wird normalerweise in C oder C++ geschrieben, und soweit ich weiß, ist Rust heutzutage der neue Ansatz für Kernel-Entwicklung.
    Ich verstehe nicht, wie das in reinem Python funktionieren kann.

    • Solaar ist kein Gerätetreiber, sondern reagiert nur auf spezielle Nachrichten des Geräts, die vom Linux-Eingabesystem ignoriert werden.
      Die normalen Linux-Treiber übernehmen den Teil, der zum Empfangen von HID-Nachrichten nötig ist, und Solaar verarbeitet darüber dann die herstellerspezifischen Nachrichten.
      Das ist ähnlich wie ein Programm, das über vorhandene Netzwerktreiber des Betriebssystems herstellerspezifische TCP-Nachrichten sendet; dieses Programm muss selbst kein Netzwerktreiber auf Kernel-Ebene sein.
    • Laut dem zweiten Satz der README ist Solaar kein Gerätetreiber und reagiert nur auf spezielle Nachrichten, die vom Linux-Eingabesystem ignoriert werden.
      Es scheint also nicht auf Kernel-Ebene zu laufen.
    • Allgemeiner betrachtet musste man in den 80ern und frühen 90ern bei Hardware-Geräten für jedes einzelne Gerät COM-Ports oder IRQs konfigurieren, und oft sogar physisch Jumper am Gerät umstecken.
      Die Benutzer mussten selbst prüfen, ob IRQ21 bereits vom BIOS oder einem anderen Gerät verwendet wurde, und danach Gerätetreiber installieren, die bestimmte Speicheradressen lesen und schreiben, um mit dem Controller nach den proprietären Verfahren der jeweiligen Firma zu kommunizieren.
      Heute ist die Hardware-Branche mit der Standardisierung der Gerätefunktionsweisen viel weiter.
      Dank Memory-Mapped I/O kann das Betriebssystem viele Gerätetreiber auf ähnliche Weise behandeln und muss nur die Speicheroperationen nach dem Lesen und Schreiben verarbeiten.
      Bei USB wurden Geräteklassen standardisiert, sodass Geräte als Kommunikationsgeräte, Audiogeräte, Video-Capture-Geräte oder wie hier als HID auftreten.
      Dadurch kann der Kernel mehr als 80 % der Treiberentwicklung übernehmen, besonders unter Linux mit der Philosophie „Alles ist eine Datei“.
      Wenn man einen USB-Dongle einsteckt, entstehen dann vereinfacht gesagt Dateien wie /sys/class/hid//{control, data}.
      Wenn man zum Beispiel einen sehr speziellen Wert in die Datei control schreibt, um den RF-Kanal des Dongles zu ändern, nimmt der Kernel das entgegen und sendet es an das Gerät, und man kann .../data per cat auslesen, um rohe Tastatur-/Mausdaten zu erhalten.
      Theoretisch könnte man also in Python die Datei .../data an einen Lese-Handler binden, die Eingaben verarbeiten und danach Betriebssystembefehle für Mausbewegungen oder Tastaturereignisse ausgeben und es damit wie einen Gerätetreiber wirken lassen.
      Der entscheidende Teil ist die Verarbeitung der Eingaben, und genau das ist der schwierige Teil, der Reverse Engineering erfordert.
    • Das ist ein Tool zur Verwaltung zusätzlicher Gerätefunktionen und des Dongle-Pairings.
      Da das Betriebssystem diesen Teil nicht übernimmt, ersetzt es einige Aufgaben, die sonst die Logitech-Anwendungen erledigen.
    • Vermutlich wurde etwas wie LibUSB-Bindings verwendet.
  • Vielleicht ist das eine dumme Frage, aber ich verstehe nicht, warum man überhaupt eine App zur Verwaltung von Tastatur und Maus braucht.
    Sollte das nicht direkt über generische Treiber unterstützt werden?

    • Die meisten Logitech-Geräte haben bestimmte Parameter, die von generischen Treibern nicht abgedeckt werden.
      Bei der MX Master kann man zum Beispiel konfigurieren, welche Ereignisse die sechs Tasten auslösen sollen.
      Bei der K810 erzeugen die Funktionstasten anscheinend kaputte Spezialereignisse, lassen sich per Software aber wieder auf normale Standard-Funktionstasten wie F1 zurücksetzen.
    • Solaar ist eher so etwas wie eine Open-Source-Schnittstelle zu einigen zusätzlichen Funktionen des Logitech-HID++-Stacks, die über benutzerdefinierte HID-Usage-Pages für Anwendungen bereitgestellt werden.
      Mit HID++ ist hier der Logitech-Dongle gemeint, teilweise in Kombination mit der Bluetooth-Unterstützung des eigentlichen Geräts.
      Die zusätzlichen Optionen und die Pairing-Steuerung für Logitech-Trackballs sieht man in diesem Screenshot.
      [1] https://usercontent.irccloud-cdn.com/file/2cZcZiNk/image.png
    • Manche Geräte haben Funktionen, mit denen sich Hardware-Verhalten wie die Polling-Rate des optischen Sensors oder der Kupplungsmodus des Scrollrads per Software steuern lassen.
      Solche Funktionen sind nicht Teil des USB-HID-Standards, daher unterstützt sie kein Betriebssystem von Haus aus.
    • Ein weiterer großer Vorteil ist, dass es funktionierende Linux-Software gibt, mit der sich neue Geräte mit einem Unifying-Empfänger koppeln lassen.
    • Berechtigte Frage.
      Meist geht es bei Mäusen um DPI und Abtastrate, bei Tastaturen um haptische Reaktions-Einstellungen (https://wooting.io/) und Tastenbelegungen.
      Wenn man die eigenen Einstellungen auch an fremden Rechnern, etwa auf einer LAN-Party, konsistent laden möchte, ist so etwas nicht nur nett, sondern fast unverzichtbar.
  • Ich nutze Solaar seit einigen Jahren, und es funktioniert genau wie beworben, ohne Probleme.
    Danke, dass dieses nützliche Projekt weiterhin gepflegt wird.

  • Ich nutze seit einigen Jahren die Logitech K400-Tastatur mit integriertem Touchpad zusammen mit Solaar.
    Sie läuft an einem Raspberry Pi, der mit dem Fernseher verbunden ist, und funktioniert ausgesprochen gut ohne irgendwelche Probleme.
    Ich habe sie nie mit der Logitech-Software auf dem Mac oder unter Windows verbunden.