Jump to content
Review: E-Win Champion Series Gaming Chair Read more... ×
EwinRacing Flash Series Gaming Chairs
savvas

[SOFTWARE MOD] Backlight Controller with LightFX

Recommended Posts

to continue my problem from before. everything installs ok. app is running in processes however i cant get the settings in the app to open. i dont see the skin or theme come up and nothing in the crash log. .net is updated to the latest p170sm-a model with prema mod bios installed.

i've never tried it with hotkey v2.24.28. I suspect they changed something there. I'll take a look when i have some time

Share this post


Link to post
Share on other sites
to continue my problem from before. everything installs ok. app is running in processes however i cant get the settings in the app to open. i dont see the skin or theme come up and nothing in the crash log. .net is updated to the latest p170sm-a model with prema mod bios installed.

in the meanwhile do this:

open the event log viewer.

Go to applications log and find these 2: "outlog" and "powerbiosserverlog".

right click on them and select "save all events as".

save them and send them over to have a look

Share this post


Link to post
Share on other sites

I've taken a look at the new hotkey driver.

I have good news and bad news.

The good is that Clevo finally decided to make a proper backlight controller for their keyboards. It supports RGB colors instead of just the 8 we had. The keyboard color changer software is probably still a bit beta but it's on the right path.

The bad news is that my controller requires major rewrite to work with these new keyboards. It's probably not going to happen because i have neither the time nor a new machine to do the tests on.

Share this post


Link to post
Share on other sites

Can't wait to give this mod a try, I love the idea of the keyboard LEDs being synced to music :)

Share this post


Link to post
Share on other sites

Hey can we get the backlight control for mac. Hackintosh users can only have the blue color. It is not possible to decrease/increase/disable/enable the backlight function. Only when i go to sleep mode it disable. When i want to enable the backlighting i must restart my notebook. I have a Clevo P15SM with Windows 8.1 and Yosemite.

Share this post


Link to post
Share on other sites

They couldn't use an eeprom or something to store the LED colors? so it wasn't necessary to update colors every time windows boots.

Share this post


Link to post
Share on other sites

So after Clevo updating their keyboards, does this mod still work?

I recently acquired a newer model that only has a white lit keyboard, some simple light Fx on that would be great too...

Share this post


Link to post
Share on other sites

Thanks a ton! This was just what my friend needed, and now I don't have to code him a solution ;D

Share this post


Link to post
Share on other sites

Hello everyone.

I released a new app that does more or less what this one does but for RGB Led Wifi lamps. So you can now have these effects in your living room.

I don't know how many of you use that kind of thing but check it out, it's pretty neat

MiLight Controller

Share this post


Link to post
Share on other sites

Hello, I recently bought a Sager NP8651 and was wondering my laptop is supported by your app?

I have it installed with Hotkey v3.02.05 and I am not getting any colors.

Share this post


Link to post
Share on other sites

Hi, @savvas.

As you told that you won't work on this anymore because of lack of time, would it be possible to release the source code of what you have done till now? Maybe somebody else could have a look at it and make it work with the new Hotkey software.

Greetings.

  • Thumbs Up 1

Share this post


Link to post
Share on other sites

I can give you guys the code, that's easy, but it won't help you.

You can't port it, trust me. Or more correctly, you can but the hassle is so much that you're better off writing it from scratch...

Basically you need to start off with the stock clevo app and add parts from my new project with the Milight lamps...

If anyone with the skill is interested i can help him out.

Share this post


Link to post
Share on other sites

Can we have a 'Process On Top' feature in which you can have a light combo depending on what app is on top? A profiler if you will. Would be nice to have a different light setting depending on what game or app is active.

So after Clevo updating their keyboards, does this mod still work?

I recently acquired a newer model that only has a white lit keyboard, some simple light Fx on that would be great too...

Hotkey isn't the type of program where the latest version = better. Each hotkey version is specifically for their respective hardware counterparts. AKA, each hotkey program only works with the machine it comes with correctly.

Share this post


Link to post
Share on other sites

Hey! App looks really cool, thanks :)

I have a question. I'm waiting on a Clevo laptop to be built and delivered right now. It's a Clevo n150SD built by PC Specialist. Should this work with it? Would be awesome to change the colours. Thanks :D

Share this post


Link to post
Share on other sites
Hey! App looks really cool, thanks :)

I have a question. I'm waiting on a Clevo laptop to be built and delivered right now. It's a Clevo n150SD built by PC Specialist. Should this work with it? Would be awesome to change the colours. Thanks :D

Nope, the newer models all have their own version of HotKeyApp.

AFAIK N1x0SD also has have only white back-light LEDs, if you want to change their appearance you have to do it via a hardware mod like this one:

http://forum.techinferno.com/clevo/5413-%5Bhardware-mod%5D-change-w230st-keyboard-backlightcolor.html

Share this post


Link to post
Share on other sites

Quick question. I really enjoy the audio effect setting, but is there a way to keep the lights updating after the window is closed? At the moment, I have to keep it minimized if I want it to update with audio. This also happens with other effects that update (RGB effect, Random, etc.).

One more question, is it possible to use the audio effect with other playback devices? It currently only works with my speakers/headphones. I'd like to use it with my bluetooth headphones too if possible.

Thanks.

Share this post


Link to post
Share on other sites

Hello! I'm using a Clevo P771DM-G and really want to get adaptive keyboard working!

Trying my best but only have experience building for web.


You may have already seen this:

https://code.google.com/p/baggett-scripts/source/browse/trunk/set-kbled.ps1

 

Seems they are selecting clevo table from wmi database? Which works, and I'm wondering if this is less driver/version specific than yours?

get-wmiobject -query "select * from CLEVO_GET" -namespace "root\WMI"

Code is currently set up with hard-coded colour array but would take any hex value with a tweak. 

Then it's just a case of getting average hex pixel value and parsing it through this code.

It offers Left, Middle and Right so maybe three positional pixel monitors?

I know that your milight software kind of already does this and was even thinking of creating ip addresses with listeners for those led bulb values but it seems a long way round.

 

After building your source and poking around I can't see any pixel monitoring and the lightfx library is commented out. I would like

to avoid lightfx if possible, that is if I'm right in saying it won't be compatible with everything? 


I'll keep trying but I hope you can find some time to help! 

Edited by pointless6

Share this post


Link to post
Share on other sites

I'm now changing keyboard colours with python! 

You'll need python 2.7, pywin32 and WMI

 

import wmi
c = wmi.WMI(namespace="root\WMI")
clevo = "select * from CLEVO_GET"
myhex = "00FF00";
left_color = int("F0"+myhex, 16)
mid_color = int("F1"+myhex, 16)
right_color = int("F2"+myhex, 16)


for doy in c.query(clevo):
 #print color
 doy.SetKBLED(right_color)

 

I can also create sockets and capture the udp packets from MiLight Controller:


Download:

epocapp.bitbucket.org/milight/


Set Number of Colours - 4 Colors (2 Controllers)

Then Options > Settings

Create 4 local i.p addresses, (all 127.0.0.1) with port numbers 5005,5006,5007,5008

 

Colours.py

import socket
import binascii
import wmi
import struct

c = wmi.WMI(namespace="root\WMI")
clevo = "select * from CLEVO_GET"


UDP_IP = "127.0.0.1"
UDP_PORT = 5005
UDP_PORT2 = 5006
UDP_PORT3 = 5007
UDP_PORT4 = 5008

sock = socket.socket(socket.AF_INET, # Internet
                 socket.SOCK_DGRAM) # UDP
sock.bind((UDP_IP, UDP_PORT))

sock2 = socket.socket(socket.AF_INET, # Internet
                 socket.SOCK_DGRAM) # UDP
sock2.bind((UDP_IP, UDP_PORT2))

sock3 = socket.socket(socket.AF_INET, # Internet
                 socket.SOCK_DGRAM) # UDP
sock3.bind((UDP_IP, UDP_PORT3))

sock4 = socket.socket(socket.AF_INET, # Internet
                 socket.SOCK_DGRAM) # UDP
sock4.bind((UDP_IP, UDP_PORT4))

while True:
 data, addr = sock.recvfrom(1024)
 data2, addr2 = sock2.recvfrom(1024)
 data3, addr3 = sock3.recvfrom(1024)
 data4, addr3 = sock4.recvfrom(1024)
 ark = int("F0"+binascii.hexlify(data),16)
 ark2 = int("F1"+binascii.hexlify(data2),16)
 ark3 = int("F1"+binascii.hexlify(data3),16)
 ark4 = int("F2"+binascii.hexlify(data4),16)
 for doy in c.query(clevo):
  doy.SetKBLED(ark)
  doy.SetKBLED(ark2)
  doy.SetKBLED(ark4)
  print "packet",data,"| hex",ark
 

 

Your keyboard should be changing colours!

 

This is where I'm currently stuck.

In the terminal, the data you will see is udp packets converted straight to hex but I'm unsure this is correct..

 

..you can see the packets are 3 characters long and I have no idea what the encoding is, so we won't get the proper hex values until this is fixed. Could anyone shed any light on this?

 

Edited by pointless6

Share this post


Link to post
Share on other sites
import wmi
import binascii

c = wmi.WMI(namespace="root\WMI")
clevo = "select * from CLEVO_GET"

while True:

 def get_pixel_colour(i_x, i_y):
	import win32gui
	i_desktop_window_id = win32gui.GetDesktopWindow()
	i_desktop_window_dc = win32gui.GetWindowDC(i_desktop_window_id)
	long_colour = win32gui.GetPixel(i_desktop_window_dc, i_x, i_y)
	i_colour = int(long_colour)
	return (i_colour & 0xff), ((i_colour >> 8) & 0xff), ((i_colour >> 16) & 0xff)
 
#print get_pixel_colour(0, 0)

 
 data = ''.join(map(chr, get_pixel_colour(0, 0))).encode('hex')
 data2 = ''.join(map(chr, get_pixel_colour(500, 500))).encode('hex')
 data3 = ''.join(map(chr, get_pixel_colour(1024, 768))).encode('hex')
 
 ark = int("F0"+data,16)
 ark2 = int("F1"+data2,16)
 ark3 = int("F2"+data3,16)
 #ark4 = int("F1"+data4,16)

 for doy in c.query(clevo):
  doy.SetKBLED(ark)
  doy.SetKBLED(ark2)
  doy.SetKBLED(ark3)

 

Getting there! This works independently without the need to capture data from milight but it's just three single pixels and yet to have a decent colour

averaging algorithm. Any help would be appriciated

Share this post


Link to post
Share on other sites

After a short break and returning with fresh eyes I think I'm finally there. If anyone is interested in this feel free to let me know.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

By using this site, you agree to our Terms of Use. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.