LivoxProto1: Document UDP demuxer purpose & use cases

Also fix bug in transient resource transfer from continuation
to Device object.
This commit is contained in:
2025-10-24 03:09:17 -04:00
parent f7dcb7307d
commit 452d1966fc
3 changed files with 57 additions and 15 deletions
@@ -20,6 +20,17 @@ namespace comms {
* This class listens on the command port (65000) for incoming UDP datagrams
* from Livox devices and routes them to the appropriate Device based on
* the source IP address.
*
* The reason we need a whole class for this is because we use the same port
* numbers for all connected devices, so we have no way to distinguish between
* devices except based on the devices' IP addrs. Since all commands are sent
* over UDP, our sockets don't have built-in binding to a specific source IP.
*
* So we need to discriminate between source IPs manually, and demultiplex
* the dgrams received from different devices manually.
*
* We'll prolly also have to do the same thing for point cloud and IMU data, so
* we'll prolly end up renaming this class to UdpResponseDemuxer.
*/
class UdpCommandDemuxer
{