cancel
Showing results for 
Search instead for 
Did you mean: 

Using Asus Aura SDK with C#

digitalformula
Level 7
Hi all,

I know there is a post about this already and one of the responses mentioned a C# wrapper for the Aura SDK, but I just can't make it work.

Whenever I build the DLL and run my app, the response is always an initialization error, code 126.

What does that code mean? A quick Google suggests it's a .NET error relating to a module not being found, but that's all I can find. Everything builds OK so I'm not sure where to start.

Can anyone help?

Thanks!
8,208 Views
6 REPLIES 6

brianostorm
Level 7
There's not much we can do, the whole SDK just throws erros Left and Right with no helpful codes, with this amount of next to nothing of documentation i don't even think it's fixable. Also, the mainteiner for the SDK never updated the source for newer versions of the SDK...

brianostorm wrote:
There's not much we can do, the whole SDK just throws erros Left and Right with no helpful codes, with this amount of next to nothing of documentation i don't even think it's fixable. Also, the mainteiner for the SDK never updated the source for newer versions of the SDK...


Yeah, this is a very poor SDK compared to most others I've used. Although, terrible documentation and support for SDKs seems to be quite common in the PC peripherals space (Corsair is the same, if not worse).

I can't help wondering how much amazing software would exist if only the vendors would create decent SDKs with support for the most popular languages. I've got what I think is great idea for a package based entirely around Asus peripherals, but I'm not a C++ developer. With the SDK as it stands now, that idea will never get anywhere.

I believe that this: https://github.com/InhexSTER/AuraSDKCSharp

is third party code maintained by an individual. You will need to ask on github for assistance.

PS: check this https://github.com/InhexSTER/AuraSDKCSharp/issues/1

It may help you. I will try the suggestions. Unfortunately the Readme isn't descriptive/helpful enough.

Korth
Level 14
lol the major contributor in the linked github threads is also @digitalformula.

I'd try a DLL injector approach, let the ASUS stuff load up all its (thoroughly undocumented) dependencies then overwrite components in memory (with your own code) at runtime.

Not an elegant solution, and not a hack easily implemented into clean code, but sometimes a useful tool when dealing with black boxes and binary blobs.
"All opinions are not equal. Some are a very great deal more robust, sophisticated and well supported in logic and argument than others." - Douglas Adams

[/Korth]

Korth wrote:
lol the major contributor in the linked github threads is also @digitalformula..


I'm new 🙂 - i go by what I've come across so far. - but asking q's in forum, when github is the perfect tool for issue tracking and relevant discussions, it makes no sense to do it here.


I think the best approach would be if they actually provided multi platform SDKs (pref .NET ;))

Hey guys,

I just integrated the SDK into the RGB-devices C# library I'm currently writing (I could also create a aura-only wrapper library if this is needed) so I thought this could be of interest here. (You can find the code on github.)
But here are still a few problems. Since I only have a aura-ready mainboard I'm not able to fully test everything. It would be great if a few of you guys could help with testing the rest (graphics cards, mouse, keyboard).

Current state is:

  • Mainboard is tested and works fine (at least mine).
  • Graphics cards seem to cause problems. I own a rather old asus card which isn't even aura ready as far as I know, but it repords 1 led and causes huge delays if setColor is called. -> this seems to be a bug in the SDK but I'm not 100% sure right now.
  • Keyboard and mouse is prepared but needs some work especially with the ids of the specific leds (index in the colors-array).


If someone want to help with finishing the whole thing just drop me a message or join https://discord.gg/9kytURv so we can discus the details.