Knowledge Base: Generating CIBSE TM59:2026 Compliance Reports with the TM59 Report Plugin
Applies to: DesignBuilder v2025.1.1.009 and later • Plugin: DesignBuilder TM59:2026 Report Plugin
Overview
The TM59:2026 Report plugin generates a CIBSE TM59:2026 overheating compliance report directly from DesignBuilder. It combines the currently loaded model with the TM59:2026 simulation outputs (eplusout.eso, produced by a TM59:2026 simulation run) and evaluates each dwelling zone against the TM59 criteria:
- Criterion (a): adaptive comfort exceedance in naturally ventilated living rooms, kitchens and bedrooms: hours with ΔT ≥ 1K over the assessment period, checked against the standard's fixed limits of 59 hours (living rooms, kitchens and home offices, assumed occupied 09:00–22:00) and 110 hours (bedrooms, occupied at any time), 3% of the assumed occupied hours.
- Criterion (b): bedroom night-time comfort (nights on which the 23:00–08:00 average operative temperature exceeds the threshold).
- Criterion (c): fixed-temperature exceedance in predominantly mechanically ventilated or cooled zones: hours above 26°C, checked against the same fixed 59-hour / 110-hour limits.
- Criterion (d): communal circulation areas: hours above 28°C over the assessment period, checked against the fixed limit of 110 hours (communal areas may be occupied at any time, 3% of 3672 occupied hours); assessed as mandatory pass/fail for common circulation areas and as an advisory significant-risk flag for other circulation areas.
The report includes a cover page with the overall PASS/FAIL verdict, building details, the settings used by the run, an optional project team, a per-zone summary matrix, one detail table per criterion, a ceiling-fan active-hours table, the modelled-zones inventory.
Installation
The plugin is loaded from the per-user plugins folder when DesignBuilder starts.
1. Close DesignBuilder.
2. Download the plugin package from the DesignBuilder Scripts and Plugins page (scripts-and-plugins): you'll need to be logged in to your DesignBuilder account to see the download.
3. Locate your User Plugins folder. With DesignBuilder open, choose File > Folders > Library data folder: this opens the folder in File Explorer; go up one level and you'll see the User Plugins folder listed. (Or paste %LOCALAPPDATA%\DesignBuilder\User Plugins\ into the File Explorer address bar: %LOCALAPPDATA% expands automatically, so you don't need to know your Windows username.)
4. Unzip the downloaded file DBTM59_2026_Report.zip and copy the Tm59Report folder it contains into the User Plugins folder. The zip already bundles everything the plugin needs: DbTm59ReportPlugin.dll, System.Data.SQLite.dll with its x86\ and x64\ interop sub-folders, and EpNet.dll, so there's no need to copy files one by one.
If the plugin fails to load after a restart, additionally copy DB.Api.dll and DB.Extensibility.Contracts.dll from the DesignBuilder install (<install>\Lib\) alongside the plugin DLL, as most installations resolve these from the install folder automatically, but some configurations require local copies.
5. Start DesignBuilder. The first time you start it after installing a new plugin, you may be asked to confirm it's from a trusted source: click Yes to allow it (DesignBuilder remembers your answer and won't ask again). A new top-level plugins menu appears with the item TM59:2026 Report. The item is greyed out until a model is loaded.

