Make sure you are not running this program and the official one. They will both stop to work.

To install you run "RiingPlus.Service.exe", it will ask you for administrator rights (needed for temperature reading), and then follow the prompts. If installing as custom user enter username as ".\<username>" and your windows password. To uninstall run it again.

Then you run "RiingPlus.Gui.exe" to control the service. If you see a "waiting for service" dialog, the service probably failed to start. You can check why in windows event log.

By default your current settings will be left untouched, you have to create a new profile, select fans that will be in that profile and click save. Each fan can only be in one profile of each type. The types are:

Normal

Boot - when saved will apply fan speed/rgb settings at pc boot, after saving will revert to Normal profile for each fan if present

Shutdown - will be applied when service/pc is shutting down

There are no error prompts and the app will just revert to correct/previous settings when saving if something is configured incorrectly.

By default the temperature update is every 250ms, and fan speed update is every 2500ms. This can be changed in "config.json", not available in gui yet.

Ofc I give you no warranty that it will work, or that your pc wont catch on fire. You can read posts from people that have it working. If something wont work, ill try to update but dont expect 24/7 support.

How to update (service):

Stop "Riing Plus Controller" service via "services.msc" or "net stop"

Drop new version on top of the old one replacing all files

Start the service

How to update (GUI):

Stop gui if running

Drop new version on top of the old one replacing all files

Changelog:

v1.7:

Removed empty port detection as it causes too many issues

v1.6:

Fix race condition when trying to set the fan to 0% speed in PWM mode

Fix fan list sorting

v1.5:

Add support for mixing many temperature sensors (min/max/avg)

This change means you will need to set temperature sensors again for each profile and re-save them. Or you could, while the service is off, edit each line in config.json like this:

Share this post

Link to post

Share on other sites

Interesting concept, making your own software. I'm a programmer myself and have thought about looking into trying to either add on to the current software or make my own. But I honestly don't have the free time for it.

Share this post

Link to post

Share on other sites

Interesting concept, making your own software. I'm a programmer myself and have thought about looking into trying to either add on to the current software or make my own. But I honestly don't have the free time for it.

I'll be interested to see what you come up with.

This is what I have so far: https://i.imgur.com/byIOMpA.png

Looks slightly like "programmer art" but it works well. Some more important features:

* Split design (service + gui). Small service runs in background and controls the fans so you dont have to have the gui running 24/7 in the tray. Theoretically this allows you to remote control the fans from another pc.

Share this post

Link to post

Share on other sites

Looks like some great progress. Let me know if you want a test user and some feedback.

I have not done much since last post so I guess Ill just post it. Maybe it will work for someone, I have had 0 problems with it so far.

Dont know how long it will stay here as it will be probably deleted by TT.

Make sure you are not running my program and the official one. They will both stop to work.

To install you run "RiingPlus.Service.exe", it will ask you for administrator rights (needed for temperature reading), and follow the prompts. The service will install for the current user and will be set to autostart, but you can change that in windows service manager. To uninstall run it again.

Then you run "RiingPlus.Gui.exe" to control the service. If you see a "waiting for service" dialog, the service probably failed to start. You can check why in windows event log. By default your current settings will be left untouched, you have to create a new profile, select fans that will be in that profile and click save. Each fan can only be in one profile of each type. The types are:

Normal

Boot - when saved will apply fan speed/rgb settings at pc boot, after saving will revert to Normal profile for each fan if present

Shutdown - will be applied when service/pc is shutting down

There are no error prompts and the app will just revert to correct/previous settings when saving if something is configured incorrectly.

By default the temperature update is every 250ms, and fan speed update is every 2500ms. This can be changed in "config.json", not available in gui yet.

Ofc I give you no warranty that it will work, or that your pc wont catch on fire. I tested only with one controller with riing plus fans but it *should* work with multiple controllers and fans. If something wont work, ill try to update but dont expect 24/7 support.

Share this post

Link to post

Share on other sites

I tried your program but wasn't able to install the service. It says "The account name is invalid or does not exist, or the password is invalid for the account name specified" but I'm 100% sure my credentials are correct. Is there a way to install this service manually ? Thanks =)

Share this post

Link to post

Share on other sites

I tried your program but wasn't able to install the service. It says "The account name is invalid or does not exist, or the password is invalid for the account name specified" but I'm 100% sure my credentials are correct. Is there a way to install this service manually ? Thanks =)

Hmm, that should not happen.

You can try to enter the account name in this format: ".\account" or "PCNAME\account". So for ex. ".\teszty" or "TESZTY-PC\teszty"

You could create the service manually with cmd. Make sure you run cmd as administrator first, then:

It will create the service to run as LocalSystem, you can change the user in the services management. If leave it to run as LocalSystem then you need to check the "Allow service to interact with desktop" checkbox.

Share this post

Link to post

Share on other sites

