- Jelina overview
- EMS Builder
- Core capabilities
Unit Dynamic Expansion (UDE)
UDE manages similar devices with a shared set of templates. Adding a device automatically generates aggregation points, groups, and sharing configurations. After template changes, reconciliation updates existing instances.
Templates and instances
Section titled “Templates and instances”| Object | Purpose |
|---|---|
| Device unit type | Defines naming conventions and templates for similar devices |
| Device unit instance | A specific unit on a device, such as METER#1 |
| Aggregation template | Generates calculated points, units, expressions, and initial values |
| Group template | Generates parent/child groups, point mappings, and ordering |
| Sharing template | Generates shared point lists and binds shared targets |
Processing follows the order aggregation → groups → sharing, allowing each step to reference earlier results. Group templates support tree queries and designated parent groups; an individual instance can also override its root parent group.
Naming and automatic detection
Section titled “Naming and automatic detection”In METER#1_power, for example, METER#1 is the instance prefix and power is the point suffix. Instance prefixes cannot contain underscores. Prefixes must be unique on a device, and similar devices should use consistent suffix conventions.
During CommBridge configuration synchronization or upon arrival of shared data, the system detects instances that match the rules. Existing data can also be scanned to include devices whose templates were configured later.
Dynamic placeholders
Section titled “Dynamic placeholders”Use {token} placeholders to reuse a template across devices with different names, group locations, or sources:
- Rule sets organize placeholders and can be bound to a device unit type.
- Matching rules generate placeholder values from device codes, instance prefixes, or serial numbers.
- Scopes apply separately to groups, source devices, expressions, initial values, or sharing configurations.
- Trial calculation and impact preview check rendered results before saving and show the impact before disabling or deleting rules.
UDE resolves {token} during template generation; Lua reads ${dataKey} when an expression runs. Their purposes differ. After testing a template, also validate the generated Lua expressions.
How reconciliation updates configuration
Section titled “How reconciliation updates configuration”Reconciliation fills in missing configuration and updates template-managed fields, group mappings, and sharing bindings. It does more than simply add new objects without modifying existing ones.
- Define types and templates, preparing the parent groups and shared targets they reference.
- Reconcile a test instance and inspect the generated results.
- After confirmation, reconcile the type or all types in a batch.
- Inspect instance materialization status and errors. If an API reports “scheduled,” background processing may still be underway.
In the current version, saving or deleting templates validates changes and schedules affected existing instances. Confirm the impact before release. If a parent group is not ready, inspect status and retry information, correct the dependency, and check the results again.
Generated configuration carries ownership information and fingerprints to detect template changes and conflicts with manual edits. If an aggregation template’s initial value has not changed, repeated reconciliation does not reset a valid runtime value to its default. After deleting templates or changing codes, do not assume every old business object will be deleted automatically; check references and cleanup results.
Use cases
Section titled “Use cases”UDE reduces repetitive configuration when more devices of the same model are added, configurations are reused across sites, or device counts are high. Small, fixed device sets can also be managed directly as points.
Related capabilities: Data model, Device sharing. For Agent-based configuration, use the UDE and dynamic placeholder Skills for template and instance setup, rule trials, impact analysis, and release.