ME221 Installed

The market for Plug and Play MX-5 ECUs has virtually been monopolised by Megasquirt for a long time. We actually have two MSLabs MS3s ourselves – one in Gail the Snail and the other in the Blue Peril. The Megasquirt is an exceptionally capable ECU, with powerful features such as fully sequential fuel and spark, boost by gear and nitrous control to name just a few, providing you have the sensors available.

However, Motorsport Electronics recently stormed onto the scene with an offering that demanded attention. With our projects reaching the stage where they needed timing and fuel control we felt it would be negligent to ignore the ME221, despite being die-hard Megasquirt fans. So, we placed our order and the very next day a little white box arrived with the blue ME logo proudly displayed on top. (We had to wait 4 weeks for a MegaSquirt!)

The ME221 is billed as a fully plug and play solution that can be installed in minutes inside the original ECU case and be a nearly invisible install (nearly invisible because you still need to run a vacuum line into the cabin). We’re not going to go over the install process of the ECU as you’ve seen all that before – if you haven’t, you can find all you need to know all over the internet, including Motorsport Electronics’s own video guide (Part 1, Part 2). Instead, we’re going to focus on what its been like to live with.

Get 5% off your ME221 using code: ME5

Taking the Plunge

We ordered 2 ME221s, one for Gwyneth and her surprisingly healthy short nose crank 1.6 and Winston for his healthy (as usual) 1.8. There are a few important differences between these two cars that need to be mentioned. Gwyneth (despite her seedy underbelly) is almost completely stock and in surprisingly good condition electrically. No dodgy wiring hacks from previous owners to worry about and the grounds are fine.

Winston though, that’s a different kettle of fish entirely. His wiring harness looks like it has been played with a good half a dozen times, including splices for seemingly no reason and grounds that can only be generously described as poor (including the main battery ground which is a frayed mess). There was even an aftermarket immobiliser hacked into just about everything under the dash – not the worst we’ve seen, but pretty bad. Winston’s engine also has what our American friends like to call “full bolt-on’s”, which includes a full exhaust system from the manifold back and an actual cold air intake (Randall style). Its worth noting that the stock ECU seemingly handled all of this fine, with the only real symptom being a rev counter that occasionally wandered off and read whatever it wanted.



Installation in Gwyneth was done one morning over breakfast before heading off to the day job. It literally took just a few minutes with nothing more complex than setting the jumpers as directed in the manual. After install the car fired up with a bit of cranking, but didn’t want to idle – this was because we had forgotten to plumb the MAP line. After putting that in, the car started up similarly to the stock ECU and idled fine. Idle quality was further improved by setting the base timing using the timing offset in MEITE. Thats it. Really. In just about half an hour the car was running with no issues.

The ME221 was installed in Gwyneth way back at the end of November 2016 and since the install, she has been run on the certified version of the basemap for the 1.8.4 firmware (named: “MX5 1989 1.6 OEM 120bhp.mecal”) with very little tweaking required. The experience on such a ‘clean’ 1.6 has been nothing short of stellar, genuinely a plug and play solution.


Winston Rear Quarter

Again, the install was a breeze. Simply swap over the ECU’s, run the MAP line and apply a basemap. The decision was taken to leave the MAF in place for now, but it will be switched over to the GM IAT sensor when the car gets supercharged. Initially Winston would not start up which we quickly diagnosed as the fuel pump not running and with light rapidly running out, we opted to not try and fix it properly and just bridged the diagnostic connector as per the manual (FP -> GND). Like most ‘temporary’ solutions that work, it ended up staying like this for quite a while – months in fact! Pro Tip: If you decide to run like this, use a short length of wire and tuck it in. Having a long jumper fall out and stall the engine at nearly 6000 rpm on an unlit country road is no fun. Ask me how I know.

DIAG Jumper

With the fuel pump running, the car fired up. Unlike our experience with Gwyneth though, Winston required a lot of cranking and some throttle to start when cold – a situation that was only a little better when up to temperature. Winston was previously running with the 14 degree timing mod and did require a quick tweak to the Timing Offset value on the START tab in MEITE to sync the ECU with the engine base timing.

Initially the idle wasn’t great, it was running way too high and not really coming down. This was by no means a major issue though, as I did have the BIS screw wound out a fair way (I’m a man-child, so I wanted to hear induction at idle with the cowl intake). The basemap seems to assume a fairly closed BIS screw as it uses very high PWM values. Dan managed to quickly bring the idle under control by changing the min and max PWM values on the IDLE tab and we also changed the Lambda correction to Narrowband from the basemap setting of Disabled to get ready for a test drive.

