Commit Graph

939 Commits

Author SHA1 Message Date
hayodea 63ff0aa264 cmake: use repo-relative paths for flex/bison #line output
Invoke flex and bison from CMAKE_SOURCE_DIR with relative input and
output paths so generated parser/lexer sources do not embed absolute
build directory paths.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-21 15:56:41 -04:00
hayodea a9de2bb1ab bodies: add yocto-qemu-x86-headless DAPSS target
Headless QEMU x86 guest body for Livox-only lab setup at 10.42.0.16.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-21 15:33:40 -04:00
hayodea 5f4665b221 ComparatorLib:core: Add menu option to conditionally enable 2026-06-14 16:08:18 -04:00
hayodea 99ee28629e lcameraDev: libcamera has minor API difference on ARM/RPi5 2026-06-14 16:01:38 -04:00
hayodea 83698ded42 Bugs,Agent: Update AGENTS.md and bugs.log 2026-06-14 15:35:32 -04:00
hayodea acb684ad35 livoxGen1🐛 Call stop() on all producers before deleting in _exit 2026-06-14 15:34:07 -04:00
hayodea 24eee2d240 Devices: ELP 4K USB cam: add intrins (-&+) 2026-06-14 12:56:52 -04:00
hayodea 8d03dcf9b5 Rename elp cam dev to use hyphens instead of underscores 2026-06-14 11:46:45 -04:00
hayodea 959229c2a0 Add invocations for SMO 2026-06-14 11:43:58 -04:00
hayodea 1431214b95 Devices: Add new ELP 4K USB camera DAPS 2026-06-14 11:29:30 -04:00
hayodea bb83a86fe0 CMake: use GCC dependency generation for DAPSS files 2026-06-14 11:28:51 -04:00
hayodea e261787cfe Add env-gated lcameraBuff configure HIL tests on baked USB profile.
HIL attaches Y/U/V channels, verifies shared producer state, and detaches
using an alternate selector string for the U channel quale.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-14 11:05:17 -04:00
hayodea 63532a6ee2 Resolve device selector on detach and add YuvStimProducer state tests.
Detach finds the shared producer via lcameraDev_resolveDeviceSelectorCReq
then removes buffers by attach identity; unit tests cover quale guards.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-14 11:04:22 -04:00
hayodea e7b7a311f7 Add lcameraBuff Stage 2 plugin with YUV attach and unit tests.
Introduce params parsing, pixel/format decisions, capture layout, shared
YuvStimProducer per camera, and channel stimulus buffers with attach flow.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-14 11:03:19 -04:00
hayodea 809861be2b StimulusProducer: add duplicate-quale guard and attach-identity buffer lookup.
Provide ensureNoDuplicateQualeIface and getAttachedStimulusBufferByAttachIdentity
so session-scoped stimBuff plugins can reject duplicate quales and detach by
stable DAP line identity rather than full spec equality.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-14 11:02:18 -04:00
hayodea 7af684039d lcameraDev: add resolve-only deviceSelector API and deduplicate resolve paths.
Export lcameraDev_resolveDeviceSelectorCReq for attach-identity consumers,
factor live-camera snapshot helpers, and share resolveDeviceSelectorAgainstRecords
with get-or-create session acquisition.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-14 11:02:11 -04:00
hayodea 7a47f2bd49 lcameraDev: honor opt-planar when selecting YUV capture format.
Pass fullPlanarIsOptional through session configure so optional planar
mode can succeed with packed YUYV; extend unit and configure HIL coverage.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-14 11:01:40 -04:00
hayodea 5f3d5c7818 Refactor LivoxGen1 provider param parsing to shared DAP helpers.
Replace local param parsing with DeviceAttachmentSpec primitives for
consistency with lcameraBuff and intrin threshold modules.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-14 11:01:04 -04:00
hayodea 42c9fcdfdf Refactor intrinThresholdParams to use shared DAP helpers.
Delegate threshold param parsing to the new DeviceAttachmentSpec primitives
so intrin modules stay aligned with stimBuff param conventions.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-14 11:00:30 -04:00
hayodea b198f6a42b Add shared DeviceAttachmentSpec param parsing helpers.
Centralize DAP param lookup, parsing, and validation primitives so stimBuff
and threshold modules can share one implementation instead of duplicating
parse logic per plugin.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-14 11:00:22 -04:00
hayodea 3e85b920fb LCamDev: implement configureSessionModeCReq
We can, theoretically, now change the v4l camera's mode.
2026-06-13 20:56:33 -04:00
hayodea 25d7b9c013 LcamDev: Add baked in camera profiles; use new test supports 2026-06-13 18:50:31 -04:00
hayodea f3ca20ac1d Spinscale: upgrade for new test support primitives 2026-06-13 18:49:10 -04:00
hayodea dd0642535c Upgrade libspinscale: test cleanups 2026-06-13 18:08:47 -04:00
hayodea 10697acd61 Libspinscale: upgrade for new tests 2026-06-13 17:19:34 -04:00
hayodea 4bcc30671b Tests: Move qutex and nursery tests into libspinscale 2026-06-13 16:19:30 -04:00
hayodea 2458c83c6b Tests: add tests for lcameraDev, fix qutex tests 2026-06-13 16:08:21 -04:00
hayodea 46f767f232 lcameraDev: Add session mgr lib for libcamera device binding 2026-06-13 12:02:04 -04:00
hayodea cc7f4fcd9b Update libspinscale 2026-06-13 11:46:53 -04:00
hayodea e383453278 Docs: Add lcameraDev lib notes; add stencil notes 2026-06-11 23:05:17 -04:00
hayodea 69a4782e19 Libspinscale: upgrade 2026-06-11 20:21:41 -04:00
hayodea 5935917204 Docs: Add comparators.md with no content 2026-06-11 13:14:50 -04:00
hayodea a42d8f8a07 Docs: Tech stack for 2d+3d mathobjs 2026-06-11 13:14:16 -04:00
hayodea 54dcc92c2b Printing: print fewer newlines 2026-06-11 11:17:06 -04:00
hayodea e1d299859d Docs: Stencil notes 2026-06-10 22:49:01 -04:00
hayodea d118181766 ApiMgrs: fix segfault from use-after-free 2026-06-10 22:44:53 -04:00
hayodea 82b99e680c ComparatorLibs: Add stringify to hierarchy for easy printing 2026-06-10 22:43:39 -04:00
hayodea 549f0c04f4 Tame clangd
Stop it from running on all CPUs;
Tell it not to index/build the build dirs
2026-06-10 22:05:37 -04:00
hayodea 0722ef8209 Comparators: Rename core comparators lib 2026-06-10 21:43:29 -04:00
hayodea 8836ab470b Wire comparator CLI, marionette threading model, and final load order.
Initialize SmoThreadingModelDesc from marionette before body startup, load
comparator libs before stimbuff via -c/--comparator-lib, and drop the hardcoded
libcomparatorCore.so load path.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-10 21:17:52 -04:00
hayodea 560e5364a0 Extract SmoCallbacks and SmoThreadingModelDesc into smoHooks.h.
Move shared hook and threading-model types out of senseApiDesc.h so both
stimbuff and comparator libraries can include them without pulling in API descs.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-10 21:16:55 -04:00
hayodea ab930a2df3 Add ComparatorApiManager with SmoCallbacks hooks and startup load.
Register comparator types via a dedicated manager and expose lookup/create
hooks through SmoCallbacks so stimbuff libs can resolve comparators at load time.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-10 21:16:05 -04:00
hayodea 7eda755c15 Add LoadableLibraryManager and refactor StimBuffApiManager to use it.
Centralize dlopen/search in LoadableLibraryManager so typed library managers
can share one loaded-shlib registry without duplicating load/unload logic.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-10 21:14:55 -04:00
hayodea 10234bc422 Add comparator API descriptor and libcomparatorCore scaffold.
Introduce ExportedComparatorTypeDesc/ComparatorLibDesc with inline
sanity checks, and add a core comparator shlib exporting three stub types.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-10 21:13:19 -04:00
hayodea f118947b5e Extract comparator core types into include/user/comparator.h.
Move Comparator and ComparatorExpression out of cologex.h so comparator
types can be shared by loadable comparator libraries without pulling in
the full cologex surface.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-10 21:12:54 -04:00
hayodea cda9d432f4 Spinscale: Upgrade version 2026-06-10 07:03:15 -04:00
hayodea f9c64cf363 livoxProto1: Convert heartbeat sender into daemon coro 2026-06-10 07:02:07 -04:00
hayodea facb665217 BroadcastListener: Port to use nurseries and CDaemon pattern 2026-06-10 05:41:39 -04:00
hayodea 22a4cf283e These should always run on caller's thread. 2026-06-10 04:13:25 -04:00
hayodea 2602094139 StimProd: disable debug msg 2026-06-10 04:12:32 -04:00