Component metadata
component_metadata.yaml names a Custom Component in the catalogue and binds the files in the folder.
It is written in the component folder; it is not an upload on the settings dialog.
A pack also needs settings_map.yaml, firmware_map.yaml, and actions.yaml.
Refer to Custom Component files.
The Component Pack CLI in the Profinity SDK validates that folder and writes the bundle.
| Key | Meaning |
|---|---|
version |
Document stamp. Set it to "2.3" |
name |
Catalogue name. It must be usable as a folder name, or validation fails with Component name is not a valid folder name |
description |
Catalogue description |
author |
Author. A .nupkg requires a non-empty author |
pluginVersion |
Semantic version. A .nupkg requires one |
requiredSdkVersion |
SDK version the pack needs, such as ">=1.0.0" |
componentType |
CustomComponent |
componentGroup |
Catalogue group. The sample uses Custom |
allowMultiple |
true lets a profile hold more than one instance |
mainScript |
Path of the main script, relative to the component folder |
dbcFile |
DBC file name |
dashboardFile |
Dashboard file name |
rebaseDbc |
Same as Rebase DBC on the component |
rebaseAddress |
Same as Rebase Address on the component |
deviceIdFilter |
Device identifier, as a hex value such as 0x1000 |
version: "2.3"
name: Hello
description: First Custom Component tutorial
author: Prohelion
pluginVersion: 1.0.0
requiredSdkVersion: ">=1.0.0"
componentGroup: Custom
componentType: CustomComponent
allowMultiple: true
mainScript: scripts/hello.py
dbcFile: hello.dbc
dashboardFile: hello.yaml
That file is the metadata from the Hello component pack.
After an administrator uploads the bundle under ADMIN > Components & Plugins, ADD COMPONENT lists the name from this file.
Refer to Install and manage plugins for the upload screen, and to Using a Custom Component for the instance that results.
A compiled plugin is a different bundle.
Refer to Developing Plugins.