Jump to content

[SOFTWARE MOD] Backlight Controller with LightFX


savvas

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

Link to comment
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

Link to comment
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.

Link to comment
Share on other sites

  • 2 months later...
  • 4 weeks later...

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.

Link to comment
Share on other sites

  • 2 months later...
  • 2 weeks later...
  • 1 month later...

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.

Link to comment
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.

Link to comment
Share on other sites

  • 1 month later...

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.

Link to comment
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

Link to comment
Share on other sites

  • 1 month later...

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.

Link to comment
Share on other sites

  • 2 months later...
  • 3 months later...

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
Link to comment
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
Link to comment
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

Link to comment
Share on other sites

  • 3 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

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.