As I briefly alluded to before, we are children at heart, so before the test drive we loaded a modified version of the Blue Peril’s spark and VE tables. We have extensively road tuned that car and the spark advance is pretty aggressive and makes good power. Dan (unbeknownst to me) also tweaked the VE and spark during overrun conditions to make it more aggressive.

After making all those sweeping changes, we went out for a test drive so Dan could monitor what was going on in the passenger seat while I put it through its paces. I’m sure many important and interesting things were changed and noted during this test drive, but I didn’t notice any of it. Winston felt good. Very good in fact and those overrun changes Dan had made were hilarious. We were throwing so much fire – literally lighting up the countryside. So much fire that we had to tone it down significantly for fear of destroying the shiny new exhaust! In the end we determined that the test drive was successful, but a wideband was sorely needed to get the most out of it.

Still, Winston was run for a few weeks with just the tweaked base map. I did make changes every now and again to improve the startup and idle with mixed results. I determined the likely cause of the startup issues was the aftermarket immobiliser. The speed at which I deactivated it after turning the key to IGN had an effect on engine start – too slow and the priming pulse commanded by the ECU wouldn’t have any fuel. Increasing the fuel trim when cranking seemed to help, but nothing would make it startup as well as I wanted. Eventually I gave up and had Dai from Valley 5s remote in and get the startup dialed in. In case you were wondering, the hype is justified. We set up a remote tuning session and had Winston starting up on cue within short order. While in there he also re-tuned the idle, but admittedly I preferred my idle tune so I reverted those changes. If you’re having trouble getting startup dialed in, definitely give Dai at Valley 5s a bell. He’ll get you going.

Winston gets a Wideband

I wanted a wideband that was discrete as I am not a fan of the overly flashy gauges they all seem to have. Due to this, my choice was limited – especially because I wanted to have the LSU4.9 sensor. In the end I chose the Spartan 2 from 14Point7. They’re made stateside so I had to import one, but it fit the bill perfectly and it was pretty cheap (even with import charges I only spent about 120 quid). Installation was simple – just chop off the Narrowband sensor and graft the connector onto the wideband. As there is no gauge I tucked the unit up into the dash and unless you knew about it, you’d never even know it was there.

In order to use the new wideband, 2 changes had to be made in MEITE. The sensor calibration needed to match the datasheet provided by 14Point7 – which it did. It seems the basemap calibration for Widebands is already correctly set for the common AEM UEGO and Motorsport Electronic’s own upcoming wideband (0v 10:1, 5v 20:1) which the Spartan 2 also uses.

Wideband HRT

Finally, the Lambda correction needs to be set to use the wideband. There are 2 options here, ‘Wideband Simple’ and ‘Wideband Prop’. You can use either as they produce the same result, but the algorithms do differ slightly in the way they make the corrections.

  • Wideband Simple: Every cycle the algorithm adjusts the ‘Lambda Fuel Mod’ by the step size specified in the Lambda settings (basemap is 0.3). This means it keeps adjusting the fueling by the same amount each cycle until the AFR target is reached.
  • Wideband Prop: This is a little different, it applies a trim equal to X% of the difference between the current AFR and the target AFR. The percentage the algorithm uses to do the adjustment is set on the Lambda control panel. This method of Lambda correction has the potential to make much larger fuel changes faster than the simple version, and consequently, is my preferred setting.

After installing the wideband, all drive-ability issues went away as lambda correction could finally correct the slightly rich mixture I had going to keep the aggressive timing safe. It also allowed me to fiddle with the idle successfully and get it relatively stable. My fuel economy also returned to stock ECU levels (which on Winston is at the high end for a mk1 MX5 – 420-460km per tank is common and I don’t baby it). The ME221 may run the car well enough without a wideband, but it really begs for one to get the most out of it.

What about Autotune, is it any good?

The newly installed wideband allowed us to start tailoring the 1.6 VE/Spark tables from the Peril to the 1.8 and to play around with the Long Term Trim and Autotune features.

Initially I tried the live Autotune in MEITE (accessible via Tools > Autotune). Unfortunately this feature seems impractical for road tuning as it needs the car to be held as close to the centre of each load cell as possible for as long as possible. On the road, conditions often make that impossible to achieve, but we are 100% sure that on a dyno this feature would rapidly tune the VE table to the Target AFRs automatically.

