s32ct-dca-facade
Headless facade that fronts the DCA (Device Configuration Area) tool of NXP S32 Configuration Tools via `nxp_s32ct_configure(action="dca", ...)`. Triggers when users ask to import a binary DCA image,
SKILL.mdskills/s32ct/s32ct-dca-facade/SKILL.md
GitHubS32CT DCA - Headless Facade
Thin per-tool facade over the generic s32ct-cli skill that exposes only the
flags relevant to the DCA (Device Configuration Area) tool of S32
Configuration Tools. This skill fronts the nxp_s32ct_configure MCP tool with
action="dca". All shared launcher plumbing, validation, and auto-retry
behavior is inherited from s32ct-cli.
How DCA relates to DCD
DCA is not a standalone headless tool. The S32CT DCD plugin registers a
single headless tool (id="DCD", commandline_app=CmdApplication) whose
command-line application drives DCD, DCF and DCA. At runtime the active
variant is chosen automatically from the loaded processor
(DCDUtils.getActiveToolAndController ->
isDCDProcessorSelected / isDCFProcessorSelected / isDCAProcessorSelected).
Consequences:
- The
dcaaction pre-fillstool_name="DCD"under the hood - the launcher is invoked with-HeadlessTool DCD, and the tool responds as DCA when the.mextargets a DCA-capable SoC. - The CLI grammar is identical to DCD:
-ImportBin,-ValidateConfiguration(surfaced asvalidate=True), and the export verbs-ExportBin,-ExportC,-ExportAll(which also emits-ExportMEXin the framework). - DCA authentication is CMAC with a fixed 192-byte structure; there are no DCA-only CLI flags beyond the shared import / validate / export verbs.
When to use
Use this skill when, on a DCA-capable SoC, you need to:
- Import a binary DCA image into a
.mexvia-ImportBin. - Validate a DCA configuration.
- Export DCA artifacts: binary, C source, or all.
Migration note: There has never been a standalone dca MCP tool. Use the
unified nxp_s32ct_configure dispatcher's dca action (or action="dcd"
directly, which is equivalent since both map to -HeadlessTool DCD).
Do not use this skill for:
- Cross-tool operations combining flags from multiple tools -> use
s32ct-cli(action="cli"). - DCD command (write/check/nop) or DCF record configuration - use
s32ct-dcd-facade/s32ct-dcf-facade. - IVT / QuadSPI / eFUSE binary handling - use the matching facade.
Available Capabilities
| Type | Name | Invocation |
|---|---|---|
| MCP tool | nxp_s32ct_configure |
nxp_s32ct_configure(action="dca", ...) |
| Resource | skill://nxp_s32ct/s32ct-dca-facade |
Auto-loaded on trigger |
Quickstart
1. Load or bootstrap a .mex
Tool: nxp_s32ct_configure
Action: dca
Input: project_path="<path>.mex" # OR empty_config=True + mcu + sdk_version
Output: {exit_code, command, stdout_tail, stderr_tail, values, summary}
2. Apply DCA-specific modifications and export
nxp_s32ct_configure(
action="dca",
project_path="<path>.mex",
import_bin="<dca>.bin", # -ImportBin
validate=True, # -ValidateConfiguration
export_kind="ExportBin", # or ExportAll|ExportC|ExportMEX
output_dir="<output-dir>",
)
3. Verify the export
Check that output_dir contains the expected artifacts (e.g.
dcaBinaryImage, dcaCImage.c) and exit_code == 0.
Inputs
Mode (mutually exclusive)
project_path- existing.mexto load via-Load.empty_config- ifTrue,-EmptyConfig; requiresmcu+sdk_version.config_name--ConfigName <...>.
Tool-specific
import_bin- DCA binary via-ImportBin.validate- run-ValidateConfigurationon the configuration.
Export
export_kindin {ExportAll, ExportBin, ExportC, ExportMEX}.output_dir- required whenexport_kindis set.
Launcher / plumbing (shared with s32ct-cli)
data_dir(-data <workspace>),extra_args,s32ct_launcher,launcher_ini,timeout_s(default 600).
Output
Same as s32ct-cli:
{ exit_code, command, stdout_tail, stderr_tail, values, summary }.
Guardrails
Scope
- Only drives the dca action of
nxp_s32ct_configure(which maps to-HeadlessTool DCD). For cross-tool workflows uses32ct-cli(action="cli") instead. - Applies only to SoCs that provide the DCA variant. On a DCD/DCF SoC the same launcher call operates on DCD/DCF instead - confirm the target SoC.
- Does not modify hardware or program devices.
Destructive actions
- Exports overwrite files in
output_dir. Confirm the target directory is safe or empty before invoking withexport_kindset.
Refuse-and-escalate
- Missing
project_pathAND missingempty_config/mcu/sdk_versioncombination -> ask the user which mode they want. - Unknown
export_kindvalue -> list the allowed enum values and ask. - Retryable
IllegalStateException-> auto-retry once, then escalate.
Validation loop
exit_code == 0.output_dircontains the expected artifacts for the chosenexport_kind.- If
validate=True, checkstdout_tail/summaryfor validation OK ("No problems found").
Out of scope
- Interactive GUI operations - use S32 Configuration Tools directly.
- Cross-tool operations combining multiple tools' flags - use
s32ct-cli. - Distribution portability (
desktopvsintegrated_s32ds) - handled transparently by the MCP; sees32ct-distributions.
See Also
s32ct-cli- generic dispatcher with the full ~50-parameter surface.s32ct-dcd-facade,s32ct-dcf-facade- sibling Device-Configuration tool facades that share the same DCDCmdApplicationand CLI grammar.s32ct-distributions- launcher selection.