Releases: ifm/ifm3d
v1.3.2
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
tocommon
. Update your includes accordingly: use#include <ifm3d/common/json.hpp
instead of#include <ifm3d/device/json.hpp
.
v1.2.6
❗ 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
Start
ed after it was previouslyStop
ped - Fix a typo in the
transform_cell_center_to_user
variable (previously calledtransfor_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
andO3R::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
v1.1.0
❗ This release contains breaking changes: Migration Guide ❗
Added
- Change
FrameGrabber::Stop
to non blocking call and now returnsstd::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
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
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
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
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
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
Version 0.15.1