hayodea
a5cf996ed2
LivoxProto1: Get rid of raw FD for pcloudData recv
2025-10-24 01:44:19 -04:00
hayodea
5db1cfdac8
LivoxProto1: Pcloud data stream now working
2025-10-23 00:24:23 -04:00
hayodea
a4d99e5d4d
LivoxProto1: ExecuteHandshake uses udpCommandDemuxer
...
UdpCommandDemuxer also now supports devices "under construction".
2025-10-22 22:13:38 -04:00
hayodea
8e1d609ca1
livoxProto1: udpCmdDemux now consults per-device handler registry
...
Device class objects now have a per-Device unordered_map of handlers
keyed by cmd_set+cmd_id.
2025-10-22 07:28:00 -04:00
hayodea
10afec2532
LivoxProto1: Add UdpCommandDemuxer.
...
We haven't genericized it with an unordered_map or integrated it
into device.cpp's async methods yet.
2025-10-22 06:17:42 -04:00
hayodea
d9042c6510
LivoxProto1: Add en/disablePcloudDataReq()
...
Untested, but this should enable us to enable and disable data
from the device.
2025-10-22 01:21:35 -04:00
latentprion
945c5b397b
Build: remove superfluous io_service.hpp #includes
2025-10-16 01:08:05 -04:00
latentprion
5017bf5f92
Build: use piecemeal boost headers.
...
Reduces compile time on a 4-core ARM Rpi5 from 1m12s wallclock
(i.e: "real") time to 0m55s; and from 4m+ "user" time to 3m8s.
2025-10-16 01:00:48 -04:00
hayodea
782bcd4567
Async: add sh_ptr<ContinuationChainLink> to Callback<>
...
This change enables us to finally implement the tracing of
continuations backward from the point of acquisition for deadlock
debugging.
2025-09-27 18:30:09 -04:00
hayodea
0449e557b0
livoxGen/Proto1: Refine auto-detection vs heuristic logic
2025-09-09 19:54:14 -04:00
hayodea
20cdf64afb
livoxProto1: Implement async getOrCreateDeviceReq+destroyDeviceReq
...
These are now both fully asynchronous. They also work fully
and both connect and disconnect to/from the Avia just fine,
in all tested scenarios.
2025-09-09 12:07:49 -04:00
hayodea
1ededb85b9
livoxProto1:bug workaround: for boost:asio:udp async ops on dlopen libs
...
Updated Boost dependency to version 1.73.0 to address segfault issues with boost::asio in dynamic libraries. Refactored heartbeat socket management to use raw UDP sockets instead of boost::asio, improving compatibility and error handling during socket operations.
2025-09-07 08:14:46 -04:00
hayodea
d2bf5aceee
livoxProto1: detectSmoIp should be based on target dev IP
...
We previously used the smoIp provided by the user, but this
function is intended to enable us to figure out the correct
IP to send to the target device in the Handshake message.
2025-09-06 22:46:03 -04:00
hayodea
a0d577bf81
LivoxProto1: Implemented Device and getOrCreateDevice
...
Includes everything from sending heartbeat msgs to performing
the connection handshake. We also accept many params to
provider-params to customize and make things easier.
2025-09-06 22:46:03 -04:00