Giter VIP home page Giter VIP logo

retc's Introduction

What is RETC

RETC is a custom server application with a dll shim for clients, designed to be the middleman between the Razer Chroma SDK and various output sdks. I believe in performance so RETC is designed to run with the smallest amount of overhead possible.

Installation:

Automatic

Follow the guide how to install RETC.
tl:dr Just download the latest installer executable from here and follow the installation steps. In both cases you should have working effects afterwards, if not proceed to the troubleshooting section.

If you want to add a custom application see Patching application

Manual

Patching application

Copy both RzChromaSDK.dll and RzChromaSDK64.dll into the folder of the Application you want to use e.g C:\Program Files\Overwatch.

WARNING: Never move these dlls to a global dll loading path like C:\Windows\System32 or the retc-server.exe directory itself otherwise you will end up crashing the application.

Preparing files

Download the latest release from github or compile it yourself. Download and extract the corsair cue sdk from the official corsair download page Create a new folder called retc-server this will be the place where you start RETC from.

The following steps depend on your systems architecture

i.e whether you are using a 64bit (x64, x86_64, AMD64, etc.) or 32bit (x86, i386, etc) system.

64 Bit

Put the extracted CUESDK\bin\amd64\CUESDK.x64_2015.dll into the retc-server folder you just created. Copy the retc-rpc-server-64.exe from the github download into the same folder.

32 Bit

Put the extracted CUESDK\bin\i386\CUESDK_2015.dll into the retc-server folder you just created. Copy the retc-rpc-server.exe from the github download into the same folder.

Usage

Choose one of the following sections depending on how you installed RETC.

Automatic installation

The service should start right after the installation is done and should continue doing so on every boot. However if thats not the case check your services within windows and make sure you find a RETC service thats set to autostart.

Manual installation

Before you start any games run either retc-rpc-server.exe or retc-rpc-server-64.exe, depending on the system architecture you have, and leave the console window open.

Supported Output SDKs:

Only 1 output SDK is supported per device type (Keyboard, etc.).

Corsair

Only the effect types in the following list are supported.

Keyboards:
    CHROMA_NONE, CHROMA_STATIC, CHROMA_CUSTOM, CHROMA_CUSTOM_KEY
Mice:
    CHROMA_NONE, CHROMA_STATIC, CHROMA_CUSTOM, CHROMA_CUSTOM2
Headsets:
    CHROMA_NONE, CHROMA_STATIC, CHROMA_CUSTOM
Mousepads: (since sdk version 2015)
    CHROMA_NONE, CHROMA_STATIC, CHROMA_CUSTOM 

Razer

The razer sdk implementation is just forwarding to the real and installed sdk if available.

Which applications are supported?

Pretty much every application that uses the Razer Chroma SDK through the supplied dlls is supported. Keep in mind that some (now deprecated) effects might not work correctly in some output sdks.

Troubleshooting:

Corsair Output SDK

Did you start the Corsair Utility Engine ?
Did you enable the SDK in Corsair CUE ?

cue-sdk-settings

[error] [SDKLoader::load] LoadLibraryA(CUESDK[.x64_]2015.dll) failed with code 126 ?

Download the latest VC++2015 x86 and x64 redistributable from here

Razer Output SDK

Make sure Razer Synapse is installed properly and allows SDK access.

General

Take a look at the server.log it can help with your problems.

Service

Restart the RETC service from within services.msc (win+r and type it in). Then select the RTEC service, rightclick it and hit restart.

Found an issue ?

Try to fix it yourself.

This is an opensource project if you think you can fix the issue yourself do so and shoot me a pull request.

Create an Issue on github.

If nothing works for you just report the issue and let the community help you.

retc's People

Contributors

martb avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

retc's Issues

Create an easy to use installer for RETC

In order to make use of RETC more foolproof and accessible, an easy to use installer would help.
I've built an NSIS based installer that also uses NSSM to set RETC up as a Windows system service.

