Thermal Feasibility Checker — methodology
Method version 1.0 · dataset thermal-limits 2026-09-08 · engine: /engines/thermal-feasibility-checker/ · dataset: datasets/thermal-limits.json
A categorical design review, not a thermal simulation. Every limit it holds a design against is the vendor's published number with the document quoted; the only engineering figures are the cooling and enclosure bands, and they are labelled class E.
Contents
1. What it decides, and what it does not
The checker answers one design-review question: for this module, at this power, in this enclosure class, with this cooling class, at the hottest ambient the site sees — is the thermal design worth building? It returns FEASIBLE, MARGINAL, NOT FEASIBLE, REQUIRES VALIDATION or UNKNOWN.
It does not predict a junction temperature, a throttle onset or a time-to-throttle. Those depend on the actual heatsink, thermal interface, airflow path and workload, none of which a form can capture. The roadmap decision behind this engine is that a categorical answer from the vendor's own limits is honest; a predicted temperature from a form is not.
2. Inputs
| Input | Values | Default | Used by |
|---|---|---|---|
platform | module id (Jetson Orin Nano / NX / AGX Orin family, Thor T5000 / T4000, Raspberry Pi 5, RK3588, Hailo-8 / 8L, Coral Dev Board) | required | all checks |
power_w | module power in W | the power_mode preset's watts, else the vendor's maximum module power | power ceiling, cooling capacity |
power_mode | nvpmodel preset id from the power-mode registry | — | power resolution |
enclosure | open_frame · vented · vented_fan · sealed_fanless · outdoor_sealed | open_frame | ambient rating, cooling capacity, fan in sealed |
cooling | none · passive_small · passive_large · active_reference · active_high_flow · liquid | active_reference | cooling capacity, fan in sealed |
ambient_max_c | maximum site ambient (°C) | 25 | ambient rating, cooling capacity |
altitude_m | 0–6000 m | 0 | cooling capacity (air density) |
solar_rise_c | extra internal rise from sun load (°C) | 0 | enclosure air |
carrier | id from the production-carrier registry | — | ambient rating (the carrier's rated range), fan-in-sealed note |
Enclosure air = ambient + the enclosure class's internal rise + solar rise. A thermal-transfer-plate rating is a plate temperature the cooling has to hold, so the TTP range is checked against the site ambient; ambient and module ratings are checked against the enclosure air.
3. The four checks
| Check | Compares | Status | Class |
|---|---|---|---|
ambient_rating | Site ambient (TTP-rated modules) or enclosure air (others) against the module's published operating range and, when given, the carrier's rated range | PASS inside every range; FAIL outside any; UNKNOWN when no ceiling is published and no limit can carry it | A (vendor ranges); D when the SoC / TTP limit check carries an unpublished ceiling |
power_ceiling | Module power against the vendor's maximum module power | PASS at or below; FAIL above; UNKNOWN without a published maximum | A |
cooling_capacity | Deliverable thermal resistance of the cooling class in this enclosure against the resistance the vendor limit demands | see §4 | D (class A limit × class E band) |
fan_in_sealed | A cooling class that needs airflow inside a sealed enclosure | FAIL when both; PASS otherwise | E |
Cooling capacity, the only arithmetic
required °C/W = (limit − margin − enclosure air) / power, where the limit is the maximum TTP temperature for
modules with a thermal transfer plate (AGX Orin, Thor) and the SoC operating limit for modules without one (Orin NX / Nano,
Raspberry Pi 5) — the vendor's number, quoted in the dataset — and the margin is 5 °C for a TTP limit (the vendor already
specifies it with margin) or 10 °C for a SoC junction limit.
deliverable °C/W = band / (airflow factor × air density), where the band is the cooling class's engineering
thermal resistance, the airflow factor is the enclosure class's, and air density follows altitude (1.00 at sea level,
0.78 at 2000 m). The module's own junction-to-plate resistance is inside the vendor limit and is not added again.
FAIL when deliverable ≥ required (or required ≤ 0). NEAR LIMIT when deliverable is at least 80 % of required, or when the
estimated surface temperature (enclosure air + power × deliverable) is within the 5 °C marginal band of the target. PASS
otherwise. UNKNOWN when the module has no published limit or no power is known. A bare module (none) FAILs
above idle power.
4. Verdict rule
- UNKNOWN — the module has neither a TTP / SoC limit nor an operating range on record.
- NOT FEASIBLE — any check FAILs.
- REQUIRES VALIDATION — no FAIL, but a check is UNKNOWN because the vendor does not state the limit (for example Hailo-8 has an operating range but no plate or junction limit, so the cooling check cannot be made).
- MARGINAL — no FAIL or UNKNOWN, but the cooling check is NEAR LIMIT.
- FEASIBLE — every check PASSes.
A FEASIBLE verdict for a SoC-limited module whose datasheet defers the ambient ceiling to the thermal design guide carries LOW confidence: the ambient enters only through the cooling check.
5. Cooling classes, enclosure classes and margins
| Cooling class | Band (°C/W) | Needs airflow | Typical of |
|---|---|---|---|
| none | — | no | Bare module; not a supported operating condition above idle |
| passive_small | 1.6 | no | Module-sized extruded heatsink in fanless Orin Nano / NX systems |
| passive_large | 0.5 | no | Industrial enclosure using the chassis as the heatsink |
| active_reference | 0.8 | yes | Developer-kit class fan heatsink |
| active_high_flow | 0.3 | yes | AGX-class blower / ducted fan; the AGX Orin guide's worked example needs 0.58 °C/W at MaxN, Thor's 0.49 °C/W |
| liquid | 0.1 | no | Cold-plate solutions |
| Enclosure class | Airflow factor | Internal rise (°C) | Sealed |
|---|---|---|---|
| open_frame | 1.00 | 0 | no |
| vented | 0.75 | 7 | no |
| vented_fan | 0.90 | 3 | no |
| sealed_fanless | 0.40 | 20 | yes |
| outdoor_sealed | 0.30 | 15 (+ solar rise input) | yes |
Margins: 5 °C design margin on a TTP limit, 10 °C on a SoC junction limit, 5 °C marginal band. The bands, factors, rises and margins are class E engineering figures — anchored on the reference designs and worked examples in the vendor thermal design guides, not measured per product — and are published in the dataset so they can be argued with.
6. Vendor limit table and sources
| Module | Limit surface | TTP max | SoC operating / max | Operating range | Max module power | Vendor example | Source |
|---|---|---|---|---|---|---|---|
| Jetson AGX Orin 64GB / 32GB | TTP | 80 °C | 99 / 105 °C | −25 to 80 °C | 60 / 40 W | 0.58 °C/W | Jetson AGX Orin Series Thermal Design Guide TDG-10943-001; Modules Data Sheet DS-10662-001 |
| Jetson AGX Orin Industrial | TTP | 85 °C | 105 / 115 °C | −40 to 85 °C | 75 W | — | same |
| Jetson Orin NX 16GB / 8GB, Orin Nano 8GB / Super / 4GB | SoC | — | 99 / 105 °C | −25 °C floor (ceiling deferred to the guide) | 40 / 40 / 25 / 25 / 15 W | — | Jetson Orin NX Series and Orin Nano Series Thermal Design Guide TDG-11127-001 v1.5; Orin Nano / Orin NX datasheets |
| Jetson Thor T5000 / T4000 | TTP | 80 / 75 °C | 90 / 115 °C (trip 118) | — | 130 / 70 W | 0.49 °C/W; junction-to-plate 0.18 / 0.24 °C/W | Jetson Thor Series Modules Thermal Design Guide TDG-12271-001 v1.3 |
| Rockchip RK3588 | ambient | — | — / 125 °C | 0 to 80 °C | board-dependent | — | RK3588 Datasheet Rev 2.2 |
| Raspberry Pi 5 | SoC | — | 80 / 85 °C (throttle onset / max) | 0 to 70 °C (class C) | 12 W | — | raspberrypi.com “Heating and cooling Raspberry Pi 5”; forum statement (class C) |
| Hailo-8 / 8L | ambient | — | — | −40 to 85 °C (industrial grade) | 2.5 W typical | — | hailo.ai product page |
| Coral Dev Board | ambient | — | — | 0 to 50 °C | — | — | Coral Dev Board datasheet |
Every row in datasets/thermal-limits.json carries the document, URL, retrieval date and a verbatim quote of at most 25 words for each limit. Vendor datasheets hosted on distributor or community mirrors are class A by document with the mirror noted. The engine returns the module's sources with every result.
7. Alternatives and remediation
With a limit and a power on record the engine also reports, for the chosen enclosure and altitude, every cooling class with
its deliverable °C/W and whether it passes (and whether it would be marginal), the power the chosen cooling can hold at this
ambient ((limit − margin − air) / deliverable), and, for sealed enclosures, what a vented enclosure would do to the
internal air. Each failing or marginal check names the remediation that flips it: a lighter cooling class that passes, a
power ceiling, a vented enclosure, a wider-rated module or carrier.
8. Evidence classes and confidence
- A — vendor thermal design guides, datasheets and product pages (all limits and ranges except the Raspberry Pi 5 range).
- C — a Raspberry Pi engineer's forum statement for the Pi 5 operating range.
- D — the cooling-capacity constraint (class A limit combined with a class E band) and an ambient check carried by the SoC / TTP limit.
- E — cooling bands, enclosure factors and rises, margins, the fan-in-sealed rule, the no-heatsink rule.
Confidence: HIGH for ambient and power checks with published figures; MEDIUM for a TTP-limited cooling check; LOW for a SoC-limited cooling check, an ambient check carried by the limit, or any UNKNOWN. The overall confidence is the lowest of the four.
9. What invalidates a result
- A poor thermal interface or partial contact with the thermal transfer plate — the bands assume the guide's full-contact mounting.
- Unbalanced workloads: the Thor guide gives a higher junction-to-plate resistance for unbalanced loads; the checker uses the balanced figure inside the vendor limit.
- A power figure below the workload's real sustained draw — use the preset's watts or a measured module power, not the idle figure.
- Solar gain on an outdoor enclosure that exceeds the solar rise you entered.
- An enclosure that does not match its class (a “vented” box with blocked vents behaves as sealed).
- Altitude above 6000 m, or ambient outside −60 to 90 °C, which the engine rejects.
10. Method changelog
| Method | Dataset | Date | Change |
|---|---|---|---|
| 1.0 | 2026-09-08 | 2026-09-08 | First release. Fifteen modules with vendor limits (NVIDIA Jetson Orin / Thor thermal design guides and datasheets, Rockchip RK3588 datasheet, Raspberry Pi, Hailo and Coral pages), six cooling classes, five enclosure classes, TTP / SoC margins; four checks and the categorical verdict rule. |
Method changes bump the method version; new or re-verified vendor limits bump the dataset version. Both are in every result and in the citation block.