I finally registered here to answer.
I tried it myself the last two days , but could not get it working.
I followed your manual step-by-step but when i start running the Riing.gui, it tells me "waiting for service".
I reinstalled again and again , clearing *.dll caches, disabled the original software and restarted. everything.

it wont work for me, there must be something i'm missing.

may u help me out?

p.s. : does your software let me set different rpm for each fan, no matter what controller they're plugged to?

Yes, you can set either a constant speed from 0 to 100% or setup a custom pwm curve. This is per profile but you can assign just one fan to each profile and it will allow you to control each fan separately. It should also work with multiple controllers but I did not test it since I only have one.

Share this post

Link to post

Share on other sites

separate fan rpm is essential for me since i don't need some fans run the same speed like others all the time, the original software just copys settings from contr. 1 on contr. 2 what is kinda annyoing

Share this post

Link to post

Share on other sites

I finally got around to trying the software. I like the fan curve implementation, and I really like that one can select which devices go to which profile. I always thought it would be neat to assign different speeds/colors to different groups of fans and lights. Both of these things are improvements I would like to see Thermaltake implement. Especially the fan curve. A fan curve seems like a basic requirement for any fan controlling software. While the software has a very primitive layout, it is very functional and to the point.

It would be nice to be able to add and remove fan curve points. I ran into an issue when running the fans on "Flow" mode. The five fans on my first controller fall behind the fan and LED strips on my second controller. Also, not sure how the controllers get ordered in the software, but my second controller appears above my first one in the list. Would be good to make them appear in order, if possible. Finally, I am able to select ports that have nothing plugged in. I do know that thermaltake's software only flags an issue with empty ports until the user turns them off, so it just may be a limitation of the controllers to not be able to tell the software to disable the ports when empty.

Great project so far. I'll be excited to see what you do next with it.

Share on other sites

You can add new points by double clicking anywhere on grid, and remove them by double clicking on the point.

edit: Also you can double click on the led color to load it to the color selectors.

12 hours ago, kewlmunky said:

I ran into an issue when running the fans on "Flow" mode. The five fans on my first controller fall behind the fan and LED strips on my second controller.

Hmm, I dont think I can do anything about that. The software does not control the modes, it just sends some bytes to the controller telling it to enable specific mode. I bet this is a problem in the official TT software too. If there is no build in sync between controllers even a slight difference in controller's on board clock will eventually cause the effects to be out of sync.

12 hours ago, kewlmunky said:

Also, not sure how the controllers get ordered in the software, but my second controller appears above my first one in the list. Would be good to make them appear in order, if﻿ possible.﻿

Ill look into that.

12 hours ago, kewlmunky said:

Finally, I am able to select ports that have nothing plugged in. I do know that thermaltake's software only flags an issue with empty ports until the user turns them off, so it just may ﻿be a limitation of the controllers to not be able to tell the software to disable the ports when empty.

Thats not good, I actually never tested an open port as I have all 5 used. I figured pooling data for an open port will error out, that would cause it not being visible in software. But maybe instead it returns some specific data without error. Ill try to fix this.

Share this post

Link to post

Share on other sites

v1.1 should fix all of your problems. I've also added per profile temperature selection, so you can have one profile that uses your gpu temperature and another profile that uses cpu temperature. You should be able to just drag and drop over the last version.

Share this post

Link to post

Share on other sites

Can't believe I didn't think to double click on the fan curve grid. I'll have to play with it again.

The issue I saw with flow mode I had also experienced with previous version of Thermaltake's software as well, but I have't seen it in a few revisions so maybe their software puts in a delay to keep them in check.

Share this post

Link to post

Share on other sites

edit: I think they are just setting each led manually from software instead of using the in controller built in flow mode.

I was planning on adding custom mode support but it would be a big change in project structure. Because of the split design the service would need to send all info about custom modes to the gui, the configuration forms would be the worst. But you would be able to write mode "plugins" in c#, which would allow you to make anything you want. Like color based on cpu/gpu temp, time of day, sound or maybe flash the fans when you get discord notification.

Link to post

Share on other sites

edit: I think they are just setting each led manually from software instead of using the in controller built in flow mode.

I was planning on adding custom mode support but it would be a big change in project structure. Because of the split design the service would need to send all info about custom modes to the gui, the configuration forms would be the worst. But you would be able to write mode "plugins" in c#, which would allow you to make anything you want. Like color based on cpu/gpu temp, time of day, sound or maybe flash the fans when you get discord notification.

I've had thoughts about how to allow users to make custom speeds and effects. I know in another thread, Thermalmike stated that they speeds were all hard coded. I'm guessing they manually design the time delay between transitions and what a transition looks like.

Being my background in programming is mostly OOP with Java and C++, I've wondered if one could simply have each lighting mode be an object and then each of those have their own function titled "transition". This should allow some sort of custom speed adjuster that would then call the mode's "transition" at the rate the user sets. This structure could also allow users to define their own transitions/lighting modes as well.