Git Product home page Git Product logo

rgb-fusion-tool's Introduction

RGB Fusion Tool

Installation

You can build RGB Fusion Tool locally (see below), install it as a Chocolatey package (choco install rgbfusiontool), or extract one of the builds listed on GitHub Releases.

Dependencies

Get GLedApi.dll, YccV2.dll, and layout.ini from Gigabyte's RGB Fusion SDK.

Get GvBiosLib.dll, GvDisplay.dll, and GvLedLib.dll from a Gigabyte RGB Fusion Utility (the version of GvLedLib.dll included in SDKs 18.1004.1 to 19.0311.1 have a missing dependency on GvIllumLib.dll)

  • B17.0926.1.zip
    • SHA-256 hash: 02a3ec94bbec022013bd1086a1eedf7ea4177edd3127b4179ccb2aeccad3a256
  • B18.0206.1.zip
    • SHA-256 hash: fd312d17482a866fc9b7902549dc187f120d9d883a9504cccf9e9eef93243d8d
  • B18.1004.1.zip
    • SHA-256 hash: 74aaedc8b5e901f5e5f0296e5c01dac4cb429845d437b1cde42480c0c480f6aa
  • B19.0311.1.zip
    • SHA-256 hash: 55862af1ace8e7990757510fce106f4d6806c85ebb0354f6fc73f223be92cc8c
  • mb_utility_rgb-fusion_B18.0629.1.zip
    • SHA-256 hash: 89e481b5648d989fd73062ef36f3f40b72666da4bd4c9182f4d3e9b7b2b01f83

Unfortunately, GvLedLib.dll was built against a debug version of the VS2012 SDK. It may be possible to rename mfc110u.dll and msvcr110.dll from the official redistributable package to their respective debug (d) versions. Otherwise the solution is to fetch them from Visual Studio 2012 Update 5:

  • mu_visual_studio_2012_update_5_x86_dvd_6967467.iso
    • SHA-256 hash: 405bad3d4249dd94b4fa309bb482ade9ce63d968b59cac9e2d63b0a24577285e

Extract the libraries from mu_visual_studio_2012_update_5_x86_dvd_6967467.iso\packages\vcRuntimeDebug_x86\cab1.cab:

  • F_CENTRAL_mfc110ud_x86, rename to mfc110ud.dll
    • SHA-256 hash: af4cc763c48bd0cc8b8b89d2f81b98d38ce52bfa01ef95a4e7430a19e0fbae3c
  • F_CENTRAL_msvcr110d_x86, rename to msvcr110d.dll
    • SHA-256 hash: bdbb4071a50e47ccf69f3ed35f46bdc97e27636d2c165fdf87426452c30ec58f

Building

Build with Visual Studio 2019 or .NET Core 3.1, then copy the build output to a single directory.

GLedApiDotNet.dll
GvLedLibDotNet.dll
Mono.Options.dll
RGBFusionTool.exe

GLedApi.dll
YccV2.dll
layout.ini

GvBiosLib.dll
GvDisplay.dll
GvLedLib.dll

mfc110ud.dll
msvcr110d.dll

README.md
LICENSE

Running

As of the B19.0311.1 SDK release this tool will need to be run as an Administrator.

RGBFusionTool is a command line tool. For usage instructions run:

RGBFusionTool.exe --help

Examples

Set all zones to red (50% brightness)

RGBFusionTool.exe --static=Red --brightness 50

Color cycle with 2 second transitions in zone 0

RGBFusionTool.exe --zone=0 --colorcycle=2

List zones

RGBFusionTool.exe --list

Set zones 0 through 3 to color cycle at different speeds (with verbose output)

RGBFusionTool.exe --verbose --zone=0 --cycle=32 --zone=1 --cycle=16 --zone=2 --cycle=8 --zone=3 --cycle=4

Troubleshooting

  • Verify you're using a supported motherboard
  • Attempt running the tool in an elevated command prompt
  • Ensure all Gigabyte SDK DLLs are present (see Dependencies)
  • Power down the motherboard completely (such that the power supply is shut off or unplugged) and power isn't coming in through USB. Wait ~20 seconds for the board to discharge. (There's an issue where the controller can get stuck and only a complete power down seems to reset it.)

Legal

Copyright

Copyright © 2018 Tyler Szabo

License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

See LICENSE file for a full copy of GPLv3 text

rgb-fusion-tool's People

Contributors

tylerszabo 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  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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rgb-fusion-tool's Issues

Add color to be set by decimal number

The XML profiles have a ARGB value as a decimal number. It looks like the tool only accepts the strings in color name and hexadecimal value.

I took the xml profile files created by Fusion and put it into a .\profiles folder in the root directory of CLI tool. My plan is to name the xml files the name of the corresponding process. If the powershell script detects the process running, it will set the color of each zone based off the details in the XML. This will make it more user friendly as profiles can be setup by Fusion's UI. I am messing around with formatting, though powershell is completely different in annoying way, compared to any othe language I have used. I might just convert the dec to hex myself in powershell, don't know if this would be easy to add or not for you.

Support B450M DS3H Boards

Bug Report

Thank you for taking the time to experiment with this tool and report an issue.

Summary

I tried to use it first installing it from chocolatey and then directly from github

Repro

Steps and Commands

I tried from the chocolatey install but everything failed

The only one working was C:\RGBFusionTool_v0.9.3> .\RGBFusionTool.exe --help from the unzipped version

Not working:
C:\RGBFusionTool_v0.9.3> .\RGBFusionTool.exe -l
C:\RGBFusionTool_v0.9.3> .\RGBFusionTool.exe -v

Actual behavior

  • Describe the actual behavior. Be as specific as possible
  • Paste error messages / exception details here. Use triple backtick markdown "```" format.
PS C:\RGBFusionTool_v0.9.3> .\RGBFusionTool.exe -l
Usage: RGBFusionTool.exe [OPTION]... [[LEDSETTING] | [ZONE LEDSETTING]...] [
peripherals GVSETTING]
Set RGB Fusion motherboard LEDs

