Ensenso SDK 3.6.1621 & C-Series Firmware 1.2.31

We just released Ensenso SDK 3.6.1621 and C-series firmware 1.2.31. This is a bugfix release.

Changelog

  • C-Series: Fix a bug where sometimes not all sensors could be detected after booting the device. Requires firmware 1.2.31. [#5029]
  • NxLib: Improve stability of pattern detection when refinement is enabled. [#5038]
  • NxLib: Rendering commands return the error message when creating an OpenGL context failed. [#5091]

Can you tell me which SDK version has the best reliability and stability? Our application scenario does not allow frequent version upgrades.

We are currently using 3.1.996.

We usually recommend the latest version from the download list.

We use semantic versioning, so you only get all the features and compatibility with new hardware on the latest minor version. If you don’t need this and the version you are using works fine for your use case, you can continue to use it indefinitely or only upgrade to bugfix releases within your current minor version.

Of course it happen that new bugs are introduced in new minor versions despite our testing. That might be a reason to not always use the latest minor version. The current 3.6 branch was first released in January and has since already gotten some bugfix releases. I would consider it quite stable at the moment.

Hi Daniel,

Thank you for your reply and recommendation!

I am now more worried about unexpected errors caused by using the latest version, such as app crashes and memory leaks (I found that the system memory usage continued to increase after calling nxLibInitialize(true) in one version, and finally I changed to a newer version and it worked).

When encountering errors, the exception seen by the system event manager points to NxLib64.dll sometimes, and I don’t know how to debug further because the SDK core API is closed source. Can you share your experience in solving program crashes?

A little bit of memory increase is normal even if you don’t interact with the NxLib (as long as it stops at some point). The NxLib has several threads running in the background for e.g. discovering cameras in the network.

We did fix a memory leak of ~5MB/hour in version 3.6.1617 as noted in the changelog, which was present for several minor versions. If you tried an earlier version that that might be what you observed.

A crash shouldn’t happen, but there were several that we already fixed between 3.1 and 3.6. Some of them might still be present in the latest bugfix versions of some minor versions. A I said, we would recommend the latest 3.6 version, which has all known crashes fixed. If you still encounter a crash, please collect a full dump as described here and send it to the support (not publicly here on the forum) together with the exact version you used.