Skip to main contentSkip to navigationSkip to contactAccessibility (Alt+A)

Keyboard Shortcuts

  • Alt + A: Open accessibility settings
  • Tab: Navigate to next element
  • Shift + Tab: Navigate to previous element
  • Enter or Space: Activate buttons and links
  • Escape: Close dialogs and menus
  • Arrow keys: Navigate within menus and sliders
  • Home: Go to beginning of list
  • End: Go to end of list
EmersonEIMS — Reliable Power. Without Limits.
HOMEABOUTWHY US
INDUSTRIES
PHASE 4CONTACT
Get Quote

B2BEmersonEIMS serves commercial, industrial, healthcare, telecom, hospitality, government & contractor clients.• Engineering-led • SLA-backed • Documented commissioning

Talk to an engineerWhatsApp+254 768 860 665

Services Directory

View all services →

Power & Generators

  • Cummins Generators (3-yr warranty)
  • Generator Repairs & Maintenance
  • ATS / Changeovers
  • Generator Sales
  • Generator Rental
  • Generator Installation
  • Generator Spare Parts
  • Workshop Repairs & Fabrication
  • Power Interruption Solutions

Renewable & UPS

  • Solar Energy Solutions
  • Commercial / Industrial Solar
  • Solar System Sizing
  • Solar Genius Pro™
  • UPS Systems
  • UPS Lab
  • Solar / UPS Hub
  • Borehole Pumps

Electrical & HVAC

  • Distribution Boards & Panels
  • Motor Rewinding
  • Motors & Drives
  • High-Voltage Systems
  • Diesel Automation
  • Industrial Controls
  • Steel Fabrication
  • AC / HVAC Installation

Specialised & AI Suites

  • Hospital Incinerators
  • Incinerator Construction Guide
  • Building Engineering Suite
  • EIMS PRO Workspace
  • AquaScan Pro™
  • Generator Oracle™
  • Diagnostics Hub
  • Troubleshooting Wizard

Maintenance Hubs

  • Generator Maintenance
  • Solar Maintenance
  • HVAC Maintenance
  • Borehole Maintenance
  • Electrical Maintenance
  • Motors Maintenance
  • Incinerator Maintenance
  • Fabrication & Welding

Resources & Tools

  • Resources & Learning Hub
  • Knowledge Base
  • Technical Bible
  • Power Calculators
  • Fault Code Database
  • Blog & Articles
  • FAQ
  • Emergency Response Guide

Service Areas

  • All Kenya — 47 Counties
  • Nairobi
  • Mombasa
  • Kisumu
  • Nakuru
  • Kiambu
  • All Service Locations
EMERSONEiMS

Engineering-grade reliability for East Africa's critical infrastructure. Power systems built to perform.

  • LinkedIn↗
  • Twitter↗
  • Facebook↗

Company

  • About Us
  • All Services
  • Book a Service
  • Project Gallery
  • Case Studies
  • Industries Served
  • Careers
  • Contact Us

Quick Links

  • Generator Sales
  • Solar Energy
  • Diagnostic Suite
  • Solar / UPS Hub
  • Generator Oracle
  • Knowledge Base
  • FAQ

Contact

  • Nairobi HQEmbakasi, off Airport North Road, Nairobi
    (Near KEMSA Head Office)
  • Department Emails
    • General Inquiriesinfo@emersoneims.com
    • Service Coordinationemersoneimservices@emersoneims.com
    • Generator Deskgenerators@emersoneims.com
    • Solar & UPS Desksolar@emersoneims.com
    • Sally — Direct Accountsally@emersoneims.com
  • Phone
    +254782914717
    +254768860665

© 2026 Emerson EiMS. All rights reserved.

PROTECTED BY GENERATOR ORACLE / EMERSONEIMS
Privacy PolicyTerms of Service
ENGINEERED IN NAIROBI, KENYA
  1. Home
  2. /
  3. Repair Centre
  4. /
  5. fault-codes
  6. /
  7. Reading J1939 Engine Fault Codes — What SPN and FMI Actually Tell You

Electronically controlled engines — diagnostic message structure

Reading J1939 Engine Fault Codes — What SPN and FMI Actually Tell You