Long Term Trim however, is excellent for road tuning. Pretty much set and forget while it builds up a table of trims and confidence values. When you think you’ve collected enough data, its as simple as plugging the laptop in and applying the trims to the VE table. I’ve only used this feature to tune cruise and now have Winston cruising with a target AFR of 15.5 perfectly – it only suggests trim changes of 0.01 at most now. This is plenty close enough for me!

Removal of the Immobiliser

Recently I decided it was time to rid Winston of the problematic immobiliser. This wasn’t too difficult, but as with most of these devices there were redundant power and grounds everywhere under the dash and a number of questionable splicing jobs (most notably on the fuel pump relay and the starter). While I was in there I spent a good couple of days picking apart the wiring looms and removing as much of it as I could – anything that wasn’t necessary to run the car has been removed. I also made a new ground wire for the battery and renewed all of the grounds in an effort to fix some of the noise seen on the TPS RAW values in the logs.

After doing all of that, the car started up on the button and idled pretty good. Logging a cold start also showed that noise in the TPS RAW values had been significantly decreased. This can be seen in the graphs below (using MegalogViewer HD). Both graph sets show a stone cold startup with the upper one being before this work and the lower being after. You can see in the upper graphs the TPS Raw values [yellow line] are all over the place, but crucially when the engine starts up (as indicated by the RPM [white line] and MAP [red line] crossing over), the noise increases and the TPS Raw values rise. This is completely corrected in the lower graphs. I have circled this area of the graphs for clarity. The spikes at the end of the lower graphs are a result of me blipping the throttle to test response, as the reduction in ground noise had allowed me to re-calibrate the TPS.

Startup Log - ground noise Issues

Removing the immobiliser had not magically fixed my need for the jumper wire across the DIAG connector to run the fuel pump though. This time around however, I had put enough time into the wiring that I had to fix it properly. Some poking around with the multi-meter showed me that the fuel pump relay was never being switched by the ECU. This was odd, so I checked the output settings in MEITE and found that everything there matched the basemap with the fuel pump control being assigned to EXT_OUT1. However, checking the manual for ideas led me to the default IO listing where it showed LS1 as the fuel pump output. Putting aside the fact that the manual and basemap don’t match, switching the output of the fuel pump on Winston fixed the issue. The ME221 now had full control of the fuel pump. I also relayed this information to a buddy of ours that was having the same fuel pump issue, and that fixed his 95 Eunos too.

This fix has hurt my cold startup somewhat though. Unless I prime the pump twice or more, cranking can take much longer. I’m sure this has something to do with the priming pulse and fuel pressure timing. I can clearly hear my injectors clicking just as the fuel pump relay clicks and shuts off the pump. This theory is further supported by the ease of startup after priming a second or third time. This issue is really minor and is easily manageable. I’m certain I can tune this out with a bit of time, but right now I’m in a happy place. Its also possible there is a physical fuel system issue as that’s pretty much the only system on the car I haven’t touched (if you exclude cutting through the return hard line with a grinder, but that’s a story for another day…).

The wiring changes I made have also magically (read: unintentionally) fixed my clutch switch. This means I can now flat shift. After a few tweaks to the basemap settings, the ME221 flat shifts beautifully. It feels like there is just the right amount of violence and it all just works. The ease in which I got this going is something we have never experienced with a Megasquirt, there always seems to be more work required with them.

Aggressive ALS Settings

Working flat shift has tipped me over the edge, I am totally in love with this ECU now.

So what about MEITE, Is it any good?

Compared to Tuner Studio, MEITE needs some work – that’s not to say its bad though, far from it. I like the tabbed layout a lot and the ability to make custom layouts is great. You will be spending a lot of time in the software, so being able to set it up so the controls and parameters you want to access are all to hand is invaluable. This is something I put some time into doing, as I found the default layout didn’t flow how I wanted it to and didn’t expose some of the controls I wanted. The only real downside of this fully customisable approach is the way the tabs populate when you load them. It seems like it reloads the positions of all objects every time the tab is opened which results in a tangible pause as the objects stack up in the corner and redistribute (slower machines will notice this far more than faster ones).

Generally speaking the software is reliable, but during the times it isn’t, the error messages are often cryptic and unhelpful unless you are willing to read a stack trace. A bit of time to make friendly error messages would go a long way to improving the experience when things don’t quite go to plan. For example, an error I experienced a couple of times was simply reported as an ‘Unhandled Exception’.

