Problem Overview
The C-More EA9 series HMI panel will, by default, render very small IEEE-754 floating-point values using scientific notation such as 1.234e-03 rather than a fixed decimal such as 0.00. This behavior is triggered when the magnitude of the value approaches zero, and is most often encountered when:
- An analog input scaled near zero is displayed as a live process variable.
- A PLC tag carries the result of a division, subtraction, or PID loop producing a fractional residual.
- An OEM-injected engineering constant has been left at its full-precision default rather than rounded.
- Tag data is mapped from a 32-bit or 64-bit IEEE-754 register (
REAL,FLOAT,DINTbit-pattern) into a C-More numeric object.
The notation switch is not driven by the Numeric Object's display properties alone; it is a project-wide setting in the EA9 programming software's Panel Manager. Without disabling it, every small numeric read on every screen will be re-rendered in scientific form, regardless of the Number of Digits or Number of Decimals entered in the object's formatting dialog.
Affected Hardware and Firmware
| Panel Family | Catalog Prefix | Display Sizes | Behavior |
|---|---|---|---|
| C-More EA9 (TFT color, full feature) | EA9-T6CL, EA9-T8CL, EA9-T10CL, EA9-T12CL, EA9-T15CL | 6", 8", 10", 12", 15" | Exponent notation on by default; controllable via Panel Manager. |
| C-More EA9 Touch (non-CL) | EA9-T6, EA9-T8, EA9-T10, EA9-T12, EA9-T15 | 6" – 15" | Same Panel Manager option exists; verify with current firmware revision. |
| C-More CM5 / CM4 (legacy) | EA1-S3x, EA1-T4CL | 3", 4" | Exponent notation behavior is software-defined per project; legacy EA1 panels may not expose the same Panel Manager toggle. |
Confirm the panel's firmware revision before assuming a setting path. C-More EA9 panels ship with on-board firmware that is updated through the EA9 programming software. The Panel Manager option has existed since the initial EA9 release and is preserved across firmware revisions, although the wording in the dialog has been refined.
Prerequisites
- EA9 programming software installed (current revision as published on the AutomationDirect product page).
- A compatible C-More EA9 panel physically connected via USB, Ethernet, or serial, or the on-screen simulator launched from the software.
- The
.eapproject file open in the EA9 programming software with full edit permissions (not read-only or compiled-only). - Tag database compiled, with at least one numeric data source (PLC register or local tag) configured to exercise the display path.
- Read/write access to the destination panel (Panel Manager modifications require download to commit).
Disabling Exponent Notation via Panel Manager
The canonical fix is a single software switch inside the Panel Manager dialog.
- Launch the EA9 programming software and open the target project.
- From the main menu bar, click Setup, then select Panel Manager...
- In the Panel Manager dialog, locate the option labeled Disable Exponent Notation (also rendered as "Disable exponent notation option" in some revisions).
- Check the box to enable the option. The setting takes effect at runtime, not at compile time.
- Click OK to close the dialog and commit the change to the project file.
- From the main menu, choose Project > Save to persist the setting into the
.eapsource. - Choose Project > Transfer > Download to Panel... (or Send Project to Panel) to push the updated project to the C-More EA9 hardware.
- Cycle power on the panel or allow the auto-restart to complete. Confirm that small fractional values now render as fixed-point decimals instead of
e-##format.
Configuring the Numeric Object for Two Decimal Places
Disabling exponent notation only stops the scientific-format switch. The number of decimals displayed is still controlled by the Numeric Object placed on the screen. Configure the object as follows:
- In the project workspace, double-click the Numeric Object to open its properties.
- On the General tab, set the Data Type to match the incoming tag (typically
Float,Double, orRealfor IEEE-754 values). - Set Number of Digits to the total count including digits left of the decimal. For values bounded between -9999.99 and +9999.99, use 6 digits (4 integer + 2 decimal + 1 decimal point).
- Set Number of Decimals to
2. - Confirm Display Sign if the value may go negative, and choose Decimal Point Style appropriate to your locale (period or comma).
- If using a keypad input object, verify that Keypad Input Limits accept the full range. The keypad will reject values exceeding the configured digit count.
- Click OK, save, and download.
Recommended sizing for typical process values:
| Process Range | Digits | Decimals | Example |
|---|---|---|---|
| 0.00 – 99.99 | 4 | 2 | 42.17 |
| -99.99 – 99.99 | 5 | 2 | -12.04 |
| 0.0 – 999.9 | 4 | 1 | 123.4 |
| 0.00 – 9999.99 | 6 | 2 | 1234.56 |
| -999.99 – 999.99 | 7 | 2 | -321.45 |
| 0 – 65535 (integer bit-pattern) | 5 | 0 | 42195 |
Rounding Strategy for the PLC Source
When the upstream PLC performs division, integration, or PID math, the result may carry more precision than the HMI can usefully present. C-More itself does not round the tag value; it renders the raw IEEE-754 bits with the configured format. Round at the PLC, then send a 32-bit REAL or 16-bit scaled INT to the HMI.
Do-more / BRX (Designer Software)
Math.RoundToInt(MATH_EXPR, 2); // rounds to 2 decimal places, returns DINT
MATH_OUT_REAL = MATH_EXPR; // raw REAL still available for trending
The Do-more instruction set exposes MATHROUND via the Math instruction and supports specifying decimal places directly.
Productivity Series (P-Series)
// P-Series uses scaled integers. Place the value into a float instruction block,
// apply ROUND, then convert back to the appropriate INT range for the HMI tag.
CLICK Series (C-Series)
CLICK PLCs do not natively handle 32-bit floating point. Scale the engineering range to a 16-bit integer (0 – 32767 or -32768 – 32767) and set the Numeric Object to display those integers with the appropriate decimals. Avoid sending sub-integer residuals.
Rounding Logic in .NET-Compatible Math Libraries
If the PLC scan is not the rounding location and rounding must occur in a host system or gateway (for example, a custom OPC bridge or a high-level language controller), use the standard library round implementation:
Math.Round Method (System) | Microsoft Learn
The Math.Round reference page documents the banker's rounding default (round half to even) and the overloads that accept a MidpointRounding parameter. For HMI display purposes, the default rounding mode is usually appropriate because it avoids the systematic upward bias of always rounding half values up.
// Round a double to 2 decimal places, banker's rounding (default)
double rounded = Math.Round(rawValue, 2);
// Round half away from zero (more intuitive for operator displays)
double rounded = Math.Round(rawValue, 2, MidpointRounding.AwayFromZero);
Choose AwayFromZero only when the operator's mental model of "round half up" is required; otherwise leave the default for statistical neutrality.
Verification Procedure
- Start the EA9 simulator from the programming software (Panels > Simulator or its modern equivalent in the current menu layout).
- Force the source PLC tag to a known small value (e.g.,
0.00123) using the simulator's tag watch window. - Confirm the Numeric Object renders
0.00rather than1.23e-03. - Force the tag to
-0.0005and confirm-0.00or0.00per sign-handling. - Force the tag to a value at the upper bound of configured digits (e.g.,
9999.99) and confirm no truncation or overflow characters appear. - Force the tag to
NaNorInfif the upstream math can produce them. Configure a fallback display string or alarm to handle indeterminate states; the Numeric Object will show###or blank depending on EA9 revision. - Download the verified project to the physical panel and repeat the force values through the live PLC.
Troubleshooting Matrix
| Symptom | Likely Cause | Resolution |
|---|---|---|
Still shows e-03 after disabling option |
Project not re-downloaded to panel | Re-transfer project and cycle panel power. |
Still shows e-03 after download |
Multiple projects on SD card; wrong project boots | Use Panel Manager to confirm active project and clear stale files. |
Shows trailing zeros: 1.230000
|
Number of Decimals too high | Set Decimals to 2 to match desired precision. |
Truncates: 1234.56 displays as 1234.5
|
Digits field too small | Increase total digits to accommodate integer + decimal + sign. |
Shows ###
|
Value exceeds digit range or is NaN/Inf | Widen digit count; clamp or guard PLC math upstream. |
| Decimal separator wrong | Project locale set to comma | Change Decimal Point Style in Numeric Object or Panel Manager locale. |
| Keypad rejects valid entries | Keypad Input Limits narrower than display | Match Keypad Input Limits to the displayed digit count and range. |
| Simulator correct, panel wrong | Panel running older project from flash | Force full transfer (not just deltas); verify Project Version screen. |
Field-Commissioning Notes
- Disable exponent notation before you place dozens of Numeric Objects. The setting is project-wide, but adding it late requires a recompile and full download.
- If your project supports multiple languages, verify decimal-point behavior in each locale. Some EA9 builds swap the decimal character based on the active language file, which can interact poorly with PLC scaling factors that assume a period.
- For trending screens, retain raw
REALtags and add a separate rounded display tag. Rounding before the trend buffer obscures low-amplitude events that an operator may want to see during commissioning. - If integrating with a non-AutomationDirect PLC (Allen-Bradley, Siemens, Modicon), confirm that the tag data type imported into C-More is
FloatorReal. Importing a 32-bit register as an integer bit-pattern displays the IEEE-754 mantissa and exponent as a large integer and is a frequent source of confusion. - Back up the
.eapsource after every Panel Manager modification. The change is silent and may be missed in code review unless documented.
FAQ
Where exactly is the "Disable Exponent Notation" option in C-More EA9?
It is located in the Panel Manager dialog, accessed from the main menu under Setup > Panel Manager.... Check the box labeled "Disable exponent notation," then save and download the project to the panel.
Does disabling exponent notation change the number of decimals shown?
No. The Panel Manager switch only prevents scientific-format rendering for small values. The number of decimals is still controlled by the Numeric Object's Number of Decimals property (set to 2 for typical two-decimal displays).
Why does my C-More still show e-03 after I unchecked the option?
The change is a runtime project setting, not a compile-time switch. You must save the project, transfer it to the panel, and either cycle power or allow the panel's auto-restart. If the panel still shows scientific notation, verify that the active project on the panel matches the source file you edited.
Can I round the value in the PLC instead of in the HMI?
Yes, and this is the recommended approach when the precision is not meaningful downstream. Use the PLC's round or truncate instruction (for example, MATHROUND in Do-more) to limit the value to two decimals before the HMI reads the tag.
What happens if the PLC value is NaN or Infinity?
C-More EA9 typically renders such values as ### or leaves the field blank depending on firmware revision. Guard your PLC math to clamp or filter NaN/Inf at the source, or use an alarm object to notify the operator when the value is indeterminate.