EN/IEC limit reference matrix

This matrix records checked numeric profiles, source boundaries and open conditions. Corrected limits affect new evaluations; existing exports are not recalculated. Constructors and selectors are retained; the hardened callable contract is documented below. The persisted measurement schema is unchanged. The numerical inventory below uses English technical labels.

Module

Profile coverage

Reference / review result

conducted/en_55011

Group 1/2; A/B; AV/QP; six AC/DC power selectors; 150 kHz–30 MHz, dBµV

Academy 5.1, mains/DC figures. Group 1 A AC <=20 kVA corrected to AV 66/60 and QP 79/73. Other finite profiles agree numerically away from unresolved edges.

radiated/en_55011

Group 1; A/B; QP at 3/10 m; AV/PK at 3 m; 30 MHz–6 GHz, dBµV/m

Academy 5.1, Group 1 30 MHz–1 GHz and 1–6 GHz figures. QP B 10 m corrected to 30/37; small A 3 m to 50/57. Large A QP 10/3 m: 50/60.

conducted/en_55032

A/B; mains and telecom/LAN voltage; AV/QP; 150 kHz–30 MHz, dBµV

Academy 5.2; EMCCalc Class A/B CE confirms mains values. All eight existing profiles agree away from unresolved edges.

radiated/en_55032

A/B; OATS/SAC QP at 3/10 m; FSOATS AV/PK at 3 m; dBµV/m

Added from EMCCalc A2.1/A2.2, A3.1/A3.2, A4.1/A4.2, A5.1/A5.2. FAR excluded.

conducted/iec_61000_6_3

CISPR 32 B; AV/QP; mains/telecom; four profiles

Academy 5.5 mapping agrees. No edition in the overview figure; profile mapping only.

radiated/iec_61000_6_3

CISPR 32 B; QP at 3/10 m; AV/PK at 3 m

Academy 5.5 refers to CISPR 32, not CISPR 11. Delegation corrected to the new CISPR 32 profile.

conducted/iec_61000_6_4

CISPR 11 Group 1 A; six AC/DC selectors; AV/QP

Academy 5.6 supports the class/group mapping, but does not establish every power/DC selector. AC small follows the confirmed correction; remaining generic port applicability is open.

radiated/iec_61000_6_4

CISPR 11 Group 1 A small-equipment profile; QP 3/10 m, AV/PK 3 m

Academy 5.6 mapping agrees; follows corrected CISPR 11 values. Not a complete IEC edition implementation.

conducted/en_55015

A placeholder classification; mains/load; AV/QP; 9 kHz–30 MHz, dBµV

Neither accepted page provides CISPR 15 numeric reference tables. All four profiles remain unverified and unchanged.

Numerical coverage inventory

Counts below enumerate the complete selector products. A finite curve means that some frequency in its declared range returns a number; it does not establish normative applicability or verified edition coverage.

Module

Advertised combinations

With finite values

conducted/en_55011

48

36

radiated/en_55011

72

10

conducted/en_55032

8

8

radiated/en_55032 (new)

12

8

conducted/iec_61000_6_3

4

4

radiated/iec_61000_6_3

6

4

conducted/iec_61000_6_4

12

12

radiated/iec_61000_6_4

6

4

conducted/en_55015

4

4 (unverified)

