2 puntos por GN⁺ 2024-12-19 | 1 comentarios | Compartir por WhatsApp
  • Solaar es una herramienta para gestionar en Linux varios teclados, mouse y otros dispositivos Logitech conectados mediante receptores Unifying, Bolt, Lightspeed o Nano, cable USB o Bluetooth
  • Solaar no es un controlador de dispositivo y solo reacciona a mensajes especiales del dispositivo que el sistema de entrada de Linux ignora
  • Sus funciones principales son el emparejamiento/desemparejamiento entre receptores y dispositivos, la configuración de ajustes del dispositivo, la configuración de botones personalizados y la ejecución de reglas que reaccionan a mensajes especiales
  • Los paquetes precompilados más recientes están disponibles en los repositorios estándar de algunas distribuciones Linux, como Fedora; si el repositorio de tu distribución no tiene la versión más reciente, puedes usar paquetes para Arch, Ubuntu/Kubuntu PPA o NixOS Flake
  • Debian, Ubuntu universe, Gentoo y Mageia también tienen Solaar en sus repositorios, pero pueden estar varias versiones por detrás de la actual

Dispositivos Logitech que Solaar administra

  • Solaar es un administrador para Linux de muchos teclados, mouse y otros dispositivos Logitech
  • Los métodos de conexión compatibles son los siguientes
    • Conexión inalámbrica mediante receptores Unifying, Bolt, Lightspeed y Nano
    • Conexión por cable USB
    • Conexión Bluetooth
  • Solaar no es un controlador de dispositivo y solo reacciona a mensajes especiales del dispositivo que el sistema de entrada de Linux ignora

Funciones compatibles

Paquetes de instalación

  • Los paquetes precompilados más recientes están disponibles en los repositorios estándar de algunas distribuciones Linux, como Fedora
  • Si el repositorio estándar de tu distribución no tiene la versión más reciente de Solaar, puedes probar los siguientes paquetes

Repositorios que podrían tener versiones antiguas

