Commit Graph
77 Commits
Author SHA1 Message Date
matmoul d6d976322e Bug Solution 1 2017-05-19 20:37:49 +02:00
Lauri Leukkunen bca3eeb469 Add PRO support
Initial PRO support, effectively treat as g810

Signed-off-by: Lauri Leukkunen <lauri@rahina.org>
2017-05-10 14:10:38 +03:00
matmoul ac8ce20fff Expose SupportedKeyboards var in LedKeyboard class 2017-05-07 04:02:34 +02:00
matmoul ebb41b8037 Add new arg -tuk for testing unsuported keyboard 2017-05-06 22:41:08 +02:00
matmoul 7c96ec51bc Code formating 2017-04-29 16:58:02 +02:00
Kevin Pearson 4b2a1002e8 Add support for opening a specific device
Allow filtration and matching of specified Device ID, Product ID, Serial
Number

Fix an issue in listKeyboards (hidapi) with an out of bounds search when
using serial number

Fix possible null reference problem in listKeyboards (hidapi) that
caused rare segfaults when traversing the device enumeration in
increments of two

Fix handling of output of listKeyboards (hidapi) where it was
incrementing the dev list pointer, then accessing the node to look for
device serial number (potential security risk)

Fix handling of serial number output of listKeyboards (hidapi) to handle
wchar_t instead of outputting the memory address

Fix issue in listKeyboards (libusb) failure to finish cleaning up USB
contexts, leading to a segfault if calling a separate function after
listing keyboards.

Fix issue in close (libusb) segfaulting if m_hidHandle was null, so
added a check.

Modify listKeyboards to provide a vector of DeviceInfo objects that can
be used by calling applications instead of outputting to stdout directly.

Implement a struct to hold information regarding device information and
ability for a library caller to query this information to make decisions
about the currently targeted device.

Signed-off-by: Kevin Pearson <pearson.kevin.m@gmail.com>
2017-04-28 16:18:37 -04:00
matmoul 9ae812b88e Finalization of g213 support 2017-04-21 23:00:21 +02:00
Kevin Pearson 793aa0d557 Initial work to add G213 support
Currently supported:
- G213 by region {1..5}
- Standard FX calls
- Startup behavior
- Help and command-line app support

resolves MatMoul/g810-led#69

Signed-off-by: Kevin Pearson <pearson.kevin.m@gmail.com>
2017-04-20 21:26:48 -04:00
Kevin Pearson d69ce2855f Fix spelling of SupportedKeyboards
Signed-off-by: Kevin Pearson <pearson.kevin.m@gmail.com>
2017-04-06 09:43:37 -04:00
matmoul 95fb9c084e Update g410effects support 2017-03-25 00:03:05 +01:00
matmoul a1d4c81471 Improve code layout 2017-03-24 23:53:38 +01:00
matmoul d9a7c4c561 Remove logo for G410 2017-03-18 19:44:37 +01:00
matmoul 267fd9688d Clean comment 2017-03-17 20:16:57 +01:00
matmoul 48e6167961 Validate setNativeEffects 2017-03-11 23:56:58 +01:00
matmoul af1007636f Merge pull request #52 from CReimer/hidapi_wait
Make hidapi wait for at least 1ms (Fixes #45)
2017-03-11 23:14:33 +01:00
Christopher Reimer 72f5f230eb Make hidapi wait for at least 1ms for any answer from the keyboard. Setting this to 0 seems to make hidapi skip the read. And at least the G910 doesn't seem to like this very much. 2017-03-11 22:30:29 +01:00
matmoul 8931db5685 Add GKeys mapping mode suport 2017-03-11 21:14:50 +01:00
matmoul 664f1346c7 Filter numpad keys for g410 2017-03-11 18:53:29 +01:00
matmoul d72e526ac9 Typo 2017-03-11 18:44:46 +01:00
matmoul be7d367079 Add MKeys led control 2017-03-11 17:56:40 +01:00
matmoul 7df4cc0888 make more readable 2017-02-25 01:12:58 +01:00
matmoul af6f24aac6 make more readable 2017-02-25 01:11:01 +01:00
matmoul 3e1e4d494f Add devil comment 2017-02-12 02:12:14 +01:00
matmoul 7765ca3591 Avoid sending keys that not supported by a keyboard model 2017-02-12 02:09:37 +01:00
matmoul da8eb644eb Restore g910 native effect 2017-02-11 22:28:53 +01:00
matmoul 12b16e8374 G910 commit bug correction 2017-01-24 00:00:01 +01:00
matmoul e8c678a181 Improve code 2017-01-22 00:47:38 +01:00
matmoul bcdcee88f1 Switch to hidapi 2017-01-21 22:45:48 +01:00
matmoul cdaae30aa2 esc bug 2017-01-21 09:17:35 +01:00
matmoul c2c8f6b7ac Full refactor code 2017-01-21 09:15:18 +01:00
matmoul 0860773197 possible bug 2017-01-11 20:56:19 +01:00
matmoul 83d16a23c1 Bug correction in sendDataInternal 2017-01-11 20:25:37 +01:00
matmoul f4ea0405cd Add FX features 2017-01-08 03:23:13 +01:00
matmoul 0ecd800b41 Add new product ID for G610 2017-01-05 21:59:03 +01:00
matmoul 3af632a589 Add FX support for g910 2017-01-04 03:37:33 +01:00
MohamadSaada fc86f2af44 Update Keyboard.cpp 2017-01-01 13:27:51 +00:00
matmoul 4bfa9811b3 Add wave effect 2016-12-30 21:35:26 +01:00
matmoul 3b13f247b5 Add native effect support 2016-12-30 17:55:19 +01:00
matmoul 5a2bff5225 Add first shot for effect code 2016-12-30 01:30:17 +01:00
matmoul d6a9c4191b Swap x and y key 2016-12-27 22:13:53 +01:00
matmoul 519f20211c include libusb.h and reindent libusb_device_descriptor desc 2016-12-14 01:44:33 +01:00
Charles 54897d9a5a Multiple changes of datatypes being past overflowing constants (most char needed to be changed to unsigned char or uint8_t). Also changed the include style of the <libusb.h> to be controlled through the makefile setting 2016-12-12 14:06:45 -06:00
matmoul ee2705f832 Clean code 2016-12-08 22:53:51 +01:00
matmoul 8019e68f74 Possible buffer overflow correction 2016-12-08 22:51:48 +01:00
matmoul 3af149101e Reindent with tab 2016-12-08 22:43:08 +01:00
matmoul 4f9b5f381b Possible buffer overflow correction 2016-12-06 23:06:29 +01:00
matmoul a4a0b83542 Rename keyboard protocol version 2016-12-06 22:54:04 +01:00
MohamadSaada 80afb5dfaf Update Keyboard.cpp
14 isn't working because in the last iteration you might have some empty slots in the array, this way it will prevent that and work perfectly. I am using it in my program and have checked it in wireshark. I modified your program fully to suit my g910 keyboard.
2016-12-03 21:48:21 +00:00
Daniel Kolosa bcccdae449 Added support for g910 spectrum 2016-12-01 20:07:13 -05:00
matmoul c941052edb Add multiple logo support 2016-11-29 21:34:31 +01:00