Generated reference › EGT Indicator — Robotics/Flight Instruments
kind: generated#block#robotics-flight-instruments

EGT Indicator — Robotics/Flight Instruments

0

Robotics/Flight_Instruments/EGT_Indicator · 0 input / 0 output port(s) at insert · exports to Python, MATLAB, Java, Rust, C, C++, VHDL, Verilog, SystemVerilog, PLC Structured Text

Description#

The block's own DESCRIPTION_HTML, rendered verbatim — the same text the config dialog's info panel and the library navigator show. Fix a wrong sentence in the block's .cpp (R-D9), never here.

EGT Indicator

Robotics / Flight Instruments

An exhaust-gas temperature dial. It shows the value of a signal it is told the name of: a needle on a scale from Limits(1) to Limits(2), turned in proportion over 200° and pegged 5° past either end outside it, coloured bands on the scale, and a digital readout of the value's whole part, clamped to the limits. It has no ports at all.

Ports

  • None. Not one input, not one output: the dial reads the signal it is bound to by name, as Simulink's binds to the one selected on its canvas.

Parameters

  • Signal – the name of the link to read, for example egt, or its full path when the name contains /. Matching runs over this block's own subsystem and everything below it. It names a link, not a variable, so it is never looked up in the variables space. A name that matches no link is reported when the run starts, and the dial then shows no value. Only the first entry of the signal is read.
  • Limits – [min max], the two ends of the scale, default [0 1000] as on Simulink's block. The eleven labels are in hundreds, min/100 + k·(max − min)/1000, k = 0…10. min must be below max.
  • Band Limits – one row per colour band, [min max] per row, default [0 700; 700 900; 900 1000], Simulink's own three. A band is drawn clamped to Limits; empty means no bands.
  • Band Colors – one RGB row per band, components 0–255, default green, yellow and red ([76 187 23; 252 209 22; 227 23 13]). It must have exactly as many rows as Band Limits.
  • Refresh Period (s) – how often the dial is repainted, in wall-clock seconds, so a fast run does not turn the face into a blur. Zero or less repaints on every sample; the final sample of a run is always shown.
  • Sampling Time (s) – how often the value is read. Zero or less inherits the solver's rate.

How a band is chosen

A band matches when min ≤ value ≤ max, and the FIRST matching row wins, so 700 is green with the default bands. The band index is what the exported code reports.

Notes

  • The value is one sample behind. A block with no inputs has no input dependency, so it runs at the head of every step and reads what its source published on the previous one.
  • Stateless: it draws, and computes nothing a later step reads.

Code export

All ten targets: Python, MATLAB, Java, Rust, C, C++, VHDL, Verilog, SystemVerilog and PLC Structured Text. A deployable target has no dial, so each one prints the bound VALUE and the BAND it falls in (0-based, -1 for none), as the Dashboard Gauge does. PLC Structured Text emits comments only, naming the signal array entry to tap. The one-sample shift applies to the exported code too.

Code-export verification

This block is excluded from the code-export verification matrix, by name: the verifier records a terminal block's input signals, and a block with no inputs records nothing, so a rig around it would fail all ten languages at residual 0 and say nothing about the block.

Simulink bridge

None, and that is a measurement. Simulink's EGT Indicator (aerolibhmi/EGT Indicator, BlockType=EGTIndicatorBlock) has ZERO ports of any kind and no SampleTime, measured on R2026a; it reaches its signal through Binding, a canvas selection stored outside the block's parameters, and ICore has no counterpart for that. This block is the ICore reading of it – the signal is named rather than clicked – so it is reported on exchange rather than mapped.

Code facts#

FactValue
registered typeRobotics/Flight_Instruments/EGT_Indicator
familyRobotics/Flight_Instruments
solver environment classICoreBlock_0_Robotics_1_Flight_Instruments_2_EGT_Indicator
sourcesrc/ICoreBlocks/ICoreBlockLibrary/Blocks/Robotics/Flight_Instruments/EGT_Indicator/ICoreBlock_0_Robotics_1_Flight_Instruments_2_EGT_Indicator.cpp
headersrc/ICoreBlocks/ICoreBlockLibrary/Blocks/Robotics/Flight_Instruments/EGT_Indicator/ICoreBlock_0_Robotics_1_Flight_Instruments_2_EGT_Indicator.h
ports at insert0 in, 0 out
code generators implementedPython, MATLAB, Java, Rust, C, C++, VHDL, Verilog, SystemVerilog, PLC Structured Text

Ports#

The constructor creates no port explicitly — the port list comes from registerInitialPorts (0 in, 0 out) or from the block's configuration.

Configuration variables#

Config variableDefaultSimulink parameter
Signal——
Limits[0 1000]—
Band Limits[0 700; 700 900; 900 1000]—
Band Colors[76 187 23; 252 209 22; 227 23 13]—
Refresh Period (s)0.1—

Every block also carries Sampling Time (s) from ICoreBlockSolverEnvironment: zero or less inherits the solver's rate, a positive value runs the block at that period.

supportSupport::None
Simulink path—
port-count rulePortsParam::None
SampleTime parameteryes

Caveat (shown to the user): Simulink's EGT Indicator (aerolibhmi, BlockType=EGTIndicatorBlock) has ZERO ports of any kind and no SampleTime - measured on R2026a. It does not receive its value on a wire: it reaches the signal through Binding, a canvas selection stored outside the block's parameters, and ICore has no counterpart for that. This block is the ICore reading of that dial - the signal is named rather than clicked - so it is reported on exchange rather than asserted

Catalog contract: src/ICoreBlocks/ICoreCoder/ICoreCommandSystem/SimulinkBridge/ICoreSimulinkBlockCatalog.h

Description vs code#

The checker has a blind spot here — it could not resolve something (a grouped port bullet, a computed config name), which is reported and never counted as a pass. A reader has to settle it:

  • B0 no sample under docs/generated/samples/ — nothing to cross-check (P8.1)

The verdict above is tools/docs/check_block_descriptions.py (P7.1), which compares LISTS. It cannot read a sentence: "stateless" on a block with a state, an initial-value semantic the recursion does not implement, a "not synthesizable" caveat the HDL banner contradicts. That is the agent audit (P7.3) on BLOCK_DESCRIPTION_AUDIT.md, and this tool's green is not a substitute for one.

File banner (developer view)#

The top comment of the block's .cpp — the maths, the realization and the export strategy, addressed to whoever changes it. It must not contradict the description above (P7.5).

EGT Indicator -- an exhaust-gas temperature dial bound to a signal by name The Aerospace Blockset's Flight Instruments/EGT Indicator, measured on R2026a (BlockType=EGTIndicatorBlock): ZERO ports, no SampleTime; Limits, default [0 1000], and a hidden ScaleColors of three bands, green 0-700, yellow 700-900 and red 900-1000. Read from the component that draws it: the scale starts at -10 degrees (from nine o'clock, clockwise) and sweeps 200; eleven labels in hundreds; the bands are arcs of stroke 5 at radius 135, clamped to Limits; the needle pegs 5 degrees past either end outside them; and a digital readout shows the FLOOR of the value clamped to Limits.

Sample results#

No sample run is committed for this block. Samples come from the headless harness (DOCS_PLAN.md P8.1) into docs/generated/samples/; until one exists this block's behaviour is witnessed by the parity and export-verification suites, not by a plot here.