Skip to content

Releases: ifm/ifm3d

v1.3.2

16 Jun 12:06
Compare
Choose a tag to compare
v1.3.2 Pre-release
Pre-release

Added

  • Add env variable IFM3D_SWUPDATE_CURL_TIMEOUT for curl transaction timeout during swupdate
  • Add Project description and links to PYPI page
  • Add an example on how to use the deserializer module

Fixed

  • Release versions wrongly marked as +dirty

Changed

  • Replaced glog with ifm3d::Logger, see the migration guide for details
  • The json module has been moved from device to common. Update your includes accordingly: use #include <ifm3d/common/json.hpp instead of #include <ifm3d/device/json.hpp.

v1.2.6

19 Apr 11:28
Compare
Choose a tag to compare

❗ This release contains breaking changes: Migration Guide

Added

  • Generate and distribute stubs with python wheel package
  • Add MAC address in ifm3d discover command output
  • Added Frame::FrameCount to access the frame counter value
  • Added API to enable disable masking in FrameGrabber
  • O3R::RebootToRecovery to reboot supported O3R devices into recovery mode
  • Support for O3R recovery based updates
  • Add size() interface in ifm3d::Buffer
  • Add Deserialize module
    • Add struct TOFInfoV3
    • Add struct TOFInfoV4
    • Add struct RGBInfoV1
    • Add struct ODSInfoV1
    • Add struct ODSOccupancyGridV1

Fixed

  • Fixed potential crash during device discovery
  • Fixed possible Segmentation fault when calling FrameGrabber::Stop() directly after FrameGrabber::Start()
  • Fixed typo in RGBInfoV1, TOFInfoV4 and TOFInfoV3: extrisic_optic_to_user -> extrinsic_optic_to_user
  • Fix state of the FrameGrabber not being reset correctly after Stop() causing receive failures on subsequent Start()s
  • Increase network timeout for the O3R::Set() call to 10 seconds
  • Fixed a crash in FrameGrabber when the p command is called multiple times
  • Fixed potential crash when waiting for the future returned by FrameGrabber::WaitForFrame()
  • Fixed Segmentation fault when assigning a AsyncNotification or AsyncError Handler while the FrameGrabber is not running
  • Added Missing alias for ifm3dpy.Error to ifm3dpy.device.Error
  • Fix device discovery requiring manual firewall rule on windows
  • Fix a bug that could cause the update process to fail with a hash mismatch error on certain network configurations
  • Fix a bug preventing the FrameGrabber from being Started after it was previously Stopped
  • Fix a typo in the transform_cell_center_to_user variable (previously called transfor_cell_center_to_user).
  • Add missing python binding for O3R::ResolveConfig
  • Fix cmake targets for deserialize module
  • Fix a bug that could result in an endless loop when receiving PCIC tickets
  • Fix a crash when receiving pcic data without any chunks
  • Missing python bindings for O3R::Port and O3R::Ports
  • CONFIDENCE_IMAGE image is not requested automatically anymore unless it's required for generating the requested chunks

Changed

  • Split the python bindings into submodules, see the migration guide for details. Warning: this requires an update of existing codebases.
  • Convert SWUpdater python bindings naming to snake_case, see the migration guide for details. Warning: this requires an update of existing codebases.
  • FrameGrabber::Start now returns a future resolving once the FrameGrabber is ready to receive Frames
  • Upgraded nlohmann::json to version 3.11.2
  • Removed json from the global namespace and moved nlohmann::json to the ifm3d::json namespace

v1.1.1

09 Dec 14:21
Compare
Choose a tag to compare

Fixes

  • Data grabbing issue with ifm3dpy-v1.1.0

v1.1.0

02 Dec 12:52
Compare
Choose a tag to compare

❗ This release contains breaking changes: Migration Guide

Added

  • Change FrameGrabber::Stop to non blocking call and now returns std::future<void>
  • Add onError callback for error reporting in streaming mode of Framegrabber
  • Support for retrieving O3R Diagnostics over XMLRPC
  • Support for Python 3.11
  • Support for Ubuntu 22.04
  • Python binding: FrameGrabber.sw_trigger()

Fixes

  • XYZ_IMAGE coordinates were actually ZXY instead of XYZ, this has been corrected.

v1.0.1

14 Oct 08:34
Compare
Choose a tag to compare

ifm3d-v1.0.1

Provides documentation update, bugfixes and .debs files

Added

  • Auto closure of stale issue on GitHub
  • Support for ODS schema
  • Asynchronous notification support