1 comentarios

 
GN⁺ 2024-12-19
Opiniones de Hacker News
  • He usado el MX Master por más de 10 años y me gustan su rendimiento, batería, diseño y sensación en la mano.
    Lo que no me gusta para nada es el programa de Logitech de 150 MB que hay que instalar en Windows para administrarlo; da la impresión de enviar un montón de datos de telemetría innecesarios.
    Después de frustrarme constantemente con problemas de conexión Bluetooth, encontré Solaar hace unos meses, y su interfaz es mejor que la de la herramienta de Logitech, además de ser simple y ligera, lo que muestra muy bien las ventajas del software de código abierto.

    • No tuve problemas de conexión Bluetooth con el hardware de Logitech, pero quería que funcionara con el receptor Bolt para poder usarlo incluso sin sistema operativo.
      Solaar se encargó del emparejamiento en 30 segundos y quedé muy satisfecho.
      Eso sí, Bolt no aparece ante el sistema operativo como un Bluetooth real y completo, así que el nivel de batería solo se puede consultar dentro de Solaar.
    • El software de Logitech para Windows también tiene una descarga grande, pero parece estar mucho mejor optimizado que el de Corsair.
      Si lo dejaba abierto unos días, el proceso de Corsair acumulaba casi una hora de tiempo de CPU, mientras que Logitech, como mucho, llegaba a unos minutos.
      Al ver eso, cambié todo mi equipo Corsair por Logitech u otros productos.
    • En defensa de Logitech, en la configuración hay un interruptor directo para desactivar los diagnostic data.
    • Recuerdo que antes instalé el software de Logitech en una máquina virtual, configuré el mouse y luego borré la VM.
      Lo único que quería era apagar los LED arcoíris, y la próxima vez que compre un mouse nuevo pienso probar Solaar.
    • Mi única queja con los mouse Logitech es que los modelos de oficina no admiten tasas de sondeo altas.
  • Ojalá portaran esto también a Mac.
    Hoy descubrí un AI prompt builder activado por defecto en el driver del mouse, y fue todavía más absurdo porque llevaba meses rechazando insistentemente las solicitudes de permiso para registrar entradas.
    Uso la versión empresarial “Offline” de Logitech, que elimina la mayoría de los programas adicionales y, según dicen, no se comunica con casa ni pide permisos extra. Puede variar según el entorno.
    https://support.logi.com/hc/en-us/articles/11570501236119-Lo...

    • Me pareció tan absurdo que hubiera un AI prompt builder activado por defecto en el driver del mouse que no tuve más remedio que buscar qué era.
      Qué mundo tan raro.
      https://www.logitech.com/en-us/software/logi-ai-prompt-build...
    • Logitech implementa los botones de adelante/atrás en macOS de una forma realmente extraña.
      Imitan eventos de deslizamiento, y no se pueden configurar como los Mouse Forward y Mouse Backward (M4/M5) estándar.
      https://superuser.com/a/1216049
      En Windows los configuro justamente de esa manera para que el comportamiento sea consistente entre aplicaciones.
    • Acabo de cambiar de Logi Options a Steer Mouse.
      Permite mapear botones y agregar combinaciones de entrada.
      Eso sí, parece que todavía no tiene disparadores por movimiento del mouse, como mantener presionado el botón de atrás y mover a la izquierda para cambiar de Spaces, así que sigo buscando.
      https://plentycom.jp/en/steermouse/
    • Al menos no es spyware de verdad.
      https://news.ycombinator.com/item?id=29056847
      El driver de Wacom recopila y envía nombres de aplicaciones y títulos de ventanas, y sigue haciéndolo incluso después de la gran polémica que generó.
    • Uso BetterMouse con un MX Anywhere 3S y hace todo lo que necesito.
      Cuesta unos pocos dólares, pero tiene versión de prueba y también se puede instalar con Homebrew.
      https://better-mouse.com
  • Me pregunto si existe una alternativa así también para Windows.
    Los mouse Logitech suelen ser buenos, pero uno de sus grandes defectos es que la función de macros no está integrada en el dispositivo, así que ni siquiera se puede vincular un botón a una combinación de varias teclas sin software auxiliar como G-Hub.
    En Linux están Solaar y Piper/libratbagd, y en macOS SteerMouse parece funcionar bastante bien incluso con mouse de muchos botones.
    Si hubiera algo en Windows que pudiera reemplazar a G-Hub, me sería mucho más fácil recomendar mouse Logitech a amigos y familiares que solo usan Windows.
    Por este motivo, antes Roccat era mi marca favorita. Todo lo que el mouse podía hacer estaba disponible en el propio dispositivo, así que, una vez configurado, podías borrar el software usado sin ninguna limitación.
    Eso sí, el control de calidad del hardware ya era dudoso desde hace tiempo, y parece que empeorará tras la compra por parte de Turtle Beach.

    • El verdadero gran defecto de Logitech es que usa deliberadamente switches de baja calidad, que a veces fallan en apenas unos meses.
      Lo mismo ocurre con sus mouse gamer absurdamente caros.
      Antes de comprar Logitech nunca había tenido un mouse al que le fallaran los botones, y cuando la gente a mi alrededor los elogia, la conversación cambia si les preguntas cuántos han tenido que volver a comprar.
  • Perdí el dongle del mouse y en ese momento lo único que podía usar era Ubuntu; Solaar me ayudó muchísimo
    Pude emparejar el mouse con el mismo dongle que usaba el teclado y desde entonces lo sigo usando sin problemas

    • Si lo necesitas de nuevo más adelante, Logitech tiene una herramienta solo web, y permite emparejar receptores mediante comunicación serial web
    • Logitech me frustró muchísimo
      Uso un teclado MX Mechanical Mini y un mouse MX Ergo, pero los dongles son distintos e incompatibles, así que no se pueden emparejar al mismo dongle
      Además, el dongle conectado al puerto USB-A derecho de la laptop siempre tiene latencia sin motivo aparente
      Me pregunto si Solaar resuelve este tipo de problemas
    • Los botones del mouse suelen fallar mucho antes que los del teclado, pero para quienes usan mucho la computadora, los dispositivos HID inalámbricos en general son casi consumibles
      En la empresa entregan kits de teclado/mouse inalámbricos porque son más baratos que reemplazar el teclado dedicado de una laptop y también es menos probable que causen lesiones por esfuerzo repetitivo en los usuarios
      Cuando lo aprendes por las malas siendo junior, no tiene nada de gracioso
  • Llevo bastante tiempo usando Solaar con un MX Master 2S viejo
    Lo uso sobre todo para ajustar el punto en el que la rueda de desplazamiento deja de hacer clics y pasa a giro libre
    Logitech puso dentro del mouse una palanca eléctrica que controla el trinquete, y Solaar tiene una opción para ajustarla que funciona muy bien
    También me gusta que se puedan vincular atajos de teclado a gestos específicos usando el botón de la palma

  • Compro Logitech porque existe Solaar
    Ojalá los desarrolladores de Solaar reciban algún tipo de compensación, y creo que con solo agregarle un constructor de prompts de IA quedaría completo

    • No sé si lo del constructor de prompts de IA es una broma o una propuesta seria
      No tengo la menor idea de cómo podría entrar IA en una utilidad de configuración de mouse
  • Me gustaría que alguien que conozca bien Linux lo explique
    Según entiendo, esto es como una implementación de driver para Linux, pero me pregunto cómo puede estar escrito completamente solo en Python
    El código de drivers normalmente se escribe en C o C++, y entiendo que la nueva forma de desarrollo del kernel hoy en día es Rust
    No sé cómo puede funcionar esto en Python puro

    • Solaar no es un driver de dispositivo; solo reacciona a mensajes especiales del dispositivo que el sistema de entrada de Linux ignora
      El driver normal de Linux implementa lo necesario para recibir mensajes HID, y Solaar procesa encima de eso los mensajes específicos del fabricante
      Es parecido a que un programa envíe mensajes TCP propietarios del fabricante sobre un driver de red existente del sistema operativo; ese programa no necesita ser un driver de red a nivel kernel
    • Según la segunda oración del README, Solaar no es un driver de dispositivo, sino que solo reacciona a mensajes especiales que el sistema de entrada de Linux ignora
      No parece ejecutarse a nivel kernel
    • De forma más general, en los 80 y principios de los 90 había que configurar puertos COM o IRQ para cada dispositivo de hardware, y muchas veces también había que cambiar físicamente los jumpers del dispositivo
      El usuario tenía que comprobar por su cuenta si IRQ21 ya estaba siendo usado por el BIOS u otro dispositivo, y después instalaba un driver de dispositivo que leía y escribía direcciones de memoria específicas para comunicarse con el controlador según el método propietario definido por cada empresa
      Hoy la industria del hardware ha avanzado mucho al estandarizar cómo funcionan los dispositivos
      Gracias a la entrada/salida mapeada en memoria, el sistema operativo puede tratar muchos drivers de dispositivo de manera similar y solo encargarse de la manipulación de memoria después de leer y escribir
      En USB, esto funciona estandarizando clases de dispositivo, como dispositivos de comunicación, dispositivos de audio, dispositivos de captura de video y, en este caso, HID
      Por eso el kernel puede hacer más del 80% del trabajo de desarrollo de drivers, especialmente por la filosofía de Linux de “todo es un archivo”
      Al conectar un dongle USB, hipotéticamente aparecen archivos como /sys/class/hid//{control, data}
      Por ejemplo, si escribes un valor muy específico en el archivo control para cambiar el canal RF del dongle, el kernel lo recibe y lo envía al dispositivo; también podrías hacer cat al archivo .../data para obtener datos crudos del teclado/mouse
      En teoría, en Python podrías conectar el archivo .../data a un manejador de lectura, procesar la entrada y luego emitir comandos del sistema operativo como movimientos del mouse o eventos de teclado, haciendo algo parecido a un driver de dispositivo
      La clave es el procesamiento de la entrada, y esa parte es el trabajo difícil que requiere ingeniería inversa
    • Esto es una herramienta para administrar funciones adicionales del dispositivo y el emparejamiento del dongle
      Como el sistema operativo no se encarga de esa parte, reemplaza algunas de las funciones que normalmente hacían las aplicaciones de Logitech
    • Probablemente use algo como bindings de LibUSB
  • Pregunto desde la ignorancia: no entiendo por qué hace falta una app para administrar teclados y mouses en primer lugar
    ¿No están soportados directamente por drivers genéricos?

    • La mayoría de los dispositivos Logitech tienen ciertos parámetros de configuración que los drivers genéricos no cubren
      Por ejemplo, en el MX Master puedes configurar qué eventos generan sus 6 botones
      El K810 genera eventos especiales como si las teclas de función estuvieran rotas, y con software puedes devolverlas a teclas de función estándar como F1
    • Solaar es más bien una interfaz open source para algunas funciones adicionales de la pila HID++ de Logitech, y esas funciones se exponen como páginas de uso HID personalizadas para aplicaciones
      Aquí HID++ se refiere al dongle de Logitech, a veces combinado con el soporte Bluetooth del dispositivo real
      Para ver las opciones adicionales y el control de emparejamiento de un trackball Logitech, mira esta captura
      [1] https://usercontent.irccloud-cdn.com/file/2cZcZiNk/image.png
    • Algunos dispositivos tienen funciones que permiten controlar por software el comportamiento del hardware, como la tasa de sondeo del sensor óptico o el modo de embrague de la rueda de desplazamiento
      Estas funciones no forman parte del estándar USB HID, así que ningún sistema operativo las soporta de forma integrada
    • También es una gran ventaja que exista software para Linux que funcione correctamente para emparejar dispositivos nuevos con un receptor Unifying
    • Es una pregunta válida
      Normalmente es por configuraciones del usuario como el DPI y la frecuencia de actualización en los mouses, y la respuesta táctil (https://wooting.io/) o los atajos personalizados en los teclados
      Cuando necesitas cargar tu configuración de forma consistente en una computadora que no es la tuya, como en un evento LAN, pasa de ser algo conveniente a casi indispensable
  • Llevo varios años usando Solaar y funciona tal como se anuncia, sin problemas.
    Gracias por seguir manteniendo este proyecto tan útil.

  • Llevo varios años usando un teclado Logitech K400 con touchpad integrado junto con Solaar.
    Lo uso en una Raspberry Pi conectada a la TV y funciona muy bien, sin ningún problema.
    Nunca lo he conectado al software de Logitech en Mac ni en Windows.