Solaar, trình quản lý Linux cho bàn phím, chuột và các thiết bị Logitech khác
(github.com/pwr-Solaar)- Solaar là công cụ quản lý trên Linux dành cho nhiều bàn phím, chuột và thiết bị Logitech khác kết nối qua đầu thu Unifying, Bolt, Lightspeed, Nano hoặc qua cáp USB hay Bluetooth
- Solaar không phải là trình điều khiển thiết bị, mà chỉ phản hồi với các thông điệp đặc biệt của thiết bị mà hệ thống nhập liệu Linux bỏ qua
- Các tính năng chính gồm ghép nối/hủy ghép nối giữa đầu thu và thiết bị, cấu hình cài đặt thiết bị, thiết lập nút tùy chỉnh và chạy quy tắc phản hồi với các thông điệp đặc biệt
- Các gói dựng sẵn mới nhất hiện có trong kho tiêu chuẩn của một số bản phân phối Linux như Fedora; nếu kho của bản phân phối không có phiên bản mới nhất thì có thể dùng các gói Arch, Ubuntu/Kubuntu PPA hoặc NixOS Flake
- Solaar cũng có trong kho của Debian, Ubuntu universe, Gentoo và Mageia, nhưng có thể chậm hơn vài phiên bản so với bản hiện tại
Các thiết bị Logitech do Solaar quản lý
- Solaar là trình quản lý Linux cho nhiều bàn phím, chuột và thiết bị Logitech khác
- Các phương thức kết nối được hỗ trợ gồm
- Kết nối không dây qua đầu thu Unifying, Bolt, Lightspeed, Nano
- Kết nối bằng cáp USB
- Kết nối Bluetooth
- Solaar không phải là trình điều khiển thiết bị mà chỉ phản hồi với các thông điệp đặc biệt của thiết bị mà hệ thống nhập liệu Linux bỏ qua
Tính năng được hỗ trợ
- Solaar hỗ trợ ghép nối/hủy ghép nối giữa đầu thu và thiết bị
- Có thể cấu hình cài đặt thiết bị
- Hỗ trợ thiết lập nút tùy chỉnh
- Có thể chạy quy tắc để phản hồi với các thông điệp đặc biệt của thiết bị
- Liên kết tài liệu
Gói cài đặt
- Các gói dựng sẵn mới nhất được cung cấp trong kho tiêu chuẩn của một số bản phân phối Linux như Fedora
- Nếu kho tiêu chuẩn của bản phân phối không có Solaar mới nhất, có thể thử các gói sau
- Arch solaar package: gói trong kho extra
- Solaar stable ppa: gói cho Ubuntu/Kubuntu
- Svenum/Solaar-Flake: gói NixOS Flake
Các kho có thể chứa phiên bản cũ
- Solaar cũng có trong một số kho khác, nhưng có thể chậm hơn vài phiên bản so với bản hiện tại
1 bình luận
Ý kiến trên Hacker News
Tôi đã dùng MX Master hơn 10 năm và rất hài lòng với hiệu năng, pin, thiết kế lẫn cảm giác cầm nắm
Nhưng tôi hoàn toàn không thích chương trình Logitech nặng 150MB phải cài để quản lý trên Windows, và có cảm giác nó gửi đi rất nhiều dữ liệu đo từ xa không cần thiết
Sau một thời gian liên tục bực mình vì vấn đề kết nối Bluetooth, vài tháng trước tôi tìm thấy Solaar; giao diện của nó tốt hơn công cụ của Logitech, đơn giản hơn và nhẹ hơn, thể hiện rất rõ ưu điểm của phần mềm mã nguồn mở
Solaar xử lý việc ghép đôi trong 30 giây và tôi rất hài lòng
Tuy nhiên, Bolt không hiện ra như Bluetooth đúng nghĩa trong hệ điều hành, nên chỉ có thể xem mức pin bên trong Solaar
Nếu để chạy vài ngày, tiến trình của Corsair tích lũy gần 1 giờ CPU time, còn Logitech nhiều nhất chỉ ở mức vài phút
Sau khi thấy vậy, tôi đã thay toàn bộ thiết bị Corsair bằng Logitech hoặc hãng khác
Điều duy nhất tôi muốn làm chỉ là tắt dải LED cầu vồng, và lần tới mua chuột mới tôi định sẽ thử Solaar
Sẽ rất tuyệt nếu cái này được port sang Mac nữa
Hôm nay tôi phát hiện trình tạo prompt AI được bật mặc định trong driver chuột, và điều đó càng lố bịch hơn vì suốt mấy tháng qua tôi đã liên tục từ chối yêu cầu cấp quyền ghi lại lịch sử nhập liệu
Tôi dùng bản “Offline” dành cho doanh nghiệp của Logitech để gỡ gần hết các chương trình phụ; bản này được cho là không giao tiếp về máy chủ và cũng không đòi thêm quyền. Có thể còn tùy môi trường
https://support.logi.com/hc/en-us/articles/11570501236119-Lo...
Đúng là thời buổi kỳ lạ
https://www.logitech.com/en-us/software/logi-ai-prompt-build...
Nó giả lập sự kiện vuốt, và không thể đặt thành Mouse Forward và Mouse Backward (M4/M5) mặc định
https://superuser.com/a/1216049
Trên Windows, tôi lại cấu hình đúng theo cách đó để hành vi được nhất quán giữa các ứng dụng
Nó cho phép map nút và thêm cả tổ hợp phím
Tuy nhiên có vẻ vẫn chưa có kiểu kích hoạt bằng chuyển động chuột, như giữ nút quay lại rồi di chuyển sang trái để đổi Spaces, nên tôi vẫn đang tìm
https://plentycom.jp/en/steermouse/
https://news.ycombinator.com/item?id=29056847
Driver của Wacom thu thập rồi gửi đi tên ứng dụng và tiêu đề cửa sổ, và ngay cả sau khi bị chỉ trích mạnh thì họ vẫn làm vậy
Nó chỉ tốn vài đô, có bản dùng thử và cũng có thể cài bằng Homebrew
https://better-mouse.com
Tôi tự hỏi trên Windows có lựa chọn thay thế như vậy không
Chuột Logitech nhìn chung rất tốt, nhưng một trong những nhược điểm lớn là tính năng macro không nằm on-board, nên ngay cả việc gán một nút thành tổ hợp nhiều phím bấm cũng không thể làm nếu không có phần mềm phụ trợ như G-Hub
Trên Linux có Solaar và Piper/libratbagd, trên macOS thì SteerMouse có vẻ cũng khá hợp với các loại chuột nhiều nút
Nếu trên Windows có thứ gì thay thế được G-Hub, tôi sẽ dễ dàng đề xuất chuột Logitech hơn nhiều cho bạn bè và người thân chỉ dùng Windows
Vì lý do này mà trước đây tôi từng thích Roccat nhất. Mọi chức năng con chuột làm được đều có thể cấu hình on-board, nên chỉ cần thiết lập một lần rồi xóa phần mềm đi cũng không bị hạn chế gì
Tuy vậy, việc kiểm soát chất lượng phần cứng của họ từ lâu đã khá đáng ngại, và sau khi bị Turtle Beach mua lại thì có vẻ sẽ còn tệ hơn
Ngay cả chuột gaming đắt vô lý cũng vậy
Trước khi mua Logitech, tôi chưa từng gặp chuột nào hỏng nút bấm; còn những người xung quanh thì ban đầu đều khen, nhưng khi hỏi họ đã phải mua lại bao nhiêu con rồi thì câu chuyện lại khác
Khi bị mất đầu thu của chuột và lúc đó chỉ có Ubuntu để dùng, Solaar đã thực sự giúp ích rất nhiều.
Tôi đã ghép cặp chuột vào cùng đầu thu mà bàn phím đang dùng, và từ đó đến nay vẫn dùng bình thường không vấn đề gì.
Tôi dùng bàn phím MX Mechanical Mini và chuột MX Ergo, nhưng đầu thu của chúng khác nhau và không tương thích nên không thể ghép vào cùng một đầu thu.
Thêm nữa, đầu thu cắm vào cổng USB-A bên phải của laptop lúc nào cũng bị trễ mà chẳng rõ lý do.
Tôi đang thắc mắc liệu Solaar có giải quyết được mấy vấn đề này không.
Ở công ty, họ cấp bộ bàn phím/chuột không dây vì như vậy rẻ hơn thay bàn phím tích hợp của laptop và cũng có thể giảm nguy cơ chấn thương do căng thẳng lặp lại cho người dùng.
Nếu đến lúc còn junior mới phải học bài học đó bằng đau đớn thì chẳng có gì đáng cười cả.
Tôi đã dùng Solaar với chiếc MX Master 2S cũ khá lâu rồi.
Chủ yếu để chỉnh điểm mà bánh xe cuộn ngừng phát tiếng nấc và chuyển sang quay tự do.
Logitech đã đặt trong chuột một cần gạt điện để điều khiển cơ chế hãm, và Solaar có tùy chọn chỉnh cái này nên hoạt động rất tốt.
Tôi cũng thích việc có thể gán phím tắt bàn phím cho các cử chỉ cụ thể dùng nút ở lòng bàn tay.
Tôi mua Logitech là vì có Solaar.
Tôi mong các nhà phát triển Solaar được đền đáp phần nào, và có lẽ chỉ cần thêm trình dựng prompt AI nữa là hoàn hảo.
Tôi hoàn toàn không hình dung được AI có thể xuất hiện trong tiện ích cấu hình chuột theo cách nào.
Mong có người rành Linux giải thích giúp.
Theo cách tôi hiểu thì đây giống như một bản triển khai driver cho Linux, nhưng tôi thắc mắc làm sao nó có thể được viết hoàn toàn chỉ bằng Python.
Tôi tưởng mã driver thường viết bằng C hoặc C++, còn cách mới trong phát triển kernel ngày nay là Rust.
Tôi không hiểu thứ này có thể hoạt động thế nào chỉ với Python thuần.
Phần mà driver Linux thông thường cần để nhận thông điệp HID đã được triển khai sẵn, còn Solaar xử lý các thông điệp riêng của nhà sản xuất ở phía trên lớp đó.
Nó giống như một chương trình gửi thông điệp TCP riêng của nhà sản xuất trên nền driver mạng có sẵn của hệ điều hành; chương trình đó không cần phải là driver mạng ở cấp kernel.
Có vẻ nó không chạy ở cấp kernel.
Người dùng phải tự kiểm tra IRQ21 có đang bị BIOS hoặc thiết bị khác dùng hay không, rồi sau đó cài driver thiết bị đọc và ghi vào các địa chỉ bộ nhớ cụ thể để giao tiếp với bộ điều khiển theo cách riêng mà từng công ty quy định.
Giờ đây ngành phần cứng đã tiến bộ rất nhiều nhờ tiêu chuẩn hóa cách thiết bị hoạt động.
Nhờ memory-mapped I/O, hệ điều hành có thể xử lý nhiều driver thiết bị theo cách tương tự nhau và chỉ cần lo phần thao tác bộ nhớ sau khi đọc và ghi.
Với USB, các lớp thiết bị đã được chuẩn hóa để hoạt động như thiết bị truyền thông, thiết bị âm thanh, thiết bị thu hình, và trong trường hợp này là HID.
Vì vậy kernel có thể làm thay hơn 80% công việc phát triển driver, đặc biệt là nhờ triết lý “mọi thứ đều là tệp” của Linux.
Khi cắm USB dongle vào, theo giả định sẽ xuất hiện các tệp như
/sys/class/hid//{control, data}.Ví dụ, nếu ghi một giá trị rất cụ thể vào tệp
controlđể đổi kênh RF của đầu thu, kernel sẽ nhận rồi gửi xuống thiết bị; và bạn cũng có thểcattệp.../datađể lấy dữ liệu bàn phím/chuột thô.Về lý thuyết, bạn có thể làm thứ gì đó giống driver thiết bị trong Python bằng cách nối tệp
.../datavào trình xử lý đọc, xử lý đầu vào, rồi phát ra các lệnh của hệ điều hành như di chuyển chuột hay sự kiện bàn phím.Cốt lõi là xử lý đầu vào, và đây là phần khó đòi hỏi phải reverse engineer.
Vì hệ điều hành không xử lý phần đó nên nó đảm nhận một số vai trò vốn thường do các ứng dụng của Logitech làm.
Tôi hỏi vì không biết thật, nhưng tôi không hiểu tại sao ngay từ đầu lại cần một ứng dụng để quản lý bàn phím và chuột.
Chẳng phải driver chung đã hỗ trợ trực tiếp rồi sao?
Ví dụ, trên MX Master bạn có thể cấu hình 6 nút sẽ tạo ra sự kiện nào.
K810 phát ra các sự kiện đặc biệt như thể phím chức năng bị lỗi, nhưng bằng phần mềm có thể đưa chúng về lại các phím chức năng chuẩn như F1.
HID++ ở đây nói đến đầu thu Logitech, đôi khi cũng được kết hợp với hỗ trợ Bluetooth thực tế của thiết bị.
Có thể xem ảnh chụp màn hình này để thấy các tùy chọn bổ sung và điều khiển ghép cặp cho trackball Logitech.
[1] https://usercontent.irccloud-cdn.com/file/2cZcZiNk/image.png
Các tính năng này không phải là một phần của chuẩn USB HID nên không hệ điều hành nào hỗ trợ sẵn.
Thường là vì các thiết lập tùy chỉnh của người dùng như DPI và tần số làm mới của chuột, hay cấu hình phản hồi xúc giác của bàn phím (https://wooting.io/), gán phím tắt, v.v.
Trong những tình huống như đi LAN party và phải dùng máy không phải của mình, khả năng tải lại cấu hình một cách nhất quán không chỉ là thứ “có thì tốt” mà gần như là thiết yếu.
Tôi đã dùng Solaar nhiều năm rồi, nó hoạt động đúng như quảng bá và không gặp vấn đề gì
Cảm ơn vì đã tiếp tục duy trì một dự án hữu ích
Tôi đã dùng bàn phím Logitech K400 có touchpad tích hợp cùng Solaar trong nhiều năm
Tôi chạy nó trên Raspberry Pi kết nối với TV, và nó hoạt động rất tốt mà không có vấn đề gì
Tôi cũng chưa từng kết nối với phần mềm Logitech trên Mac hay Windows