Options:
  -v, --verbose
  -l, --list                 list zones
  -?, -h, --help             show help and exit
      --version              show version information and exit

ZONE:
  -z, --zone=VALUE           set zone
PERIPHERALS:
      --peripherals          set peripherals

LEDSETTING options:

Static color
  -c, --color, --static=COLOR
                             set static color to COLOR
  -b, --brightness=VALUE     (optional) brightness (0-100)

Color cycle
      --cycle, --colorcycle[=SECONDS]
                             cycle colors, changing color every SECONDS
  -b, --brightness, --maxbrightness=VALUE
                             (optional) brightness (0-100)
      --cyclepulse           (optional) pulse between colors
      --minbrightness=VALUE  (optional) minimum brightness (during pulse) (0-
                               100)
      --numcolors=VALUE      (optional) number of colors to cycle (1-7 ->
                               ROYGBIV)

Pulse
      --pulse=COLOR          pulse color COLOR
      --maxbrightness=VALUE  (optional) max brightness (0-100)
      --minbrightness=VALUE  (optional) min brightness (0-100)
      --fadeon=SECONDS       (optional) fade on time (SECONDS)
      --fadeoff=SECONDS      (optional) fade off time (SECONDS)

Flash
      --flash=COLOR          flash color COLOR
      --maxbrightness=VALUE  (optional) max brightness (0-100)
      --minbrightness=VALUE  (optional) min brightness (0-100)
      --time=SECONDS         (optional) SECONDS to flash for
      --interval=SECONDS     (optional) SECONDS in a flash interval
      --flashcycle=SECONDS   (optional) SECONDS in a cycle
      --count=COUNT          (optional) flash COUNT intervals in a cycle

Digital A
      --digital-a            Digital A
      --maxbrightness=VALUE  (optional) max brightness (0-100)
      --minbrightness=VALUE  (optional) min brightness (0-100)
      --speed=SECONDS        (optional) speed (SECONDS)
      --rtl, --right-to-left (optional) right to left
      --ltr, --left-to-right (optional) left to right

Digital B
      --digital-b=COLOR      Digital B COLOR
      --maxbrightness=VALUE  (optional) max brightness (0-100)
      --minbrightness=VALUE  (optional) min brightness (0-100)
      --speed=SECONDS        (optional) speed (SECONDS)

Digital C
      --digital-c=COLOR      Digital C COLOR
      --maxbrightness=VALUE  (optional) max brightness (0-100)
      --minbrightness=VALUE  (optional) min brightness (0-100)
      --interval=SECONDS     (optional) interval (SECONDS)
      --dimspeed=SECONDS     (optional) dimspeed (SECONDS)

Digital D
      --digital-d=COLOR      Digital D COLOR
      --maxbrightness=VALUE  (optional) max brightness (0-100)
      --minbrightness=VALUE  (optional) min brightness (0-100)
      --speed=SECONDS        (optional) speed (SECONDS)

Digital E
      --digital-e=COLOR      Digital E COLOR
      --maxbrightness=VALUE  (optional) max brightness (0-100)
      --minbrightness=VALUE  (optional) min brightness (0-100)
      --cycletime=SECONDS    (optional) cycletime (SECONDS)

Digital F
      --digital-f            Digital F
      --maxbrightness=VALUE  (optional) max brightness (0-100)
      --minbrightness=VALUE  (optional) min brightness (0-100)
      --speed=SECONDS        (optional) speed (SECONDS)

Digital G
      --digital-g=COLOR      Digital G COLOR
      --maxbrightness=VALUE  (optional) max brightness (0-100)
      --minbrightness=VALUE  (optional) min brightness (0-100)
      --interval=SECONDS     (optional) interval (SECONDS)
      --dimspeed=SECONDS     (optional) dimspeed (SECONDS)

Digital H
      --digital-h=COLOR      Digital H COLOR
      --maxbrightness=VALUE  (optional) max brightness (0-100)
      --minbrightness=VALUE  (optional) min brightness (0-100)
      --speed=SECONDS        (optional) speed (SECONDS)

Digital I
      --digital-i=COLOR      Digital I COLOR
      --maxbrightness=VALUE  (optional) max brightness (0-100)
      --minbrightness=VALUE  (optional) min brightness (0-100)
      --speed=SECONDS        (optional) speed (SECONDS)

Off
      --off                  turn off

GVSETTING options:

Off
      --off                  turn off

Static color
  -c, --color, --static=COLOR
                             set static color to COLOR
  -b, --brightness=VALUE     (optional) brightness (0-100)