Numeric comparison points

  • CISPR 11 mains, Group 1 A <=20 kVA: AV 66/60, QP 79/73 dBµV, split at 500 kHz. Group 1 >20..75 kVA: AV 90, 76, 80→60. Group 2 <=75 kVA: AV 90, 76, 73→60. Both: QP 100, 86, 90→73 (breaks 500 kHz/5 MHz; endpoint convention below). Above 75 kVA: AV 120/115/105; QP 130/125/115.

  • CISPR 11 mains B, either group: AV 56→46/46/50; QP 66→56/56/60 (breaks 500 kHz/5 MHz).

  • CISPR 11 Group 1 DC A: AV at 150 kHz/5 MHz/30 MHz is 84/76/76, 106/96/76, or 122/112/92 for small/medium/large equipment; QP is 97/89/89, 116/106/89, or 132/122/105. DC B: AV 74→64 then 64; QP 84→74 then 74 (break 500 kHz).

  • CISPR 32 mains A: AV 66/60; QP 79/73 (break 500 kHz). Mains B uses the same numeric mains profile as CISPR 11 B. Telecom/LAN A AV 84→74, QP 97→87; B AV 74→64, QP 84→74, declining through 500 kHz and constant thereafter.

  • CISPR 11 small Group 1 and CISPR 32 OATS/SAC QP: B 10 m 30/37; B 3 m 40/47; A 10 m 40/47; A 3 m 50/57, split at 230 MHz through 1 GHz.

  • CISPR 11 small Group 1 and CISPR 32 FSOATS at 3 m: B AV 50/54, PK 70/74; A AV 56/60, PK 76/80, split at 3 GHz through 6 GHz.

Coverage gaps and unresolved conditions

  • Existing CISPR 11 conducted Group 2 DC selections return NaN (12 cases). The accepted overview only supplies Group 1 DC curves; this is not evidence that every Group 2 DC case has no normative limit.

  • CISPR 11 radiated now provides 24 of 72 selections. Group 2 test-site support and the remaining gaps are documented below.

  • AV/PK at 10 m remains unsupported for CISPR 32 and both radiated generic profiles. The reference rows above 1 GHz explicitly specify 3 m.

  • The label AC/DC (≤ 75 kVA) is historically overlapping: for Group 1 A, the actual selected curve is the >20..75 kVA curve. Preserve existing selector strings for now; their applicability needs a later API decision.

  • Shared step frequencies use the stricter adjacent limit, as explicitly requested by the user. This corrects 5 MHz ascending conducted steps, 230 MHz QP steps and 3 GHz AV/PK steps in EN/CISPR profiles and their delegated generic profiles. ISM membership includes both endpoints. Detector-domain overlaps are retained. At exactly 1 GHz, Class B 3 m QP 47 versus AV 50 dBµV/m in EN 55011/55032 and the residential wrapper is an accepted normative exception to QP >= AV. The developer audit emits warnings with profile, parameters, frequencies and values for every ordering violation, rather than failing or marking tests as expected failures. Numeric table levels remain unchanged. These warnings prompt reference checks; PK >= QP >= AV is a plausibility heuristic, not a universal normative rule.

  • Academy’s CISPR 32 discussion uses approximately 10.5 dB for distance extrapolation. EMCCalc’s explicit OATS/SAC 3 m table rows use 10 dB above the 10 m rows. The new profile uses the explicit table rows; it does not provide general distance extrapolation.

  • Current EN 55011/55032/55015 titles identify DIN editions, but the Academy plots do not fully verify those editions. EMCCalc names CISPR 32:2015+AMD1:2019; the generic mapping figures are unversioned. Missing edition evidence is recorded, not inferred from a filename.

  • Missing scopes include FAR, telecom current limits, Group 2 radiated operating conditions, in-situ limits and a verified CISPR 15 reference. The additive variant status below identifies unresolved implementations. Per-frequency NaN values still do not constitute a passing assessment.

Group 2 test-site tables (2026-10-14)

Additional reference: user-supplied screenshots from trusted test-software documentation, publication and edition unknown. These are secondary evidence; the existing DIN edition title is not thereby verified.

Implemented electric-field profiles between 30 MHz and 1 GHz:

  • Class A QP, 3/10/30 m, both existing AC selectors (6 combinations).

  • Class B QP/AV, 3/10 m, both existing AC selectors (8 combinations). The existing small-equipment condition applies at 3 m.

The Class A 30 m levels are 58, 40, 53, 68, 53, 50, 60, 50, 64, 40, 50, 40, 50, 53, 50 dBµV/m. Their successive edges in MHz are 30, 47, 68, 80.872, 81.848, 87, 134.786, 136.414, 156, 174, 188.7, 190.979, 230, 400, 470, 1000. Explicit 10/3 m table columns add 10/20 dB respectively; this is not a general distance-extrapolation rule. Identical adjacent rows at 53.91 and 54.56 MHz are merged.