Applies to
Generating sets and plant with electronically controlled engines reporting diagnostics over a J1939 CAN link to a controller or display
Difficulty
intermediate
Competence required
technician
Diagnosis complexity
Low to moderate. The code structure is systematic and readable once understood, which is exactly why it is so often over-read.
Electrical system
Engine ECM and controller CAN network; set output 240 V / 415 V 50 Hz nominal
Safety classification
live electrical
Author
EmersonEIMS Engineering
Technical review
Mr. Kararaho
Last reviewed
2026-07-27

Scope — read this before relying on the guide

This guide sets out diagnostic method, ranked causes and safety requirements. It deliberately does not state equipment-specific numbers — test voltages, resistance and component values, torque figures, acceptance windows and pin assignments are referred to the manufacturer's documentation for your exact model rather than given here, because a plausible-looking figure for the wrong machine is more dangerous than no figure at all.

Direct technical answer

A J1939 diagnostic message is compositional, and reading it as two separate pieces of information is what makes it useful. The SPN — Suspect Parameter Number — identifies WHICH parameter the engine control module is unhappy about. The FMI — Failure Mode Identifier — identifies HOW it is unhappy: whether the signal is above a normal range, below it, erratic, out of calibration, absent altogether, or whether the ECM has detected a mechanical condition rather than a signal problem. So SPN tells you where to look and FMI tells you what kind of fault to look for, and the two together frequently distinguish a genuine engine problem from a wiring or sensor problem before you touch anything. An occurrence count usually accompanies them, which tells you whether this is a one-off or a recurring condition. What the code does not tell you is the cause, because a sensor circuit fault and a real physical condition on the same parameter produce codes that differ only in their FMI. Look every code up in the engine manufacturer documentation for that exact engine — the standard defines the structure, not the complete meaning of every code on every engine, and manufacturers add their own.

01Symptom description

Controller / display

  • ▪A numeric code shown as SPN and FMI, sometimes with an occurrence count
  • ▪A single code presented by the controller without indicating it originated in the engine ECM
  • ▪Multiple codes appearing together, some of which are consequences of others
  • ▪Amber warning versus red stop indication accompanying the code
  • ▪A code that clears on power cycle and returns under running conditions

Indicators

  • ▪Malfunction or warning lamp on the engine or control panel
  • ▪Controller common alarm active with the specific code only on a sub-screen
  • ▪Communication or data-link fault indication, which is a different class of problem

Sounds

  • ▪Engine running differently in a way that corroborates or contradicts the code
  • ▪No audible change at all, which is common for sensor-circuit faults

Smells

  • ▪Any burnt smell alongside a code means investigate physically before clearing anything

Behaviour

  • ▪Code appears only when the engine is hot, or only under load, which is diagnostic in itself
  • ▪Code appears at every start and clears once running
  • ▪Code recurs immediately after being cleared, meaning the condition is still present
  • ▪Engine derating or shutting down in response to the code
  • ▪Code present with no observable symptom, which frequently indicates a sensor or wiring fault rather than an engine condition
  • ▪Several codes appearing within seconds, indicating a cascade from one root event

Visible

  • ▪The full code list with occurrence counts, not just the first entry
  • ▪Whether the code originated in the engine ECM or the generator controller
  • ▪Wiring and connector condition at the sensor named by the SPN
  • ▪Evidence of recent work, rodent damage or moisture ingress at the harness
  • ▪Engine and controller software versions

02What the fault means

In plain language

Modern engines report faults as a pair of numbers. The first says which reading the engine computer is unhappy about — oil pressure, coolant temperature, a fuel parameter and so on. The second says what kind of problem it is: too high, too low, jumping about, or no signal at all. That pairing is useful because it often separates a genuine engine problem from a broken wire or a failed sensor before anyone opens anything.

Technical explanation

SAE J1939 defines a diagnostic message structure used across electronically controlled engines. The Suspect Parameter Number identifies the parameter concerned, and the Failure Mode Identifier classifies the nature of the fault against that parameter — the FMI set distinguishes, among other things, signals reading above or below a valid operating range, signals above or below the range considered electrically plausible, intermittent or erratic data, a value out of calibration, a condition that exists mechanically, and a missing or invalid data link message. That distinction between electrically implausible and merely out of normal operating range is the diagnostically valuable part, because it separates a wiring or sensor circuit failure from a real physical condition on the same parameter. A short to earth on a sensor signal wire and a genuinely low reading of that parameter both raise a fault on the same SPN, and only the FMI tells them apart. Messages usually carry an occurrence count, distinguishing a single transient from a persistent condition, and a lamp status indicating the severity the ECM assigns. Critically, the standard specifies the framework rather than an exhaustive dictionary: manufacturers implement subsets, define proprietary parameters and attach their own thresholds and remedial guidance, so the same SPN and FMI pair does not necessarily carry identical meaning or identical urgency across different engines. Where a generating-set controller displays engine diagnostics, it is relaying a message that originated in the engine ECM, so the code belongs to the engine manufacturer's documentation and not to the controller manual — a distinction that wastes a great deal of time when it is missed.