I'm attaching an initial version of the NSI file. It expects the files to be in a specific path structure:
./files
./files/RETC_Installer.nsi
./files/win32
./files/win32/CUESDK_2015.dll
./files/win32/RzChromaSDK.dll
./files/win32/nssm.exe
./files/win32/retc-rpc-server-32.exe
./files/win64
./files/win64/CUESDK.x64_2015.dll
./files/win64/RzChromaSDK64.dll
./files/win64/nssm.exe
./files/win64/retc-rpc-server-64.exe

RETC_Installer.zip

WIP: get rid of NSSM and use custom c++ service implementation to get rid of false positives

It became clear that AV Vendors are lazy when it comes to properly detecting viruses.
If your software is not listed as "known-good" you will have hell of a time to actually get your projects running properly on most pcs.

Im tired of dealing with the constant reports on every release and therefor i will go for a custom service implementation even if we lose flexibility with that.

Persistent effects are not played

if (pEffectId != nullptr) {
return m_effectManager->storeEffect(devType, effectType, pEffectId, size, effectData) ? RZRESULT_SUCCESS : RZRESULT_FAILED;
}
return playbackEffect(devType, effectType, effectData);

If we enter the if block, the effect is stored via EffectManager::storeEffect(), and then we immediately return without playing the effect (note that line 157 begins with return). storeEffect() doesn't seem to implicitly play the effect, neither immediately nor later.

I'm not contributing a fix at this time because I can't tell how the code is intended to work.

Corsair Fan Intergration

So i've got my RAM, Motherboard, Mouse and Keyboard intergrated with Aura and Gskill intergrations in Synapse. I was hoping this would sync my fans up too.

Currently im running QL series fans and having those sync up with my overwatch hero's as well as everything else would be sick

Could you maybe consider this in a future release? :)

Razer Synapse Update

Hey everyone

I have been looking for MartB's donation box since forever. Anyway rect used to work perfectly for a while with OW, but lately I had my Synapse updated and it stopped working. I have been trying to uninstall and re install it retc/synapse/corsair multiple times, and still doesnt work, then I realise that there used to be the 'retc-something' in synapse under the chroma app tab and it is not there anymore, and I beleive because of the new synapse when I install retc does not appear in there as an app anymore. Someone can help me get it back to working pls pls. Looking forward to have this running with Apex as well now.

Also MartB please add a donation box kinda thing, I love this and defintiely would shout you a beer for your effort into this project!

Thanks for the help everyone

Overwatch very dim

The lights on the overwatch profiles are very dim. I loaded up some other games and they are nice and bright but not on over watch. any ideas?

Quake Champions

Hey Guys

I can't get this working with Quake Champions?

Copied all the DLL files into the Quake Champions folder, no result :/

Custom RGB Devices

Hi @MartB, I want to create a customized lighting system in my room to transfer effects from Overwatch using RETC. I have no Corsair devices so based on the Corsair SDK located in the project I created my own, that, for the moment, should only log the ledId and its color. I have tried both installation methods manual and creating the installer but can't see anything in the logs at all. Could it be because I have Razer Chroma already installed in the system?

Server window closing the moment I open it.

Hi,
In the usage section it says to open the server exe and leave it open. However, when I open the exe, it instantly closes again. Overwatch does not display any effects to my keyboard.
I do have a service called RETC running according to task manager.
The server.log file has the following:
[2017-06-14 16:17:10.537] [error] [SDKLoader::load] LoadLibraryA(RzChromaSDK64.dll) failed with code 126
[2017-06-14 16:17:10.559] [error] [LightingSDK::init] RazerPassthrough failed to load.

However, if I try to start the server again, it does not add any error messages.

I'm on x64, AMD Athlon x4 760k, AMD radeon 270 and 8GB ram on Windows 10.
I definitely have the SDK enabled within CUE, and the .dll files are in the overwatch folder.

Do you know what I can do to fix this issue?

Overwatch Anniversary Update

