Compatibility layer for RGB.NET
This device provider uses OpenRGB's msi-rgb implementation to control MSI motherboard's Super I/O chips
Keep in mind that this project uses OpenRGB directly. As OpenRGB, I will not be liable for any damage.
The solution has two projects
RGB.NET DeviceProvider, it will take care of loading OpenRGB_MSIRGB.dll and communicate with it.
Minimal implementation of OpenRGB features required by this layer. It includes directly (or using git patches) the code/implementations made by OpenRGB
In order to fix color inversion OpenRGB_MSIRGB.dll returns 2 devices for the same motherboard controller.
One has a normal behaviour while the other, flagged as INVERTED
applies the colors space inversion.
- Clone the repo with its submodules.
- Apply git patch in
OpenRGB_MSIRGB/ORGB-patches
toOpenRGB_MSIRGB/OpenRGB
- Apply git patch in
OpenRGB_MSIRGB/ORGB-min-api-dll-patches
toOpenRGB_MSIRGB/OpenRGB-min-api-dll-base
- Build
Hex3l.RGB.NET.Devices.Msiusb
(Release) (it will also build OpenRGB_MSIRGB) - Get the 2 dlls and place
Hex3l.RGB.NET.Devices.MSIRGB.dll
in yourDeviceProvider
folder (the folder you are using to store yourDeviceProviders
)OpenRGB_MSIRGB.dll
in- x86:
<app root>/x86
- x64:
<app root>/x64
- x86:
- You will also need inpout32.dll/inpoutx64.dll in your root app directory, you can get it from
- x86:
OpenRGB_MSIRGB/OpenRGB/dependencies/inpout32_1501/Win32/inpout32.dll
- x64:
OpenRGB_MSIRGB/OpenRGB/dependencies/inpout32_1501/x64/inpoutx64.dll
- x86:
- inpoutx64 requires the installation of a kernel driver. To install it the final user must run as admin your application that should contain, in its root path, the driver installer program
DriverInstall.exe
. You can get it with the binaries distribution http://www.highrez.co.uk/scripts/download.asp?package=InpOutBinaries and it is located inInpOutBinaries_1501\Win32
.