v1.4.11 (2026-09-17)

Download

Important Notes

pxcc
  • pxcc is experimental and subject to change without deprecation. Please check the documentation for the latest updates.

New

cli
  • CLI: Added telemetry <device_id>, which collects the device’s full diagnostic dump (system-info, log, pcu -nz, cxllog) in a single round trip over the mailbox.
pxcc
  • A kernel parameter can now be mu::input_ptr<T> or mu::output_ptr<T>. execute() accepts a raw pointer or an NDArray for such a parameter.
  • A kernel that const_casts away the const of an mu::input_ptr<T> parameter now fails the build.
  • pxcc now stops the build on a flag that misspells a pxcc option. The message names the nearest option.
pxl
  • PXL: Added pxl::isDeviceMemory() to check whether a pointer refers to device-resident memory.

Changed

cli
  • CLI: uart <device_id> <command line> now prints what the firmware command printed; previously the output only reached the board serial console.
pxcc
  • Warning options such as -Wall, -Wextra, and -Werror now reach the MU device compiler. Pass -Xmu=-Wno-<name> to turn one warning group off on the device side.
  • A source file that carries no device code no longer leaves an mu.<name>.o file beside its host object. pxcc also removes one that an earlier build left there.
  • -Xmu=-mcpu=<name> now replaces the default -mcpu rather than adding a second one.
  • --version now prints the version as the commit date of the build in YY.MM.DD form. The output also names the host compiler and the mu llvm version.
  • --no-default-config now accepts the values 1 and true only. Any other value stops the build.

Fixed

cli
  • read-*-log no longer crashes on a device that does not report its log region layout; the commands now print the reported meta_size / region_size and exit normally.
  • read-*-log rejects stale or inconsistent log meta, together with the raw meta words, instead of issuing an oversized device read.
  • A log ring buffer that is exactly full is no longer reported as Log is empty, and a wrapped 31-bit entry counter no longer inverts the rotation check.
  • num_log_entry is parsed as the full upper 32 bits of the layout word, matching the firmware LogSize_t definition.
pxcc
  • Fixed a build failure when the command line names the host clang resource directory through -isystem, -I, or -Xmu=-I. A directory written with a trailing slash now works as well.
  • Fixed a device compile error on a type or a macro that a kernel reached through a header holding nothing but an #include line for a second header.
  • Fixed a link that silently dropped the kernels of a static library named by -L and -l.
  • Fixed a device build failure on a kernel that calls a math function through <math.h>. The same call through <cmath> always built.
  • Fixed a cache hit that served the object file of a build started in another directory.
pxl
  • PXL: Fixed a Job inheriting a device error left behind by the previous Job’s fault, which failed its module load before it ran anything.
  • PXL: Fixed a hang when several Maps of one Job run at once, where an execution ended without telling the caller.
  • PXL: Fixed stale reads and lost writes on the QEMU emulator when running with CXL 2.0.

Docker Image

  • Image Name: xcenadev/sdk:v1.4.11
  • Pull Command:

    docker pull xcenadev/sdk:v1.4.11