A recent update to Overwatch does not allow RETC to work. I restarted the service and also reinstalled RETC to see if that would help but that does not seem to fix the issue. Would appreciate any support or leads in how to troubleshoot. Thanks!

Refactor Servercode into different classes.

Benefits:

  • better maintainability
  • better code reuse
  • multi sdk support through proper class implementation (logitech ?)
  • specific options for the sdk. (emulated razer keyboard)

This is not laid out yet i will update this issue if i make any progress on it.

DOOM (2016)

Hello, I would like to congratulate the team for the amazing job supporting overweatch effects. I had a Razer Black Widow Chroma and now i own a k95 Platinum and it looks exactly the same.
I was so blown away that I wanted to try out other titles that i knew were chroma compatible.
So, I fired up DOOM and my mouse (Deathadder Chroma) gets the chroma effects, but the k95 stays the same.

I noticed that the .dll file in DOOM is called "CChromaEditorLibrary.dll", when I copy the dlls to the doom folder, my mouse stops displaying the effect and the keyboard stays the same.

Is there anything I can do to enable DOOM support?

Regards,
Pedro Brito

Command Prompt Window Opens and Instantly closes?

Hey so i just got a Corsair K55 and i wanted to this. Ive installed CUE2 Version 2.24.50 and i downloaded the automatic verions of RETC but when i launch the “retc-rpc-server-64.exe” the command promp window pops up and instantly disappears or i will just open and stay blank. (Ive tried opening it before and after launching the game) I even reinstalled CUE2 and RETC Installer. Any help?

Edit : I also tried doing it manually, putting the “RzChromaSDK.dll” and “RzChromaSDK64.dll” in my overwatch folder “C:\Program Files (x86)\Overwatch” and making a folder called retc-server and putting the “CUESDK.x64_2015.dll” and “retc-rpc-server-64.exe” files in there and running it before and after the game and same results. I have windows 10 64bit so there shouldnt be a problem.

PS. I do have SDK Enabled in CUE2

Does RETC work with mice?

I have a DarkCore RGB pro SE mouse and it doesn't seem to work with any program, ICUE is not sensing any sdk either. Any and all help appreciated!

No signal from FL Studio Razer Chroma plugin

Hello,

I managed to install your wrapper on my machine, but it doesn't sync with the Razer plugin for FL Studio.
I placed the wrapper in the plugin folder (the plugin is also a .dll file). When loading the plugin inside FL Studio the wrapper seems to load and connect fine.

I can see in the log (or the terminal window) that the wrappers init fine, but nothing happens after that. I also set the exclusive mode to true and the keyboard lights became black, so it seems to be working but maybe the Razer Chroma plugin for FL Studio is not sending the data as expected. I set the effect to a plain color just in case the effect was not compatible, but no success either.

I think the FL Studio plugin is supposed to detect and highlight the connected devices, so you can select them in the UI and config the effect. Maybe this is the problem: no devices detected. I have no Razer devices so I can't test this in any way.

If anyone could take a look at it would be great. Any extra info I could provide please ask.

Thanks for your time, and congrats for your great work.

The specs where I tested this are:
Windows 10 x64
Keyboard Corsair K95 Platinum v1.07.123
Mousemat Corsair MM800 RGB Polaris v1.02.50
CUE 2.15.83
FL Studio 12.4.2

Some documentantion about the plugin:

From Image-line: https://www.image-line.com/support/FLHelp/html/plugins/Razer%20Chroma.htm
Razer Music: http://support.image-line.com/redirect/FLStudio_RazerMusic

image

Malware Issue

Great fan of the program, really love using it for overwatch but recently my antivirus has been flagging the program as a trojan, more specifically the "nssm.exe" which is being read as a "trojan.win32.agentb.iwfj"

Corsair Effects Engine take the top over RETC

Hello
I just wanted to share a little problem that I had with the soft
I sometimes use CEE to have more effects with the keyboard, but when the soft is launched, CEE take the top over RETC and I don't have the effects in Overwatch
Of course it works properly when it's not launched
Can it be fixed ?
Thank you !

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.