Commit graph

501 commits

Author SHA1 Message Date
Adam Honse
6438c15dd3 Fix build on Windows 2020-05-09 15:48:16 -05:00
Adam Honse
dbe29991f0 Send client string after server is connected 2020-05-09 15:48:15 -05:00
Adam Honse
a5e9a3de05 Add mutex on updating callbacks 2020-05-09 15:48:15 -05:00
Adam Honse
edf1b251c0 Send and receive client string 2020-05-09 15:48:15 -05:00
Adam Honse
9ff4314840 Add callback to NetworkServer to handle UI updates when client information changes 2020-05-09 15:48:15 -05:00
Adam Honse
3ad0986ae7 Add IP field to client information and display client IP in the server tab's connected client list 2020-05-09 15:48:15 -05:00
Adam Honse
6bfc9dd9db Create a structure to hold client information in the network server and fix i2c hanging on destructor when bus is not available. 2020-05-09 15:48:15 -05:00
Adam Honse
9b8a0d465e Functions to set IP and port and start client 2020-05-09 15:48:15 -05:00
Adam Honse
119741b736 Fix build on Windows 2020-05-09 15:48:15 -05:00
Adam Honse
2fe958783c Use select on accept call as well so that server closes on Linux 2020-05-09 15:48:15 -05:00
Adam Honse
1c59ef6b80 Fix build on Linux 2020-05-09 15:48:15 -05:00
Adam Honse
9e44e4ba4f Add server information to user interface and provide buttons to start and stop server, change port 2020-05-09 15:48:15 -05:00
Adam Honse
b8e14ea067 Server info WIP 2020-05-09 15:48:14 -05:00
Adam Honse
525071c205 Use condition variables and mutexes to eliminate sleeps from SMBus threading 2020-05-09 15:48:14 -05:00
Adam Honse
bfe03b0564 Handle all SMBus controller activity on a separate thread to avoid corrupting the SMBus data 2020-05-09 15:48:14 -05:00
Adam Honse
04b87ce2eb Use std::thread for NetworkClient threads 2020-05-09 15:48:14 -05:00
Adam Honse
81acc47cd6 Use std::thread for NetworkServer threads 2020-05-09 15:48:14 -05:00
Adam Honse
6e426b1403 Fix thread conflicts for HyperX keyboard in Direct mode 2020-05-09 15:48:14 -05:00
Adam Honse
6509e53a9b Disable I2C devices until threading issues are resolved, don't start a NetworkClient in main 2020-05-09 15:48:14 -05:00
Adam Honse
5b42b3d11d Use TCP_NODELAY on client socket 2020-05-09 15:48:14 -05:00
Adam Honse
8bd515296d Add key matrix map for Corsair K70 keyboards 2020-05-09 15:48:14 -05:00
Adam Honse
2bbf66c0ee Fix memory leaks in client 2020-05-09 15:48:14 -05:00
Adam Honse
d716973642 Get network client working on Windows 2020-05-09 15:48:14 -05:00
Adam Honse
25f7a87a79 Get network server working in Windows 2020-05-09 15:48:14 -05:00
Adam Honse
0619a16be2 Add matrix map for HyperX Alloy Elite 2020-05-09 15:48:13 -05:00
Adam Honse
4a3802f344 Add matrix map for Poseidon Z RGB keyboard 2020-05-09 15:48:13 -05:00
Adam Honse
105f5642ef Add matrix map support 2020-05-09 15:48:13 -05:00
Adam Honse
54ab57cea6 Add zone types to HyperX and Poseidon Z RGB keyboard controllers 2020-05-09 15:48:13 -05:00
Adam Honse
e3e6c0347e Add a thread to RGBController to asynchronously perform device updates. Only implemented for UpdateLEDs for now 2020-05-09 15:48:13 -05:00
Adam Honse
4d6706ce61 Close server listener thread when read returns zero (client connection lost) 2020-05-09 15:48:13 -05:00
Adam Honse
39c5aff864 Send color data over the network when calling color update functions 2020-05-09 15:48:13 -05:00
Adam Honse
450f438538 Send mode data block when updating mode 2020-05-09 15:48:13 -05:00
Adam Honse
0270c745ce Implement RGBController_Network packet sending for current set of RGBController commands 2020-05-09 15:48:13 -05:00
Adam Honse
e2dfcd5b0f Client now requests list of all controllers from server and adds them to the master list 2020-05-09 15:48:13 -05:00
Adam Honse
68fa3c2def Create functions for sending replies 2020-05-09 15:48:13 -05:00
Adam Honse
cde7469191 Create functions for sending requests 2020-05-09 15:48:13 -05:00
Adam Honse
7c1a1396ca Client requests controller count and first controller data block from server, prints response 2020-05-09 15:48:13 -05:00
Adam Honse
7f052f21aa Run client from main 2020-05-09 15:48:12 -05:00
Adam Honse
dff667751b Start work on network client 2020-05-09 15:48:12 -05:00
Adam Honse
2625807c1a Add RGBController function call packet functionality 2020-05-09 15:48:12 -05:00
Adam Honse
7af283fdbf Implement requests for number of controllers and controller information block 2020-05-09 15:48:12 -05:00
Adam Honse
c7ffe3b926 Network server can now receive packets properly 2020-05-09 15:48:12 -05:00
Adam Honse
46339c5f86 More work on network support, need to implement spawning of one read thread for each client socket 2020-05-09 15:48:12 -05:00
Adam Honse
cf69598fd1 Start working on server request processing code 2020-05-09 15:48:12 -05:00
Adam Honse
594f66ab23 Initial network files 2020-05-09 15:48:12 -05:00
Adam Honse
01e0808e41 Add 1ms sleep after every Corsair peripheral USB message because K70 RGB locks up on Linux otherwise 2020-05-04 17:02:39 -05:00
Adam Honse
2dc443ff1e Add 0x18A3 to Aura addressable PID list (Z390-F) 2020-05-01 15:28:49 -05:00
Adam Honse
0ab0586dfa Update OpenRazer-Win32 DLLs to openrazer commit 134d7bf 2020-05-01 13:41:42 -05:00
Adam Honse
88fa6bf25a Hide SMBus tools panel, will add a settings option to show it 2020-04-29 16:36:37 -05:00
Adam Honse
9346490e4a Fix memory leak in OpenRazer controller 2020-04-28 20:08:43 -05:00