Recent Releases of airo-mono
airo-mono - v2025.8.0
This release upgrades to NumPy 2.0 and ZED SDK 5.0. It may introduce breaking changes in downstream code, requiring you to also upgrade to NumPy 2.0.
2025.8.0
Breaking changes
airo-tulip
- Update airo-tulip to version 0.4.0, which returns odometry to the standard drive encoder based method.
NumPy 2
airo-mono is finally upgrading to NumPy 2.0! This is a major change that may break compatibility with some packages that depend on NumPy. Please read the notes below carefully. In particular, the ZED SDK has been updated to version 5.0, which requires CUDA 12.8 to be installed. You will need to update your CUDA installation and upgrade your ZED SDK to version 5.0 to use the ZED camera with airo-mono.
This has implications for downstream packages (or your own code). If you depend on certain software that requires an older version of NumPy, you may need to either: - update that software to a version that is compatible with NumPy 2.0, or - stick with airo-mono version 2025.7.0 or earlier until the software you depend on is updated.
The following changes have been made to airo-mono to support NumPy 2.0:
- Update NumPy to version > 2.0, which may break compatibility with some packages that depend on NumPy.
- This forces downstream code to be compatible with the latest NumPy version.
- With this change, we also update the OpenCV version to 4.10, which is compatible with NumPy 2.0.
- With this change, we also update the Rerun version to 0.23, which is compatible with NumPy 2.0.
- With this change, we also update the ZED SDK to version 5.0, which is compatible with NumPy 2.0.
- Update ZED SDK to version 5.0, which changes the API for the ZED camera provided by airo-camera-toolkit in the Zed class.
- This requires CUDA 12.8 to be installed.
- Depth modes have been replaced: you can now choose between Zed.NEURAL_LIGHT_DEPTH_MODE, Zed.NEURAL_DEPTH_MODE, and Zed.NEURAL_PLUS_DEPTH_MODE.
- This improves depth quality, especially when using the neural plus model.
- This also improves depth performance, especially when using the neural light model.
- For more information, see the ZED SDK 5.0 blog post.
Added
- Add documentation on how to include custom sensors for odometry.
Changed
Fixed
- The
KELORobilemove_platform_to_posemethod now calls the correctget_odometrymethod, allowing custom odometry implementations.
- Python
Published by m-decoster 6 months ago
airo-mono - v2025.7.0
This release updates airo-camera-toolkit to use airo-ipc for multiprocessing and includes a fix to the closed loop movement of the KELORobile platform with specific angles (multiples of 360 degrees).
2025.7.0
Breaking changes
Added
Changed
- Update airo-tulip to version 0.3.0 for better orientation estimation.
- Use
airo-ipcfor multiprocessing inairo-camera-toolkit.
Fixed
- Fixed a bug when the KELO Robile platform was moving around multiples of 360 degrees, where the target angle would switch.
- Fixed a bug where the KELO Robile platform would refuse to move to a pose if delta angle was close to 0.
Removed
- Python
Published by m-decoster 8 months ago
airo-mono - v2025.4.0
2025.4.0
This release marks the availability of airo-mono packages on PyPI:
- https://pypi.org/project/airo-teleop/
- https://pypi.org/project/airo-spatial-algebra/
- https://pypi.org/project/airo-robots/
- https://pypi.org/project/airo-dataset-tools/
- https://pypi.org/project/airo-camera-toolkit/
- https://pypi.org/project/airo-typing/
This makes it significantly easier to use airo-mono, with a simple pip install.
Breaking changes
- internal dependencies are now listed as regular dependencies in the
setup.pyfile to overcome issues and make the installation process less complicated. This implies you need to install packages according to their dependencies and can no longer use theexternaltag as inpip install airo-typing[external]. see issue #91 and PR for more details. PointClouddataclass replaces theColoredPointCloudTypeto support point cloud attritubes
Added
- add method
as_single_polygonto combine disconnected parts of a binary mask into a single polygon to theMaskclass, useful for data formats that only allow for a single polygon such as YOLO. PointClouddataclass as the main data structure for point clouds in airo-mono- Notebooks to get started with point clouds, checking performance and logging to rerun
- Functions to crop point clouds, filter points with a mask (e.g. low-confidence points), and transform point clouds
- Functions to convert from our numpy-based dataclass to and from open3d point clouds
BoundingBox3DTypeZed.ULTRA_DEPTH_MODEto enable the ultra depth setting for the Zed camerasOpenCVVideoCaptureimplementation ofRGBCamerafor working with arbitrary camerasMultiprocessRGBRerunLoggerandMultiprocessRGBDRerunLoggernow allow you to pass anentity_pathvalue which determines where the RGB and depth images will be loggedMobileRobotandKELORobileinterface and subclass added, to control mobile robots via theairo-tulippackage- drivers for a Schunk Gripper using a USB connection, might require additional work to make them more stable. Remko is the go-to person.
- airo-mono packages are now on PyPI 🎉
Changed
coco-to-yoloconversion now creates a single polygon of all disconnected parts of the mask instead of simply taking the first polygon of the list.- Dropped support for python 3.8 and added 3.11 to the testing matrix #103.
- Set python version to 3.10 because of an issue with the
ur_rtdewheels #121. Updated README.md to reflect this change. URrtdewill now try connecting to do control interface up to 3 times before raising aRuntimeError.- Renamed
Zed2itoZedandzed2i.pytozed.py, but kept the old names as aliases for backwards compatibility - Locked
numpyto versions<2.0for compatibility withopencv, since we are using a locked version ofopencvthat is not compatible with newer versions ofnumpy.
Fixed
- Fixed bug in
get_colored_point_cloud()that removed some points see issue #25. - Fixed bug requiring unplug-and-plug of USB cable for Realsense: see issue #109.
- Fixed bug with Realsense cameras raising
RuntimeErrorsin RGB-depth alignment when CPU is busy. The camera will now try again once after 1 second. - Removed camera imports in
airo_camera_toolkit.cameras: see issue #110. - Added
__init__.pytorealsenseandutilsinairo_camera_toolkit.cameras, fixing installs with pip and issue #113. - Fixed bug that returned a transposed resolution in
MultiprocessRGBReceiver. - Using
Zed.PERFORMANCE_DEPTH_MODEwill now correctly use the performance mode instead of the quality mode. - Shared memory files that were not properly cleaned up are now unlinked and then recreated.
- The wait interval for shared memory files has been reduced to .5 seconds (from 5), to speed up application start times.
Removed
ColoredPointCloudType
- Python
Published by m-decoster 11 months ago