1. You may have noticed things look a little different around here - we've switched to a new platform (XenForo) and have some new forum styles and features. This how-to guide will help you find your way around. If you find anything that looks strange, post it in this thread.

AlienFX Lite (Linux + Windows AlienFX tool)

Discussion in 'Alienware' started by Wattos, Feb 10, 2010.

  1. Wattos

    Wattos Notebook Deity

    Reputations:
    967
    Messages:
    1,200
    Likes Received:
    1
    Trophy Points:
    55
    Hi,

    Since I received my Allpowerfull M15x laptop, I always wanted to use the alienFX lights as an indicator of whether I am currently busy or available to talk to/etc... The solution provided by alienware would be to load up the alienFX software (takes a relative long time), load up a previously created profile, hit the apply button and exit the application. Suffice to say that this is really impractical to be of any use. The other major problem was that I use mainly Linux as my working environment and alienfx is not available for linux and the alienware software seems not to work on Windows over a virtual machine installed(tried both Vmware and VMBox).

    Thus I decided to write my own alienFX program which would work under Windows and Linux. Here is the Result

    I would be grateful for any comments and opinions on how to make the application better. Also, please let me know if you think the application is useless, so that I know if there is any point in further developing this application.

    ****DISCLAIMER****​
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

    USE THIS SOFTWARE ON YOUR OWN RISK!


    AlienFX Lite


    Revision History:
    Code:
    Date       | Description            | version  | url
    15/03/2010 | Forth  Verison         | 0.4b     | http://progger.co.uk/alienfx/AlienFXLite-0.4b.jar
    12/02/2010 | Third  Verison         | 0.3      | http://progger.co.uk/alienfx/AlienFXLite-0.3.jar
    12/02/2010 | Second Verison         | 0.2      | http://progger.co.uk/alienfx/AlienFXLite-0.2.jar
    10/02/2010 | First version released | 0.1      |  http://progger.co.uk/alienfx/AlienFXLite-0.1.jar 

    Description:
    AlienFX Lite is a simple cross-platform program to create profiles and set the AlienFX lightning to the set colors. This application was done for the Allpowerfull M15x and only tested on this machine. It should also work on the M17x. The application will most likely accept the Area 51 m15x but it was untested. The current supported platforms are:
    Linux (32 bit), Linux(64 bit), Mac OS X(UNTESTED), Windows 7(64 bit), Windows 7 (32 bit), Windows Vista (32bit), Windows Vista 64bit, Windows XP

    Special Thanks:
    Thanks go to Ingrater (http://3d.benjamin-thaut.de/) for providing me with the protocol for the alienFX device and some windows native code.

    Installation:
    The application can be installed on windows and on linux in the following way.

    Linux: (Ubuntu)

    This guide is for ubuntu only. For a different distribution (which doesnt use debian packages), you have to install the following things Java Runtime Environment 1.6 (6) and libusb-1.0-0.

    Step 1) ==CHECK FOR JVM 1.6==
    Check if you have have a java vm installed. This can be done by typing "java -version" into a terminal. If you get a "command not found" returned or the version is lower than 1.6 go to step 2. If the version is 1.6 or above, go to step 3.

    Step 2) ==INSTALLING JVM==
    To install the latest jvm type:

    Code:
    sudo apt-get install openjdk-6-jre
    Confirm your choice and wait until its installed.

    Step 3) ==INSTALL libusb-1.0==
    The linux native libraries are based of libusb. It has to be present on the system. This can be done by:

    Code:
    sudo apt-get install libusb-1.0-0

    Windows:

    Step 1) If you dont have java 1.6 then Go to: http://java.sun.com/javase/downloads/index.jsp and click on Download JRE. Install the JRE.

    Step 2) Place the AlienFXLite-0.1.jar into a suitable for you folder, and remember the path (e.g. C:\User\wattos\AlienFXLite-0.1.jar)

    Step 3) Unfortunately the application requires administrator powers or othrwise it will not be able to write to the alienfx device. Find the location of the JRE javaw.exe, which will most likely be somewhere here: C:\Program Files (x86)\Java\jdk1.6.0_18\bin\javaw.exe

    Step 4) Right click on your desktop, and do new->Shortcut. Now enter the path (e.g. "C:\Program Files (x86)\Java\jdk1.6.0_18\bin\javaw.exe") with the qoutes into the text field, followed by the location of the jar file. Thus all together it should look like:

    Code:
    "C:\Program Files (x86)\Java\jdk1.6.0_18\bin\javaw.exe" -jar "C:\User\wattos\AlienFXLite-0.1.jar" 
    If you want the application to go directly to the system tray without opening, append an -s e.g.

    Code:
    "C:\Program Files (x86)\Java\jdk1.6.0_18\bin\javaw.exe" -jar "C:\User\wattos\AlienFXLite-0.1.jar" -s
    Thats it, you are done.

    Manual:
    To open the application in linux, do the following
    sudo java -jar AlienFXLite-0.1.jar
    or
    sudo java -jar AlienFXLite-0.1.jar -s
    for the silent version.

    On windows, rightclick on the created shortcut and press on "run as admin".


    Once the application is open, you can create new profiles. On the left you can see the color chooser, which is used to choose colors. When creating a new profile while having no profile selected, all lights will be defaulted to the color which was selected when pressing the new profile button. If you create a new profile while another profile is selected, then a copy of that profile will be created.

    Once you are happy with a profile you need to press the save button. This will write the changes to the hdd. The remove button allows you to remove profiles. Finally, click the apply button to apply the profile to the alienFX controller.

    If System trays are supported (usually they are) the application will not close when the window is closed. Instead it will hide. The application is only closable from the system tray. To close the application, right click on the system tray alienFX icon and then Exit. In this small menu, all profiles are also listed. Clicking on a profiles name will automatically apply the profile without having to open the applications window.

    In order to change the colors for selected regions, select a color on the left side, then press the button with the text of the region you want to change the color. Dont forget to hit the save buttons once you are happy with a profile. The apply button DOES not save your profile.

    Video Tutorial
    <param name="movie" value="http://www.youtube.com/v/3SPJAFx5Meo&hl=en_US&fs=1&"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/3SPJAFx5Meo&hl=en_US&fs=1&" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="640" height="385"></embed></object>

    Misc:

    * The profiles are saved under (USER_HOME)/.alienFXprofiles.
    * On linux you can make your user able to access the usb devices without being a super user but part of a group which has access to the usb devices. I dont know how to do that


    Known Issues:
    * Sometimes the JVM will spit out a bug when opening the menu of the system tray. This is a bug in Swing and should be fixed with a new update of the JRE (hopefully).
    * It seems that the system look and feel does not work on ubuntu which runs inside a VM (??).
    * With some look and feels, its possible that the non-resizable window is too small.
    * The java functionality for system trays is generally crap. The balloon messages looks really bad and icon does not support transparency.
    * It only works with the 32 bit JRE on windows

    TODO:
    * change the format of the profiles from binary to xml
    * change the Ui to look better/different
    * Make the applying of the effects in a background thread so that the gui doesnt freeze

    Release History
    v. 0.4b:
    * Added support for M11x
    * Added support for active preview
    * Added support for Battery Monitoring
    * Added support for brightness
    * Added Turn off features
    * Fixed Windows visual bugs

    v. 0.3:
    * Added support for copying/pasting a sequence of actions
    * Added support for changing a lot of colors at once
    * Added reset function
    * Removed the info button and copy button

    v. 0.2:
    * Added support for 32 bit linux
    * Added support for sequences
    * Added support for copy/paste of action
    * Added support for right click on color to select the color from an action
    * Added support for "colors in profile"
    * Added support for morph/blink
    * Added support for speed
    * Changed the Gui layout


    Screen Shots:

    http://progger.co.uk/alienfx/linux.png

    System Tray:
    http://progger.co.uk/alienfx/tray.png


    DOWNLOAD LINK:
    See signature

    SOURCE LINK:
    See signature
     
    ADOR likes this.
  2. lgsshedden

    lgsshedden Notebook Consultant

    Reputations:
    16
    Messages:
    299
    Likes Received:
    4
    Trophy Points:
    31
    thanks for doing this: interested to install and give it a test run. Where is the download link?
     
  3. Wattos

    Wattos Notebook Deity

    Reputations:
    967
    Messages:
    1,200
    Likes Received:
    1
    Trophy Points:
    55
    LOL, sorry, totally forgot to put the download link on the page. Thanks for reminder. Also, there is partial support for the old model, (area 51 m15x) and windows vista/7 32 bit but right now it seems that the application needs a restart after setting the colors. If there is interest in the application to support the old model, Ill dedicate some time to make it work on the old one as well.

    I edited the main page with the download link

    DOWNLOAD LINK:
    http://progger.co.uk/alienfx/AlienFXLite-0.1.jar
     
  4. impruv

    impruv Notebook Evangelist

    Reputations:
    8
    Messages:
    379
    Likes Received:
    0
    Trophy Points:
    30
    Do you think this will work with the upcoming M11X considering it only has one zone for the keyboard?
    Would it be hard to make it work for the upcoming m11x?
     
  5. Wattos

    Wattos Notebook Deity

    Reputations:
    967
    Messages:
    1,200
    Likes Received:
    1
    Trophy Points:
    55
    I want to say "Not at all", but its usually hard to tell. The biggest problem would be that I probably wont be buying a M11x, so I would have to either work with someone, or have somebody with a M11x develop the support for the M11x.

    If there is enough demand for this to support the M11x then I will gladly add support for it as long as someone is willing to work with me, or do himself. The number of zones is something I can configure. I doubt that it will work without any modification, but we would have to see ^^
     
  6. lgsshedden

    lgsshedden Notebook Consultant

    Reputations:
    16
    Messages:
    299
    Likes Received:
    4
    Trophy Points:
    31
    beauty: thanks for the quick addition of the download
     
  7. soleblaze

    soleblaze Notebook Consultant

    Reputations:
    41
    Messages:
    147
    Likes Received:
    6
    Trophy Points:
    31
    Thanks for coding this and putting it out there. Really nice to have an option to control these in Linux. I don't currently have an alienware, but I am planning on getting a m11x. I will be mostly running Linux on it. (Can't wait to see how fast the 335M is with CUDA) I can't order mine until my tax return, so I'll probably get it a week or two later than anyone else..but once I do if you haven't found anyone else I'd like to help you get a m11x compatible version out.
     
  8. cpaqf1

    cpaqf1 Notebook Evangelist

    Reputations:
    63
    Messages:
    310
    Likes Received:
    0
    Trophy Points:
    30
    any chance this would work with the M17x r2 ?
     
  9. lgsshedden

    lgsshedden Notebook Consultant

    Reputations:
    16
    Messages:
    299
    Likes Received:
    4
    Trophy Points:
    31
    downloaded and installed as per the guideline
    attempted my first profile and went to save and I get an AlienFx Error
    Error occurred while trying to communicate with the AlienFx device.
    Data length should be 9 but was 0.

    Suggestions? Fully prepared to concede it could be operator error!
     
  10. Wattos

    Wattos Notebook Deity

    Reputations:
    967
    Messages:
    1,200
    Likes Received:
    1
    Trophy Points:
    55
    Are you running on windows, Linux?

    I assume you are running windows. Is it 32 bit or 64 bit? Are you running it as admin? Usually I get this error when running not as admin
     
  11. Wattos

    Wattos Notebook Deity

    Reputations:
    967
    Messages:
    1,200
    Likes Received:
    1
    Trophy Points:
    55
    If the alienFX system is the same (as M17x r1), then it should. Try it and tell us. I dont have a M17x r2
     
  12. JTOverath

    JTOverath Notebook Evangelist

    Reputations:
    82
    Messages:
    583
    Likes Received:
    1
    Trophy Points:
    31
    There any docs/guides on programming the AlienFX interface?
     
  13. The_Moo™

    The_Moo™ Here we go again.....

    Reputations:
    3,973
    Messages:
    13,930
    Likes Received:
    0
    Trophy Points:
    455
    The m17x has different zones :(

    I'll try in a bit but you might have to add them:eek:

    you don't have to but it would be nice :)
     
  14. lgsshedden

    lgsshedden Notebook Consultant

    Reputations:
    16
    Messages:
    299
    Likes Received:
    4
    Trophy Points:
    31
    correct on all counts, running win7 64 bit: ran as admin and it worked beautifully!
    Hope my error assists others: great tool and great assist.
    Rep +1!
     
  15. Wattos

    Wattos Notebook Deity

    Reputations:
    967
    Messages:
    1,200
    Likes Received:
    1
    Trophy Points:
    55
    Well, I did use the region codes from the M17x and they worked on the M15X, so in theory it should work :x.


    How many keyboard zones do you have on the M17X ?
     
  16. Wattos

    Wattos Notebook Deity

    Reputations:
    967
    Messages:
    1,200
    Likes Received:
    1
    Trophy Points:
    55
    Make sure you use the task bar. Its really handy for switching the profile quickly.
     
  17. rbf351

    rbf351 Notebook Enthusiast

    Reputations:
    0
    Messages:
    36
    Likes Received:
    0
    Trophy Points:
    15
    when i run the program nothing actually happens.

    here is the command i am using

    "C:\Program Files\Java\jdk1.6.0_18\bin\javaw.exe" -jar "C:\Users\rbf351\AlienFXLite-0.1.jar"
     
  18. Wattos

    Wattos Notebook Deity

    Reputations:
    967
    Messages:
    1,200
    Likes Received:
    1
    Trophy Points:
    55
    most likely you forgot the "-jar" inbetween the javaw.exe and C:\Users\rbf351\AlienFXLite-0.1.jar

    your command should look like:

    "C:\Program Files (x86)\Java\jdk1.6.0_18\bin\javaw.exe" -jar "C:\User\wattos\AlienFXLite-0.1.jar"
     
  19. rbf351

    rbf351 Notebook Enthusiast

    Reputations:
    0
    Messages:
    36
    Likes Received:
    0
    Trophy Points:
    15
    yup, that was why. figured that out a few seconds before you posted. now i get nothing when i run the program
     
  20. Wattos

    Wattos Notebook Deity

    Reputations:
    967
    Messages:
    1,200
    Likes Received:
    1
    Trophy Points:
    55
    can you open cmd with admin access and do :

    "C:\Program Files (x86)\Java\jdk1.6.0_18\bin\java.exe" -jar "C:\User\wattos\AlienFXLite-0.1.jar"

    (note, the java.exe not javaw.exe)

    and paste what it spits out
     

Share This Page