Resurrection of PWM Motor Controller


Have been doing a little bit of research and thinking, dangerous I know.

One of the reason I want to create a PWM motor controller is to limit the noise that these motor make when driven by very low PWM frequencies that the MS3 PWM O/P’s provide as well as utilising it in a returnless fuel setup.

One of the problems is that the MS3 and or TunerStudio MS has a limited set of output frequencies (11.1Hz to 250Hz) to drive motors in closed loop PWM control. From my research frequencies required to make the motors run quietly (hopefully in the upper audio frequencies) and still maintain sufficient torque and not overheat, vary wildly depending on the motors electrical and mechanical characteristics.

A test I did a year ago using MS3 resulted in a awful lot of noise from the motors using the MS3. Like my fuel pump was a coffee grinder and the radiator fan was not much better either!


The implementation would look at the duty cycle of the input (from MS3) and switching the output to the motor at the same duty cycle but at a user selectable frequency (possibly at a multiple of input frequency). I won’t go into to many details as I’m still thinking of the design plus I’ll be doing some prototyping shortly, but it will:

  • be a micro controller based design
  • have high speed opto-coupling of the I/P (very important if there is a problem with the O/P you don’t want high voltage fed back into the MS3)
  • have user selectable PWM switching frequencies either as multiples of I/P frequency or it’s own configurable frequencies
  • it will work out the dwell (duty cycle) of the I/P from the MS3
  • it will either have medium current IGBT or MOSFET O/P transistors.
  • be contained in its own splash proof case
  • mounted close to the motor to minimise the EMI from the high frequency current wires

At this stage I’m just investigating and prototyping…

To MAF or not to MAF?

I’ve decided to expedite the installation of the MAF (Mass Air Flow Sensor), by installing it now in phase III, not phase IV as originally planned.

Part of the reason is cutting down on effort tuning one system, as the SD system is tuned differently. There appears to be more people using MAF nowadays, so maybe I’d be doing less pioneering, and will be able to leverage off others expertise. Plus I think I’d be the only person with a ’68 Morris Mini that was running a MAF system??

BOSCH MAF 0280217123
BOSCH MAF 0280217123

I’ll be using a K&N cylindrical air filter. Some people have said not to use the oiled mesh type of filters as the oil contaminates the MAF sensor, but after looking at text and video footage on the K&N web site, which they disprove this myth, I’ve decided to go ahead and use the filter. I have very little room under the bonnet (hood) so it would be a tight squeeze for this filter let alone if I had to make a cold air filter box and use a dry paper element.

K&N CM-8012 Air Filter
K&N CM-8012 Air Filter

Hopefully the compromises in layout of the air filter trunking etc will not adversely affect the performance of the MAF. Time will tell!

EFI Rebirth – Or Never Say Never Again!

Why again?

As the title says, never say never again … I have changed my mind once again. The main thing I noticed in previous EFI installations, was that the increased torque down low, a result of better mapping of the ignition. Also a smoother idle when hot and also cold.

I need a project, and I was thinking of making my own programable ignition, but being basically lazy, well you get it don’t you?

I intend to document my steps along the way, and hopefully someone might get inspired by my ramblings. I’ll call this phase, Phase III.

Walbro 5CA401 Fuel Pump

One of the disappointments from the last attempt, was the Walbro 5CA401 fuel pump SPI replacement that I fitted. It is louder and has more of a rasping tone than the original Rover SPI fuel pump, P/No 6443434 which is more of a whir. The Rover one I think is using a different type of pumping mechanism.

If you look at the picture, you will see that the Walbro is half the size of the Rover pump. It stands to reason (maybe?) that the Walbro has to work harder, hence more noise. Does anyone else with this pump, notice the louder noise?

I’ll keep the Walbro in situ, and see if I can live with the noise, maybe I can put some Dynamat sound deadening on the outside of the petrol tank to dampen the noise.

The Walbro 5CA401 is rated at a minimum of 109 litres/hour or 29 US Gallons/hour @ 12PSI

Walbro 5CA401 on left Rover 6443434 on right
Walbro 5CA401 on left Rover 6443434 on right
Walbro 5CA401 Fuel Pump in pickup
Walbro 5CA401 Fuel Pump in pickup

