Add firmware version request to NZXT Hue 2 controller
This commit is contained in:
parent
0464fbcbe2
commit
7a3de1edbb
3 changed files with 28 additions and 0 deletions
|
|
@ -15,6 +15,7 @@ NZXTHue2Controller::NZXTHue2Controller(hid_device* dev_handle)
|
||||||
{
|
{
|
||||||
dev = dev_handle;
|
dev = dev_handle;
|
||||||
|
|
||||||
|
SendFirmwareRequest();
|
||||||
GetStripsOnChannel(HUE_2_CHANNEL_1);
|
GetStripsOnChannel(HUE_2_CHANNEL_1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -23,6 +24,11 @@ NZXTHue2Controller::~NZXTHue2Controller()
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::string NZXTHue2Controller::GetFirmwareVersion()
|
||||||
|
{
|
||||||
|
return(firmware_version);
|
||||||
|
}
|
||||||
|
|
||||||
unsigned int NZXTHue2Controller::GetStripsOnChannel(unsigned int /*channel*/)
|
unsigned int NZXTHue2Controller::GetStripsOnChannel(unsigned int /*channel*/)
|
||||||
{
|
{
|
||||||
unsigned int ret_val = 0;
|
unsigned int ret_val = 0;
|
||||||
|
|
@ -280,3 +286,18 @@ void NZXTHue2Controller::SendEffect
|
||||||
hid_write(dev, usb_buf, 64);
|
hid_write(dev, usb_buf, 64);
|
||||||
hid_read(dev, usb_buf, 64);
|
hid_read(dev, usb_buf, 64);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void NZXTHue2Controller::SendFirmwareRequest()
|
||||||
|
{
|
||||||
|
unsigned char usb_buf[64];
|
||||||
|
|
||||||
|
memset(usb_buf, 0x00, sizeof(usb_buf));
|
||||||
|
|
||||||
|
usb_buf[0x00] = 0x10;
|
||||||
|
usb_buf[0x01] = 0x01;
|
||||||
|
|
||||||
|
hid_write(dev, usb_buf, 64);
|
||||||
|
hid_read(dev, usb_buf, 64);
|
||||||
|
|
||||||
|
snprintf(firmware_version, 16, "%u.%u.%u", usb_buf[0x11], usb_buf[0x12], usb_buf[0x13]);
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@
|
||||||
\*---------------------------------------------------------*/
|
\*---------------------------------------------------------*/
|
||||||
|
|
||||||
#include "RGBController.h"
|
#include "RGBController.h"
|
||||||
|
#include <string>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include <hidapi/hidapi.h>
|
#include <hidapi/hidapi.h>
|
||||||
|
|
||||||
|
|
@ -56,6 +57,8 @@ public:
|
||||||
NZXTHue2Controller(hid_device* dev_handle);
|
NZXTHue2Controller(hid_device* dev_handle);
|
||||||
~NZXTHue2Controller();
|
~NZXTHue2Controller();
|
||||||
|
|
||||||
|
std::string GetFirmwareVersion();
|
||||||
|
|
||||||
unsigned int GetStripsOnChannel
|
unsigned int GetStripsOnChannel
|
||||||
(
|
(
|
||||||
unsigned int channel
|
unsigned int channel
|
||||||
|
|
@ -82,6 +85,7 @@ public:
|
||||||
|
|
||||||
private:
|
private:
|
||||||
hid_device* dev;
|
hid_device* dev;
|
||||||
|
char firmware_version[16];
|
||||||
|
|
||||||
void SendApply
|
void SendApply
|
||||||
(
|
(
|
||||||
|
|
@ -105,4 +109,6 @@ private:
|
||||||
unsigned char color_count,
|
unsigned char color_count,
|
||||||
unsigned char* color_data
|
unsigned char* color_data
|
||||||
);
|
);
|
||||||
|
|
||||||
|
void SendFirmwareRequest();
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,7 @@ RGBController_NZXTHue2::RGBController_NZXTHue2(NZXTHue2Controller* hue2_ptr)
|
||||||
name = "NZXT Hue 2";
|
name = "NZXT Hue 2";
|
||||||
type = DEVICE_TYPE_LEDSTRIP;
|
type = DEVICE_TYPE_LEDSTRIP;
|
||||||
description = "NZXT Hue 2 Device";
|
description = "NZXT Hue 2 Device";
|
||||||
|
version = hue2->GetFirmwareVersion();
|
||||||
|
|
||||||
mode Direct;
|
mode Direct;
|
||||||
Direct.name = "Direct";
|
Direct.name = "Direct";
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue