Solaar, administrador para Linux de teclados, mouse y otros dispositivos Logitech
(github.com/pwr-Solaar)- 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
- Solaar permite emparejar/desemparejar receptores y dispositivos
- Permite configurar los ajustes del dispositivo
- Permite configurar botones personalizados
- Puede ejecutar reglas en respuesta a mensajes especiales del dispositivo
- Enlaces de documentación
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
- Arch solaar package: paquete del repositorio extra
- Solaar stable ppa: paquete para Ubuntu/Kubuntu
- Svenum/Solaar-Flake: paquete NixOS Flake
Repositorios que podrían tener versiones antiguas
- Solaar también está disponible en otros repositorios, pero puede estar varias versiones por detrás de la actual
1 comentarios
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.
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.
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.
Lo único que quería era apagar los LED arcoíris, y la próxima vez que compre un mouse nuevo pienso probar Solaar.
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...
Qué mundo tan raro.
https://www.logitech.com/en-us/software/logi-ai-prompt-build...
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.
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/
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ó.
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.
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
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
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 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
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
No parece ejecutarse a nivel kernel
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
controlpara cambiar el canal RF del dongle, el kernel lo recibe y lo envía al dispositivo; también podrías hacercatal archivo.../datapara obtener datos crudos del teclado/mouseEn teoría, en Python podrías conectar el archivo
.../dataa 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 dispositivoLa clave es el procesamiento de la entrada, y esa parte es el trabajo difícil que requiere ingeniería inversa
Como el sistema operativo no se encarga de esa parte, reemplaza algunas de las funciones que normalmente hacían las aplicaciones de Logitech
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?
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
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
Estas funciones no forman parte del estándar USB HID, así que ningún sistema operativo las soporta de forma integrada
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.