RIP Eddie

Now for a sad note. My faithful companion of 11 years, Eddie the dog was put down in January 2016 as his heart finally failed him.

Eddie was a constant companion out in the workshop and around home, and I will miss him greatly.




House move and more Mini EFI

House move

Yesterday my landlord knocked on my door (he lives next door) and said that he was having both his and my house surveyed for his bank. Now I might be a little slow sometimes, but this was no boundary survey. It took all morning for both his and my house including all buildings to be 2D/3D laser mapped . One of the operators said it was the first part of a chain of events to get planning permission to build his new house that will occupy both blocks of of adjoining land. The architect was to get these plans.

Bugger! I knew that this was to eventually happen as the landlord’s wife had told me shortly after moving in that my house was to be demolished at some time. So much for the long term tenancy I asked the real estate agent for!

So rather than wait for a moving out notice, I’m on the lookout for new abodes.

Update 12th April 2016

Put an offer in on a property a week ago, no go. Luckily the second place I applied for was a goer, and a better fit for my future lifestyle, so the old adage “what’s for you won’t pass you by”, is a real truism.

New place (it’s only three years old) has a large double garage and a dedicated study. It was a good feeling to give notice to my current landlord… hopefully there will be no retribution!

So now it’s pack, pack some more and move the Mini and the Peugeot over to their new ‘digs’. Till I’m settled in, I will not be doing anything on the Mini, but once settled I’ll get back into it.

Update 23rd April 2016

Second day into packing the house ready for the move to the new abode this Friday. I decided last week to let the Peugeot 306 go to the wrecker, a shame I know, but I decided that I didn’t need two project vehicles, and the unknown fault of the auto transmission determined its fate. Good thing is the wreckers paid me for them to take it away.

Good thing about moving house is the things that you find, and the crap that you throw out so you can make more room for future junk!

snoopy moving house

Update 17th May 2016

House move is completed! The final box was dispatched to the huge pile waiting to go to the recyclers. It feels good to be able to walk through the house without tripping or having to sidestep packing boxes.

I’m looking forward to re-instating the fuel injection, especially the mapped ignition side of things as the advance curve and vacuum advance is totally wrong for this engine.

Time to relax now!

Mini EFI

Injector Deadtime

For the one or two followers of this blog, I have been doing a lot of bench testing of the MegaSquirt MS3 on the bench with the JimStim stimulator etc.

I have found a few things that would have affected the last tune that I was using. I was not getting a changing injector deadtime when the injector voltage (car battery voltage) changed due to me not setting up the  curve correctly. In my defense I can’t remember what I did yesterday let alone the profiling/characterisation of this injector. That said the problem as the MS3 software says: “Specifies the percentage change in injector deadtime vs. system voltage.
13.2V is typically 100%. At lower voltages the deadtime % will be above 100%; at higher voltages it will be below 100%”

Injector Dead Time/PWM Voltage Curve
Injector Dead Time/PWM Voltage Curve

Edit 28/02/2016 For context I’ve add the default injector deadtime/PWM curve below. Note that the 100% crosses at the default 13.2V point. I will be re-profiling all of the injector characteristics prior to re-implementing the EFI. I have a new injector ( the previous one was a reconditioned one) and it might be a lot different from the original.

Default TunerStudio Injector Dead Time/PWM Voltage Curve
Default TunerStudio Injector Dead Time/PWM Voltage Curve
Calibrate Battery Voltage

Well this is one I thought I had done before, but maybe it had reverted to default values after a software/firmware upgrade? Who knows.

Anyway this is an very important setting, as the MS3 needs to to know the correct battery voltage for a multitude of calculations.

The internal ADC (analog digital converters) in the MS3 are not always linear, as well as external component tolerances can transpire to skew the readings.

Calibrate Battery Voltage
Calibrate Battery Voltage

As you can see from the calibrate battery voltage dialog above the default values are 0V and 29.7V. My testing showed that the 0.7V and 31.4V gave me nearly spot on readings (within ~0.1V) when I altered the MS supply voltage between 7 – 18V. From memory at normal supply voltage of around 13.8V, the MS3 read around 11.xV. Obviously one of the issues affected by this voltage variance would be injector deadtime.

