Skip to content

Releases: luxonis/depthai-python

Release v2.31.0.0

28 Nov 12:31
97f9d6f

Choose a tag to compare

Features

  • Add tuning for the IMX577 sensor, removing the previously present blue tint
  • Improve IMX678 support on RVC2 with better black level correction, improving brightness and color accuracy

New devices support

  • Add support for a new revision of OAK-Thermal (R8)
  • Add support for OAK-ToF (R4)
  • Add support for a new revision of OAK-D-S2-[Pro]-Wide OV9728 variant (R8)

Bug fixes and stability

  • Fix a rare issue of IMU preventing a device reboot
  • Fix a timestamp overflow bug on the BNO08x IMU
  • Fix an edge case where dai.Device constructor could get stuck indefinitely if the device lost connection at the wrong time by adding a timeout internally
  • Turn on the watchdog early during discovery of RVC2 USB devices to avoid soft bricking the device along with handling the case where the device gets into that state to recover it on the next boot
  • Fully disable crashdump extraction when DEPTHAI_CRASHDUMP=0 is set

Misc

  • Add support to explicitly remove tracklets in ObjectTracker node
  • Remove limitation for the maximum watchdog frequency from 4.5 seconds to unlimited ("infinity") by adding a software watchdog in firmware

Release v2.30.0.0

18 Mar 17:56

Choose a tag to compare

Features

  • Add RVC4 discovery to point users to v3 version of the library for OAK4 devices
  • Add support for a new VCM enabling autofocus on new IMX378 CCMs

Bug fixes

  • Fix an edge case in ImageManip to make https://github.com/geaxgx/depthai_hand_tracker run in edge mode again
  • Fix an edge case when sending MessageGroup from host to device and using more than 4 messages
  • Fix a bug where standolone logging would cause a memory leak

Release v2.29.0.0

25 Nov 10:03
84daffe

Choose a tag to compare

