Skip to main content
mission control + sdk

CosmicSDK v1.4.0: USB port configuration and finer-grained I3C control

August 14, 2026 · 1 min read

CosmicSDK v1.4.0 is here. This release adds a new USB configuration API, extends fine-grained transfer control across the entire I3C command set, and introduces connector and richer GPIO event notifications. As always, everything lands across the C, C++, and Async C++ APIs, the Python, Java, and C# bindings, and the WebAssembly layer.

The headline is USB configuration. New setUsbConfig() and getUsbConfig() calls read and set how a device's USB virtual COM port (VCOM) behaves, selecting from CDC modes for UART passthrough, an interactive terminal shell (Supernova), Binho Nova compatibility, and RS-485 or CAN-FD bridging (Pulsar). A set of no-change sentinel values lets you update one part of the configuration while leaving the rest untouched.

On the I3C side, the I3cTransferFlags you already used for SDR transfers now apply to every named CCC command, so you can complete a CCC without a bus stop for repeated-start sequences and control the HDR-DDR exit pattern the same way. ENTDAA can now assign dynamic addresses by matching PID, BCR, and DCR; three new slow push-pull clock rates (1 MHz, 400 kHz, and 100 kHz) join the existing set; and SDR transfers now default to starting with the 0x7E broadcast address in most bindings. New notifications round it out: an I3C connector event reports plug and unplug along with the identified connector type, and GPIO interrupts now report the triggering edge and logic level.

New USB configuration and I3C connector examples ship for C++, C, Python, Java, and C#, alongside a new "CDC Modes Getting Started" guide, System API reference pages, and documented Linux build prerequisites. Browse the documentation, or read the v1.4.0 changelog for the full list of changes.

Get Mission Control + SDK updates by email