Error: System.Reflection.TargetInvocationException: Se produjo una excepción en el destino de la invocación. ---> GLedApiDotNet.Raw.GLedAPIv1_0_0Exception: dllexp_GetMaxDivision returned 0xFFFFFFFF
   en GLedApiDotNet.Raw.GLedAPIv1_0_0Wrapper.GetMaxDivision()
   en GLedApiDotNet.RGBFusionMotherboard..ctor(GLedAPIv1_0_0Wrapper wrapperAPI)
   en GLedApiDotNet.RGBFusionMotherboard..ctor()
   --- Fin del seguimiento de la pila de la excepción interna ---
   en System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck)
   en System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
   en System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
   en System.Activator.CreateInstance(Type type, Boolean nonPublic)
   en System.Activator.CreateInstance(Type type)
   en System.Lazy`1.CreateValue()
   en System.Lazy`1.LazyInitValue()
   en System.Lazy`1.get_Value()
   en RGBFusionTool.RGBFusionMain.LazyMotherboard.get_Layout()
   en RGBFusionTool.Application.Main(String[] args)

Expected behavior

List zones

Environment

  • Windows Version: Windows 10 Education 1809 17763.437
  • RGB Fusion Tool Version: tried 0.9.3 and 0.9.2
  • Motherboard model: gigabyte b450m ds3h
  • BIOS version: F30
  • SHA-256 hashes of required files in the directory containing RGBFusionTool.exe:

F62D13CAFD785908D663E0C95FA83497FF1C20F53C7408BCDFDB0102E0721F3E C:\RGBFusionTool_v0.9.3\RGBFusionTool.exe
D39AB2041C3A93ECB38CE446BBBC1C3DA1E3292EC25A301E4ADF3A588EE7A8F3 C:\RGBFusionTool_v0.9.3\GLedApi.dll
702A91752CE59B11078AB8F3428ECD1F871267D8AD45E414173CCF0A69FEE9D4 C:\RGBFusionTool_v0.9.3\layout.ini
64BF4B2F0C84333E239DDA24F82BF8EAD22B7DB905C50FADE262283CA96703AD C:\RGBFusionTool_v0.9.3\ycc.dll

Gathering Script

  • Windows Version: 10.0.17763.0
  • RGB Fusion Tool Version: 0.9.3
  • Motherboard: B450M DS3H-CF
  • BIOS: F30

Hashes:

D39AB2041C3A93ECB38CE446BBBC1C3DA1E3292EC25A301E4ADF3A588EE7A8F3 GLedApi.dll
7015114DAEE108681472B156C6F8EF950EDBFC9B14AE0B2126CA3E1A4CDD9BFC GLedApiDotNet.dll
702A91752CE59B11078AB8F3428ECD1F871267D8AD45E414173CCF0A69FEE9D4 layout.ini
05FC657EB5B5D563DE7807DF6EE07FC8B89DC6F6F08EB76C30E5192429FBBDCF Mono.Options.dll
F62D13CAFD785908D663E0C95FA83497FF1C20F53C7408BCDFDB0102E0721F3E RGBFusionTool.exe
64BF4B2F0C84333E239DDA24F82BF8EAD22B7DB905C50FADE262283CA96703AD ycc.dll

Detailed Description and Additional Context

Add any other information here

Support Z390 boards

Feature request

Support for Z390 boards ? Gigabyte Aorus Z390 Pro Wifi

Summary

Support for Z390 boards ? Gigabyte Aorus Z390 Pro Wifi

Detailed Description and Additional Context

Support for Z390 boards ? Gigabyte Aorus Z390 Pro Wifi

Caveats

- Windows Version: 10.0.17134.0
- RGB Fusion Tool Version: 0.9.3
- Motherboard: Z390 AORUS PRO WIFI-CF
- BIOS: F6

Hashes:

D39AB2041C3A93ECB38CE446BBBC1C3DA1E3292EC25A301E4ADF3A588EE7A8F3 GLedApi.dll
7015114DAEE108681472B156C6F8EF950EDBFC9B14AE0B2126CA3E1A4CDD9BFC GLedApiDotNet.dll
BA2D8D9BB811644A0F6794082EB028F4F610BDAB361825E1197D1D94283F1A31 layout.ini
05FC657EB5B5D563DE7807DF6EE07FC8B89DC6F6F08EB76C30E5192429FBBDCF Mono.Options.dll
F62D13CAFD785908D663E0C95FA83497FF1C20F53C7408BCDFDB0102E0721F3E RGBFusionTool.exe
64BF4B2F0C84333E239DDA24F82BF8EAD22B7DB905C50FADE262283CA96703AD ycc.dll

Add support for switching between two or more colors

Feature request

Summary

Command to shift from one color to another

Detailed Description and Additional Context

It would be nice if it could be added the command to change between two or more colors. Like a value for the firs color and it's time and then the other one and it's time too. If the sdk allows to do so.(f.e: Red 3 secs, then changes to blue for 5 secs and then back to red and so forth) I'm really new to this so I don't know how to make an approach by myself.

BTW, is it possible to make the script run on boot? Because when I restart everything comes back as RGB Fusion had it configured.

How to I upgrade to 0.9.3.7?

I installed 0.9.2 via choco, how do I upgrade it? I want to try the new digital stuff you added and hopefully my Aorus ram works with the new version. Everything else has been FANTASTIC.

dllexp_GetMaxDivision fails on AB350-Gaming 3 motherboard

dllexp_GetMaxDivision returns 0xFFFFFFFF when the tool is run for any setting on the AB350-Gaming 3 motherboard. Full exception is as follows for v0.9.1:

Error: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> GLedApiDotNet.Raw.GLedAPIv1_0_0Exception: dllexp_GetMaxDivision returned 0xFFFFFFFF
   at GLedApiDotNet.Raw.GLedAPIv1_0_0Wrapper.GetMaxDivision() in C:\Users\Michael\Desktop\RGB-Fusion-Tool-master (2)\RGB-Fusion-Tool-master\GLedApiDotNet\Raw\GLedAPIv1_0_0Wrapper.cs:line 54
   at GLedApiDotNet.RGBFusionMotherboard..ctor(GLedAPIv1_0_0Wrapper wrapperAPI) in C:\Users\Michael\Desktop\RGB-Fusion-Tool-master (2)\RGB-Fusion-Tool-master\GLedApiDotNet\RGBFusionMotherboard.cs:line 152
   at GLedApiDotNet.RGBFusionMotherboard..ctor() in C:\Users\Michael\Desktop\RGB-Fusion-Tool-master (2)\RGB-Fusion-Tool-master\GLedApiDotNet\RGBFusionMotherboard.cs:line 163
   --- End of inner exception stack trace ---
   at System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck)
   at System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
   at System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
   at System.Activator.CreateInstance(Type type, Boolean nonPublic)
   at System.Activator.CreateInstance(Type type)
   at System.Lazy`1.CreateValue()
   at System.Lazy`1.LazyInitValue()
   at System.Lazy`1.get_Value()
   at RGBFusionTool.RGBFusionMain.LazyMotherboard.SetAll(LedSetting ledSetting) in C:\Users\Michael\Desktop\RGB-Fusion-Tool-master (2)\RGB-Fusion-Tool-master\RGBFusionTool\RGBFusionMain.cs:line 25
   at RGBFusionTool.Application.Main(String[] args) in C:\Users\Michael\Desktop\RGB-Fusion-Tool-master (2)\RGB-Fusion-Tool-master\RGBFusionTool\Application.cs:line 234

