CL API v0.3.1 (2026-06-10)
This is the second release of CL API. Major changes since previous version:
- The API is now contained in one header file (cl_api.h)
- The previous usage of indexes for device/interface has been changed to utilize handles (opaque pointers)
- By default devices will be sorted by serial number when iterated over
- There have been some changes to device name, what was previously device/interface name is now device/interface nickname. There is a separate cl_device_get_name() that will respond with the product name always.
- There is now support for updating device firmware baked into the API
- New APIs:
- cl_device_get_nickname
- cl_device_set_nickname
- cl_interface_get_nickname
- cl_interface_set_nickname
- cl_interface_get_tc10_state
- cl_interface_send_tc10_command
- cl_device_update_firmware_from_blob
- cl_device_update_firmware_from_path
- cl_format_serial_number
- cl_format_ean
- cl_get_api_version
- New version of cl_client (new name for terminal_app that shipped with the
previous version)
- The new terminal application can run in interactive and non interactive mode, which allows both exploration and scripting.
- A lot of work has gone into improving command flags and making it easier to use and figure out.