To uninstall or temporarily disable the plugin, close DesignBuilder and delete (or move) the plugin folder, then restart.
See also: https://designbuilder.freshdesk.com/support/solutions/articles/103000183359-how-to-install-designbuilder-plugins
Requirements
Before generating the report, check the following:
1. A model using the TM59 activity templates. The plugin identifies TM59 zones purely by their activity template. Recognised templates:
Category | Templates |
Bedrooms | TM59_SingleBedroom, TM59_DoubleBedroom, TM59_Studio |
Living / kitchen | TM59_1-BedKitchen … TM59_5-BedKitchen, TM59_1-BedLiving … TM59_5-BedLiving, TM59_1-BedLivingKitchen … TM59_5-BedLivingKitchen, TM59_HomeOffice |
Communal circulation (mandatory Criterion d) | TM59_CommonCirculationAreas |
Other circulation (advisory Criterion d) | TM59_CirculationAreas |
Zones with any other activity template are ignored.
2. A completed TM59:2026 simulation whose results folder contains both of:
- eplusout.eso, with the run-period EMS output variables produced by the TM59_2026 reporting objects (CIBSE TM59 2026 Criterion A/B/C/D …), and
- the EnergyPlus input file (in.idf) that produced it. The plugin reads this companion file as the ground truth for the simulated settings and will not generate a report without it (see How the plugin verifies the run below).
The simulation run period must cover the full TM59 assessment window: 1 May – 30 September (northern hemisphere) or 1 November – 31 March (southern hemisphere).
Using the plugin
Step 1: Run the TM59:2026 simulation
Run your TM59:2026 simulation as usual (with the TM59 reporting objects included) so that the results folder contains eplusout.eso and in.idf. Either the current EnergyPlus folder or a Simulation Manager job can be used as the source.
Step 2: Open the report dialog
With the model loaded, select the building you want to report on in the navigator (the report is scoped to the currently selected building), then choose Plugins > TM59 > TM59:2026 Report.
If no TM59 activity templates are found in the selected building, the plugin tells you so and lists the recognised template names.
Step 3: Complete the dialog
- Project: the project title shown on the report cover and running header (pre-filled from the building/site Title attribute) and the project Phase (1–3).
- Project team: optional Modeller and Reviewer/checked-by details (name, company, role), printed in the report's Project team section. Leave blank to omit the section.
- Results file: pick one of:
- EnergyPlus folder: path to an eplusout.eso (defaults to the current EnergyPlus folder), or
- Simulation Manager results: a list of FINISHED jobs from the Simulation Manager database, filtered to jobs run against the currently open model where possible. Jobs whose results file could not be located automatically are shown in red, and for those, switch to “EnergyPlus folder” and browse to the file manually.
- Output (PDF): where to save the report (defaults to Documents\TM59_2026_Report.pdf). Close the file in your PDF viewer first if you are overwriting a previous report, as the plugin checks and will ask you to close it.
- Zone evaluation: one row per standard (non-circulation) zone showing its activity template and detected mechanical-ventilation / cooling status, with the evaluation branch:
- Natural (Criteria A + B), or
- Mechanical / cooled (Criteria B + C).
The branch is preset automatically (see below) but can be overridden per zone, as TM59 allows a partially mechanically ventilated zone to still be assessed as predominantly naturally ventilated, and vice versa. Circulation areas are not listed: they are always assessed under Criterion (d).
Step 4: Generate
Click Generate report. The plugin evaluates every zone, renders the PDF and (with “Open when done” ticked) opens it in your default PDF viewer.
How the plugin verifies the run (important)
To prevent reports that silently disagree with the simulation they claim to describe, the plugin treats the EnergyPlus input file next to the results (in.idf) as the ground truth for what was actually simulated:
- Occupant category (Category I vulnerable / Category II standard) and the natural ventilation rules (Standard / TM59 / Approved Document O / TM59 Scotland) are detected from the simulation itself, overriding the current model attributes if they differ. The report's Settings section notes when these could not be confirmed.
- Per-zone mechanical ventilation and cooling are detected from the simulation and preset the Natural/Mechanical evaluation branch in the dialog.
- The simulation period is read from the simulation results. If it does not cover the full TM59 assessment window, report generation is refused: re-run the simulation with the correct period.
- Hemisphere (and therefore the May–September vs November–March assessment window) is detected from the run itself, not from the model's current site location.
The plugin also refuses to generate a report when any zone's expected results are missing from the .eso (typically caused by selecting the wrong results file, results from a different building, or a stale run), so no partial report is ever written. A non-blocking note under the zone grid reminds you that model-sourced supporting information (zone areas, activity templates) always reflects the model as currently open, which may have been edited since the run.
Troubleshooting
Symptom | Cause and fix |
TM59 menu does not appear | Plugin not loaded. Check the DLLs are in %LOCALAPPDATA%\DesignBuilder\User Plugins\<folder>\, copy DB.Api.dll and DB.Extensibility.Contracts.dll alongside the plugin DLL, and restart DesignBuilder. |
“TM59:2026 Report” is greyed out | No model is loaded. Open a model first. |
“No building is currently selected” | Select a building in the navigator (Site → Building) before opening the dialog. |
“No TM59 zones were found” | The selected building has no zones with TM59 activity templates assigned. Assign the templates listed under Requirements. |
“No EnergyPlus input file (in.idf) was found next to the selected results” | The results folder must contain the in.idf that produced the .eso. Select a results source whose folder holds both files. |
“The simulation run period … does not cover the full TM59 assessment window” | Re-run the simulation with a run period spanning at least 1 May – 30 September (north) or 1 November – 31 March (south). |
“Results are incomplete for N zone(s)” | The selected .eso does not contain the TM59 EMS outputs for every zone, usually the wrong results file, a different building's results, or a run made before zones/templates were changed. Re-check the results source or re-run the simulation. |
“The output file is open in another program” | The target PDF is open in a viewer. Close it and generate again. |
Simulation Manager list is empty or fails to load | Requires System.Data.SQLite.dll and its x86/x64 interop folders in the plugin folder, and a Simulation Manager database at C:\ProgramData\DesignBuilder\JobServer\DBJobServer.db with FINISHED jobs. Alternatively use the “EnergyPlus folder” source. |
A job shows “Not found” in red under Results | The job's eplusout.eso could not be located automatically. Switch to “EnergyPlus folder” and browse to the file. |
Notes
- Criteria thresholds are fixed at the TM59:2026 defaults and are not user-editable. For Criteria (a), (c) and (d) the pass/fail check uses the standard's fixed occupied-hours basis: living rooms, kitchens and home offices are assumed occupied 09:00–22:00 (13 hours a day, 1989 occupied hours over May–September), so 3% gives a maximum of 59 hours of threshold exceedance; bedrooms and communal areas may be occupied at any time (3672 hours), giving a maximum of 110 hours. Criterion (b) allows a maximum of 4 nights.
- Threshold temperatures reflect the detected occupant category: Category I (vulnerable / sensitive occupants) reduces the Criterion (a) adaptive threshold and the Criterion (b) night threshold by 1K relative to Category II.
- The Criterion (a), (c) and (d) tables may carry two advisory markers, explained in a legend under the table: † marks a marginal pass (exceedance within 1 hour of the fixed-hours limit: passes, but worth review) and ‡ marks a basis discrepancy (Criteria (a)/(c) only: the nominal 3% check against the zone's simulated occupied hours contradicts the fixed-hours verdict, indicating the zone's occupancy schedules deviate from the standard's assumed occupancy). Both are review prompts only: the fixed-hours verdict and the overall PASS/FAIL are unaffected.
- The report footer records the DesignBuilder version, the plugin version, and the generation date/time on every page.
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article