Now I don’t have time in this post to outline the procedure I used, but will expand upon it if anyone requests so.


I have noticed lately that I have had no comments, nor any spam ( I usually get ~100 spam comments/day).

Mmmm what’s happening? A plugin called Aksimet which collects these, had lost the API key and all spam and legit comments were sent to the big dustbin in the sky, so I’ve got it working again. So if you want to re-post your comments please do. My apologies!

Lift off?

Today I managed to complete the wiring and get the engine started. I’ll let you read further in the Done section to get the gist of my troubles.

I’m dissapointed that the car is not mobile, as I promised my son Hamish that he could drive it to a car event tomorrow.

As Malcolm Fraser once said “Life wasn’t meant to be easy”.


  • Completed all the sensor wiring and Mini electrics.
  • Tested Mini electrics, lights indicators etc.
  • Tested MegaSquirt connectivity to all sensors and peripherals e.g. fuel pump, radiator fan…
  • Adjusted VR sensor to get it to trigger properly. Discovered it was out of phase, so adjusted the “Ignition Input Capture” value from “Rising edge” to “Falling Edge”. I used the TunerStudio “Tooth Logger” which showed two long bars instead of one long bar when it passed the missing tooth. This indicated that the phase was out. I also adjusted the position, of the VR sensor a little further away from the trigger wheel.
  • Checked and tried to adjust the fuel pump pressure using the FP test O/P in TunerStudio and the Fuel regulator. Fuel pump was making a right racket, much louder than the original SPI pump, and the return hose in the boot (trunk) was banging back and forth. I haven’t fully come to a conclusion, but I think the pump (a MPI/SPI replacement from Mini Spares) is a 255L/Hr 3Bar whereas the original OEM SPI pump I replaced was a 1Bar unit, flow rate unknown, but obviously less.
    I ultimately adjusted the regulator to ~ 12PSI, the gauge in TS was jumping around a bit… maybe +- 0.75PSI or more. Never had this problem with the original pump! My theory is that setting it to 12PSI which is 30PSI or so less than the MPI setting, the flow rate is overpowering the FP regulator causing it to fluctuate.
    I wired up the Main and FP SSR’s using the DIYAutotune wiring diagram. This allows the FP to be used both as in a ON/OFF and PWM mode without any wiring changes. So I might try bypassing the FP regulator and use  the ‘T’ piece with the FP pressure sensor, I have nothing to loose, and this was my original intent to use PWM to effect a returnless fuel system.
    Any ideas folks?
  • Noticed the Knock Sensor gauge was running around 60% when car was idling (surging more like it). I will turn this off until I get a stable idle and tune. Good to know though that it’s sensing something!
  • Started engine and got it to run sort of. It was running lean and hunting, pretty badly.
    I’ve abandoned trying to get it to idle, until I get the FP sorted. One interesting thing I tried to get it to run better was to change the injector flow rate from 622cc/min @ 12PSI to 400cc/min which equates to running the injector @ 5PSI. This richened it up a bit, but still had hunting. I’m confused; the injector is a brand new one, but could they have supplied an incorrect or badly flowing one?

    My Air Fuel and Volumetric Efficiency tables are pretty much as per my original tune, so why the lean running?

Eddie my dog, in his usual repose!
Eddie my best mate, in his usual repose!

To Do

  • Find a solution for fuel pump pressure regulation (maybe PWM) and flow.
  • Test injector flow rate, and check P/No is correct.
  • Test and set-up PWM for radiator fan control
  • Check timing and adjust the index position using TunerStudio to give the base timing value.
  • Adjust VE table to get it running OK
  • Take it for a drive to dial in VE table using TunerStudio’s VEAL.
  • Use and enjoy it!

Nice to do, but not required!

  • Fit the new heater. (Not doing until I have car on the road and tuned in… it is summer after all!)
  • Get a wheel balance and alignment.

If you would like to leave a comment (please do) , click the Leave a Reply link below.