Repository navigation
LibXR v2.0.1, released with xrobot 1.0.1 and CodeGenerator 6.0.1.
Changes since V2.0.0
- MSPM0 and HPM: power managers, the
powerterminal command andCheckBootloaderPin(#335); drivers set their own interrupts and priorities and the C++ runtime symbols are provided (#331); I2C/SPI/PWM init macros take the right clocks (#329); UART configuration applied after TX end (#324); HPM drivers no longer call SDK board helpers (#332), dma_mgr required and initialized once (#325), GPIO port interrupt entries defined by the driver (#327); no GCC warnings (#326). - Structures: shared
ObjectPoolhandles with a single-acquirer free stack (#295, breaking for ObjectPool users; released as a patch version by maintainer decision);LatestSnapshotlatest-value mailbox (#320);SlotPoolfor small task/interrupt shared buffers, used for the TX queues of the STM32 bxCAN, STM32 FDCAN and CH32 CAN drivers (#340). - Core and tooling:
LIBXR_DEBUG_BUILDsettable for any build type (#336);RamFS::CreateCommandwithout an execution context (#337); C++20 required directly when the compiler is forced (#334); assertion policy applied across drivers and core (#321); bare-metaloperator new/delete(#330);string_viewslicing withoutsubstr(#328). - Fixes: CDC TX progress serialized through one consumer, so a completion interrupt no longer re-enters a task-side
ProgressTx()(#339); CDC transmits after enumeration on STM32 OTG (#333); ESP USB FIFO depth checked after power-up (#323); Webots timebase created before the STDIO threads (#322); STDIO and test semaphores kept alive through exit (#317, #318); XRUSB README merged into one bilingual file (#319).
Known limitation: HPM ROM ISP over USB did not enumerate on HPM5301/5361 in tests (see #335).
Release pull request and acceptance: #338