03Common causes, ranked

These are ordered by likelihood. Presenting every possible cause as equally probable is a failure of diagnosis, not thoroughness.

Most likely

start here
  • ▪Sensor circuit fault — open, short to earth or short to supply on the signal wire
  • ▪Connector corrosion, backed-out pin or moisture ingress at the sensor
  • ▪A genuine engine condition correctly detected and correctly reported
  • ▪Consequential code following an earlier root event

Possible

check next
  • ▪Sensor failed or drifted out of calibration
  • ▪Harness damage from chafing, heat or rodents
  • ▪Data link fault — wiring, termination or a device not communicating
  • ▪Code being read against the wrong documentation, so the meaning attributed is not the meaning intended

Less common

after the above
  • ▪ECM fault
  • ▪Software or calibration issue after an update
  • ▪Proprietary manufacturer code being interpreted as a standard one
  • ▪Controller misreporting a relayed message

Model specific

verify per unit
  • ▪The standard defines the STRUCTURE; manufacturers implement subsets and add proprietary parameters, so meaning must come from the engine manufacturer documentation for that exact engine
  • ▪Thresholds behind a code, and the severity assigned, differ between engines and calibrations
  • ▪Some manufacturers publish their own code numbering alongside or instead of SPN and FMI
  • ▪Derate and shutdown behaviour in response to a given code is calibration-specific
  • ▪Diagnostic tool access and clearing procedures are manufacturer-specific and may require authorisation

Environmental

site conditions
  • ▪Moisture and condensation at connectors, a leading cause of sensor circuit faults
  • ▪Vibration loosening connectors and chafing harnesses
  • ▪Heat degrading insulation near the engine
  • ▪Rodent damage to harnesses on sets that stand unused
  • ▪Dust and corrosion on connector pins

Installation related

built in
  • ▪Harness routed against hot or moving parts
  • ▪Connectors not fully seated or seals omitted after previous work
  • ▪Data link wiring without correct termination
  • ▪Aftermarket equipment connected to the CAN network incorrectly

Maintenance related

deferred work
  • ▪Codes cleared habitually without investigation, so history is destroyed
  • ▪Occurrence counts never noted, so recurring faults look like new ones
  • ▪Harness and connector condition never inspected
  • ▪No record of which engine software or calibration is in service

Component level

electronics
  • ▪Sensor failed
  • ▪Signal wire open, or shorted to earth or supply
  • ▪Connector pin corroded or backed out
  • ▪Data link wiring or termination fault
  • ▪ECM input failed

04Safety requirements

Isolation

  • ▪Stop the set and prevent automatic restart before working on the engine or harness
  • ▪Lock the control in stop and isolate the starting battery before disconnecting connectors
  • ▪Isolate the set output breaker before working around the alternator
  • ▪Allow hot surfaces to cool before reaching into the engine bay

Lockout and tagout

  • ▪Lock the control selector in stop and tag it
  • ▪Disconnect and tag the starting battery
  • ▪Tag the changeover control so auto operation is not restored during the work

PPE

  • ▪Eye protection and gloves
  • ▪Hearing protection while the set runs
  • ▪Heat-resistant gloves near a recently run engine
  • ▪Insulated tools for any work in the control panel

Stored energy

  • ▪The starting battery is live at all times
  • ▪Exhaust, manifold and turbocharger surfaces stay hot long after shutdown
  • ▪Common-rail fuel systems may retain very high pressure after shutdown
  • ▪The cooling system remains pressurised while hot