Features

  • Add the ability to change the calibration on the device in runtime with the new dai::Device.setCalibration() method and to retrieve it with the dai::Device.getCalibration().
  • New StereoDepth presets:
    • DEFAULT
    • FACE
    • HIGH_DETAIL
    • ROBOTICS
  • Multiple camera improvements (more details in luxonis/depthai-core#972):
    • Expose more downsampling modes when picking a lower than native resolutions
    • Expose more binning modes when binning is picked on IMX582/586 (sum and avg)
    • HDR on IMX582/586
    • Option to bypass 3A for having manual expose/ISO take effect faster
    • Initial support for new Sony 4K Starvis sensors: IMX678 and IMX715
    • Option to set the main camera to drive auto-exposure and auto-white-balance in multi-camera configurations
  • Improved StereoDepth filtering and an option to use a set a custom order of filters
    • Disparity is first scaled to 13 bit before going through filtering, which results in filters being more effective.

Misc

  • Remove false reports on crashes that happened on device destruction
  • Add getWidth() and getHeight() API to EncodedFrame

Release v2.28.0.0

19 Aug 22:24
837a361

Choose a tag to compare

Features

  • Changed the automatic crashdump collection to always on unless DEPTHAI_DISABLE_CRASHDUMP_COLLECTION is set.
  • Added DEPTHAI_ENABLE_ANALYTICS_COLLECTION environment varialbe - when set, analytic data (pipeline schema) is sent to Luxonis which will be used to further improve the library.
  • Undistort both outputs of ToF by default.
  • Improved 3A syncing on OAK-D-LR
  • Added support for YoloV10

Bug fixes

  • Fix Camera node to correctly allocate resources for undistortion
  • Fix StereoDepth node when decimation filter and depth alignment are used
  • Fix host timestamps of thermal frames to be synced

Misc

  • Updated XLink to support clangd and shared libraries on Windows:
  • Remove a custom assert to always produce a crash dump to improve the UX with the automatic crashdump collection
  • Increased watchdog priority on device side to improve stability during high load

Release v2.27.0.0

27 Jun 10:23
8e1c96f

Choose a tag to compare

Features

  • Automatic crash dump collection when DEPTHAI_ENABLE_FEEDBACK_CRASHDUMP is set.

Bug fixes

  • Fix PointCloud generation when depth comes out of the ImageAlign node
  • Fix IMX214 (OAK Lite) potential crash on init with more complex pipelines
  • Fix a rare bug on a crash if a camera stream is closed after 1 second while AF is running

Python only

  • Add support for numpy 2

Release v2.26.0.0

26 May 06:19
ad4ddea

Choose a tag to compare

Features

  • ImageAlign node
    • it can align depth to any other sensor on the device - works for ToF too.
    • it can align two sensors with a static depth (default at infinity), useful for thermal-rgb alignment
  • Cast node
    • Cast NNData message to ImgFrame
    • Useful in case apps need to use outputs from NeuralNetwork node to be fed into nodes that only accept ImgFrame
  • Full ToF support
    • Running live at 30 FPS
    • Measuring range of 20cm - 6m
    • < 1% error across the range
  • Support for ToF in spatial nodes
  • Add an option to limit bandwidth over XLink setXLinkRateLimit(int maxRateBytesPerSecond, int burstSize, int delayUs)

Stability improvements and bug fixes

  • Improved PoE stability on reboots - eliminate the case where powercycle of the device was sometimes needed
  • Improved runtime stability of heavy pipelines by increasing priority of the cameras in the NoC
  • Improved ImageManip stability
  • Improved XLink communication to be able to detect memory corruption and avoid it
  • Fix a bug where stereo rectification was inaccurate when the calibration data didn't contain direct link between the two inputs
    • Relevant for custom setups on FFC devices

Misc

  • Improve numerical stability of the rectification algorithm
    • Improves stereo quality on wide FOV sensors

Python only

  • Add docstrings to stubs - docs are shown in Vscode by default now
  • Fix stubs/autocomplete to correctly work with with dai.Device() as device
  • Fix stubs/autocomplete to return the correct type in getCvFrame function.

Release v2.25.1.0

22 Apr 16:52
4d85750

Choose a tag to compare

Features

  • Added DeviceBootloader::getFlashedVersion to retrieve the bootloader version that is flashed on device.

Bug fixes

  • Fixed fsync on OAK-D-SR.
  • Mitigated boot issue on OAK-D-SR-POE and OAK-T.
  • Fixed compilation in same cases, because of problems with jsoncpp. (luxonis/depthai-core#980)

Misc

  • Added thermal neural network example (examples/NeuralNetwork/thermal_nnet.py).

Release v2.25.0.0

09 Mar 14:49

Choose a tag to compare

Features

  • PointCloud node along with the PointCloudData message
    • On device pointcloud generation
    • Native conversion to PCL message type - similar to getCvFrame()
  • Support for the OAK Thermal
  • New setManualFocusRaw() API with more granularity for setting manual focus position
  • New getStereoPairs() and getAvailableStereoPairs() API to allow more device agnostic programming
  • Add the intensity output to the ToF node
  • Add the crop sensor configs in getConnectedCameraFeatures() now contain how each of the resolutions is cropped from the native sensor resolution

Python only features

  • Added depthai binary
    • Useful to quickly list out devices, run cam_test, etc.
  • Added Python 3.12 wheels
  • Added 32 bit wheels for bookworm OS on RPI (Python 3.11)

Bug fixes

  • Bug fix for v2.24.0 regression with flashing the bootloader link
  • Bug fix in message groups for large resolution frames when going through XLinkOut node
  • Bug fix to apply AE limit during AF lens movement (before the fix, the AE limit wasn't applied during active AF movements)
  • Bug fix for grayscale VideoEncoder node with 2 inputs of different sizes

Misc

  • Fix timings for IMX214 4K resolution, which were slightly off

Release v2.24.0.0

14 Dec 08:43
7b57b28

Choose a tag to compare

Features

  • New nodes and messages:
    • Sync node - syncs multiple inputs based on the timestamp, outputs a message group message
    • Demux node - demultiplexes message group in multiple messages
    • Message group message - a new message that can contain a map of arbitrary depthai messages, it's the output of the sync node and input to the demux node
    • Encoded frame message - a new message specialized for encoded frames
    • New output for the VideoEncoder node (out) for the encoded frame message
  • Automatic crash dump retrieval for firmware crashes
  • Added setIrFloodLightIntensity and setIrLaserDotProjectorIntensity methods for setting the intensity normalized between 0 and 1
  • Added getConnectionInterfaces method to retrieve the list of available interfaces on a device
  • Added an option to cap maximum time for exposure when using auto exposure with setAutoExposureLimit
  • Initial integration for IMX283 and IMX462
  • Improve time-syncing between the host and device to achieve sub 300 us offset
  • Improved max FPS and image quality under low light for OV9282 and OV9782 luxonis/depthai-core#926 ,new ranges per resolution of:
    • THE_800_P: 1.687 .. 129.6 fps
    • THE_720_P: 1.687 .. 143.1 fps
    • THE_400_P: 1.687 .. 255.7 fps

Bug fixes

  • Avoid overflow for XLink profiling luxonis/depthai-core#933
  • Improve XLink stability when using multiple devices luxonis/XLink#73
  • Fix a rare bug where the device would hand in the constructor luxonis/depthai-core#922
  • Fix a bug where XLinkIn didn't work correctly for very small and very large buffers
  • Fix a bug for running multiple stereo nodes with a shared input

Misc

  • On multi-input NeuralNetworks set the output NNData to the newest input timestamp (previously undefined)
  • Add NOC DDR usage reporting on DEPTHAI_LEVEL=info

Release v2.23.0.0

05 Oct 11:03

Choose a tag to compare

Bindings specific

  • Added armv6l support (for all builds/releases)
  • Fixed docstring creation

Features

  • ImageManip - configurable interpolation type
  • Script - added missing bindings for reading device releated data (on device calibration, etc...)
  • Added Device::getDeviceName and Device::getProductName that target a user name and a "SKU" name
  • Timesync - improved synchronization with tweaks to XLink
  • Calibration - added housingExtrinsics

Bug fixes

  • Fix CAM_D enumeration on OAK-FFC-4P R7
  • BMI270 IMU - fix latency when slow reading
  • Device related logging
  • OAK-D-SR-POE - new revision bugfixes
  • Fix 4 cameras crash on PoE due to memory allocation
  • Fixed incorrect warp in issue #882

Misc

  • #867
  • #873
  • XLink - updated number of devices to 64
  • ToF - median filter and Z map support (still not the final decoding pipeline)
  • hasAutofocus value fixed and introduced hasAutofocusIC
  • Added timestamps and sequence numbers to all Message types
  • Added DEPTHAI_ENABLE_LIBUSB for potentially disabling USB protocol (to not require libusb library)
  • OV9782 and AR0234 improvements:
    • OV9782 FPS improvements
    • AR0234 max exposure time bump to 33ms and improved FSync INPUT mode