Unhandled Exception

Reading the stack trace I could tell it was related to the custom layout I was making at the time – something had gone wrong and MEITE was unable to render the display. Unfortunately this appeared to be a catastrophic error that required restoring the layout from a previous backup I had taken and redoing the customisations. I have no idea what caused it to error in the first place, but my second attempt didn’t error and all was fine. For reference, the layout files are stored in the following path by default: “C:\ProgramData\Motorsport Electronics Limited\MEITE\layouts”. ANOTHER PRO TIP: If you are feeling up to it, it is possible to modify the layout file XML directly to make customisations.

Most of the time MEITE performs well, but it does struggle if you make a layout with a lot of gauges. I have also experienced some noticeable slow downs after logging during longer drives, but not enough to make the software a real chore to use. It does seem to be very sensitive to graphics performance – machines with far more horsepower will flick between tabs significantly faster than an average laptop. In practice this isn’t a big issue though and its worth noting that Tuner Studio can also suffer from similar slowdowns – albeit to a lesser extent.

I think MEITE is the weak point of the package, but having said that its still in active development and it seems to improve with each update. Motorsport Electronics are also good at listening to their user base and delivering features and fixes that the community asks for. I expect with a few more updates all of these minor gripes will have been addressed.

At the time of writing I am running version 1.7.0.

What is the logging like?

Logging with the ME221 is as simple as plugging the laptop in and telling MEITE to begin logging. Logs are output as standard CSV files. This leaves the choice of how to view them up to you. If you wanted to, you could open them up in Excel or even Notepad (if you hate yourself). We recommend using MegalogViewer HD though. Its a tool used by the Megasquirt guys all the time and is extremely robust. Opening the ME221 log files in it works right away, allowing you to quickly create graphs and comparison views. If you are having any issues at all, capturing a log and viewing it in MegalogViewer HD is the quickest way we’ve found to diagnose the cause and fix it.

MegalogViewer HD also has a free version so there is no reason not to give it a go. Its probably prudent to mention we don’t have any affiliation with EFI Analytics, they just make a cracking piece of software that makes it possible for us to road tune our own cars confidently.

If I was to suggest an improvement for logging in MEITE, it would be nice to have an automatic logging trigger. Using Tuner Studio we can (and sometimes do) have logging set to automatically begin when a certain condition is met – eg. RPM > 0.


With nigh on 6 months of ME221 motoring in Gwyneth and 3 in Winston, we can confidently say that the ME221 is the real deal. Motorsport Electronics have brought a device to market that is not only extremely capable, but holds its own against the well established (and loved) Megasquirt all while promising to be fully plug and play – a promise that in our experience, is largely honoured. It cannot be expected to work flawlessly straight out of the box in a car with as many hidden problems as Winston, but even in such a hostile environment it worked very well with a bit of tweaking. Now that most of the wiring issues present in Winston have been tracked down and fixed, its completely come into its own and is working flawlessly.

We suggest getting a wideband to go with the ME221. This really unlocks the capabilities of the unit and allows you to tune the car yourself safely and effectively. With a wideband you shouldn’t be afraid to experiment with the basemaps, as while they are pretty good and will run the car well, there is quite a bit of performance left on the table.

I do wish the ME221 had a USB interface rather than RS232 though as it just seems so dated to need to use a USB adapter to make it compatible with nearly all modern laptops – especially as the Megasquirt has had USB interfaces for years. It would also be nice if it supported sequential ignition, but I am told by Motorsport Electronics that this functionality is expected to be ready in the next few months.

As a final note, technical support from Motorsport Electronics has been excellent with very quick response times and a commitment to finding a resolution. Quick questions as well as tuning issues are no problem and they’ve always been happy to help. As a nice added bonus, there is also an active ME Users group on Facebook where the community and the guys at Motorsport Electronics are always happy to offer advice.

The ME221 is a truly great package with a very capable ECU, decent tuning suite and a very bright future.

So what do we Recommend?

If you are in the market for an aftermarket ECU and have been looking at the Megasquirt options, we recommend going with the ME221 in nearly all cases. It does have its limits though, so for full race car builds or very high horsepower cars that have a lot of extra sensors we suggest going for an enhanced MS3 (either an MSLabs unit or a self build MS3X).

  • MS2 or ME221? ME221
  • MS3X or ME221? MS3X (unless you won’t use its extra features, then go with the ME221)