Fixes

  • ifm3d and ifm3dpy documentation update
  • Confidence buffer available for user
  • Reflectivity buffer support in schema
  • Distance noise buffer in float format
  • Exception if buffer is not available in frame
  • Extrinsic values
  • Linux .deb file now depends on local installed libs

v1.0.0

19 Sep 13:52
Compare
Choose a tag to compare

ifm3d v1.0.0

This release officially support O3R device. Framegrabber module now provides streaming and polling mechanism for data grabbing. The deprecated image and opencv modules have been removed. For details about the migration check the documentation.

Note: the v1.0.0 release does not fully support O3D/O3X devices, please stay on version 0.20.x if you are using these devices until full compatibility has been restored.

Feature added

  • Documentation update for ifm3d and ifm3dpy
  • Example update showing usage of fg API
  • Playground example for cmake users
  • Python and C++ API changes
  • Windows installer support for ifm3d
  • Swupdater module added to ifm3dpy
  • Schema support for Framegrabber module
  • Multiple timestamp support in ifm3dpy
  • Architecture change for Framegrabber module, now supports streaming and polling modes
  • ifm3d tools updated for O3R device

Fixed

  • Discover app for O3R devices #334
  • xyz values access issues #339
  • ifm3dpy #300
  • pypi support #287
  • windows installer #28

Note : Windows Binary installer and debs files will be added in near future.

v0.20.3

31 Aug 13:23
Compare
Choose a tag to compare

O3X1xx related changes

This requires a firmware version 1.1.190 or higher on the O3X1xx

  • Support for Distance noise images,Straylight Correction, Noise Estimation
    • New Parameters: AbsDistStraylightThreshold, EnableStraylightCorrection, EnableNoiseEstimation, CompensateAmbientLightDrift, DistNoiseThreshold, EnableNoiseEstimation, RelAmpStraylightThreshold
  • Document for o3x parameters
  • Added the O3X FW 1.1.190 to the compatibility list

Generic changes

  • Added compatibility list to swupdate document
  • Added functionality to get timestamp at which data is send over ethernet
  • Document for o3x parameters
  • Document for schema
  • Added the O3X FW 1.1.190 to the compatibility list
  • Added clang format support for formatting
  • Changed License Headers to SPDX format
  • Embedded third-party libs asio and cxxopt
    • Removed boost from dependency list
  • Support user defined port for camera, fg, swupdater module
    • This enable ifm3d to connect to devices behind NAT router
  • Added example for NTP to command line usage
  • Added build jobs in github actions
    • Windows VS 2019
    • Ubuntu 20.04

Bugfixes

  • #284 ifm3d Compiling error at swupdater app with VS2019 and Windows
  • #283 Imported target "ifm3d::image" includes non-existent path "/usr/include/opencv"
  • Pcicclient deadlock after the timeout occur

Note : This release are for legacy devices (O3D3xx , O3X1xx).

v0.18.0

02 Jun 13:42
Compare
Choose a tag to compare

Changes between ifm3d 0.17.0 and 0.18.0

  • Support for latest O3D3XX firmware (1.30.5309)
  • Support for latest O3X firmware (1.0.156)
  • Deprecated ROS-specific apt repositories
  • Deprecated python2 support
  • Support for Ubuntu 20.04 Focal Fossa
  • Packaged and released ifm3d as a Snap
  • Added support for Ubuntu ARM64
  • Added support for L4T (Linux for Tegra) JetPack 4.3 and 4.4
  • Improved Windows build instructions
  • Created GitHub Actions CI workflows
  • Bugfixes:
    • #190 - Added missing include for Windows build

v0.17.0

17 Oct 14:35
Compare
Choose a tag to compare

Changes between ifm3d 0.16.0 and 0.17.0

  • Reverted changes in 0.16.0 (FrameGrabberUdp -- No viable path to UDP
    implementation in F/W)
  • Bugfixes
    • Issue with libcurl usage on 32bit targets
    • Corrected minimum firmware version required for inverse intrinsics
    • Corrected handling of spurious wakes in FrameGrabber
    • Fixed ComputeCartesian python unit test to properly blank out invalid
      pixels
    • Changed build Dockerfiles to use pip for numpy/pytest
    • Fixed race condition in PCICClient unit tests
    • Changed setup.py to honor the environment variables per the Windows installation instructions
    • Updated installation documentation for Windows

v0.15.1

10 Sep 17:24
Compare
Choose a tag to compare
Version 0.15.1