Initially reported in issue #10 (comment).

dllexp_SetLedData returns ERROR_INSUFFICIENT_BUFFER when setting any configuration

Got message yesterday and forgot to save it. It mentioned some buffer got full and would not allow me to change colors of the lights. I even switched to RGB Fusion and I couldn't do anything with that. The only way I got it to work again was to turn the PC off and kill the power. The LEDs stayed lit after shutdown and went off after I killed the main power switch.

ERROR_INSUFFICIENT_BUFFER bug

I downloaded the source code and compiled it in Visual Studio under .NET Framework version 4.6 and I keep getting an error that includes "ERROR_INSUFFICIENT_BUFFER". I have no idea what is causing it since I compiled it with no changes to the source code.

Any ideas?

dllexp_GetMaxDivision fails on GA-AX370-Gaming 5

Bug Report

Error: System.Reflection.TargetInvocationException: Ein Aufrufziel hat einen Ausnahmefehler verursacht. ---> GLedApiDotNet.Raw.GLedAPIv1_0_0Exception: dllexp_GetMaxDivision returned 0xFFFFFFFF
bei GLedApiDotNet.Raw.GLedAPIv1_0_0Wrapper.GetMaxDivision()
bei GLedApiDotNet.RGBFusionMotherboard..ctor(GLedAPIv1_0_0Wrapper wrapperAPI)
bei GLedApiDotNet.RGBFusionMotherboard..ctor()
--- Ende der internen Ausnahmestapelüberwachung ---
bei System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck)
bei System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
bei System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
bei System.Activator.CreateInstance(Type type, Boolean nonPublic)
bei System.Activator.CreateInstance(Type type)
bei System.Lazy1.CreateValue() bei System.Lazy1.LazyInitValue()
bei System.Lazy`1.get_Value()
bei RGBFusionTool.RGBFusionMain.LazyMotherboard.SetAll(LedSetting ledSetting)
bei RGBFusionTool.Application.Main(String[] args)

Rgb fusion not recognizing gpu card as waterblock but as one for fans https://www.youtube.com/watch?v=fSewJcYFjK4&t=7s

Bug Report

Thank you for taking the time to experiment with this tool and report an issue.

Summary

Give a brief summary of the issue.

Repro

Steps and Commands

  • Include the command line input that results in incorrect behavior or sequence of events

Actual behavior

  • Describe the actual behavior. Be as specific as possible
  • Paste error messages / exception details here. Use triple backtick markdown "```" format.
Paste output here

Expected behavior

  • Describe the expected behavior

Environment

Please include the following information:

  • Windows Version
  • RGB Fusion Tool Version
  • Motherboard model
  • BIOS version
  • SHA-256 hashes of required files in the directory containing RGBFusionTool.exe

Gathering Script

Consider running the following PowerShell script to gather environment information. If any is missing please add mention that the script isn't correctly gathering the information so it can be updated. Run this from the directory containing RGBFusionTool.exe.

$winver = [System.Environment]::OSVersion.Version.ToString()
$toolver = (Get-Item .\RGBFusionTool.exe).VersionInfo.FileVersion.ToString()
$hashes = @("GLedApi.dll", "GLedApiDotNet.dll", "layout.ini", "Mono.Options.dll", "RGBFusionTool.exe", "ycc.dll") | % { Get-FileHash -Algorithm SHA256 -Path $_ }
$biosversion = (Get-WmiObject -Class Win32_BIOS).SMBIOSBIOSVersion
$motherboard = (Get-WmiObject -Class Win32_BaseBoard).Product

Write-Host -ForegroundColor White -BackgroundColor Black @"
``````
- Windows Version: $winver
- RGB Fusion Tool Version: $toolver
- Motherboard: $motherboard
- BIOS: $biosversion

Hashes:

$(($hashes | % { "$($_.Hash) $(Split-Path -Leaf $_.Path)"}) -join "`n")
``````
"@
Out-Null | Write-Host

Sample output

- Windows Version: 10.0.17134.0
- RGB Fusion Tool Version: 0.9.1
- Motherboard: Z370 AORUS Gaming 7
- BIOS: F5h

Hashes:

1D0D8D01382CD2617AEA26162C2A3FA2FF845B93A815882CC74B512568DF6BC4 GLedApi.dll
3A4AF1C0C90085286E24794A1DBA4CD373BC508B3B4951E3668E4B967457E3F8 GLedApiDotNet.dll
C99AB9E904CE507F43D27528D51C09BB824E2071EC52571E50F7CED938857002 layout.ini
05FC657EB5B5D563DE7807DF6EE07FC8B89DC6F6F08EB76C30E5192429FBBDCF Mono.Options.dll
06011A2510004D752794F1E89A20E9D12DB81C86B53259A5C8E24BCB8DB080C2 RGBFusionTool.exe
4D38B1D9F614D0E49C22E7273FCB56F109A6ED34632247D1B60C14D72D495569 ycc.dll

Detailed Description and Additional Context

Add any other information here

dllexp_GetMaxDivision fails on AX370-Gaming K7 motherboard

dllexp_GetMaxDivision returns 0xFFFFFFFF when the tool is run for any setting on the AX370-Gaming K7 motherboard. Full exception is as follows for v0.9.1:

Error: System.Reflection.TargetInvocationException: Exception has been thrown by
 the target of an invocation. ---> GLedApiDotNet.Raw.GLedAPIv1_0_0Exception: dll
