Skip to content

Zaber Motion Library Changelog

2019-11-04, Version 1.0.6

  • Bug fixes and Improvements
    • Fixing compatibility issues with products predating Firmware 5.34 (Auto-Reply setting missing)

2019-11-04, Version 1.0.5

  • Bug fixes and Improvements
    • Improved the error message when the Device Database service is not reachable
    • Ensured compatibility with upcoming Firmware 7 products

2019-10-23, Version 1.0.4

  • Bug fixes and Improvements
    • Added support for Binary Protocol with Firmware version lower than 6.06

2019-10-21, Version 1.0.3

  • Bug fixes and Improvements

    • Improved Firmware 7 support (commands and settings formatting).
    • Added unit conversions and command formatting to Device class.
    • Fixed failure of GenericCommandMultiResponse for more than 1k replies.
    • Fixed JavaSript initialization when importing directly from dist folder
  • Documentation changes

    • Adding enum values to the API reference

2019-10-04, Version 1.0.2

  • Bug fixes and Improvements

    • Improved performance of GenericCommandMultiResponse (no waiting when targeting particular device).
    • Removing unused dependencies of the JS library.
    • Fixing protobuf dependency version of the Python library.
  • Documentation changes

    • General improvements of the texts.

2019-09-23, Version 1.0.1

  • Bug fixes

    • Fixing typescript compilation errors due to empty namespaces.
    • Fixed behavior: Binary connection was getting closed due to unmatched error. Now it emits unknownResponse.
    • Fixed behavior: Commands are now preempted even without matching requests.
  • Documentation changes

    • Adding C++ examples and installation instructions.
  • API changes

    • C++ API
    • Reordering genericCommand arguments in binary Device and Communication class (Unreleased)

2019-08-30, Version 1.0.0

  • Documentation changes
    • Fixing couple of mistakes in example codes
    • Improving texts and instructions

2019-08-27, Version 0.0.27

  • Documentation changes

    • Fixing couple of mistakes in example codes
  • Bug fixes

    • Fixing missing types in Typescript namespaces
    • Fixing harmless error that occasionally pops up in Python on Mac OS
    • Fixing prepareCommand in Python

2019-08-19, Version 0.0.26

  • API changes

    • Breaking change: Unit of measure names in JavaScript and Python have been changed to match common standards
    • Breaking change: Some method names have changed to improve clarity and consistency
    • Connection.Device() and Lockstep() are now GetDevice() and GetLockstep()
    • Device.Axis() and Lockstep() are now GetAxis() and GetLockstep()
    • Warnings.Get() and Clear() are now GetFlags() and ClearFlags()
  • Documentation changes

    • Many updates to reflect reviewer contributions
    • Docs about finding the right serial port amended to cover direct USB connections
    • Some site navigation controls have been altered
    • Binary protocol support is now fully documented
    • A temporary banner has been added stating this library is in early development and subject to change
  • Bug fixes

    • Fixed errors when using Binary controller + peripheral combinations

2019-08-12, Version 0.0.25

  • Adding settings constants for ASCII Protocol

  • Finalizing Binary Support

  • Fixing various issues with C++

2019-07-24, Version 0.0.24

  • Extending settings API to provide arbitrary unit conversions

  • Providing properties on Axis and Device that expose device identity information

2019-07-12, Version 0.0.23

  • Python bugfix
    • Fixed a circular dependency problem that prevented using the ASCII Device class in Python.

2019-07-12, Version 0.0.22

  • I/O support

    • I/O pins are now supported on controllers and integrated devices that have them.
    • There is a device I/O how-to guide in the documentation.
  • Lockstep support

    • Lockstep mode is now supported on two-axis ASCII devices.
    • There is a lockstep how-to guide in the documentation.
  • Binary generic commands

    • There is now a second Connection class that supports the Binary protocol.
    • Binary generic commands (without unit conversions) can be sent or broadcast.
    • Spontaneous binary messages such as move tracking become events you can subscribe to.
    • Documentation for the Binary protocol is completely separate from ASCII but has the same structure.
  • ASCII-specific namespace (BREAKING change)

    • Object types specific to the ASCII protocol have been moved into an ASCII namespace or subdirectory.
    • Import statements in existing code will need modification - please refer to the updated documentation.
    • The API reference now indicates what import statements are needed for each type.
  • Example projects

    • The documentation includes downloadable, self-contained example projects for ASCII in several programming languages.
  • Database usage documentation

    • There is a how-to guide explaining how to use the device database offline, how to cache data.
    • For Zaberians, the how-to also explains how to use the master database.
  • Exception types (BREAKING change)

    • The numeric MotionLibErrorType code no longer exists
    • Instead there are different subclasses of MotionLibException to report different error conditions.
    • The list of exception types can be seen at the bottom of the API reference section for MotionLibException.

2019-06-12, Version 0.0.21

  • Java Support

    • Full support of Java programming language with the API matching the APIs of other languages.
    • Available through Maven.
  • Changed type of the serial number in device identity to unsigned integer

    • Ensuring that the library covers the full range of Zaber serial numbers.
  • Documentation improvements

    • Improved navigation in Getting Started guide.
    • Improved responsive design.
    • External links are marked with an icon.
    • Language specific paragraphs.

2019-06-05, Version 0.0.20

  • Fixing parsing of serial number
    • Only affects Zaber internal development.

2019-05-28, Version 0.0.19

  • Renaming Communication class to Connection

  • Adding renumber method to Connection class

    • The method allows to automatically assign addresses to a device chain.
  • Python asyncio

    • All blocking methods in Python got new asyncio counterparts with _async suffix.
  • Improving the error message when the setting is not supported by the device

2019-05-15, Version 0.0.18

  • Device Database store

    • It is a feature allowing to store Device Database information to hard-drive to minimize the usage of web-service API.
  • Adding serial number to device identity

    • Queries device for system.serial and exposes the returned information in a field.
  • Renaming method wait_till_idle to wait_until_idle

  • Device settings API

    • Allows read and write device settings using API similar to axis settings.
  • Improving error message when device rejects the read or write of settings

  • Device Database documentation

    • Adding more information about Device Database and its API.
  • Sorting classes in the reference

  • Fixing letter case of enum values in the reference (Python, Js)

  • Improving grammar in documentation

    • Improving texts on the portal.
  • Adding an appropriate license to source code and packaging

    • Additionally, collecting licenses of all used libraries and tools.
  • Adding Changelog