Logitech कीबोर्ड, माउस और अन्य डिवाइसों के लिए Linux मैनेजर Solaar
(github.com/pwr-Solaar)- Solaar Linux पर Unifying, Bolt, Lightspeed, Nano रिसीवरों के साथ-साथ USB केबल या Bluetooth से जुड़े कई Logitech कीबोर्ड, माउस और अन्य डिवाइसों को मैनेज करने का टूल है
- Solaar डिवाइस ड्राइवर नहीं है, बल्कि यह केवल उन डिवाइसों के विशेष संदेशों पर प्रतिक्रिया देता है जिन्हें Linux input system अनदेखा करता है
- इसकी मुख्य सुविधाओं में रिसीवर और डिवाइस का pairing/unpairing, डिवाइस सेटिंग्स कॉन्फ़िगर करना, कस्टम बटन सेटिंग, और विशेष संदेशों पर प्रतिक्रिया देने वाले rules चलाना शामिल है
- नवीनतम pre-built पैकेज Fedora जैसे कुछ Linux डिस्ट्रीब्यूशनों के standard repository में उपलब्ध हैं, और यदि डिस्ट्रीब्यूशन repository में नया वर्ज़न न हो तो Arch, Ubuntu/Kubuntu PPA, NixOS Flake पैकेज इस्तेमाल किए जा सकते हैं
- Debian, Ubuntu universe, Gentoo, Mageia repositories में भी Solaar उपलब्ध है, लेकिन ये मौजूदा वर्ज़न से कई वर्ज़न पीछे हो सकते हैं
Solaar द्वारा मैनेज किए जाने वाले Logitech डिवाइस
- Solaar कई Logitech कीबोर्ड, माउस और अन्य डिवाइसों के लिए Linux मैनेजर है
- समर्थित कनेक्शन तरीके इस प्रकार हैं
- Unifying, Bolt, Lightspeed, Nano रिसीवरों के जरिए वायरलेस कनेक्शन
- USB केबल कनेक्शन
- Bluetooth कनेक्शन
- Solaar डिवाइस ड्राइवर नहीं है, और यह केवल डिवाइसों के उन विशेष संदेशों पर प्रतिक्रिया देता है जिन्हें Linux input system अनदेखा करता है
समर्थित सुविधाएँ
- Solaar रिसीवर और डिवाइस के बीच pairing/unpairing को सपोर्ट करता है
- डिवाइस सेटिंग्स कॉन्फ़िगर की जा सकती हैं
- कस्टम बटन सेटिंग को सपोर्ट करता है
- डिवाइस के विशेष संदेशों पर प्रतिक्रिया देकर rules चलाए जा सकते हैं
- दस्तावेज़ लिंक
इंस्टॉलेशन पैकेज
- नवीनतम pre-built पैकेज Fedora जैसे कुछ Linux डिस्ट्रीब्यूशनों के standard repository में उपलब्ध हैं
- यदि डिस्ट्रीब्यूशन के standard repository में नया Solaar उपलब्ध न हो, तो निम्न पैकेज आज़माए जा सकते हैं
- Arch solaar package: extra repository पैकेज
- Solaar stable ppa: Ubuntu/Kubuntu के लिए पैकेज
- Svenum/Solaar-Flake: NixOS Flake पैकेज
ऐसे repository जिनमें पुराना वर्ज़न हो सकता है
- Solaar कुछ अन्य repositories में भी उपलब्ध है, लेकिन वे मौजूदा वर्ज़न से कई वर्ज़न पीछे हो सकते हैं
1 टिप्पणियां
Hacker News टिप्पणियाँ
MX Master को 10 साल से ज़्यादा समय से इस्तेमाल कर रहा हूँ, और इसकी performance, battery, design और हाथ में महसूस होने वाला feel—सब पसंद है
Windows पर management के लिए इंस्टॉल करना पड़ने वाला 150MB का Logitech program बिल्कुल पसंद नहीं है, और लगता है जैसे यह ढेर सारा गैरज़रूरी telemetry data भेजता है
Bluetooth connection की समस्याओं से लगातार परेशान होकर कुछ महीने पहले Solaar मिला; इसका interface Logitech tool से बेहतर, सरल और हल्का है, जिससे open source software की खूबियाँ अच्छी तरह दिखती हैं
Solaar ने 30 सेकंड में pairing कर दी और मैं बहुत संतुष्ट हूँ
हालांकि Bolt operating system में असली Bluetooth की तरह दिखाई नहीं देता, इसलिए battery level सिर्फ Solaar के अंदर ही देखा जा सकता है
कुछ दिन चालू रखने पर Corsair process का CPU time लगभग 1 घंटे तक जमा हो जाता था, जबकि Logitech में ज़्यादा से ज़्यादा कुछ मिनट ही होता था
यह देखकर मैंने अपना सारा Corsair gear Logitech या दूसरे products से बदल दिया
मुझे बस rainbow LED बंद करनी थी, और अगली बार नया mouse खरीदूँगा तो Solaar आज़माने का सोच रहा हूँ
काश इसे Mac पर भी port कर दिया जाए
आज mouse driver में default रूप से enabled AI prompt builder मिला, और कई महीनों तक input recording permission request को लगातार reject करने के बाद यह और भी अजीब लगा
Logitech का enterprise “Offline” version इस्तेमाल करके ज़्यादातर extra programs हटा दिए; कहा जाता है कि यह version home server से communication नहीं करता और extra permissions भी नहीं मांगता। environment के हिसाब से फर्क हो सकता है
https://support.logi.com/hc/en-us/articles/11570501236119-Lo...
सचमुच अजीब दुनिया है
https://www.logitech.com/en-us/software/logi-ai-prompt-build...
यह swipe events की नकल करता है, और इन्हें standard Mouse Forward और Mouse Backward (M4/M5) के रूप में set नहीं किया जा सकता
https://superuser.com/a/1216049
Windows पर apps के बीच behavior consistent रखने के लिए मैं इन्हें ठीक उसी तरीके से set करता हूँ
buttons map कर सकते हैं और combo inputs भी add कर सकते हैं
हालांकि back button दबाए रखते हुए left move करके Spaces बदलने जैसे mouse movement triggers शायद अभी नहीं हैं, इसलिए मैं अभी खोज रहा हूँ
https://plentycom.jp/en/steermouse/
https://news.ycombinator.com/item?id=29056847
Wacom driver application names और window titles collect करके भेजता है, और बड़े विवाद के बाद भी अब तक ऐसा ही करता है
कुछ dollars का है, लेकिन trial version है और Homebrew से भी install किया जा सकता है
https://better-mouse.com
जानना चाहता हूँ कि Windows पर भी ऐसा कोई alternative है या नहीं
Logitech mouse आम तौर पर अच्छे होते हैं, लेकिन उनकी बड़ी कमियों में से एक यह है कि macro feature onboard नहीं होता, इसलिए एक button को कई key input combinations से bind करना भी G-Hub जैसे helper software के बिना नहीं हो पाता
Linux पर Solaar और Piper/libratbagd हैं, और macOS पर SteerMouse कई buttons वाले mice के लिए भी काफी अच्छा लगता है
अगर Windows पर G-Hub की जगह लेने लायक कुछ हो, तो Windows-only इस्तेमाल करने वाले दोस्तों और परिवार को Logitech mouse recommend करना काफी आसान हो जाएगा
इसी वजह से पहले Roccat मेरा सबसे पसंदीदा था। mouse जो भी features कर सकता था, वे सब onboard संभव थे, इसलिए एक बार configure करने के बाद इस्तेमाल किया software delete कर देने पर भी कोई limitation नहीं रहती थी
हालांकि hardware quality control लंबे समय से कुछ खास नहीं रहा, और Turtle Beach द्वारा acquisition के बाद लगता है यह और खराब होगा
बेहद महंगे gaming mice में भी यही हाल है
Logitech खरीदने से पहले मैंने कभी ऐसा mouse नहीं देखा था जिसका button खराब हुआ हो, और आसपास के लोग भी तारीफ करते हैं, लेकिन जब पूछो कि कितने दोबारा खरीदे, तो कहानी बदल जाती है
मेरा mouse dongle खो गया था और उस समय मेरे पास इस्तेमाल करने के लिए सिर्फ Ubuntu था, तब Solaar ने वाकई बहुत मदद की
मैं mouse को उसी dongle से pair कर पाया जिसे keyboard इस्तेमाल कर रहा था, और उसके बाद से बिना समस्या इस्तेमाल कर रहा हूं
मैं MX Mechanical Mini keyboard और MX Ergo mouse इस्तेमाल करता हूं, लेकिन उनके dongle अलग-अलग हैं और compatible नहीं हैं, इसलिए वे एक ही dongle से pair नहीं होते
ऊपर से laptop के दाएं USB-A port में लगाया गया dongle बिना किसी वजह हमेशा lag करता है
जानना चाहता हूं कि क्या Solaar इस तरह की समस्या हल कर सकता है
कंपनी में wireless keyboard/mouse kits दी जाती हैं, क्योंकि यह laptop के built-in keyboard को बदलने से सस्ता पड़ता है और users में repetitive strain injury की संभावना भी कम करता है
junior रहते हुए यह दर्दनाक तरीके से सीखना पड़े तो यह बिल्कुल मजाक की बात नहीं होती
मैं पुराने MX Master 2S के साथ Solaar काफी समय से इस्तेमाल कर रहा हूं
मुख्य तौर पर scroll wheel के उस point को adjust करने के लिए, जहां वह click करना बंद करके free spin में चला जाता है
Logitech ने mouse के अंदर ratchet control करने के लिए एक electric lever लगाया है, और Solaar में इसे adjust करने का option है जो बहुत अच्छे से काम करता है
palm button के जरिए किए जाने वाले specific gestures से keyboard shortcuts bind कर पाना भी अच्छा है
मैंने Logitech इसलिए खरीदा क्योंकि Solaar है
अच्छा होगा अगर Solaar developers को कुछ हद तक compensation मिले, और इसमें बस AI prompt builder जुड़ जाए तो यह complete हो जाएगा
mouse settings utility में AI कैसे आ सकता है, इसका मुझे बिल्कुल अंदाजा नहीं है
कोई Linux जानकार समझा दे तो अच्छा होगा
मेरी समझ में यह Linux के लिए driver implementation जैसा है, लेकिन यह पूरी तरह सिर्फ Python में कैसे लिखा जा सकता है, यह जानना चाहता हूं
driver code आम तौर पर C या C++ में लिखा जाता है, और आजकल kernel development का नया तरीका Rust है, ऐसा मुझे पता है
pure Python में यह कैसे काम कर सकता है, समझ नहीं आ रहा
सामान्य Linux driver HID messages लेने के लिए जरूरी हिस्सा implement करता है, और Solaar उसके ऊपर manufacturer-specific messages process करता है
यह मौजूदा operating system network driver के ऊपर किसी program द्वारा manufacturer-specific TCP messages भेजने जैसा है, और उस program का kernel-level network driver होना जरूरी नहीं है
लगता है यह kernel level पर काम नहीं करता
user को खुद check करना पड़ता था कि IRQ21 BIOS या किसी दूसरे device में पहले से इस्तेमाल तो नहीं हो रहा, और उसके बाद companies द्वारा तय proprietary तरीके के हिसाब से controller से communicate करने के लिए specific memory addresses पढ़ने-लिखने वाला device driver install करना पड़ता था
अब hardware industry ने devices के काम करने के तरीकों को standardize करके काफी progress की है
memory-mapped I/O की वजह से operating system बहुत से device drivers को similar तरीके से handle कर सकता है, और read/write के बाद memory manipulation भर करना होता है
USB में device classes को standardize किया गया है, जैसे communication devices, audio devices, video capture devices, और यहां HID की तरह
इसलिए kernel driver development का 80% से ज्यादा हिस्सा संभाल सकता है, खासकर Linux की “everything is a file” philosophy की वजह से
USB dongle लगाने पर hypothetically
/sys/class/hid//{control, data}जैसी files बनती हैंउदाहरण के लिए
controlfile में बहुत specific value लिखकर dongle का RF channel बदलें तो kernel उसे लेकर device को भेज देता है, और.../datafile कोcatकरके raw keyboard/mouse data भी मिल सकता हैtheory में Python में
.../datafile को read handler से जोड़कर input process किया जा सकता है, और फिर mouse movement या keyboard events जैसे operating system commands emit करके इसे device driver जैसा बनाया जा सकता हैअसली बात input handling है, और यही हिस्सा reverse engineering मांगने वाला कठिन काम है
operating system यह हिस्सा handle नहीं करता, इसलिए यह आम तौर पर Logitech applications द्वारा किए जाने वाले कुछ कामों की जगह लेता है
अज्ञानता में पूछ रहा हूं, लेकिन keyboard और mouse manage करने वाली app की जरूरत आखिर क्यों होती है
क्या generic driver से सीधे support नहीं मिलना चाहिए?
उदाहरण के लिए MX Master में set किया जा सकता है कि 6 buttons कौन से events trigger करें
K810 कुछ ऐसे special events trigger करता है जैसे function keys खराब हों, लेकिन software से उन्हें मूल F1 जैसी standard function keys में वापस किया जा सकता है
यहां HID++ से मतलब Logitech dongle है, और कभी-कभी यह actual device के Bluetooth support के साथ combine भी होता है
Logitech trackball के extra options और pairing controls के लिए यह screenshot देखें
[1] https://usercontent.irccloud-cdn.com/file/2cZcZiNk/image.png
ये features USB HID standard का हिस्सा नहीं हैं, इसलिए कोई भी operating system built-in support नहीं देता
आम तौर पर mouse के लिए DPI और refresh rate, keyboard के लिए tactile response settings(https://wooting.io/), shortcut bindings जैसी user settings की वजह से होता है
LAN events जैसी जगहों पर, जहां आप अपने computer पर नहीं होते, settings को consistent तरीके से load करना पड़े तो यह सिर्फ अच्छा होने से बढ़कर लगभग जरूरी हो जाता है
मैं कई सालों से Solaar इस्तेमाल कर रहा हूँ, और यह बिल्कुल वैसा ही काम करता है जैसा बताया गया है; कोई समस्या नहीं आई
इस उपयोगी प्रोजेक्ट को लगातार बनाए रखने के लिए धन्यवाद
मैं बिल्ट-इन टचपैड वाले Logitech K400 कीबोर्ड और Solaar को कई सालों से इस्तेमाल कर रहा हूँ
इसे TV से जुड़े Raspberry Pi पर चला रहा हूँ, और यह बिना किसी समस्या के बहुत अच्छे से काम करता है
मैंने इसे कभी भी Mac या Windows पर Logitech सॉफ़्टवेयर से कनेक्ट करके नहीं देखा