Specific hazards

  • ▪A code reporting a protective condition — low oil pressure, high coolant temperature, overspeed — must never be cleared and the engine restarted to see whether it recurs. If the condition is real, the next run destroys the engine.
  • ▪Never disconnect ECM connectors with the ignition or control supply live; do it with the battery isolated.
  • ▪Never loosen a high-pressure fuel fitting on a running engine — injection-pressure fuel penetrates skin and causes injuries requiring immediate surgery.
  • ▪The engine may start automatically during testing if the control is in auto
  • ▪Diagnostic tools can command engine functions; know what a command will do before sending it

Stop and call a qualified professional if

  • ▪A protective shutdown code whose cause you cannot establish
  • ▪Codes requiring manufacturer diagnostic tools or authorisation to interrogate or clear
  • ▪Suspected ECM or calibration faults
  • ▪Any situation where the proposed action is to clear a protective code and run the engine
  • ▪Data link faults on a network you cannot map

05Tools required

Tools required and the reason each is needed
ToolWhy it is needed
Engine manufacturer documentation for that exact engine and calibrationThe standard defines structure, not complete meaning — codes must be looked up against the engine, not a generic list
Manufacturer diagnostic tool or approved service softwareReading full fault detail, occurrence counts and freeze-frame data that a controller display may not show
True-RMS digital multimeterTesting the sensor circuit named by the SPN — continuity, shorts to earth and supply
Breakout leads or test harness appropriate to the connectorMeasuring at a connector without damaging pins, which is how connectors get ruined
Independent gauge for the parameter concernedEstablishing whether the reported value is TRUE, which the code itself cannot tell you
Controller documentationDistinguishing a controller-generated alarm from a relayed engine ECM code

06Diagnostic decision tree

Diagnostic decision flowchart: Reading J1939 Engine Fault Codes — What SPN and FMI Actually Tell YouA 7-step decision flowchart. Each step asks a diagnostic question; answering yes continues down to the next question, while answering no leads to the stated finding. The same sequence is written out in full immediately below this diagram.1. Is the code a protective condition — oil pressure,coolant temperature, overspeed?Yes — Do NOT clear and restart to test it. Establish thephysical condition first.NoContinueYes2. Did the code originate in the ENGINE ECM or thegenerator controller?Yes — Look it up in the matching documentation — enginecodes are not in the controller manualNoEstablish the source beforeinterpreting the numberYes3. Have you recorded the full code list and occurrencecounts?Yes — ContinueNoRecord before clearing anything —clearing destroys the history you needYes4. Which SPN, which parameter is implicated?Yes — That tells you WHERE to lookNoLook it up against the enginedocumentationYes5. What does the FMI say about the NATURE of the fault?Yes — Electrically implausible values point at wiring orsensor; out-of-range-but-plausible points at a realconditionNoThis is the most valuable half of thecode — do not skip itYes6. Does an independent measurement agree with thereported value?Yes — The condition is real — diagnose the engineNoSensor or wiring — the engine may beentirely healthyYes7. Is the sensor circuit sound — continuity, no short toearth or supply?Yes — Suspect the sensor or a genuine conditionNoThe harness is the faultYesContinue to the step-by-step diagnosis below.
Diagnostic decision flow for reading j1939 engine fault codes — what spn and fmi actually tell you. Simplified illustration — not a replacement for the manufacturer's model-specific schematic or service data. The same sequence is written out in full below.
  1. 1. Is the code a protective condition — oil pressure, coolant temperature, overspeed?

    Yes → Do NOT clear and restart to test it. Establish the physical condition first.

    No → Continue

  2. 2. Did the code originate in the ENGINE ECM or the generator controller?

    Yes → Look it up in the matching documentation — engine codes are not in the controller manual

    No → Establish the source before interpreting the number

  3. 3. Have you recorded the full code list and occurrence counts?

    Yes → Continue

    No → Record before clearing anything — clearing destroys the history you need

  4. 4. Which SPN, which parameter is implicated?

    Yes → That tells you WHERE to look

    No → Look it up against the engine documentation

  5. 5. What does the FMI say about the NATURE of the fault?

    Yes → Electrically implausible values point at wiring or sensor; out-of-range-but-plausible points at a real condition

    No → This is the most valuable half of the code — do not skip it

  6. 6. Does an independent measurement agree with the reported value?

    Yes → The condition is real — diagnose the engine

    No → Sensor or wiring — the engine may be entirely healthy

  7. 7. Is the sensor circuit sound — continuity, no short to earth or supply?

    Yes → Suspect the sensor or a genuine condition

    No → The harness is the fault

07Step-by-step diagnosis

Step 1Record everything before clearing anything

Inspect
Full code list, SPN and FMI for each, occurrence counts, lamp status and the order they appeared
Where
Controller display or manufacturer diagnostic tool
Instrument
Diagnostic tool, or photograph the display
Expected result
A complete record including occurrence counts
If the result is abnormal
Clearing codes destroys the history, and occurrence counts are what distinguish a transient from a persistent fault. This is the cheapest step and the one most often skipped.
Next
Step 2

Safety: Never clear a protective shutdown code and restart to see whether it recurs.

Step 2Establish where the code came from

Inspect
Whether the code originated in the engine ECM or was generated by the generator controller
Where
Controller display and its documentation
Instrument
Controller and engine documentation
Expected result
A clear attribution
If the result is abnormal
A generating-set controller relays engine ECM messages. Looking an engine code up in the controller manual wastes considerable time and can produce a confidently wrong interpretation.
Next
Step 3

Step 3Read the SPN, which parameter

Inspect
The parameter the SPN identifies, against the engine manufacturer documentation
Where
Engine documentation for that exact engine and calibration
Instrument
Manufacturer documentation
Expected result
An unambiguous identification of the parameter
If the result is abnormal
The standard defines the framework, not an exhaustive dictionary. Manufacturers implement subsets and add proprietary parameters, so a generic online list is not a safe substitute for the engine documentation.
Next
Step 4

Verify for your unit: The engine make, model and calibration, and that the documentation matches them.

Step 4Read the FMI — the nature of the fault

Inspect
What the FMI says about how the parameter is failing
Where
Against the engine documentation
Instrument
Manufacturer documentation
Expected result
A classification: implausible signal, out of operating range, erratic, missing, or a detected mechanical condition
If the result is abnormal
This is the diagnostically valuable half. A signal that is electrically implausible points at wiring or the sensor; a value within electrical plausibility but outside the normal operating range points at a real physical condition. The same SPN with different FMIs is a different job.
Next
Step 5

Step 5Separate cause from consequence

Inspect
Which code appeared first, and which followed within seconds
Where
In the timestamped or ordered code list
Instrument
Diagnostic tool
Expected result
One root event with later codes explained as consequences
If the result is abnormal
A shutdown produces several codes from one event. Working on the last code displayed is a common and costly error.
Next
Step 6

Step 6Verify the reported value independently

Inspect
The actual physical quantity, measured separately from the ECM
Where
At the engine, with an independent gauge or meter
Instrument
Independent pressure gauge, thermometer or multimeter
Expected result
Agreement, or a clear disagreement
If the result is abnormal
Agreement means the condition is real and belongs to the engine. Disagreement means the measurement path is at fault and the engine may be perfectly healthy. The code cannot tell you which.
Next
Step 7

Safety: Where verification requires running after a protective shutdown, establish first that running will not cause damage.

Step 7Test the sensor circuit named by the SPN

Inspect
Continuity, shorts to earth and to supply, connector and pin condition
Where
At the sensor and along its harness
Instrument
Multimeter and appropriate breakout leads
Expected result
Sound circuit, clean and fully seated connectors
If the result is abnormal
Corrosion, backed-out pins, chafed harness and rodent damage are leading causes of codes that look like engine faults. Use proper breakout leads — probing pins directly damages connectors and creates the next fault.
Next
Step 8

Verify for your unit: Sensor type and expected circuit behaviour for this engine, from the manufacturer data.

Step 8Correct the cause, then clear and validate deliberately

Inspect
That the identified cause is addressed before the code is cleared
Where
At the corrected fault
Instrument
Diagnostic tool and observation after a run
Expected result
Code does not return under the conditions that produced it
If the result is abnormal
A code that returns means the condition persists. Record the code, the cause and the action so the next technician starts with information rather than a cleared list.
Next
Refer ECM, calibration and unresolved protective codes to the engine manufacturer

08Repair procedure

Harness and connectors — the commonest fix

cleaning and connections
  • ▪Clean corroded connector pins and reseat connectors fully with seals in place
  • ▪Repair chafed, heat-damaged or rodent-damaged harness sections properly rather than taping them
  • ▪Re-route harness away from hot and moving parts
  • ▪Correct data link wiring and termination faults

A large share of codes that appear to indict the engine are resolved here, on the wiring.