Changes you may need to make to the basemap

  • The basemaps seem to assume a fairly closed BIS screw. This will be correct for most cars, but if you have really high idle issues or it doesn’t come down as expected, you will need to change the PWM values on the IDLE tab. There is no right answer here, trial and error is the only way to dial it in. When you’re done with this, remember to set the Exit Idle Duty to a value in between your min and max. For reference, Winston’s values are: MIN: 18 MAX: 33 EXIT: 28.
  • The basemap VE and Spark table scales go way above anything an NA car will see. If you have a wideband and want to tune it, change the Y axis (you can double click to edit). For an NA car, you do not need anything above 100kpa.
  • Lambda correction is set to Disabled on the basemaps. In fairness, this doesn’t cause any problems if you stick to the basemap VE / Spark tables and do not have a wideband.
  • Alternator control is set to ON in the AC/Fan/Alt tab. This does nothing on NA models (1.6 or 1.8) and might as well be turned off. It does no harm to leave it on, but I feel its cleaner to disable it.
  • 1.8 ONLY: The basemaps set fuel pump control to EXT_OUT1. Some cars may require this changing to LS1. This can be done on the IO SETUP tab and is worth a try if you can’t get the fuel pump to run without a jumper wire across the DIAG connector. This fix has worked for both a 93 and a 95 Eunos, but has not been needed on any 1.6 we’ve seen or a 94 1.8 Eunos we also installed an ME221 in.
  • 1.8 ONLY: Set the fueling mode to Sequential. There is no need to run it in batch or paired as per the basemap with a 1.8. This change can be made with the engine running. In fact, if you make this change during idle you will hear the exhaust note get smoother and the idle will likely stabilise. If you want to make this change with a 1.6 you need to modify the injector wiring.

Dan’s Thoughts

(Dan is running a Megasquirt built by MSLabs in the Blue Peril and has ran it for about a year. I asked him what he thought of the ME221 and this is what he had to say.)

The first comment i’ll make is if you want an ME221, you can get one next day delivered during the week. For a Megasquirt you either have to build it or have it built to order and currently the wait times can be anything from 1-6 weeks.

If you have an issue, you can pick up the phone or even go and see the guys in person over in Wiltshire and now the unit is maturing, there is a community behind it to support it – just like Megasquirt (community advice for the Megasquirt is broadly applicable to the ME221 as well).

Personally, the biggest gripe I have is the tuning software, MEITE’s approach allows for more customisation of the screens, but it doesn’t seem to allow quite the level of control and isn’t as simple to learn as Tuner Studio – as with any piece of software, naturally you’ll be biased to what you know. Bluntly, it works and it works well enough to get the car set up in as little as an hour start to finish.

The other angle is the MS3/X allows you to be a massive nerd and add modules to it and turn that car into something it wasn’t designed to be – like adding in speed sensors, gps – anything you can think of. Is it really a benefit? Only if you can’t leave it alone – personally, it’s a nice idea but in practice we all just want to drive the thing (only one point would be you can have 2 MAP sensors allowing for altitude adjustment on boosted cars).

If you’re getting an ME221, you’ve saved yourself cash not needing to get Tuner Studio – but please, do yourself a favour and get MegaLogViewerHD – it works flawlessly.

Oh, one final point – Tuner Studio has a better implementation of Auto Tune, but you can use VE Analyse with MegalogViewer HD to then supplement this process and ‘auto generate’ a VE table for your car.


I recently installed an ME221 on an unknown 1.8 car and while I had to get the right base map in place, the basemap provided was better than the one for my 1.6 car.

At the time of writing, we have only run firmware version 1.8.4 and the associated basemaps for all cars. V2 of the firmware is now available as a Release Candidate and seems to be whats shipping from Motorsport Electronics now. We will be upgrading Winston to this new release in the next few days to enjoy the plethora of new features it comes with. We will keep you updated with how we get on as Winston is mated to a M62 supercharger in the coming months.

TL;DR - It's Good, Buy Now.


  1. Andrew Blainey 27th January 2019

    Fantastic read here, really detailed and easy to understand. Are the BaseMaps for the 1.8’s the same across NA’s and NB’s? Looking to start my turbo build soon and planning on starting with ME221 and a wideband.

    Keep the blogs coming!

    1. Daniel Marshall 28th January 2019

      Hi Andrew, they’re effectively the same but basemaps are provided for all engine / chassis combinations 🙂 – there are specific settings like the Altenator control on the NBs that are different as one example.


Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.