Class B 10 m QP levels are 30, 50, 30, 50, 30, 37 dBµV/m with edges 30, 80.872, 81.848, 134.786, 136.414, 230, 1000 MHz. AV subtracts 5 dB; the explicit 3 m columns add 10 dB. The Class A screenshot’s 134.768 MHz is treated as a transposition and corrected, with user approval, to 134.786 MHz, matching Class B. Arithmetic cross-check: 27.12 MHz ±0.6 % gives third-harmonic edges 80.87184/81.84816 MHz and fifth-harmonic edges 134.7864/136.4136 MHz, rounding to the table entries. This supports the correction; it is not a replacement for edition-specific CISPR evidence. The fundamental ISM band 26.957..27.283 MHz is listed in ISED ICES-001 Annex A.

At shared endpoints of these new radiated curves and the reviewed Group A conducted 5 MHz transition, use the stricter adjacent limit. This is an explicit conservative implementation convention, not a quoted normative rule. Existing unrelated boundary behavior remains unchanged.

Conducted Group 2 A <=75 kVA AV at 5..30 MHz is corrected to 73..60 dBµV, logarithmic in frequency. Group 1 A >20 kVA retains 80..60 dBµV. At 5 MHz Group 2 AV is 73, Group 1 AV is 76, and QP is 86 dBµV. The existing Group 1 <=75 kVA selector represents >20..75 kVA; >75 kVA behavior is unchanged.

Radiated finite coverage is now 24/72 selections. The remaining 22 Group 2 radiated selections and all 12 Group 2 DC selections remain unresolved. In-situ, magnetic-field, cooking-appliance, EDM/welding and above-1-GHz special profiles from the supplied images are not implemented by this change. No FCC ISM exemptions are inferred, and no new context parameters or persisted fields are introduced. Existing consumers use the same assessment interface; unsupported bands return NaN and never imply a pass.

Source inventory: radiated A is screenshot 13:49:22, radiated B is 13:49:49; conducted Group 2 A is 13:48:18 and Group 1 A is 13:48:00, all dated 2026-10-14. Original screenshot files remain outside the repository. The new Group 1 A >20 kVA table does not distinguish >75 kVA, unlike the Academy overview. The user selected Academy of EMC as the controlling reference for this scope: Group 1 A >75 kVA uses QP 130/125/115 and AV 120/115/105 dBµV at 0.15..0.5/0.5..5/5..30 MHz. The conflicting software table is not adopted for this scope. This reference decision resolves the implementation choice without claiming edition-specific normative verification.

References

Reviewed 2026-10-14. The following are accepted project references for this review; unavailable purchased originals do not block confirmed corrections. FCC continues to use the original CFR text. Screenshots are not versioned.

  • Academy of EMC, sections 5.1, 5.2, 5.5 and 5.6, including the mains/DC and radiated figures.

  • EMCCalc A CE and B CE.

  • EMCCalc A RE and B RE.

  • Academy image locators: mains ec8386_46cf1421bb414ad8b70ba2053bf271f0; DC ec8386_be7e3817348f4aa4b71f66b18a939382; Group 1 QP ec8386_52a57134e3ad492fadce05f07580fdd1; AV/PK ec8386_ef24b10392fc4e609375382127d5d302; generic 6-3 ec8386_5d9453ccdfe64ea5889e8ee92cff3de5; generic 6-4 ec8386_6a0476e1321745e0a6a131e0362ee4f5.

Limit callable contract

profile.limitline(frequencies) remains the common interface. A finite positive scalar frequency in Hz returns a Python float; array-like input returns a floating ndarray with the same shape, including empty arrays. Nonpositive or nonfinite inputs raise ValueError. Valid frequencies outside the declared profile range or its implemented detector bands return NaN. A NaN limit never establishes a passing result.