exp_GetMaxDivision returned 0xFFFFFFFF
   at GLedApiDotNet.Raw.GLedAPIv1_0_0Wrapper.GetMaxDivision()
   at GLedApiDotNet.RGBFusionMotherboard..ctor(GLedAPIv1_0_0Wrapper wrapperAPI)
   at GLedApiDotNet.RGBFusionMotherboard..ctor()
   --- End of inner exception stack trace ---
   at System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOn
ly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Bo
olean& bNeedSecurityCheck)
   at System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipChec
kThis, Boolean fillCache, StackCrawlMark& stackMark)
   at System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean s
kipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
   at System.Activator.CreateInstance(Type type, Boolean nonPublic)
   at System.Activator.CreateInstance(Type type)
   at System.Lazy`1.CreateValue()
   at System.Lazy`1.LazyInitValue()
   at System.Lazy`1.get_Value()
   at RGBFusionTool.RGBFusionMain.LazyMotherboard.get_Layout()
   at RGBFusionTool.Application.Main(String[] args)

Initially reported on a Reddit thread.

Similar to issue #30

Any plans for Ubuntu/Unix support?

A command line interface that leverages the RGB headers for Ubuntu would be really neat.
I think it should be relatively easy to do as well.

If anyone wants to point me towards the direction of where the controllers for the RGB header is in a Unix system, I'll see if I could hack something up really quick.

Btw, I'm on an X570 I Aorus Pro Wifi.

Add argument to allow for loading of Fusion profiles

This might not be all that difficult as RGB profiles for custom profiles are saved into user defined XML files.

This might make it easier in two ways, you don't have to account for a lot of user errors and variations as the profiles are created by users who can easily set each profile up in the Fusion interface. Also the profiles will have the same structure so there should be less logic and error checking between different motherboards.

Where I am going with this is that users create profiles and then we can create a job that runs every minute to check for user specified processes. If that process exists, then it will set set the profile to the one user specified. This would require a small config with process and their associated profiles.

Orange is sort of greenish

Bug Report

Thank you for taking the time to experiment with this tool and report an issue.

Summary

I have the Orange colour set in the BIOS, but it's too bright, so I run RGBFusionTool at startup to reduce the brightness, but --static=Orange also changes the hue to something more greenish.

Repro

Steps and Commands

--static=Orange --brightness=30

Actual behavior

Colour is a sort of greenish hue

Expected behavior

Colour is orange

Environment

Windows 10
Aorus B450 I Pro Wifi

Add support for Aorus video cards

Thank you for RGB-Fusion-Tool
I have it working on an Aorus mother board correctly. It changes all LED's but the Aorus graphics card does not change.

The list function does not seem to show the video card.

rgbfusiontool -l
Zone 0: A_LED
Zone 1: A_LED
Zone 2: A_LED
Zone 3: A_LED
Zone 4: A_LED
Zone 5: NA
Zone 6: NA
Zone 7: D_LED_TYPE_2
Zone 8: D_LED_TYPE_2

dllexp_GetMaxDivision returned 0xFFFFFFFF

After trying multiple rebuilds, versions of the SDK, and Git releases, I keep running into a similar error that I can't quite understand:

Error: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> GLedApiDotNet.Raw.GLedAPIv1_0_0Exception: dllexp_GetMaxDivision returned 0xFFFFFFFF
at GLedApiDotNet.Raw.GLedAPIv1_0_0Wrapper.GetMaxDivision() in C:\Users\AJ\Downloads\RGB-Fusion-Tool-master\RGB-Fusion-Tool-master\GLedApiDotNet\Raw\GLedAPIv1_0_0Wrapper.cs:line 54
at GLedApiDotNet.RGBFusionMotherboard..ctor(GLedAPIv1_0_0Wrapper wrapperAPI) in C:\Users\AJ\Downloads\RGB-Fusion-Tool-master\RGB-Fusion-Tool-master\GLedApiDotNet\RGBFusionMotherboard.cs:line 152
at GLedApiDotNet.RGBFusionMotherboard..ctor() in C:\Users\AJ\Downloads\RGB-Fusion-Tool-master\RGB-Fusion-Tool-master\GLedApiDotNet\RGBFusionMotherboard.cs:line 163
--- End of inner exception stack trace ---
at System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck)
at System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
at System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
at System.Activator.CreateInstance(Type type, Boolean nonPublic)
at System.Activator.CreateInstance(Type type)
at System.Lazy1.CreateValue() at System.Lazy1.LazyInitValue()
at System.Lazy`1.get_Value()
at RGBFusionTool.RGBFusionMain.LazyMotherboard.SetAll(LedSetting ledSetting) in C:\Users\AJ\Downloads\RGB-Fusion-Tool-master\RGB-Fusion-Tool-master\RGBFusionTool\RGBFusionMain.cs:line 25
at RGBFusionTool.Application.Main(String[] args) in C:\Users\AJ\Downloads\RGB-Fusion-Tool-master\RGB-Fusion-Tool-master\RGBFusionTool\Application.cs:line 201

The only command I can execute and get anything other than this error is --help

RAM Not Getting Set

Bug Report

My ram is not getting the colors applied to it with either the zone or peripherals switch.

Sample command:

RGBFusionTool.exe --peripherals=0 --color=blue --verbose

Deep Dive

I instrumented the code with breakpoints. Here are some deeper insights into what is happening, however I'm reaching the end of my C# fiddling skills here.

First Issue: on this line settings is null, so nothing ever happens:

https://github.com/tylerszabo/RGB-Fusion-Tool/blob/master/GvLedLibDotNet/RGBFusionPeripherals.cs#L91

Second issue: after removing that line, the save has no effect.

Are there any docs for this GvLedLib.dll? I noticed in the DLL there is a function for GvLedSet. Is it possible this is similar to the apply function for the motherboard?

image

Environment

  • Windows Version: 10.0.17134.0
  • RGB Fusion Tool Version: 0.9.3
  • Motherboard: Z370 AORUS Gaming 7
  • BIOS: F5h

Hashes:

D39AB2041C3A93ECB38CE446BBBC1C3DA1E3292EC25A301E4ADF3A588EE7A8F3 GLedApi.dll
6F75B3B77AFB11B9B4B7C6FD3C0AE8CA9C1219FE7FEC1D2C92BB8C5D7CDCC40A GLedApiDotNet.dll
702A91752CE59B11078AB8F3428ECD1F871267D8AD45E414173CCF0A69FEE9D4 layout.ini
05FC657EB5B5D563DE7807DF6EE07FC8B89DC6F6F08EB76C30E5192429FBBDCF Mono.Options.dll
261A600A749097F6CB7F948312A25540FD761D0B9039133CA32D914F2F694D4D RGBFusionTool.exe
64BF4B2F0C84333E239DDA24F82BF8EAD22B7DB905C50FADE262283CA96703AD ycc.dll

Error: System.Reflection.TargetInvocationException

Repro

Steps and Commands

.\RGBFusionTool.exe --list
or any other arguments

Actual behavior

Do not work

Error: System.Reflection.TargetInvocationException: Адресат вызова создал исключение. ---> GLedApiDotNet.Raw.GLedAPIv1_0_0Exception: dllexp_GetMaxDivision returned 0xFFFFFFFF
   в GLedApiDotNet.Raw.GLedAPIv1_0_0Wrapper.GetMaxDivision()
   в GLedApiDotNet.RGBFusionMotherboard..ctor(GLedAPIv1_0_0Wrapper wrapperAPI)
   в GLedApiDotNet.RGBFusionMotherboard..ctor()
   --- Конец трассировки внутреннего стека исключений ---
   в System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck)
   в System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
   в System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
   в System.Activator.CreateInstance(Type type, Boolean nonPublic)
   в System.Activator.CreateInstance(Type type)
   в System.Lazy`1.CreateValue()
   в System.Lazy`1.LazyInitValue()
   в System.Lazy`1.get_Value()
   в RGBFusionTool.RGBFusionMain.LazyMotherboard.get_Layout()
   в RGBFusionTool.Application.Main(String[] args)

Environment

  • Windows Version: 10.0.17763.0
  • RGB Fusion Tool Version: 0.9.3
  • Motherboard: Z390 GAMING SLI-CF
  • BIOS: F7b

Hashes:

D39AB2041C3A93ECB38CE446BBBC1C3DA1E3292EC25A301E4ADF3A588EE7A8F3 GLedApi.dll
7015114DAEE108681472B156C6F8EF950EDBFC9B14AE0B2126CA3E1A4CDD9BFC GLedApiDotNet.dll
702A91752CE59B11078AB8F3428ECD1F871267D8AD45E414173CCF0A69FEE9D4 layout.ini
05FC657EB5B5D563DE7807DF6EE07FC8B89DC6F6F08EB76C30E5192429FBBDCF Mono.Options.dll
F62D13CAFD785908D663E0C95FA83497FF1C20F53C7408BCDFDB0102E0721F3E RGBFusionTool.exe
64BF4B2F0C84333E239DDA24F82BF8EAD22B7DB905C50FADE262283CA96703AD ycc.dll

Linux / through Wine

Any possibility / plans on getting this to run through Linux or Wine?

The problem would most likely be trying to reverse engineer the SDK...

dllexp_GetMaxDivision fails on GA-Z270X-Gaming K7

Summary

I'm trying to use RGB Fusion Tool to change the colors on my GA-Z270X-Gaming K7 MoBo. When I try to execute any commands, I receive an error.

Repro

Steps and Commands

All commands I've tried have failed (except --help):
RGBFusionTool.exe --list

Actual behavior

Nothing happens with the MoBo, and I receive an error, similar to other logged issues.

Error: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> GLedApiDotNet.Raw.GLedAPIv1_0_0Exception: dllexp_GetMaxDivision returned 0xFFFFFFFF
   at GLedApiDotNet.Raw.GLedAPIv1_0_0Wrapper.GetMaxDivision()
   at GLedApiDotNet.RGBFusionMotherboard..ctor(GLedAPIv1_0_0Wrapper wrapperAPI)
   at GLedApiDotNet.RGBFusionMotherboard..ctor()
   --- End of inner exception stack trace ---
   at System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck)
   at System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
   at System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
   at System.Activator.CreateInstance(Type type, Boolean nonPublic)
   at System.Activator.CreateInstance(Type type)
   at System.Lazy`1.CreateValue()
   at System.Lazy`1.LazyInitValue()
   at System.Lazy`1.get_Value()
   at RGBFusionTool.RGBFusionMain.LazyMotherboard.get_Layout()
   at RGBFusionTool.Application.Main(String[] args)

Expected behavior

In this case, I would have expected a list of zones.

Environment

Please include the following information:

  • Windows 10
  • RGB Fusion Tool Version 0.9.2
  • GA-Z270X-Gaming K7
  • F8
  • SHA-256 hashes of required files in the directory containing RGBFusionTool.exe

Gathering Script

Consider running the following PowerShell script to gather environment information. If any is missing please add mention that the script isn't correctly gathering the information so it can be updated. Run this from the directory containing RGBFusionTool.exe.

$winver = [System.Environment]::OSVersion.Version.ToString()
$toolver = (Get-Item .\RGBFusionTool.exe).VersionInfo.FileVersion.ToString()
$hashes = @("GLedApi.dll", "GLedApiDotNet.dll", "layout.ini", "Mono.Options.dll", "RGBFusionTool.exe", "ycc.dll") | % { Get-FileHash -Algorithm SHA256 -Path $_ }
$biosversion = (Get-WmiObject -Class Win32_BIOS).SMBIOSBIOSVersion
$motherboard = (Get-WmiObject -Class Win32_BaseBoard).Product

Write-Host -ForegroundColor White -BackgroundColor Black @"
``````
- Windows Version: $winver
- RGB Fusion Tool Version: $toolver
- Motherboard: $motherboard
- BIOS: $biosversion

Hashes:

