क्लीवो लैपटॉप पर बहु-रंगीन बैकलिट कीबोर्ड के लिए रिवर्स-इंजीनियर ड्राइवर


13

यहाँ मेरी स्थिति है:

मैंने हाल ही में एक Sager NP9170 ( क्लीवो P170EM के समान) खरीदा है और इसमें एक बहु-रंगीन, बैकलिट कीबोर्ड है। विंडोज 7 के तहत, आप एक ऐप लॉन्च कर सकते हैं जो आपको बैकलाइटिंग के रंग को किसी भी मुट्ठी भर रंगों (नीला, हरा, लाल, आदि) में बदलने की अनुमति देता है।

मैं लिनक्स के तहत वही कार्यक्षमता चाहता हूं। मैं ऐसा करने वाला कोई भी सॉफ़्टवेयर नहीं ढूंढ सका हूं, इसलिए मुझे लगता है कि मुझे इसे स्वयं लिखना होगा। मैं व्यापार से एक प्रोग्रामर हूं, लेकिन मैंने बहुत निचले स्तर की प्रोग्रामिंग नहीं की है, और मैंने निश्चित रूप से कभी डिवाइस ड्राइवर नहीं लिखा है, इसलिए मैं सोच रहा था कि क्या कोई भी इन दो सवालों का जवाब दे सकता है:

1) क्या कोई सॉफ्टवेयर पहले से ही है जो इस तरह की चीज करता है? मैं काफी अच्छी तरह से देखा है, लेकिन कुछ भी लागू नहीं मिला है।

2) मैं इस तरह की चीज को उलटने की कोशिश में कहां से शुरू करूंगा? कोई उपयोगी लेख, ट्यूटोरियल, किताबें जो मदद कर सकती हैं?

और बस स्पष्ट करने के लिए: बैकलाइटिंग पहले से ही काम करती है, यह समस्या नहीं है। मैं सिर्फ बैकलाइटिंग का रंग बदलने में सक्षम होना चाहता हूं। यह कार्यक्षमता हार्डवेयर द्वारा समर्थित है। लैपटॉप विंडोज़ सॉफ़्टवेयर के साथ आया है जो ऐसा करता है और मैं लिनक्स में समान कार्यक्षमता चाहता हूं। मैं खुद इस सॉफ़्टवेयर को लिखने के लिए तैयार हूं, मैं सिर्फ इसके बारे में जाने का सबसे अच्छा तरीका जानना चाहता हूं।

धन्यवाद!

जवाबों:


9

खैर, जैसा कि यह पता चला है, किसी और ने वास्तव में इसका पता लगाया। " Relyron34 "पर एक बहुत बड़ा" थैंक यू " नोटबुकरेव्यू डॉट कॉम मंचों पर। की जाँच करें मंच धागा अधिक जानकारी के लिए।

नोट: जहाँ तक मुझे पता है, यह क्लीवो P150EM और P170EM स्टॉक पर आधारित कई / अधिकांश लैपटॉप के लिए काम करेगा। यह मेरे द्वारा व्यक्तिगत रूप से Ubuntu 12.04 पर एक Sager NP9170 पर सत्यापित किया गया था। अपने जोख़िम पर आगे बढ़ें। मैं किसी भी नुकसान के लिए जिम्मेदार नहीं हूँ जो आप ऐसा करने का कारण बन सकते हैं, और किसी भी अन्य मानक इंटरनेट अस्वीकरण। अपने जोख़िम पर आगे बढ़ें। अब अच्छी चीजो की ओर:

सबसे पहले, आपको कर्नेल मॉड्यूल संकलित करने में सक्षम होने की आवश्यकता है, इसलिए अपनी रिपॉजिटरी अपडेट करें:

sudo apt-get update

अब, git, बिल्ड टूल्स और कर्नेल स्रोत स्थापित करें:

sudo apt-get install git build-essential linux-source

अब एक कार्यशील निर्देशिका बनाएँ। मैं अपने घर निर्देशिका में स्थित "देव" फ़ोल्डर का उपयोग करना पसंद करता हूं:

