The overheat light comes on, the engine drops to a low-rpm crawl, and you limp back to the ramp. That is the typical story on the first four-stroke FX models, the FX140 and FX1000 with the 998 cc four-cylinder (2002 to 2005). The usual next step is to order a temperature sensor, because it is easy to swap and the logic seems simple. Quite often nothing changes afterwards.
Two problems that look the same
The light means the ECU decided the engine is too hot, or that the temperature signal looks wrong. Those are different situations. Either the engine really is hot because too little water moves through it, or it is fine and the reading is off. Owners of newer boats (EX, VX, FX SVHO, FZR) describe the first case far more often in forums: a pump that cavitates, weed or plastic stuck in the intake grate, a chewed impeller, a plugged small cooling-water passage, or manifold passages clogged after years of poor flushing. The sensor comes late in that list. Those reports come from newer models, but the cooling basics are the same on an FX140: water has to get in, pass through the engine and get out again.
What the live data can settle
The early FX control unit is simple. It knows only about 8 to 12 fault codes, and the one that matters here is code 21, the engine temperature sensor. That number comes from the generation A list used by these models. Other sources number codes differently, so go by the plain-text description in the app. The code is less useful than the live value.
With the M-JET Diagnostic connected, run the engine in the water or tied up at the dock (never on land without a water supply) and watch engine temperature next to rpm. A cold engine should read close to the outside temperature. If it doesn't, the sensor or its connector is suspect. If the value is plausible and then climbs steadily as you hold rpm up, the engine really is heating up, the sensor is doing its job, and a new one would change nothing. The problem is flow.
A value that jumps around or freezes while the engine feels normal points the other way. Unplug the connector, clean the contacts, check the wiring where it flexes.
The part the app cannot see
Cavitation, impeller and wear ring condition, debris in the intake and clogged cooling passages leave no code and no live value. One check owners like: with the ski running in the water, water leaves at the rear but nothing shows at the test tube. That means the route is blocked somewhere in between. Pull the lanyard and look into the intake grate and at the impeller blades with the engine off. Bent or chipped blades and wrapped weed are easy to spot with a flashlight.
A quick look at voltage
One FX140 owner traced an alarm and starting trouble to a corroded voltage regulator. That is a single report, but checking costs nothing. Battery voltage is in the live data, and with the engine running it should sit clearly above the resting value. If it stays at the resting level, the charging side needs attention before the engine does.
The order I would work in
- Read the memory and write down the codes before clearing anything. On this generation the list is short, so each entry counts.
- Check the intake grate, the impeller and the small cooling passage.
- Watch engine temperature live. Real heat points to the water path, an odd signal points to the sensor and its connector.
- Check battery voltage with the engine running.
- Buy a part only if the live value gave you a reason.
The app supports the FX140 and FX1000 as well as the later FX1000(A), FX1100 and FX HO MR-1 models, and shows only the functions your ski has. The FX140 and FX Cruiser diagnostics page covers the model range, and the overheat and limp mode page goes deeper on this exact symptom.