Skip to content

Commit c1e8cca

Browse files
authored
Merge pull request #9 from BenBlumer/master
Fixed interface4Handler, Fusion filepath, and project type default.
2 parents 7afe491 + 2571032 commit c1e8cca

File tree

3 files changed

+48
-8
lines changed

3 files changed

+48
-8
lines changed

AirAPI_Windows.cpp

Lines changed: 45 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@
1010
//Air USB VID and PID
1111
#define AIR_VID 0x3318
1212
#define AIR_PID 0x0424
13+
#define AIR_2_PID 0x0428
14+
#define AIR_2_PRO_PID 0x0432
1315

1416
//Is Tracking
1517
bool g_isTracking = false;
@@ -215,8 +217,27 @@ process_accel(const int32_t in_accel[3], float out_vec[])
215217
static hid_device*
216218
open_device()
217219
{
218-
struct hid_device_info* devs = hid_enumerate(AIR_VID, AIR_PID);
219-
struct hid_device_info* cur_dev = devs;
220+
struct hid_device_info* devs = NULL;
221+
struct hid_device_info* devs_1 = hid_enumerate(AIR_VID, AIR_PID);
222+
struct hid_device_info* devs_2 = hid_enumerate(AIR_VID, AIR_2_PID);
223+
struct hid_device_info* devs_2_pro = hid_enumerate(AIR_VID, AIR_2_PRO_PID);
224+
225+
struct hid_device_info* cur_dev = NULL;
226+
227+
if (devs_1 != NULL) {
228+
cur_dev = devs_1;
229+
devs = devs_1;
230+
}
231+
else if (devs_2 != NULL) {
232+
cur_dev = devs_2;
233+
devs = devs_2;
234+
235+
}
236+
else if (devs_2_pro != NULL) {
237+
cur_dev = devs_2_pro;
238+
devs = devs_2_pro;
239+
}
240+
220241
hid_device* device = NULL;
221242

222243
while (devs) {
@@ -236,8 +257,26 @@ open_device()
236257
static hid_device*
237258
open_device4()
238259
{
239-
struct hid_device_info* devs = hid_enumerate(AIR_VID, AIR_PID);
240-
struct hid_device_info* cur_dev = devs;
260+
struct hid_device_info* devs = NULL;
261+
struct hid_device_info* devs_1 = hid_enumerate(AIR_VID, AIR_PID);
262+
struct hid_device_info* devs_2 = hid_enumerate(AIR_VID, AIR_2_PID);
263+
struct hid_device_info* devs_2_pro = hid_enumerate(AIR_VID, AIR_2_PRO_PID);
264+
265+
struct hid_device_info* cur_dev = NULL;
266+
267+
if (devs_1 != NULL) {
268+
cur_dev = devs_1;
269+
devs = devs_1;
270+
}
271+
else if (devs_2 != NULL) {
272+
cur_dev = devs_2;
273+
devs = devs_2;
274+
275+
}
276+
else if (devs_2_pro != NULL) {
277+
cur_dev = devs_2_pro;
278+
devs = devs_2_pro;
279+
}
241280
hid_device* device = NULL;
242281

243282
while (devs) {
@@ -359,7 +398,7 @@ DWORD WINAPI interface4Handler(LPVOID lpParam) {
359398
std::array<uint8_t, 17> initBrightness = { 0x00, 0xfd, 0x1e, 0xb9, 0xf0, 0x68, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03 };
360399
hid_write(device4, initBrightness.data(), initBrightness.size());
361400

362-
401+
363402
while (g_isListening) {
364403
std::array<uint8_t, 65> recv = {};
365404
int res = hid_read(device4, recv.data(), recv.size());
@@ -396,6 +435,7 @@ DWORD WINAPI interface4Handler(LPVOID lpParam) {
396435
}
397436
}
398437
}
438+
return 0;
399439
}
400440

401441

AirAPI_Windows.sln

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@ Global
1313
Release|x86 = Release|x86
1414
EndGlobalSection
1515
GlobalSection(ProjectConfigurationPlatforms) = postSolution
16-
{0A770089-877A-4053-957D-2F56EA425766}.Debug|x64.ActiveCfg = Debug|x64
17-
{0A770089-877A-4053-957D-2F56EA425766}.Debug|x64.Build.0 = Debug|x64
16+
{0A770089-877A-4053-957D-2F56EA425766}.Debug|x64.ActiveCfg = Release|x64
17+
{0A770089-877A-4053-957D-2F56EA425766}.Debug|x64.Build.0 = Release|x64
1818
{0A770089-877A-4053-957D-2F56EA425766}.Debug|x86.ActiveCfg = Debug|Win32
1919
{0A770089-877A-4053-957D-2F56EA425766}.Debug|x86.Build.0 = Debug|Win32
2020
{0A770089-877A-4053-957D-2F56EA425766}.Release|x64.ActiveCfg = Release|x64

AirAPI_Windows.vcxproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,7 @@
144144
<GenerateDebugInformation>true</GenerateDebugInformation>
145145
<EnableUAC>false</EnableUAC>
146146
<AdditionalDependencies>Fusion.lib;hidapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
147-
<AdditionalLibraryDirectories>$(ProjectDir)\deps\hidapi-win\x64;$(ProjectDir)\deps\Fusion\Fusion\Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
147+
<AdditionalLibraryDirectories>$(ProjectDir)\deps\hidapi-win\x64;$(ProjectDir)\deps\Fusion\Fusion\Release;%(AdditionalLibraryDirectories):$(ProjectDir)\deps\hidapi-win\x64;$(ProjectDir)\deps\Fusion\Fusion\out\build\x64-Debug\</AdditionalLibraryDirectories>
148148
</Link>
149149
</ItemDefinitionGroup>
150150
<ItemGroup>

0 commit comments

Comments
 (0)