cd ˜
mkdir dev
cd dev

अब, कर्नेल मॉड्यूल के लिए स्रोत डाउनलोड करें:

git clone git://git.code.sf.net/p/clevo-wmi/code clevo-wmi-code

स्रोत कोड के साथ निर्देशिका में जाएं:

cd clevo-wmi-code

"कर्नेल मॉड्यूल बनाएं:

make

अब आपके पास फाइल होनी चाहिए clevo_wmi.ko

अब, आइए परीक्षण करें और देखें कि क्या मॉड्यूल वास्तव में मॉड्यूल लोड करके काम करता है:

sudo insmod /home/<your-username-here>/dev/clevo-wmi-code/clevo_wmi.ko

यदि यह काम करता है, तो आपके पास अब एक नई निर्देशिका होनी चाहिए जिसे:

/ Sys / उपकरणों / मंच / clevo_wmi / kbled

उस निर्देशिका में बदलें:

cd /sys/devices/platform/clevo_wmi/kbled

अब आपको निम्नलिखित कमांड निष्पादित करके अपने कीबोर्ड के मध्य भाग का रंग बदलने में सक्षम होना चाहिए:

sudo su -c 'echo 100 > middle'

आपके कीबोर्ड का मध्य भाग अब हरा होना चाहिए। बदलें middleके साथ leftया rightकुंजीपटल के लिए इसी अनुभाग बदलने के लिए। यहाँ रंग कोड की एक सूची है:

GRB (Green-Red-Blue)
000 - Off
111 - White
100 - Green
010 - Red
001 - Blue
110 - Yellow
011 - Purple
101 - Aqua

इस कर्नेल मॉड्यूल को स्थायी रूप से स्थापित करने के लिए, इसे अपने कर्नेल मॉड्यूल के बाकी हिस्सों के समान स्थान पर कॉपी करें (नोट: आपको शायद यह कदम और अगला चरण कभी भी तब करना होगा जब आप अपना कर्नेल बदलते हैं):

sudo cp ~/dev/clevo-wmi-code/clevo_wmi.ko /lib/modules/`uname -r`/kernel/drivers/platform/x86/

अगला, ऐसा करें (मुझे लगता है कि कर्नेल मॉड्यूल की सूची का पुनर्निर्माण करता है):

sudo depmod -a

फिर अपनी /etc/modulesफ़ाइल को संपादित करें और इस पंक्ति को फ़ाइल के अंत में जोड़ें:

clevo_wmi

करने के लिए अपने परिवर्तन सहेजें /etc/modules

अब, जब भी आप रिबूट करते हैं, तो मॉड्यूल लोड किया जाना चाहिए और फिर आप अपने कीबोर्ड पर बैकलाइट का रंग बदल सकते हैं। यह पता लगाना कि यह रिबूट पर रंग कैसे बदलता है और अपने अंतिम रंग सेटिंग को याद रखना एक अभ्यास है जो पाठक को छोड़ दिया जाता है। docsडायनेमिक रंग बदलने की सुविधाओं का उपयोग करने के निर्देशों के लिए सोर्सकोड में निर्देशिका की जांच करें ।

डेवलपर के लिए धन्यवाद, जो इस कर्नेल मॉड्यूल को लिखने में कड़ी मेहनत करता है!


मुझे खुशी है: डी थैंक्स। किसी दिन इसे कर्नेल में शामिल कर लिया जाए तो बहुत अच्छा होगा। BTW: क्या यूआई को इसे उजागर करने के कोई मानक तरीके हैं, ताकि एकता या अन्य WM इसका उपयोग कर सकें?
bcelary

1
2017-दिसंबर तक कुछ क्लीवो मॉडल हैं जो ड्राइवर अभी तक समर्थन नहीं करता है। Random_fade और random_flicker कार्य करते हैं, लेकिन कीबोर्ड के कुछ वर्गों को विशिष्ट रंगों में सेट करने से काम नहीं होता है।
म्यूटेंट बॉब

0

आप इस तरह की कार्यक्षमता का उपयोग कैसे करते हैं?

यह संभवत: कुछ चतुर स्क्रिप्टिंग, और स्टार्टअप कार्यक्षमता द्वारा प्राप्त किया जा सकता है।

(विंडोज में आपको हार्डवेयर की प्रत्यक्ष पहचान करने और नियंत्रित करने के लिए डायरेक्ट मेमोरी एक्सेस की अनुमति देने के बजाय विदेशी मेमोरी मॉडल में कोड लिखने की आवश्यकता होगी, या इसके बजाय ड्राइवर (और एपीआई) लिखने की आवश्यकता होगी।)


आप अपनी प्राथमिकताओं का चयन कैसे करते हैं?

तब कुछ बुनियादी स्क्रिप्ट (या आइकन कॉलिंग स्क्रिप्ट) एक विशिष्ट रंग-वरीयता का चयन कर सकती थीं।

यदि आप फ्रंट-एंड GUI के लिए पायथन का उपयोग करते हैं, तो यह भी काफी सरल होगा।


आपके प्रतिक्रिया के लिए धन्येवाद! मैं जो भी देख रहा हूं वह है: ए) कुछ सॉफ़्टवेयर का लिंक जो मैंने याद किया जो पहले से ही ऐसा करता है। b) कीबोर्ड के बारे में अधिक निर्धारण करने के लिए कहां से शुरू किया जाए, इस पर कुछ मार्गदर्शन।
पोपजमाल

बाहर की जाँच करें: ubuntuforums.org/showthread.php?t=1998969
david6


पीडीएफ (स्रोत मॉडल): bestdeal4u.com.au/store/files/Clevo_W595_Brochure_June_2012.pdf
david6

कीबोर्ड घटक के लिए आपको भाग संख्या / ब्रांड की पहचान करने की आवश्यकता है ..
david6

0

पहले से ही पूरे कीबोर्ड और फ्लाईमोड-की के सभी कार्यों के लिए एक ड्राइवर मौजूद है! TUXEDO कंप्यूटर्स ने इस ड्राइवर को विकसित किया और इसे अपने समर्थन-मंच के माध्यम से प्रस्तुत किया: http://www.linux-onlineshop.de/forum/index.php?page=Thread&threadID=26

मज़े करो :)


0

मैंने पोप द्वारा उपरोक्त विधि का उपयोग करके रंगों को बदलने के लिए एक स्क्रिप्ट बनाई। आप इसे यहाँ पा सकते हैं: pD a9We9s6d (सुनिश्चित नहीं है कि यहाँ प्रारूपण सही काम करेगा तो वहाँ से कॉपी करना सुरक्षित होगा)

#! /bin/bash
#changes keyboard colors
#Noah B.

#Prompt for root
[ "$UID" -eq 0 ] || exec sudo bash "$0" "$@"

off=000
white=111
green=100
red=010
blue=001
yellow=110
purple=011
aqua=101

left=$1
l_code=000
middle=$2
m_code=000
right=$3
r_code=000

#LEFT SIDE

if [ -z "$left" ]
then 
    echo "Enter desired color for the left side:
    (off/white/green/red/blue/yellow/purple/aqua)"
read -p "Color choice: " left
fi

eval "l_code=\$$left"

echo $l_code > /sys/devices/platform/clevo_wmi/kbled/left

#MIDDLE

if [ -z "$middle" ]
then
    echo "Enter desired color for the middle:
    (off/white/green/red/blue/yellow/purple/aqua)"
read -p "Color choice: " middle
fi

eval "m_code=\$$middle"

echo $m_code > /sys/devices/platform/clevo_wmi/kbled/middle

#RIGHT SIDE

if [ -z "$right" ]
then
    echo "Enter desired color for the right side:
    (off/white/green/red/blue/yellow/purple/aqua)"
read -p "Color choice: " right
fi

eval "r_code=\$$right"

echo $r_code > /sys/devices/platform/clevo_wmi/kbled/right
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.