profile.variant_status is an additive property: implemented means a curve was selected, unresolved means a definition is missing or uncertain, and not_applicable requires an explicit evidenced declaration. None of these statuses verifies the normative edition. The existing limitline callable, constructors, selectors and bound-curve pickle entry are retained. Legacy objects with a stored limitline method can still be loaded. The global variant status is not inserted into measurement dictionaries; optional per-frequency assessment fields are documented below.

The explorer initializes selectors from model defaults, displays unsupported variants and evaluation errors, and keeps the last successful plot on failure. script/tem-emission.py uses the TEM prescreen/comparison path: a missing profile produces no field limit and a comparison with passed=None, not a pass. Legacy external objects/callables without a status property continue through the existing finite-value checks.

FCC ISM applicability per frequency

assess_frequency(frequency) returns a mapping with status, value, unit and reason. Status is applicable with a numerical limit, exempt for a documented exception, unresolved for missing context or implementation, or out_of_range outside the declared profile. An exemption is not an equipment compliance decision. limitline() remains callable and returns NaN for exempt/unresolved points, so existing finite-value consumers cannot treat them as passing. Constructors and selector strings remain valid.

47 CFR 18.307(e) excludes the emitted-frequency ISM bands in 18.301 from conducted limits without requiring operating-frequency context. Radiated 18.305(a) instead establishes the exemption only in the band associated with the actual operating frequency. The radiated FCC18 constructor accepts optional operating_frequency (Hz). Missing context within a possible ISM band, or emission within another designated band, remains unresolved. The latter is a conservative implementation boundary, not a claimed legal exemption. Outside designated bands, existing table profiles remain available. Conflicting miscellaneous ISM/non-ISM case and operating-frequency selections are rejected. Only one actual operating frequency is represented per profile. Multiple-mode operation must be evaluated with the corresponding context, not inferred.

Band endpoints (center ± tolerance) are included. The complete 18.301 table is recorded in mpylab.limits.fcc_ism; assessment stays within each profile’s implemented frequency range. No power scaling, alternate-distance assessment, legacy induction-appliance date or ultrasonic-specific waiver is inferred. The explorer provides an optional operating-frequency field for radiated FCC18.

operating_frequency is an additive optional attribute of saved radiated FCC18 profile objects (None if unspecified). Legacy pickles without it retain missing-context behavior; no band exemption is inferred from the case label. The original bound limitline entry is preserved. Existing configuration mappings can supply operating_frequency as another constructor keyword.

References, checked 2026-10-14: 18.301, 18.305(a)-(c), 18.307(e).

Configuration profile resolution

mpylab.limits.registry.resolve_limit resolves registered identities, legacy module paths and explicit EN/CISPR aliases. Bare standard names require an unambiguous emission category. Misspellings produce suggestions, never an automatic replacement. Conflicting parameter values are rejected. A mapping with profile requires every advertised selection parameter; legacy module/name specifications retain their existing defaults. For example:

{"profile": "radiated_emission.en_55011", "group": "1",
 "classification": "B", "detector": "QP",
 "port": "AC (<= 20 kVA)", "distance": "10 m"}

Resolved objects carry optional profile_id (string, registered identity). This identifies the model, not a verified normative edition. Directly constructed and older serialized objects may lack it. Existing callable and object specifications remain supported. No fuzzy matching chooses a curve.

Typo suggestions compare normalized registered identities and known aliases, filter by the supplied emission category and return at most three unique profile identities. Suggestions never select or instantiate a profile.

Explorer availability notices

A persistent label above the tabs shows whether a curve is available. Missing variants and implemented curves without finite values in the displayed range have distinct messages in both the graph and description. Missing implementation never implies absence of normative limits. Up to three nearest available selections are suggested within the same model and operating context, without changing the current selection. Availability means finite values in some displayed band, not normative applicability at every frequency.

FCC operating-frequency input uses the shared frequency control with unit buttons and an optional-enable checkbox. Green plot bands indicate exempt ISM regions, orange bands unresolved regions. Very narrow bands additionally have a centre marker for visibility; the shaded width remains the actual bandwidth. Operating frequency changes applicability, not numerical limits outside ISM bands. Changing the value requires applying a unit or finishing the value edit. The graph legend displays engineering frequency units.