hayodea
0b2fde3484
livoxGen1:StaginBuffer: simplify buff size/stride calcs
2025-10-31 08:57:37 -04:00
hayodea
c1286627ab
LivoxGen1: attachDevReq sets nDgramsPerFrame
2025-10-31 08:57:37 -04:00
hayodea
2234df1de2
livoxGen1:attach: alloc PcloudStimBuff after getting return mode
2025-10-31 08:57:37 -04:00
hayodea
4db3581be9
VSCode config: idk
2025-10-31 08:57:37 -04:00
hayodea
7efe622dd2
livoxGen1:attach: call getReturnModeReq before enPcloudDataReq
2025-10-31 08:57:37 -04:00
hayodea
f658e97ed0
livoxProto1: export getReturnModeReq; cache result in Device
2025-10-31 08:57:37 -04:00
hayodea
f8c5fad841
AssemblyBuffer changes
2025-10-31 08:57:37 -04:00
hayodea
626a84cc78
Formatting
2025-10-31 08:57:37 -04:00
hayodea
a68143810e
DeviceReattacher: use provided ioThread; not mrntt directly
2025-10-31 08:57:22 -04:00
hayodea
109cd9eb03
DevReattacher: Add 20ms sync delay during stop()
...
This fixes the bug where in-flight async ops that were triggered
by DevReattacher (such as livoxGen1_attachDeviceReq) that have
unconditional delays in them would fire late, after the state
var they rely upon had already been de-initialized.
We use an async bridge to ensure that those ops get executed in
the background and then resume execution after the delay.
2025-10-31 08:20:33 -04:00
hayodea
7b830f0a68
AsyncBridge: Comment why we don't checkException in loop
2025-10-31 08:20:29 -04:00
hayodea
b65b0f2370
UdpCmdDemux: remove stop-"responsiveness" timer
...
I think it's best to remove the timer tick from UdpCommandDemuxer.
I looked at it again and it doesn't actually help with responsiveness.
Whatever it contributes is no different from what stop() does.
They both just call timer.cancel and cmdsocket.cancel.
So if that doesn't stop the socket in stop(), it won't magically
stop it more effectively if I call it from a timer handler.
2025-10-31 08:20:27 -04:00
hayodea
2a8a6edf22
LivoxGen1: Add basic stimbuff creation & destruction
2025-10-25 23:04:59 -04:00
hayodea
10e19a3237
StimulusBuffer: Fix linker errors
2025-10-25 23:04:28 -04:00
hayodea
9e83a99c9c
LivoxProto1:Device: Refcount num stimbuffs attached
2025-10-25 23:03:00 -04:00
hayodea
b576d41595
VSCode config
2025-10-25 23:02:08 -04:00
hayodea
b89c8cdc4f
More work on PcloudStimulusBuffer
2025-10-25 19:42:48 -04:00
hayodea
682b9e121b
Some initial notes on postrin path design
2025-10-25 19:35:53 -04:00
hayodea
bcf81594e7
Add PcloudFormatDesc
2025-10-25 19:32:10 -04:00
hayodea
1b9acd5603
Rename LidarStimulusBuffer=>PcloudStimulusBuffer
2025-10-25 19:28:18 -04:00
hayodea
dc23a61410
Add StimulusBuffer and LidarStimulusBuffer
2025-10-25 19:05:32 -04:00
hayodea
e9b4e15b79
Add base class StimulusBuffer
2025-10-25 18:56:30 -04:00
hayodea
fca665d44e
LivoxGen1: StagingBuff: Update iface
2025-10-25 15:15:52 -04:00
hayodea
862acf0fe3
LivoxGen1: Add StagingBuffer class.
2025-10-25 14:49:24 -04:00
hayodea
6650664529
LivoxProto1: Move data members to one place
2025-10-25 14:43:51 -04:00
hayodea
e297a260d9
Contin: Rename Exception propagation macros
2025-10-25 14:12:12 -04:00
latentprion
d54ef04c47
Todo: Update
2025-10-25 13:25:14 -04:00
hayodea
92399ba283
Use piecemeal boost headers
2025-10-25 12:55:19 -04:00
hayodea
6f4a2dd649
LivoxGen/Proto1: Move en/disablePcloudData call to Gen1
...
We no longer try to enable pcloud data as part of the connectReq()
sequence. Instead we separate them so that a device can be connected
but not be issuing pcloud data.
2025-10-25 12:55:19 -04:00
latentprion
0e872042ee
Add some compile-time CL utilities
2025-10-25 03:39:42 -04:00
hayodea
266cabcddb
LivoxGen1: Add get/setReturnModeReq()
2025-10-25 00:19:06 -04:00
hayodea
444555e9b6
LivoxProto1: Remove superfluous proto methods
2025-10-24 22:23:59 -04:00
hayodea
3373393755
LivoxGen1: Add Get/SetReturn rate proto headers
2025-10-24 22:11:31 -04:00
latentprion
dc864bad00
Todo: update with optimization ideas
2025-10-24 16:03:03 -04:00
hayodea
452d1966fc
LivoxProto1: Document UDP demuxer purpose & use cases
...
Also fix bug in transient resource transfer from continuation
to Device object.
2025-10-24 03:09:17 -04:00
hayodea
f7dcb7307d
LivoxProto1: registerUdpHandler: enforce overwriting
...
Enforce handler overwriting in the devicesUnderConstruction
collection, for combos of cmd_set+cmd_id that pre-exist the
current invocation
2025-10-24 02:42:50 -04:00
hayodea
bd0118531f
LivoxProto1: Pcloud socket is set up transiently in contin
2025-10-24 02:05:32 -04:00
hayodea
4bfcdf37da
LivoxProto1:enPcloudData: reorder success case here
2025-10-24 01:46:08 -04:00
hayodea
2b8f6b6ad5
Formatting
2025-10-24 01:45:03 -04:00
hayodea
a5cf996ed2
LivoxProto1: Get rid of raw FD for pcloudData recv
2025-10-24 01:44:19 -04:00
hayodea
71c2b855ec
LivoxProto1: Device: misc logging, cleanup, bugfix
2025-10-24 01:29:18 -04:00
hayodea
06c5f4503f
Todo: update
2025-10-24 01:11:19 -04:00
hayodea
bede123691
LivoxProto1: Print when Lidar isn't ready for work
2025-10-24 00:51:28 -04:00
hayodea
83c937ae8f
LivoxProto1: Cancel async contin branch cbs in oracle fn
...
We were canceling the registered handler CBs in their branch
segments instead of in the unifying oracle fn.
This caused a bug where handlers were left behind in the
udpCmdDemuxer and thus a handler was invoked twice when a UDP
msg came in.
2025-10-24 00:46:13 -04:00
hayodea
d39dfb5334
livoxProto1: connectReq: Add 5ms delay before Sample enable msg
2025-10-23 01:27:35 -04:00
hayodea
44cfd7ab69
LivoxProto1: Add 105ms delay before Sample msg
2025-10-23 01:06:34 -04:00
hayodea
b277baa76d
Whitespace
2025-10-23 00:24:57 -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
01ad1ff073
LivoxProto1: udpCmdDemux: use piecemeal boost.asio headers
2025-10-22 13:37:54 -04:00