Adam Honse
bd68d8801b
SDK v6: Use unique IDs for identifying RGBControllers in SDK protocol
2026-01-18 15:42:10 -06:00
Adam Honse
9ea308e432
Rework list handling in ResourceManager by having NetworkClient own its own list rather than sharing ResourceManager's list
2026-01-17 01:04:27 -06:00
Adam Honse
66ce594e76
Detection progress SDK integration, NetworkClient callback rework
2026-01-17 01:04:13 -06:00
Adam Honse
20ae2f397a
SDK Version 6 Updates
...
* SDK Protocol
* Server sends its name to client
* ProfileManager
* Rename existing profile commands
* Add Upload Profile, Download Profile, and Get Active Profile commands
* SettingsManager
* Add Get, Set, and Save Settings commands
* Add zone::active_mode, zone::mode fields for zone-specific modes
* Add NET_PACKET_ID_RGBCONTROLLER_UPDATEZONEMODE packet for updating zone modes
* Add segment::matrix_map to segment packet
* Add NET_PACKET_ID_RGBCONTROLLER_SIGNALUPDATE packet for passing SignalUpdate signal from server to clients
* NetworkServer
* Formatting cleanup
* Use per-controller threads for handling NetworkServer controller-specific packets to avoid delays from controller mutexes
* NetworkClient
* Formatting cleanup
* RGBController
* Clean up and modularize descriptor functions
2026-01-17 01:01:10 -06:00
Adam Honse
c71cc4f18a
Change SPDX license identifier from GPL 2.0 only to GPL 2.0 or later, as the original LICENSE file includes an or later clause at the end so the file headers were incorrect
2025-09-28 00:47:08 -05:00
Adam Honse
4cc6a28e73
Rework NetworkClient server initialization to allow interruption and restarting of server list request process when server sends a device list updated notification
2025-07-04 04:24:37 -05:00
Adam Honse
80dee91ab9
Add client functionality to send rescan request and add rescan button for each client in client list
2025-07-04 04:24:37 -05:00
Adam Honse
012cb5e62d
Fix segment creation and modification over the network protocol
2025-02-06 20:00:27 -06:00
Dmitry Kychanov
d612b8b8de
Network shutdown optimization
2024-09-27 16:15:14 +00:00
Adam Honse
99c1aa0c26
Add a mutex around groups of send() calls in NetworkClient.cpp to fix corrupt packets due to race conditions. If two network RGBControllers try to send a packet with data at the same time, a race condition could cause data from another thread to send in between the header and data for the active thread, corrupting the data stream.
2024-07-27 16:23:54 -05:00
Adam Honse
a7c400bc65
Update yet more file header comments to standardized new format
2024-05-03 21:56:32 -05:00
B Horn
640eb7905c
SDK Listening Options
2022-07-17 20:30:15 +00:00
Adam Honse
5130f07e21
Add saving support to network protocol
2021-07-04 21:17:55 -05:00
Adam Honse
d88f9979a9
Rework network client callback pipeline - route callbacks from clients through ResourceManager so that device list callbacks get called. Fixes remote devices not showing up in plugins.
2021-05-14 23:29:34 -05:00
morg
e2bc1003e6
Add profile management to SDK
...
Commit amended for code style by Adam Honse <calcprogrammer1@gmail.com >
2021-02-05 19:13:50 -06:00
Adam Honse
72da8f362c
SDK protocol versioning implemented. Protocol updated to version 1 which adds vendor string to controller request.
2020-12-01 21:02:32 -06:00
Adam Honse
716b2aaac3
Protect controller list updates with mutex
2020-09-30 22:45:03 -05:00
Adam Honse
8347644b07
Client clears list and reinitializes controller when the device list updates
2020-09-28 01:29:35 +00:00
Térence Clastres
53379c5482
Fixes for memory issues detected by valgrind
2020-08-12 23:48:03 -05:00
Adam Honse
5ce6ec9ea7
Request updated controller mode from server after sending a Set Custom Mode command
2020-07-17 18:29:37 -05:00
Adam Honse
96af869d79
Check for local server before detecting devices from hardware and tweak timeouts to make network connections faster
2020-06-28 21:08:59 -05:00
Adam Honse
bd6ec4c41e
Get client stop function working
2020-05-14 10:06:22 -05:00
Adam Honse
15d23d3009
Add client status update callback to NetworkClient
2020-05-10 13:41:01 -05:00
Adam Honse
e2c2b8c1df
Client will now close listener thread when disconnected and attempt to reconnect. Initialization behavior (controller requests, client string update) are performed automatically upon reconnection
2020-05-10 01:19:38 -05:00
Adam Honse
352b9928ca
Add file headers to network files and some minor code cleanup
2020-05-09 15:48:16 -05:00
Adam Honse
edf1b251c0
Send and receive client string
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
04b87ce2eb
Use std::thread for NetworkClient threads
2020-05-09 15:48:14 -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
cde7469191
Create functions for sending requests
2020-05-09 15:48:13 -05:00
Adam Honse
594f66ab23
Initial network files
2020-05-09 15:48:12 -05:00