$(($hashes | % { "$($_.Hash) $(Split-Path -Leaf $_.Path)"}) -join "`n")
``````
"@
Out-Null | Write-Host

Detailed Description and Additional Context

I entered a GIGABYTE support ticket to see if this MoBo is compatible with the SDK. Perhaps it is not, per a different issue?

Need Arguements for Pulse/flash

In the UI these are the only settings:
Pulse: speed and color
Flash: speed, color, and brightness

When you enter a command there is no list of required arguments in the output:

PS C:\Users\israel\Desktop\RGBFusionTool-PS> .\RGBFusionTool.exe -v --pulse=Red --speed=7
Zone 0: A_LED
Zone 1: A_LED
Zone 2: A_LED
Zone 3: A_LED
Zone 4: A_LED
Zone 5: NA
Zone 6: NA
Zone 7: D_LED_TYPE_2
Zone 8: D_LED_TYPE_2
.\RGBFusionTool.exe : Usage: RGBFusionTool.exe [OPTION]... [[LEDSETTING] | [ZONE LEDSETTING]...]
At line:1 char:1

  • .\RGBFusionTool.exe -v --pulse=Red --speed=7
  •   + CategoryInfo          : NotSpecified: (Usage: RGBFusio...LEDSETTING]...]:String) [], RemoteException
      + FullyQualifiedErrorId : NativeCommandError
    
    

Set RGB Fusion motherboard LEDs
Options:

v, --verbose
-l
,
--list list zones

?, -h,

help show help and exit
ZONE:

z, --zone
=VALUE
set zone
LEDSETTING options:
Static color
-c,
--color, --static=VALUE
set static color
-b
,
--brightness=VALUE
(optional) brightness (0-100)
Color cycle
--cycle, --colorcycle[=SECONDS
]
cycle colors, changing color every SECONDS
-b,

brightness=VALUE (optional) brightness (0-100)
Error: System.InvalidOperationException: No LED mode specified
at RGBFusionTool.Application.Main(String[] args)

Error: System.DllNotFoundException: Unable to load DLL 'GvLedLib.dll'

MB
Z370 Gaming 7

Note: Recently uninstalled App Center & RGB Fusion

CMD
RGBFusionTool.exe --list

Error

C:\Users\Denocyte\Downloads\RGBFusionTool_v0.9.3>RGBFusionTool.exe --list
Zone 0: A_LED
Zone 1: A_LED
Zone 2: A_LED
Zone 3: A_LED
Zone 4: A_LED
Zone 5: NA
Zone 6: NA
Zone 7: D_LED_TYPE_2
Zone 8: D_LED_TYPE_2
Usage: RGBFusionTool.exe [OPTION]... [[LEDSETTING] | [ZONE LEDSETTING]...] [
peripherals GVSETTING]
Set RGB Fusion motherboard LEDs

Options:
  -v, --verbose
.
.
.

Error: System.DllNotFoundException: Unable to load DLL 'GvLedLib.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
   at GvLedLibDotNet.Raw.GvLedLibv1_0Impl.dllexp_GvLedInitial(Int32& iDeviceCount, Int32[] iDeviceIdArray)
   at GvLedLibDotNet.Raw.GvLedLibv1_0Impl.GvLedInitial(Int32& iDeviceCount, Int32[] iDeviceIdArray)
   at GvLedLibDotNet.Raw.GvLedLibv1_0Wrapper.Initialize()
   at GvLedLibDotNet.RGBFusionPeripherals.<.ctor>b__3_0()
   at System.Lazy`1.CreateValue()
   at System.Lazy`1.LazyInitValue()
   at System.Lazy`1.get_Value()
   at GvLedLibDotNet.RGBFusionPeripherals.get_Devices()
   at RGBFusionTool.Application.Main(String[] args)

Files
image

dllexp_GetMaxDivision fails on Z270X-Gaming K5

Bug Report

Summary

Downloaded the latest archive and latest sdk from gigabyte. Extracted the DLLs and .INI file to the programs folder. Tried to run, but with an error.

Repro

Steps and Commands

  • Open CMD
  • CD into Program Directory
  • RGBFusionTool.exe --list or any cmdline will output that error

Actual behavior

  • Program does nothing, just outputs the error message
Error: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> GLedApiDotNet.Raw.GLedAPIv1_0_0Exception: dllexp_GetMaxDivision returned 0xFFFFFFFF
   at GLedApiDotNet.Raw.GLedAPIv1_0_0Wrapper.GetMaxDivision()
   at GLedApiDotNet.RGBFusionMotherboard..ctor(GLedAPIv1_0_0Wrapper wrapperAPI)
   at GLedApiDotNet.RGBFusionMotherboard..ctor()
   --- End of inner exception stack trace ---
   at System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck)
   at System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
   at System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
   at System.Activator.CreateInstance(Type type, Boolean nonPublic)
   at System.Activator.CreateInstance(Type type)
   at System.Lazy`1.CreateValue()
   at System.Lazy`1.LazyInitValue()
   at System.Lazy`1.get_Value()
   at RGBFusionTool.RGBFusionMain.LazyMotherboard.get_Layout()
   at RGBFusionTool.Application.Main(String[] args)

Environment

- Windows Version: 10.0.17134.0
- RGB Fusion Tool Version: 0.9.2
- Motherboard: Z270X-Gaming K5
- BIOS: F9c

Hashes:

D39AB2041C3A93ECB38CE446BBBC1C3DA1E3292EC25A301E4ADF3A588EE7A8F3 GLedApi.dll
A32CD85D5087290CD259902E7BF5F7559EFD4C2FD98A50B6BFFD9B98ACF86C27 GLedApiDotNet.dll
702A91752CE59B11078AB8F3428ECD1F871267D8AD45E414173CCF0A69FEE9D4 layout.ini
05FC657EB5B5D563DE7807DF6EE07FC8B89DC6F6F08EB76C30E5192429FBBDCF Mono.Options.dll
39CE6E142BBDDDE1FBA2BDFD5CC4030014E979E82B843D8762E2912E1207E2FB RGBFusionTool.exe
64BF4B2F0C84333E239DDA24F82BF8EAD22B7DB905C50FADE262283CA96703AD ycc.dll

