From a688e436f03309d5813b68a375f694412018ca0b Mon Sep 17 00:00:00 2001 From: Nikita Kostovsky Date: Thu, 26 Feb 2026 16:33:12 +0100 Subject: add sync moveSteps --- src/camera/veyeimx287m.h | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'src/camera/veyeimx287m.h') diff --git a/src/camera/veyeimx287m.h b/src/camera/veyeimx287m.h index b875bb7..3a73cd2 100644 --- a/src/camera/veyeimx287m.h +++ b/src/camera/veyeimx287m.h @@ -25,6 +25,28 @@ class i2c; class HttpServer; +/* + * start calibration + * - send move zRange/16384 mm + * - wait StepDelay, ignore all pixels + * - collect 10 (64?) profiles + * - dump profiles + */ + +/*! + * \brief The VeyeIMX287m class - control and receive data from VEYE IMX287 + * camera + * \todo + * - implement `trgnum` - The number of image frames output by one trigger signal + * in trigger mode. Might be helpful in calibration mode + * - implement `trgfilter_enable` - for rising/falling edge support + * - implement `trgexp_delay` - Exposure delay, i.e. the time to turn on the + * Strobe signal in advance. The difference between trgexp_delay and trgdelay, + * see manual for details. (which manual?) + * - implement UDP streams, http is a bit slow even over 1GbE + * - implement roi + * - blcmode/blacklevel? (does it work in this camera?) + */ class VeyeIMX287m : public ICamera { constexpr static char videoDevice[] = "/dev/video0"; @@ -63,6 +85,9 @@ public: bool set_gain(const float value) override; std::optional get_gain() override; + bool set_triggerExposureDelay(const std::chrono::microseconds us) override; + std::optional get_triggerExposureDelay() override; + public: /*! * \brief processedCounter - count of images processed in current second. -- cgit v1.3