Sensors

sensor replacement
  • ▪Replace a sensor proven faulty by independent measurement
  • ▪Fit the correct sensor for the engine and calibration
  • ▪Verify the reported value against an independent measurement after fitting

Software and calibration

firmware
  • ▪Refer calibration and software issues to the engine manufacturer
  • ▪Record the software and calibration version in service before and after any change

Do not improvise ECM programming. A partly programmed module may be unrecoverable.

Engine and ECM

manufacturer level
  • ▪Refer genuine engine conditions and suspected ECM faults to a properly equipped facility
  • ▪Provide the full code list with occurrence counts, independent measurements and circuit test results

09Post-repair validation

  • ▪Confirm the code does not return under the conditions that originally produced it
  • ▪Confirm the reported value agrees with an independent measurement
  • ▪Confirm no new codes were introduced by the work
  • ▪Record the full code list after the repair as a new baseline
  • ▪Record the engine software and calibration version in service
  • ▪Record the SPN, FMI, occurrence count, cause identified and corrective action, so the next visit starts with information

10When not to repair

  • ▪Where the correct engine documentation cannot be obtained — interpreting a code from a generic list is guesswork on a specific engine
  • ▪Protective shutdown codes whose physical cause cannot be established
  • ▪ECM faults requiring manufacturer tools and authorisation
  • ▪Where the only proposed action is to clear the code and continue running
  • ▪Engines whose calibration or software state cannot be established

11Prevention

  • ▪Never clear codes routinely; record them first, because occurrence counts and order are diagnostic
  • ▪Inspect harness and connectors at service intervals, particularly on sets that stand unused where rodent damage occurs
  • ▪Keep the correct engine documentation with the set, including the calibration in service
  • ▪Record the software and calibration version so a change is detectable
  • ▪Review the code list at every service visit — recurring low-priority codes often precede a failure
  • ▪Seal and protect connectors properly after any work; moisture ingress is a leading cause
  • ▪Treat a code with no observable symptom as worth investigating rather than dismissing, since it frequently indicates a developing circuit fault

12Questions engineers actually ask

What is the difference between SPN and FMI?

SPN identifies WHICH parameter the engine control module is unhappy about — it tells you where to look. FMI identifies HOW it is unhappy: implausible signal, out of normal operating range, erratic, missing, or a detected mechanical condition. Reading only the SPN throws away the more useful half, because the same parameter with a different FMI is frequently a completely different job.

Can I look the code up online?

Use it as orientation, never as the answer. The standard defines the message structure rather than an exhaustive dictionary, and manufacturers implement subsets, add proprietary parameters and attach their own thresholds and severities. The same pair of numbers does not necessarily mean the same thing, or carry the same urgency, on a different engine. Look it up in the documentation for that exact engine and calibration.

The controller shows a code but its manual does not list it. Why?

Because it almost certainly originated in the engine ECM and the controller is only relaying it. Engine codes belong in the engine manufacturer's documentation, not the controller manual. Establishing which device generated a code before looking it up saves a great deal of wasted time.

There is a code but the engine seems to run fine. Can I clear it?

Record it first, then investigate rather than clear. A code with no observable symptom very often indicates a sensor or wiring fault — a chafed harness, a corroded pin, moisture in a connector, which is real, is developing, and is cheap to fix now. Clearing it without investigation destroys the occurrence count, which is exactly the information that would have told you whether it was a one-off or a pattern.

Standards and references

  • ▪SAE J1939 and its subordinate documents, which define the diagnostic message structure including Suspect Parameter Number and Failure Mode Identifier
  • ▪ISO 8528-4 — generating sets: controlgear and switchgear
  • ▪The engine manufacturer's documentation for the exact engine and calibration in service, which is the only valid source for the meaning, threshold and severity of any specific code
  • ▪The generating-set controller manufacturer's documentation, for distinguishing controller-generated alarms from relayed engine messages

This guidance is written from engineering principle and is not a substitute for the manufacturer's model-specific documentation. Where a figure is model-specific, confirm it against the service data for your unit before acting on it.

Need this diagnosed properly?

Send us the make, model and any fault codes shown, and photographs of the controller display if you have them. Our mobile workshop covers all 47 counties.

Call 0768860665WhatsApp the fault detailsRequest a site inspection

Related diagnosis guides

  • controller alarm interpretation