dllexp_GetMaxDivision returned 0xFFFFFFFF on B450 DS3H

Summary

I use the motherboard RGB head to control additional case fans (12v+green for example), this is works fine for original RGB fusion 2.0, but it was good to use a command line utility instead of a heavyweight program from a Gigabyte.
I tried to use RGBFusionTool.exe, but all commands end with an error.
I also noticed that there is no my board B450M DS3H (RGB Fusion enabled) in the configuration file layout.ini.

Steps and Commands

RGBFusionTool.exe -l
...
Error: System.Reflection.TargetInvocationException: Адресат вызова создал исключение. ---> GLedApiDotNet.Raw.GLedAPIv1_0_0Exception: dllexp_GetMaxDivision returned 0xFFFFFFFF
в GLedApiDotNet.Raw.GLedAPIv1_0_0Wrapper.GetMaxDivision()
в GLedApiDotNet.RGBFusionMotherboard..ctor(GLedAPIv1_0_0Wrapper wrapperAPI)
в GLedApiDotNet.RGBFusionMotherboard..ctor()
--- Конец трассировки внутреннего стека исключений ---
в System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck)
в System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
в System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
в System.Activator.CreateInstance(Type type, Boolean nonPublic)
в System.Activator.CreateInstance(Type type)
в System.Lazy1.CreateValue() в System.Lazy1.LazyInitValue()
в System.Lazy`1.get_Value()
в RGBFusionTool.RGBFusionMain.LazyMotherboard.get_Layout()
в RGBFusionTool.Application.Main(String[] args)

Environment

  • Windows 10.0.17763.0
  • RGB Fusion Tool 0.9.3 (SDK DLLs B18.1004.1)
  • Motherboard model B450M DS3H-CF
  • BIOS version F4

D39AB2041C3A93ECB38CE446BBBC1C3DA1E3292EC25A301E4ADF3A588EE7A8F3 GLedApi.dll
7015114DAEE108681472B156C6F8EF950EDBFC9B14AE0B2126CA3E1A4CDD9BFC GLedApiDotNet.dll
702A91752CE59B11078AB8F3428ECD1F871267D8AD45E414173CCF0A69FEE9D4 layout.ini
05FC657EB5B5D563DE7807DF6EE07FC8B89DC6F6F08EB76C30E5192429FBBDCF Mono.Options.dll
F62D13CAFD785908D663E0C95FA83497FF1C20F53C7408BCDFDB0102E0721F3E RGBFusionTool.exe
64BF4B2F0C84333E239DDA24F82BF8EAD22B7DB905C50FADE262283CA96703AD ycc.dll

any luck using this with Aero 15x?

Looking to give CLI based RGB instructions to various components. No idea if it meets the Motherboard or Keyboard criteria as its not listed under ready or core.

Add support for breathing between colors

Feature request

Summary

Add --breathe mode to smoothly transition between 2 (or possibly more) colors.

Caveats

  • In testing the "transition" mode doesn't seem to honor the initial color set which limits the ability to have the controller handle moving between the colors.

  • Gigabyte's SDK doesn't directly support such a mode so implementation will require running a daemon to actively transition.

Some zones don't switch color

I am using the Z370 Gaming 7 motherboard and it looks like one or two of the zones doesn't switch colors when I set the color to red/blue/green, etc.

"Open driver handle failure" crash on Z370 Aorus Gaming 5

The following popup is shown: RGBFusionTool.exe : Open driver handle failure!! in MapMem_Phys_to_Linear

And the tool outputs the following exception:

Error: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
   at GLedApiDotNet.Raw.GLedAPIv1_0_0Impl.dllexp_InitAPI()
   at GLedApiDotNet.Raw.GLedAPIv1_0_0Impl.InitAPI()
   at GLedApiDotNet.Raw.GLedAPIv1_0_0Wrapper.Initialize()
   at GLedApiDotNet.RGBFusionMotherboard..ctor(GLedAPIv1_0_0Wrapper wrapperAPI)
   at GLedApiDotNet.RGBFusionMotherboard..ctor()
   --- End of inner exception stack trace ---
   at System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck)
   at System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
   at System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
   at System.Activator.CreateInstance(Type type, Boolean nonPublic)
   at System.Activator.CreateInstance(Type type)
   at System.Lazy`1.CreateValue()
   at System.Lazy`1.LazyInitValue()
   at System.Lazy`1.get_Value()
   at RGBFusionTool.RGBFusionMain.LazyMotherboard.SetAll(LedSetting ledSetting)
   at RGBFusionTool.Application.Main(String[] args)

(via Reddit)

Support API version 1.1.0

Error when newer (1.1.0) API version is used.

Error: Exception has been thrown by the target of an invocation.

Unhandled Exception: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> GLedApiDotNet.GLedAPIException: Unknown API version 1.1.0. Expected 1.0.0
   at GLedApiDotNet.RGBFusionMotherboard..ctor(GLedAPIv1_0_0Wrapper wrapperAPI)
   at GLedApiDotNet.RGBFusionMotherboard..ctor()
   --- End of inner exception stack trace ---
   at System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck)
   at System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
   at System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark)
   at System.Activator.CreateInstance(Type type, Boolean nonPublic)
   at System.Activator.CreateInstance(Type type)
   at System.Lazy`1.CreateValue()
   at System.Lazy`1.LazyInitValue()
   at System.Lazy`1.get_Value()
   at RGBFusionTool.RGBFusionMain.LazyMotherboard.SetAll(LedSetting ledSetting)
   at RGBFusionTool.Application.Main(String[] args)
   at RGBFusionTool.RGBFusionMain.Main(String[] args)

(via Reddit)

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.