Comments (35)
from rgb-fusion-tool.
Is this related to #8 ?
from rgb-fusion-tool.
No it looks like I might be introducing an issue when I have RGB Fusion running at the same time and I switch the lights off from Fusion. I am working to see if I can more easily reproduce the issue on a more consistent basis:
C:\Users\israel\Desktop\rgb fusion>RGBFusionTool.exe -v --color white
Static color: Color [White]
Brightness: 100
Usage: RGBFusionTool.exe [OPTION]...
Set RGB Fusion motherboard LEDs
Options:
-v, --verbose
-c, --color, --static=VALUE
set static color
--cycle, --colorcycle[=SECONDS]
cycle colors, changing color every SECONDS
-b, --brightness=VALUE brightness (0-100)
-l, --list list zones
-?, -h, --help show help and exit
Error: GLedApiDotNet.Raw.GLedAPIv1_0_0Exception: dllexp_SetLedData returned ERROR_INSUFFICIENT_BUFFER
at GLedApiDotNet.Raw.GLedAPIv1_0_0Wrapper.CheckReturn(String apiFunction, UInt32 result)
at GLedApiDotNet.Raw.GLedAPIv1_0_0Wrapper.SetLedData(IEnumerable`1 settings)
at GLedApiDotNet.RGBFusionMotherboard.Set(Int32[] divisions)
at GLedApiDotNet.RGBFusionMotherboard.SetAll(LedSetting ledSetting)
at RGBFusionTool.RGBFusionMain.LazyMotherboard.SetAll(LedSetting ledSetting)
at RGBFusionTool.Application.Main(String[] args)
This might be completely avoided if I or other users don't have RGB Fusion open or using both at the same time.
from rgb-fusion-tool.
Just for testing, I powered off my system and pulled the power. I then launched windows and started using the tool w/o even launching RGB Fusion. Just to make sure there was nothing in the buffer.
When repeated commands in quick succession:
RGBFusionTool.exe -v --color blue
Static color: Color [Blue]
Brightness: 100
RGBFusionTool.exe -v --color blue
Static color: Color [Blue]
Brightness: 100
RGBFusionTool.exe -v --color blue
Static color: Color [Blue]
Brightness: 100
RGBFusionTool.exe -v --color blue
Static color: Color [Blue]
Brightness: 100
Usage: RGBFusionTool.exe [OPTION]...
Set RGB Fusion motherboard LEDs
Options:
-v, --verbose
-c, --color, --static=VALUE
set static color
--cycle, --colorcycle[=SECONDS]
cycle colors, changing color every SECONDS
-b, --brightness=VALUE brightness (0-100)
-l, --list list zones
-?, -h, --help show help and exit
Error: GLedApiDotNet.Raw.GLedAPIv1_0_0Exception: dllexp_SetLedData returned ERROR_INSUFFICIENT_BUFFER
at GLedApiDotNet.Raw.GLedAPIv1_0_0Wrapper.CheckReturn(String apiFunction, UInt32 result)
at GLedApiDotNet.Raw.GLedAPIv1_0_0Wrapper.SetLedData(IEnumerable`1 settings)
at GLedApiDotNet.RGBFusionMotherboard.Set(Int32[] divisions)
at GLedApiDotNet.RGBFusionMotherboard.SetAll(LedSetting ledSetting)
at RGBFusionTool.RGBFusionMain.LazyMotherboard.SetAll(LedSetting ledSetting)
at RGBFusionTool.Application.Main(String[] args)
In both of these two cases tonight, I was able to continue using after getting the error message. This unlike last night where the lights were unresponsive, even after reboot. To fix that, I had to pull the power.
from rgb-fusion-tool.
I suspect that having this tool run while anything else is trying to set LEDs will not work well. Gigabyte's tools go to some effort to kill other processes that might be trying to set lights. I've created issue #11 to track work on detecting and warning of conflicting processes.
from rgb-fusion-tool.
I did try on a fresh boot w/o starting the Fusion UI, though on startup there has to be some processes associated with Fusion as the lights come on, when I login to Windows. I was able to generate this one entering a lot of commands in quick succession. Do you have Fusion installed and/or running in the background?
from rgb-fusion-tool.
Whenever you run one of those tools Gigabyte puts some daemons in startup. I put a list of processes I've identified in issue #11.
from rgb-fusion-tool.
I keep upping the sleep time and I don't know if it really has any effect on throwing this error. It isn't one zone in particular. Granted once I get setting multi zone, I am hoping it will help, though it might also turn into an all or nothing.
from rgb-fusion-tool.
Good news the tool can run w/o RGB Fusion installed, bad news it didn't fix the issue. I did different tests and I can not find anything in common that would cause the problem. I wrote a SPAM script to help test:
$path = $PSScriptRoot + "\RGBFusionTool.exe"
$x=0
while ($true) {
if ($x -eq 0) {
$rgb="red"
} elseif ($x -eq 1) {
$rgb="green"
} elseif ($x -eq 2) {
$rgb="blue"
$x=-1
}
& $path -v -c $rgb
write-host $x
sleep 2
$x+=1
}
I will up the time a lot to like 5 seconds on sleep to see if it is just a red herring or not.
from rgb-fusion-tool.
I tried doing a complete shutdown of my system including flipping the switch on the back of my power supply and I still can't get the program to work when compiled from source. The program does work when using the provided binary but that really shouldn't matter. Right? Is it something I'm doing wrong in the compile phase?
from rgb-fusion-tool.
TBH I never compiled from source and just used the binaries. Just wondering what Motherboard you are using?
from rgb-fusion-tool.
@trparky have you tried from an elevated prompt? I still don't know under what conditions you need to be elevated to get this to work (I don't need it, but others have had issues when running from a non-elevated prompt).
from rgb-fusion-tool.
Tried in an elevated command prompt, didn't work either. Gigabyte Z370 AORUS Ultra Gaming.
Error: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> GLedApiDotNet.Raw.GLedAPIv1_0_0Exception: dllexp_InitAPI returned ERROR_INSUFFICIENT_BUFFER
from rgb-fusion-tool.
Hmm, the one you compile should work just as well as the provided binary. Especially if you're using the same GLedApi.dll
, layout.ini
, and ycc.dll
(ensure they are in the same folder as the EXE you build).
from rgb-fusion-tool.
Oh yeah, I was missing the ycc.dll and layout.ini files. I feel like an idiot.
from rgb-fusion-tool.
No worries, this is actually worth addressing as a feature. I've created issue #25 to capture the need for better dependency checking and more meaningful error output.
from rgb-fusion-tool.
I pretty sure I got all the dependencies ( GLedApi.dll, GLedApiDotNet.dll, layout.ini, Mono.Options.dll, & ycc.dll ) but now i get this response from doing:
RGBFusionTool.exe --static=RED
I get the following:
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.Lazy1.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
Am i doing something wrong? The --help works perfectly but setting the colors will pause for about 6 seconds then spit the error mess ( I pasted above this )
from rgb-fusion-tool.
Would you paste the output of the following PowerShell script:
$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
from rgb-fusion-tool.
I got the following:
- Windows Version: 10.0.16299.0
- RGB Fusion Tool Version: 0.9.1
- Motherboard: AB350-Gaming 3-CF
- BIOS: F22
Hashes:
2C0DCD27AF18DABBE679ED915AE772A561072FF9C7AA8218284A017223945459 GLedApi.dll
37380E704593B5A8169BDE0E395F5AAB0DCA8DE227049DB36C0E42250E01B8B8 GLedApiDotNet.dll
702A91752CE59B11078AB8F3428ECD1F871267D8AD45E414173CCF0A69FEE9D4 layout.ini
05FC657EB5B5D563DE7807DF6EE07FC8B89DC6F6F08EB76C30E5192429FBBDCF Mono.Options.dll
3882A3C2A34B0B2B120903C89970B0C83A0F8B42673825C66F21594F4ED9F576 RGBFusionTool.exe
64BF4B2F0C84333E239DDA24F82BF8EAD22B7DB905C50FADE262283CA96703AD ycc.dll
from rgb-fusion-tool.
I notice one oddity and I'd like you to try with the GLedApi.dll
, ycc.dll
, and layout.ini
from B18.0206.1.zip
.
It does look like your AB350-Gaming 3 is supported, so that's good 🙂. If you've tried Gigabyte's RGB Fusion tools have they worked ? No need to go installing it just yet if you haven't, but it'll help to identify what's up.
2C0DCD27AF18DABBE679ED915AE772A561072FF9C7AA8218284A017223945459
is an interesting hash for GLedApi.dll
. I've seen the following hashes for GLedApi.dll
:
1D0D8D01382CD2617AEA26162C2A3FA2FF845B93A815882CC74B512568DF6BC4
inB17.0926.1.zip
D39AB2041C3A93ECB38CE446BBBC1C3DA1E3292EC25A301E4ADF3A588EE7A8F3
inB18.0206.1.zip
I searched VirusTotal for the your hash and there are no hits. So I'm not sure what version of GLedApi.dll
you're using or if it's corrupted.
If you downloaded an SDK right from Gigabyte you can check the hashes against the ones I have in README.md if you're concerned there may be corruption.
I also see that your hashes for GLedApiDotNet.dll
and RGBFusionTool.exe
differ from the ones in the Github v0.9.1 release, did you build them locally (it should still work if built locally - I don't do anything fancy in the build)?
If you download the v0.9.1 release from the Github releases it should have the following SHA256 8c25bd393e0592ad170da79b5f2f9fb6df425985c508bb0b6a7479dcf3aa3ae3
.
from rgb-fusion-tool.
I re-downloaded the whole RGBFusionTool and just pressing F5 (to build), and using the .dlls from B18.0206.1.zip I get the following results:
- Windows Version: 10.0.16299.0
- RGB Fusion Tool Version: 0.9.1
- Motherboard: AB350-Gaming 3-CF
- BIOS: F22
Hashes:
D39AB2041C3A93ECB38CE446BBBC1C3DA1E3292EC25A301E4ADF3A588EE7A8F3 GLedApi.dll
EC9EC108FA5767202D6E1EEDB7FE5708CC114FEFD3ACBD99900C9F8F56F964D2 GLedApiDotNet.dll
702A91752CE59B11078AB8F3428ECD1F871267D8AD45E414173CCF0A69FEE9D4 layout.ini
05FC657EB5B5D563DE7807DF6EE07FC8B89DC6F6F08EB76C30E5192429FBBDCF Mono.Options.dll
CEA8E8DA7785E4D186E17130A6D9C63FFFADD3A2B69C3321F6A63E16E10FCEAC RGBFusionTool.exe
64BF4B2F0C84333E239DDA24F82BF8EAD22B7DB905C50FADE262283CA96703AD ycc.dll
but I'm stilling getting the weird errors, I tried unplugging my cooler's RGB connector from my mobo to see maybe thats the problem, but the problem still is present, the RGB Fusion app works fine.
The error occurs around GLedAPIv1_0_0Wrapper.cs line: 51 the rawApi.GetMaxDivision()
which returns a negative number and throws the exception: throw new GLedAPIv1_0_0Exception("dllexp_GetMaxDivision", unchecked ((uint)result))
that I'm seeing...
I've also tried using the GLedApi.dll, ycc.dll, and layout.ini from the built test in B18.0206.1.zip and from the RGBFusion app but I can't seem to fix this.
Here I'm using the RGBFusion app and using the "Random" preset:
https://drive.google.com/file/d/13XZ7XrNASZZFF91-X51TWlYK0BbBzosZ/view
from rgb-fusion-tool.
Also with using the build test in B18.0206.1.zip:
B18.0206.1\Sample\Motherbaord\GLedApi\Debug\testGLedApi.exe
when pressing "Set" in the Motherboard LED section I get "Invalid allocation size: 4290000005"
(the 4290000005 isn't the exact number but it's a really big number)
from rgb-fusion-tool.
After thoughts: Maybe I shoud've gotten an MSI/Asus motherboard...
from rgb-fusion-tool.
I'm guessing that number was 4294967295
(which is 0xFFFFFFFF
as a signed 32 bit integer). The test app doesn't do any error checking so that would be an attempt to allocate an array with 4.2 billion 16-byte LED setting structs. I'm kinda glad it crashed before trying to pass a 68 GB array to hardware.
Good news is the RGB Fusion GUI stuff works so your hardware is probably in good shape. If you look in layout.ini
you see that your board isn't listed (by name, anyway) so it's possible they haven't added SDK support for it, yet.
Worth noting that it's really hard to screw up calling into the SDK at this point since calls take any input until after dllexp_GetMaxDivision
. You can see in the RGBFusionMotherboard constructor that all that's called by that point is GetSdkVersion()
, Initialize()
and then GetMaxDivision()
. This leads me to believe that it's Gigabyte's SDK. Especially, given the behavior of the included test tool (returning -1 from dllexp_GetMaxDivision
call).
If you're on Reddit I find /r/gigabytegaming/ to be a good place to mention issues - others with the same motherboard might have found a way to recover and one of the GBT_ people might be able to pass it on to the devs.
I've created issue #30 to track this bug. I'll see if I can find a way to hack in support for your motherboard in the meantime.
from rgb-fusion-tool.
I was able to reproduce a variation on the issue by removing the entry for my motherboard from layout.ini
. In this case I will get the error: dllexp_GetLedLayout returned ERROR_INSUFFICIENT_BUFFER
. The initial occurrence of this bug was in dllexp_SetLedLayout
(which would happen after a call to dllexp_GetLedLayout
).
I thought there was a repro, however there is not. I've updated the title and returned the "no repro" tag.
from rgb-fusion-tool.
I have the same issue.
Initially, my RGB's are stuck on WHITE. RGBFusion from gigabyte nor via the bios was able to turn the RGB's off or change color. Was hoping the app fixes the problem, but instead I'm getting the famous ERROR_INSUFFICIENT_BUFFER as well.
Did a full powerdown as as suggested somewhere
Any idea how to fix this as I couldn't really see a solution on this issue
from rgb-fusion-tool.
I've started getting this error after updating my AORUS X470 Gaming Wifi BIOS to the F6 revision. LEDS are stuck on orange full brightness, and Gigabyte's RGBFusion does not work either.
I'll perform a full shutdown with power switch on the next chance I get, and provide updates.
from rgb-fusion-tool.
@oblivion2k
I have sent my motherboard back to the supplier, will receive feedback by next week from them
from rgb-fusion-tool.
Gigabyte's RGBFusion 2.0 works correctly after an overnight full shutdown with PSU switch off, but RGB Fusion Tool still has the same error, something must have changed between F2 and F6 BIOS revisions to trigger this.
from rgb-fusion-tool.
Have you tried the new version of the SDK? I haven't had a chance to test it so I didn't package it yet you can find it here: https://www.gigabyte.com/mb/rgb/sdk
from rgb-fusion-tool.
Any updates on this error?
from rgb-fusion-tool.
@MobKill3r2006 sadly, no - without the hardware to test against or another spec or SDK from Gigabyte this project is stuck with what's offered. There have been some other projects that did more to reverse engineer what Gigabyte is doing and you might consider those. I'd like to work on top of what they're offering; but given the lack of support I'd look to other vendors altogether for lighting. I think Corsair makes a controller that's well supported; @windows2000bug is someone to ask about options.
from rgb-fusion-tool.
Alright, damn it. This was the only project I found that uses code to control the lights on my motherboard. I wanted to make a program that controls both the lights on my motherboard and on my razer keyboard. Thanks, however.
from rgb-fusion-tool.
Same issue with x570 aorus ultra
from rgb-fusion-tool.
I seem to have the exact same issue using a Z390 I AORUS Pro Wifi mini-itx I get the following:
Error: GLedApiDotNet.Raw.GLedAPIv1_0_0Exception: dllexp_InitAPI returned ERROR_INSUFFICIENT_BUFFER
at GLedApiDotNet.Raw.GLedAPIv1_0_0Wrapper.CheckReturn(String apiFunction, UInt32 result) in C:\RGBFusion\Source\GLedApiDotNet\Raw\GLedAPIv1_0_0Wrapper.cs:line 31
at GLedApiDotNet.Raw.GLedAPIv1_0_0Wrapper.Initialize() in C:\RGBFusion\Source\GLedApiDotNet\Raw\GLedAPIv1_0_0Wrapper.cs:line 45
at GLedApiDotNet.RGBFusionMotherboard..ctor(GLedAPIv1_0_0Wrapper wrapperAPI) in C:\RGBFusion\Source\GLedApiDotNet\RGBFusionMotherboard.cs:line 147
at GLedApiDotNet.RGBFusionMotherboard..ctor() in C:\RGBFusion\Source\GLedApiDotNet\RGBFusionMotherboard.cs:line 160
at RGBFusionTool.RGBFusionMain.<>c.
at System.Lazy
1.ViaFactory(LazyThreadSafetyMode mode) at System.Lazy
1.ExecutionAndPublication(LazyHelper executionAndPublication, Boolean useDefaultConstructor)at System.Lazy
1.CreateValue() at System.Lazy
1.get_Value()at RGBFusionTool.Application.Main(String[] args) in C:\RGBFusion\Source\RGBFusionTool\Application.cs:line 100
from rgb-fusion-tool.
Related Issues (20)
- Linux / through Wine HOT 7
- dllexp_GetMaxDivision fails on GA-Z270X-Gaming K7 HOT 1
- Add support for Aorus video cards HOT 5
- any luck using this with Aero 15x? HOT 10
- Support Z390 boards HOT 52
- Error: System.DllNotFoundException: Unable to load DLL 'GvLedLib.dll' HOT 25
- RAM Not Getting Set HOT 5
- How to I upgrade to 0.9.3.7? HOT 1
- Add support for switching between two or more colors HOT 1
- Error: System.Reflection.TargetInvocationException HOT 2
- dllexp_GetMaxDivision returned 0xFFFFFFFF on B450 DS3H HOT 7
- Orange is sort of greenish HOT 4
- Add additional documentation for common use cases
- Support new SDK version HOT 2
- Support B450M DS3H Boards HOT 1
- Can you add support for X570 boars? HOT 3
- Any plans for Ubuntu/Unix support? HOT 1
- Question: Does it require RGB Fusion 1.0 or 2.0 to be installed? HOT 4
- Rgb fusion not recognizing gpu card as waterblock but as one for fans https://www.youtube.com/watch?v=fSewJcYFjK4&t=7s HOT 6
- Changing colors depending of GPU/CPU temperature HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rgb-fusion-tool.