1 ... 6 7 8
WondrousBread
WondrousBread Reader
3/1/24 10:50 p.m.

I thought of a few mounting locations that might be possible candidates for the hall sensor. In counter-clockwise order

- Current location, installed on the mount for the air pump adjuster (9:00)
- Down where the OMP lives below the air pump with a bracket to pick up the OMP bolts (7:30)
- Right side where accessory bracket mounts (3:00)
- Picking up on stock CAS mount (1:30)

9:00 is a no-go because there's no good way to keep it there. The air pump adjuster is one thing, but the belt will want to run right through the back of the sensor which means changing the air pump mount as well.
7:30 would work, except that the OMP lives there and it would be extremely difficult to keep it while also mounting the hall sensor on it.
1:30 would put the sensor directly in the place the AC belt runs. All that does is kick the can down the road until I want to put the AC back.

So that left me with 3:00, which is exactly where FFE locates their sensor. It's obvious why they chose that location, but what wasn't obvious to me was why they didn't offer a kit that was compatible with the stock accessory bracket. I figured that all that was required was a simple bracket for the sensor and some spacers for the accessory bracket.

Here's what I came up with:



Test bracket printed and installed:



As you can see based on the 1/4" gap, I will need some spacers for the remaining three fasteners on the accessory bracket.

From above:


Sensor gap is a bit too wide, but it's close



Here's one of two probable reasons that FFE doesn't offer a kit that works with the stock accessories. With the bracket spaced out even 1/4" the two outermost mounting studs are too short. I can get longer ones, but I'll have to be careful about the length (or else they'll collide with the AC compressor when I reinstall it. I'll have to do some more measuring on other studs and bolt to see if they're long enough to use safely.

Secondly they would need to create a custom AC pulley with the trigger wheel built into it, otherwise the belt spacing for the accessories would be off by the width of the trigger wheel. Mine avoids this issue since it's welded to the back of the AC pulley but has a larger inner diameter than the main pulley behind it.

Looking at why this location works so well in comparison to some of the other possibilities I mentioned:



The alternator and air pump pulleys are inboard of the sensor, and don't interfere with it. The AC pulley looks like it does, but it doesn't (see next photo) and the PS pulley lives outboard of the sensor. One other thing I wanted to achieve with this bracket was to make it simple to replace belts. With this bracket the sensor still needs to come out to slip the alternator / air pump belts through that gap, but the sensor clearance is set. At present I need to remove the sensor entirely and re-gap it every time I want to remove the belts.



This shows the direction of travel of the AC and PS belts. The AC belt is the outermost pulley photographed here (PS pulley is actually outermost, but not installed) and it completely runs around the sensor and bracket. Meanwhile the PS runs right through it, except it's outboard enough that it will run in front of the sensor with no interference.

It seems like this is a go. I'm currently printing a heavier-duty version out of the bracket (polycarbonate filament, 100% infill) and we'll see if that's sturdy enough. I'm currently using polycarbonate for my Z32 MAF adapter (still need to write about that) and my CAS plug. I've found it to be super strong and resistant to deforming in the heat of the engine bay, whereas PETG and Nylon both tend to deform a bit. CF Nylon might do it but I have the polycarbonate already.

The other consideration is whether this pushes the AC compressor too far out, and might make it hit the power steering cooling loop or the frame rail. I took some measurements in the car with the AC compressor in place for mock-up and it looks like it will clear. If not, I've at least improved on my current set up and will now have a way to reinstall the air pump.

Hopefully I'll have another update soon, and if I can get working I'll share the STL file for the bracket.

WondrousBread
WondrousBread Reader
3/7/24 10:39 p.m.

I looked at the engine for awhile longer and realized I was a fool.

What's the one thing in the accessory-drive / crank area that I can safely delete to make space for the hall sensor, without having to relocate anything else?

The stock CAS, of course:



I already modeled a plug awhile back that blocks off the opening for the stock CAS. I realized that by taking the hall sensor mount I designed and instead adding a vertical up from it to the CAS plug, I could avoid having to pick up the accessory bracket mounts in the first place.

The rendering above is actually not the final version, but an attempt I was making to increase stiffness. The only place it flexes is at the top where it meets the CAS plug, but then this model is already a bit clunky because I've edited it so many times and the mesh is starting to become pretty sketchy. I will probably be remodeling it shortly.

That didn't stop me from printing one though:



Printed in polycarbonate. I really like this stuff. It's a bit pickier than some of the more common materials as far as printing environment, but it's super sturdy when printed properly.

Installed on my car:



I've already confirmed it doesn't interfere with the AC tensioner pulley or the accessory bracket. It actually has a decent amount of room to spare on the right side too. There's a little play in the hole for the bolt so it allows some adjustment.

The only thing I haven't actually done is plug in the sensor and test it out. Unfortunately the doctor tells me I have tendonitis in my left knee which means I can't work a clutch pedal. So I won't be able to do a proper extended test for around 6-8 weeks while I heal up.

This also means I can't drive my daily car either, so when I do leave the house I'll have to borrow an automatic car from my family. Fortunately there are a couple options that should keep me from getting too bored:



And well, that's that. I probably won't have any updates for awhile since I'm supposed to stay off my feet whenever possible, so here's some pictures I took recently instead:





Until next time :)

WondrousBread
WondrousBread Reader
3/16/24 6:13 p.m.

With some assistance from Rx7Club member need-a-t2, a newer trigger wheel design is on the way from Sendcutsend. The current one works, but the new one should simplify install a lot and be a slightly improved design.

Since I can't actually drive the car I turned my attention back to the air pump for awhile. I was hoping to not need the air control valve but when I did some searching it looks like it's hard to find valves that do what I need. The ACV incorporates several different functions:

- Direct fresh air into the exhaust ports to mitigate intake charge dilution.
- Direct fresh air into the catalyst to help emissions and temperatures.
- Direct fresh air into the manifold on decel to prevent afterburn

I only care about function one. There is overlap in the exhaust port closing and intake port opening from the factory, so Mazda added a function where fresh air is pumped into the exhaust ports at idle to help increase smoothness. I don't need it but it's worth restoring since I have the opportunity.

Function three would be nice but isn't critical. I also wanted to add a nipple for pressure to drive the auxiliary ports, which I'll get to in a minute.

I did not intend to restore the split air system simply due to the logistics. I added provisions for the split air tube in the form of an extra O2 port when I made the exhaust, I'd just prefer not to have to use it. The port air system already injects air into the exhaust at idle where the mixture is rich.

Addendum for non-rotary people: The auxiliary ports are the rotary equivalent of variable valve-timing. The intake/exhaust duration on rotary engines is dictated by the shape of the ports. Turbocharged engines have no VVT - they simply have fixed primary and secondary ports. On NA engines Mazda wanted to increase high-end power without sacrificing idle and low-end operation, so they made the secondary ports on the end plates a lot smaller and then added an additional port:

This image shows an aux-bridge which isn't factory of course, but it serves to demonstrate. The lower port is the secondary and is open all the time, whereas the top is the aux port. A rotating sleeve sits inside this port to block it at low rpm, and then at high rpm two actuators rotate the sleeve to the open position.

On S4 models these actuators are normally driven by back-pressure in the exhaust system, but I no longer have enough back-pressure to do this. Backwardly increasing the exhaust flow delays or deletes the aux ports and loses you horsepower up top unless you find a different solution. There are headers that have an added tube for this pointed into the exhaust stream, but then I don't want to spend on headers when I'm swapping to the turbo engine anyways.

The normal closing time of the ports at idle (when aux is closed) is 40 ABDC, well into the compression "stroke" as it were, and with the aux ports zip-tied open I am closing them 40 degrees later for a total of 80 degrees ABDC. This is a lot. Idle / low rpm is noticeably lumpier with the ports opened.

Since I fabricated the exhaust I've been driving around with the ports zip-tied open. This hurts idle but still gives me all the power up top. It's a compromise I can live with but my goal in restoring the air pump is to fix this system and give me ECU based control of the ports via a solenoid.

This inlet tube from the air pump looks like as good a place as any to drill and tap for M6x1.0.







A little JB Weld seals the threads:



If you're wondering about the creative wiring above, it was something I did to account for damage on the harness-side when I got the car. Luckily I left the spade connector intact on that wire so I just put it back into the housing and it's as good as new.

Then I removed the block-off plate I had installed and put the ACV back in it's home on the engine:



The tube visible in this photo is the outlet side, and normally goes to the silencer under the headlight.

Next it was time to remove my current CAS. I already have the newer CAS bracket installed on the other side, so even if it isn't the final version I can remove the old one for testing.



Then the adjuster bracket arm goes in it's place:



This three-bolt bracket thing goes in:



And then the air pump fits onto it:


This belt is really old. I'm 99% certain it came with the car, and it was old then. But it's the only belt I had around in the right size. so it's fine for testing.

While on the topic, I hate this tensioner system. The way you tension it is to use your left arm at a weird angle to pull the air pump out as hard as you can, and then your right arm to tighten the adjuster nut. And then the belt is still loose. Meanwhile the PS and AC have these excellent tensioner pulleys that let you get the belt tension just right.

Lastly I popped this thing onto the outlet:



It's part of the stock relief tubing that normally goes down under the headlight to a silencer. I didn't want to install the whole thing for a test, so this little tube and mini-silencer is enough for now. The little blue tube is going directly from the ACV inlet to the aux port actuators. I'll need a solenoid there but for now I could see if the aux ports moved.

With all of that put together I started the car, and I learned a few troubling things:

- The air pump still makes a slight tapping / ticking noise. Unclear where from since everything in it is rebuilt and it turns smoothly.
- Something is causing what I suspect to be a vacuum leak. The idle is a bit less stable even though none of the air pump air should be getting to the manifold, so I think the ACV gasket I reused might be a bit leaky.

Those sound manageable, but then the air pump doesn't provide enough air to actuate the aux ports unless the relief tube is entirely blocked. I didn't test extensively above 1500rpm but this doesn't bode well. If the air pump won't actuate the ports then the main goal of restoring it won't be achievable, and it makes me question whether I want the air pump at all. If all it's good for is port air then I don't really need it.

Otherwise I could block the air pump outlet entirely other than the aux port nipple, but I don't know enough about rotary vane pumps to know if it's healthy to run them with the outlet entirely obstructed 99.9% of the time. Nothing happened when I tested it but my gut says it's a bad idea to run it that way for a long time.

My latest idea is to plug the relief outlet, and then hook up the solenoids to the ECU. This would let me do the following:

 - Pump air into the exhaust ports at idle (don't need auxiliary port actuation at idle / low rpm anyways).

 - Divert air from the exhaust ports out the empty nipple that used to go to the catalyst above say 1800 rpm (to allow me to run closed-loop on the highway), basically dumping the air out behind the engine.

 - Divert air into the relief port (now plugged) to build pressure whenever I want to be able to actuate the auxiliary ports.

 - Add a solenoid between the new barb I added and the aux ports to allow me to fine-tune the changeover in the ECU.

This still has the issue of running the pump obstructed whenever I am using the auxiliary ports. Then again some air pumps are fine with restriction (roots-style blowers come to mind) so maybe a rotary vane pump won't be damaged by that. Worst case scenario I damage the pump and the engine is fine.

If anyone else has better suggestions, I'm open to it. Someone on Rx7Club suggested S5 actuators (they open at a lower pressure) but then I think I also need the S5 manifolds and it's quite a swap.

I have some time to think about it since I can't drive stick for a few more weeks anyways :)

WondrousBread
WondrousBread Reader
3/29/24 8:09 p.m.

So I made some progress on both the ACV situation and the crank sensor. First off, I realized I had a source for the non functional solenoid. There is an identical one on the S5 TII engine:



Then I put the old one in it's place to keep dirt out:



Then I found out that it actually doesn't matter. The functionality that I need is controlled entirely by the external solenoids. I still don't exactly know what the internal ones do, but I've determined I don't really need them. This passage controls whether air goes out the relief port or to the split-air/port-air:



And this upper one opens the passage for the port-air:



So knowing that all I actually need is one solenoid and a tee to control when these see vacuum. Either they see no vacuum and air goes out the relief port, or they see vacuum and air goes to the ports.

It turns out I don't even need that functionality. I was able to successfully test with the air going to the exhaust ports and it has literally zero impact on my idle. It doesn's seem to idle smoother, or leaner, or let me retard the timing further like Mazda did originally, or really anything else. I can see the air is getting to the ports because my wideband reads out of range, but it doesn't seem to do much for me. Kind of underwhelming. For now I just did this:



I drilled a hole in a little plug to allow some air to escape the relief tube, but not all of it. This lets me actuate the auxiliary ports at around 2500 rpm. That's earlier than the factory does it, but it lets me add a solenoid later and use the ECU to control it like a boost controller. This is important because the air pump flows proportional to RPM only and doesn't take load into account. From the factory it uses exhaust flow, so Mazda will have calculated the opening point based on some amount of exhaust flow (which in turn means equivalent intake flow, or load). So if you rev to 4k but under really light load the ports won't move. With the air pump driving them they only correlate to RPM, so at high RPM light load the ports will open. The solenoid lets the ECU determine how much to open the ports based on whatever I want. In this case I'll do a few runs with the port open at various positions, compare the chart so I see where it wants to flow the most air, and then draw a line and use that to make a simple map. Not as scientific as using a dyno, but I do what's within my means.

For now though I tested going down the street with the ports driven directly from the air pump and found it works fine. There's some area under the curve to be had by tuning it properly, but for now it idles and launches smoothly and then the ports open and it has all the top-end power I want.

As far as the crank sensor, I've made some progress but I've also stretched my goals a bit. The trigger wheel that Rx7Club member need-a-t2 kindly designed arrived from SendCutSend, and it's exactly what I needed:



It would work, but would still require some clearancing of the water pump pulley. Making the wheel any thinner might make it harder for the sensor to pick it up, so I decided to look at it again and decided on a slightly more elaborate solution.

I played around with the drawing and then extruded it a bit in Fusion 360 (I should have learned this software years ago...) to try and get the maximum tooth height and thickness that would fit:



Tooth height is good. Tooth thickness:



Also good. But this design is a bit more elaborate because it needs to be machined. Instead of a flat piece of steel being cut with a laser, this piece has a step to push the teeth forward and clear the water pump pulley. The alternative is to keep the trigger wheel flat and machine the pulley for the extra clearance, but either of these solutions still requires tools I don't have. So I decided to just see what I could do and came up with this:




Fusion 360 has a bit of a learning curve, but it's super powerful once you get the hang of it. I was able to take measurements and sketch a cross-section of the pulley, then rotate it into a 3D design and add a modified version of need-a-t2s trigger wheel before extruding it.

This solution is a bit more elaborate, and as long as the old design works I will still make the file available for people who want to modify the original pulley. But once I did the math on ordering more wheels from SendCutSend and getting my stock pulley modified it might make more sense to just get a new pulley machined from mild-steel by PCBWay. The cost of the old design approaches the cost of the new design, and still requires welding.

Here's a prototype I 3d printed and installed:



The plastic isn't rigid enough to actually tension the belt without it deforming, but you can see the teeth clear the front of the water pump pulley both front-back and from the end of the tooth to the nose:



In my experience the Chevy sensor isn't very picky about gap. But I still want everything as optimal as possible. The sensor behaves sort of like a switch. Either it doesn't see a tooth and there is no power on the output wire, or it does see a tooth and there is power on the output wire. Obviously we want it to be as unambiguous for the sensor as possible whether it sees a tooth or not. If the wheel is too thin, then there isn't enough metal to trigger the sensor. If the tooth is too short then the sensor might "see" a tooth even between the teeth. So we want the wheel as thick as possible (within reason) and the teeth as tall as possible.

I also want the teeth to be as tall as possible because it makes the bracket more compact. The more compact the bracket the more rigid it will be. I need to revise the bracket for the new wheel but it looks like I might need something stiffer than polycarbonate for it. I've been rebuilding it from scratch in Fusion with tighter tolerances to minimize flex on the end that fits in the CAS bore. If I can't get it to be rigid enough in PC I'll have to look into aluminum (CNC might be cost prohibitive due to the size of the block required, so maybe SLS printed).

Lastly, I'm probably going to pick up one of these sensors from DIYAutoTune and test with it. The Chevy sensor works great in my testing, but the little bracket needs to be trimmed to avoid interfering with the front cover. The DIYAutoTune sensor is compact, cheap, tested up to 19,200 rpm, and actually has a datasheet. It also has a longer nose which will make it easier to change belts. I might still end up using the Chevy sensor but it's worth testing with both. I'm also tracking what the cost will be for someone to order these parts and make their own kit, and (no promises) it looks like it might actually come in cheaper than the FFE kit when all is said and done.

Until next time :)

WondrousBread
WondrousBread Reader
3/31/24 10:53 p.m.

Okay, so this update has some mixed news. There were some complications with the pulley, but the bracket rigidity problem might be solved for good.

PCBWay's initial quote for the CNC'd pulley was way under their formal quote. Once I made a few alterations to pass their engineering requirements, the approved design would cost $350 USD for one unit. Apparently a design this complicated requires a lot of extra machine-time, which is entirely understandable. This does mean I had to find a lower-cost solution though.

The prior trigger-wheel designs I created each had a downside. The flat trigger-wheel could be laser cut and kept costs down, but would require machining of the AC pulley for it to fit (or clearancing of the water-pump pulley, but that's the same work for a less clean outcome). Ordering some of these would be the cheapest option. But I don't have the tools to machine the AC pulley, and while need-a-t2 offered to help, shipping it to him and back would become costly compared to my other trigger-wheel design.

The other design had a step in it that allowed it to fit over the AC pulley and be welded on at the back. This has the advantage of saving time and machine work on the pulley, but does mean the cost of the initial part is increased due to needing it CNC'd rather than laser cut. Once I did the math it still came in under the cost of trying to modify my pulley. So one is ordered, and as soon as it arrives I'll get to welding it to the pulley.

In the meantime though, I had already glued a plastic version of the CNC'd design to my AC pulley. This let me make a new bracket in Fusion 360, and I printed it in PLA as a test:



The sensor is pretty light, so I just used a small gusset to triangulate it and prevent it wobbling.



There's still a good amount of clearance on the inside from the back of the pulley to the bracket.



Most of the rigidity gains are from making the clearance on the CAS bore as tight as possible. I'm not sure if the extra step really adds anything, but it's a small amount of material so it's worth it.



On the inside I added these gussets. I had some on my previous design, but these ones are a bit more optimized. Less material, just as strong. I might also extend the rearmost gusset down the back of the sensor bracket for a bit less flex, but it's already rigid enough I don't expect any issues. Once it's printed in a material that will tolerate oil and high temperatures, of course.



And this camera angle is crappy, but this just goes to show that it still clears the AC tensioner pulley even at the bottom of the adjustment range.

At the end of this I'll be sharing three files, possibly four:

- Trigger wheel intended for use on a machined AC pulley (can be laser cut)
- Trigger wheel intended for use on a stock pulley (must be CNC'd)
(wheels should end up functionally identical, and in the same place)
- Bracket for S10 sensor with either of the above wheels. Requires trimming of S10 sensor hold down.
- Bracket for Honeywell style sensor that DIYAutotune sells. More expensive than S10 sensor, but comes with an impressive datasheet and works out of box with no modifications.

Both bracket designs will require removal to install new alt / air pump belts, but hey, you can't have it all. It's a minor inconvenience.

All in all, I'm happy with how things are shaping up. Updates as soon as I have them :)


EDIT: Oh, and I'll release the file for the full pulley as well. In case someone feels it's worth the expense

WondrousBread
WondrousBread Reader
4/3/24 4:52 p.m.

I did this last fall, but had yet to actually sit down and write about it. But recently someone had a few questions about it and my answers constitute most of a post anyways. So here goes.

Last summer I came to the conclusion that speed-density based tuning just wasn't for me. A lot of people seem happy with it but I could never really get it to adapt to changing variables properly. I would tune it in the summer and it would be great, then fall would come and even at the same coolant and intake air temps the car would be lean. Or it would always stumble a bit on a hot-restart, and after-start enrichment was unable to tune it out. Or the required warmup enrichment curve would vary a bit and I would have to run the car extra-rich as a precaution during warmup. I was relying on the closed-loop system to get the idle to smooth out in that sort of situation. That's never a good sign. I'll explain some of the tuning process as well so people can see how the MAF assists with this.

With that knowledge I started to look at my MAF options. There are a ton of them out there but I decided on the MAF from a Z32 300ZX. This was for two reasons: The flow curve is known and available online, the outlet is the same size as the stock intake tubing, and the inlet looked suspiciously like the stock Rx7 flange. Turns out none of these panned out the way I wanted, so I'll make it short and say that you are probably better off with an R35 MAF in a custom housing. I'll explain more about that later on.

Stock Rx7 MAFs were not an option for me. S4 has the flapper door style which adds restriction (probably not a ton, but enough that I noticed when I removed my old one) and S5 is marginally better with the sliding cone but still not as good as a hot-wire style MAF.

I ordered a used OEM Z32 MAF on eBay (don't buy the knockoff ones that are of dubious quality):





The mesh is a little wonky, but that doesn't really matter. You can see the hot wire in the center in that little plastic housing. However, I did notice a couple of things. The first was that the bolt pattern didn't match up at all with the stock airbox, and the second was that even if it did the MAF would be too short to reach the intake tubing. This meant an adapter would be required:





The one side is adapted from an existing model on Thingiverse that I had been using to replace the MAF with a tube. The other side has the bolt-pattern necessary to adapt to the Z32 inlet flange. There's also a small mounting boss for my IAT sensor, since I find putting it here is more accurate than the manifolds due to heat-soak.

If you're wondering what's up with the honeycomb shape, that's a simple air-straightener I made. One thing I learned in the early testing stages was that airflow is super important with this style of MAF. The air should be in a straight tube the same diameter as the MAF for several inches before reaching the wire to ensure consistent even flow throughout the tube. If the airflow is swirling around, all one one side of the tube, or reverting back in the tube, these will cause the MAF to be way out of whack. The honeycomb shape was an attempt on my part to mitigate the challenge presented by the shape of the intake in this area. Take a look at what I mean:




That's actually an earlier revision of the adapter (and it required the MAF to be upside down), but it still illustrates my next point. The air in the airbox passes through the filter, then makes a sharp 90-degree turn through the outlet. Then it has about 7-8" of space to straighten out before reaching the MAF. This is obviously less than ideal in terms of ensuring even flow. Hence why the honeycomb was a necessary addition. I should also note that there are commercially available honeycombs for this purpose, usually with a much tighter diameter for the honeycomb cells. I couldn't fit one without making the adapter tube inside exactly cylindrical (resulting in a more abrupt transition), so I was limited by the 3d filament in terms of how thin I could make the walls of each cell in the honeycomb.

I think the only reason Mazda got away with their stock MAFs is that the design of the flapper-door and sliding-cone don't really care whether airflow is even. The amount of air passing by exerts some known amount of force on the door / cone, and this translates to the MAF reading. Done. Meanwhile with the hot-wire it can read low if the pipe is flowing a lot more air on one side, or bounce around if air is swirling a bit.

Speaking of Mazda's stock design, I also noticed something weird. The outlet of the airbox had this rectangular piece in it, reducing the surface area of the opening at the top of the outlet. I can only assume they wanted to use off-the-shelf Denso MAFs and decided the opening didn't need to be any bigger than the rectangular MAF inlet, which makes some sense. But now that I am not using the Denso MAF that restriction can go:



And the rectangular piece also covered this side near the filter:



I found this picture that shows the original lip thing (left) as well as a comparison with the S5 airbox. The S5 has a much larger valley where it transitions from airbox to filter, and it's located more central to the filter as well. I kind of wonder if there are any more gains to be had here, but if there are I doubt it's anything substantial.



With that, everything gets bolted up and put into the car. The wiring was very simple, I just made a little sub-harness and ran it down to the ECU. +12V, signal ground, power ground, signal.

Then I needed to make the relevant ECU changes:




This might look confusing because I'm still using speed-density on it, but hear me out:

- Primary Fuel Load (the way the MS3X calculates how much fuel to inject at any given time) is changed to MAF. I'll discuss how this affects tuning shortly.

- Primary Ignition Load and AFR Table Load are still speed-density. This lets me use my old tables as-is, without having to rescale the y-axis. If I changed these to MAF then I would have to find out the relationship between manifold pressure and air flow and scale the y-axis appropriately for my old values to work. I should note that I DO intend to do this in the near future once everything else is 100% worked out. It's just that for now it was much easier to start with known good ignition timing and AFR values.

Then I had to set the MAF settings:



- The Z32 is a voltage type sensor. Many modern sensors are frequency type, so look into that if you are doing a similar conversion.

- MAT correction curve allows a percentage correction for the MAF based on the intake temp. This can be useful if your MAF becomes inaccurate with heat-soak, but wasn't necessary for me. While the setting is enabled I have that curve zeroed out.

- Use VE1 as trim table is a way to enable the VE table as a multiplicative correction on MAF. I'll explain what this does later, but again, it's enabled in my setup but I am not using it (table is set to 100 across the board).

I don't really know what sensor range does other than possibly affect the visual scale and initial values of the flow curve in settings. You need to manually input the flow curve values for your particular MAF anyways. I selected 650g/s because it was the closest to the values I found.

Speaking of values, I started with an "official" Nissan flow curve I found online. Turns out it was 100% wrong for my setup, needing to be leaned out by at least 25% just to run.

So as a quick refresher, let's talk briefly about how speed-density tuning works:



This is the VE table in a speed-density setup. You need to try and hit every bin and make sure the car is hitting your target AFR for said bin in open-loop:



So if target AFR at 3100 RPM and 50kPa is 15.2, you want to adjust the equivalent VE cell until the engine is running as close to 15.2 as possible. Tuning for a specific AFR isn't good practice since we actually want to do whatever makes the engine happiest rather than hit an arbitrary number, but assuming the AFR target is correct we can try to get as close as possible by adjusting the VE number. These tables really need to be tuned in tandem, finding the AFR that the engine wants at the same time as you find the VE that achieves this AFR, and then putting that target into the table for the closed-loop.

The complication is that there is no real "link" between those tables other than in closed-loop when the ECU is trimming fuel to try and hit the targets in the AFR table. The other thing is that high load + low rpm is not the same as high rpm + low load in terms of airflow in the VE setup, so you need to try and hit a bunch of awkward bins (go up a hill at 1500rpm in 4th with the pedal flat to hit the top left, or travel at 7000rpm with the throttle cracked open doing 40kph to tune the bottom right). It complicates things a lot without a dyno.

Then once the VE table is as close as we can get it, the closed-loop algo should take care of minor variances.

In comparison, here's what MAF tuning looks like:



With MAF it's entirely different. Instead, I only use one curve and a table. The curve on the left represents the flow rate of the MAF (grams of air / sec) at a given voltage. The ECU doesn't have to take the VE number and do any math with the MAP, it just takes that number (say 1 gram) and then multiplies it by the target AFR for that bin. So at idle the ECU is just taking ~2.8g of air and using the air-fuel ratio to calculate how much fuel is required, then opening the injectors the appropriate amount.

The left axis still shows kPa in that AFR table, but the ECU isn't actually using it for any calculations. All the ECU is using MAP for is to know which AFR to target based on that table, and then otherwise the sensor is basically not used. This means that (assuming the flow curve is correctly calibrated) the AFR table itself dictates how much fuel is injected. If I want to idle at 13, even in open loop, I just drop 13 into the desired cells. Or 14, or 15, etc. I don't need to change the cell values in the VE table and then see what happens on the wideband and tune it in. It just works. If it doesn't, then either the calibration is wrong for that flow rate or there is a vacuum leak / other issue. The reason my curve is choppy above 3.7V is that I can't make it flow more with my current engine. That value is only ever hit when I'm in 4th gear going at a pretty good clip, and I would need to be going very fast to flow more air in an NA car. Turbo car should be able to do it under hard accel.

Closed-loop works the same as in the speed-density setup, it just doesn't need to do as much work.

Now I mentioned before that I had to tune the entire flow curve myself because the ones I found online were way off. I didn't really go into how to do this yet. Take a look at this log:



The right side shows the AFR table, but the important part is on the left. The second box from the top shows AFR and AFR error. So it's targeting 14.1 but it's 0.1 off of target. I can also see the MAF volts and flow at the bottom. So this part of the curve is pretty well tuned, but if not I would open TunerStudio and increase or decrease the g/sec value at 1.769V.

I also have an equation I made to do it for me which is why there's a "Calculated MAF" value. That's a custom field that takes the MAF g/sec reading (red line, 12.510 volts) and multiplies it by (Measured AFR / Target AFR) to make a "corrected" value I can drop into the curve at that point. Users on MSExtra were kind enough to offer some help and also show me that MLV has a histogram function that lets you define the scale:



So basically the scale on the left has the same voltage units as my flow curve, and the histogram on the right shows the average of all Calculated MAF values. This means I don't need to hit an exact voltage value and hold it either, since MLV will do the job of fitting the values to this scale for me. I can just take a nice long drive and then copy / paste these values into the flow curve. The darker the green colour, the more "hits" at that voltage value during the drive and the more accurate the number is likely to be.

It's not a perfect system. I found it took several attemps because my equation will overshoot slightly. If it's targeting 13 AFR and measuring 12.5, and I take the Calculated MAF value for that and drop it in the curve, next run I'll measure 13.2 under similar conditions. Run it again and put in the new value, I'll get 12.9. It needs to be done again and again until the curve smooths itself out.

This would be a great opportunity for the Tunerstudio developers to create an autotune for it, but they haven't. The VE "correction" table can be autotuned, but that tends to result in some weirdness because it's still trying to use two independent variables (MAP and RPM) to calculate the correction value for something that only has one independent variable (airflow). So it doesn't seem to work very well when used that way, but then the developers didn't seem to intend it to do that in the first place.

And what's the result?

First off I have yet to re-enable closed-loop and the car is almost always within 0.3 of target AFR. Usually 0.1 at steady state conditions. It's super accurate even without correction, and I can probably get it even closer by tuning the curve more. Second, I need almost no acceleration enrichment or after-start enrichment. I also noticed it's much smoother returning from decel fuel cutoff, and throttle response is generally improved. The MAF reacts so quickly to the changes that the speed-density algorithm struggled with. Third, the tune doesn't drift with outside temperature anymore. I thought it did until I got the flow curve dialed in, and now it's rock solid all the time. I don't need the closed-loop algo to help with hot starts anymore.

The only thing I have yet to tune out is that it runs a little lean after warmup ends (at 176 degrees) for 5 minutes or so before running properly and hitting target AFR. Meanwhile if I'm driving the car on a cool day the coolant often drops below 180, so I can't keep the warmup enrichment on longer or it activates when already warmed up. Still haven't figured that one out yet. The closed-loop algo can probably handle this but I'd rather tune it out the proper way if I can.

Overall I'm really happy with how it turned out. It was a bit of an adjustment to how I had learned to tune, but the results were well worth it. Until next time :)

adam525i
adam525i GRM+ Memberand SuperDork
4/3/24 7:14 p.m.

Thanks for the detailed post, very interesting. I'm finding similar issues with my E28 running speed density, it's close and I'm happy with it but I know it could be better. There's also a set of ITB's in a big box in my storage shed that I won't run without a plenum which makes me wonder if a MAF would be a good way to go when I get around to playing with them. Measure the air mass going in, add fuel, simple.

rdcyclist
rdcyclist GRM+ Memberand HalfDork
4/4/24 3:01 p.m.

In reply to WondrousBread :

Excellent explanation of the tuning process! Thank you taking the time to write that up. It certainly gives us analog guys a better idea of how the digital process works. yes

WondrousBread
WondrousBread Reader
4/5/24 1:39 p.m.
adam525i said:

Thanks for the detailed post, very interesting. I'm finding similar issues with my E28 running speed density, it's close and I'm happy with it but I know it could be better. There's also a set of ITB's in a big box in my storage shed that I won't run without a plenum which makes me wonder if a MAF would be a good way to go when I get around to playing with them. Measure the air mass going in, add fuel, simple.

It really minimizes the amount of time spent on the compensation tables. My speed-density tune was good, it was just the little things that added up to make me want something better. I'd say give MAF a try (the Z32 MAF was <$100 and can always be resold if you don't like it). Once you wrap your head around the way they're tuned it's actually a lot simpler.

WondrousBread
WondrousBread Reader
4/5/24 1:42 p.m.
rdcyclist said:

In reply to WondrousBread :

Excellent explanation of the tuning process! Thank you taking the time to write that up. It certainly gives us analog guys a better idea of how the digital process works. yes

Thank you! I'm considering wrapping this all into a proper instructional post, or maybe a YouTube video, starting with the process of selecting a MAF (R35 is probably more ideal), designing the adapter, installing, wiring, and then the tuning. The number of people running MAFs with a standalone is comparatively small. It makes me wonder how many are happy with their speed-density tune and how many have just learned to tolerate minor hiccups.

Meanwhile I can never get a carburetor to do what I want for more than 15 minutes before it needs adjusting again :) I just can't seem to get the hang of them.

WondrousBread
WondrousBread Reader
4/5/24 1:42 p.m.

Oh, and I never actually mentioned why the R35 MAF is a better choice.

The R35 MAF is a newer hot-film style which allegedly reacts a bit faster than the hot-wire type. I don't know if this matters, but theoretically it might provide quicker reactions to throttle input and require fewer compensations (not that the Z32 MAF isn't fast already). It also includes an IAT sensor built-in which is really nice from a packaging standpoint, and has a simple two screw flange that lets it bolt into any number of available housings. If available housings don't work for a given setup, the simple flange will also make it easy to design a custom housing and have it printed. Or buy a flange in aluminum, locate it where you want it on an aluminum tube, and have it welded in.

Add to this the natural advantages of the R35 MAF from a non-technical standpoint (it's newer, similarly priced, they seem to be more plentiful, there are aftermarket versions, etc) and it just makes more sense. The Z32 MAF might be more convenient if they were common or fit without an adapter, but then I needed the air straightener anyways so it is kind of a moot point.

DarkMonohue
DarkMonohue GRM+ Memberand Dork
4/7/24 9:58 p.m.
WondrousBread said:

The number of people running MAFs with a standalone is comparatively small. It makes me wonder how many are happy with their speed-density tune and how many have just learned to tolerate minor hiccups.

There's probably a natural aversion to adding anything that doesn't strictly have to be there - the "you don't need that" philosophy you mentioned earlier. Then you have the additional cost, the tuning and wiring complexity, the fact that the part sits right in the intake tract and could be viewed as a potential restriction to airflow. Still, OEMs meter airflow for a reason...

You're doing a really nice job documenting your work on this car. I'd much rather follow along with something relatable like this than watch someone fire the parts cannon at some monster build. Keep it up!

WondrousBread
WondrousBread Reader
4/8/24 7:41 p.m.
DarkMonohue said:

There's probably a natural aversion to adding anything that doesn't strictly have to be there - the "you don't need that" philosophy you mentioned earlier. Then you have the additional cost, the tuning and wiring complexity, the fact that the part sits right in the intake tract and could be viewed as a potential restriction to airflow. Still, OEMs meter airflow for a reason...

You're doing a really nice job documenting your work on this car. I'd much rather follow along with something relatable like this than watch someone fire the parts cannon at some monster build. Keep it up!

Thank you for your kind words! Maybe one day I'll fire the parts cannon at it, but for now my goal is to just have a nice driving car that's reliable enough to enjoy.

One interesting opinion I've heard is that the OEMs only meter airflow because they want to maximize fuel-efficiency. But to me that seems like a compelling argument in favour of the MAF. It also seems to me that for those of us tuning the cars ourselves, especially with limited or no dyno time, it's worthwhile to have every advantage possible working in our favour.

WondrousBread
WondrousBread Reader
4/16/24 8:11 p.m.

The trigger wheel arrived, and at first glance it looked pretty good:



But when I actually placed it against the pulley, it wouldn't sit flat. Turns out it's significantly warped:



It would be fixable, but I'd really rather start with a part that is straight. PCBWay has pretty good customer service so I don't anticipate any issues getting a replacement. It does push the timeline out a couple weeks unfortunately.

WondrousBread
WondrousBread Reader
4/20/24 6:52 p.m.

When I restored the air pump, the main goal was to restore proper aux port actuation. I also said I thought there would be a way to gain some area under the curve. This is the post where that all comes together (sort of).

The first thing I needed to do was add in some solenoids, and connect them to my MS3X through a sub-harness. There's one MAC valve on the shock tower:



One stock S5 boost solenoid (borrowed from my Turbo II engine) on the manifold, where the sub-zero cold start assist system used to live (obscured by this hose I probably should've removed for the sake of the photograph):



And a big mess o' vacuum hoses:



So what is going on here? I'll explain:

- One source of vacuum (uppermost blue hose) runs to the MAC valve inlet. Then from the MAC valve outlet, that vacuum is split to the two nipples above the ACV.

- The nipple I added to the air pump outlet connects to the S5 boost solenoid inlet, and the outlet of the solenoid connects to the aux port air supply tube. There's a small hole in the hose on the aux port side to allow air to flow back when the ports return to their home position, otherwise they can get stuck open.

This should in effect give me complete software control of the ACV, but also (in theory) allow for continuous control of the Aux ports rather than the discrete on/off behaviour of the stock system (since I can control the pressure at the outlet by varying the duty cycle on the solenoid). Now, the last part really didn't pan out and I'll explain why in a minute. But it's worth talking about how the stock system works before I move on to my findings.

In the stock system, puttering around at low rpm / low load the ports remain closed. Once you reach a certain amount of load (the training manual says "4500 rpm" although it is in-fact a load based system, not rpm) the ports open and you get the additional intake timing. The way the manual specifies an engine speed is a bit incomplete (6000 rpm at 10% throttle probably won't cause enough back-pressure to open the ports, but 4000 rpm at 100% throttle might).

Now when I say that they only have a discrete "on/off" behaviour I don't mean that in the literal sense - the manual lists 1.2 psi as the point where the actuator should start to move, and 2.1 psi as the point where it's done). But in my testing the actuators have basically three positions: "Closed", "Open slowly", and "Open quickly". I can't find any duty-cycle that causes the actuators to hang at 1/2 way for example. So while I can smooth the transition a bit by setting say 50% duty, I can't actually hold a specified intake timing. At least with my current setup.

So with that knowledge I decided it was time to try and find the best transition point for the ports. I started by setting the duty on that solenoid to 0, and then started a second gear run from idle to redline. Then I changed the duty on the solenoid to 100, and did an identical run. Once I got home I cut out the remainder of the log to end up with the following:



You can kind of see the trend there, but it isn't very clear because there's a lot of other things going on. Conveniently the histogram tool in MLV makes it easy to cut out the noise and visualize the data, and also lets me specify the y-axis units:



If that still seems confusing then here's what's going on:

- The left hand side shows the engine RPM.

- The middle column shows the MAF reading at a given RPM value with the Aux ports closed.

- The right hand side shows the MAF reading at a given RPM value with the Aux ports open.

Most of the alternative Aux pump actuation methods I've seen either just tap off the air pump (tying the aux port actuation to engine speed, although the exact RPM at which it changes over is unclear), or sometimes use an RPM based switch to allow the user to select the engine-speed for the changeover. Either of these works fine, but from experience the Aux ports being open too early (say 2000 - 2500 rpm) is noticeable when driving.

So I really wanted to be a bit more scientific about it. The rationale for the aux port is that at low load the smaller secondary ports are more efficient. In my (admittedly amateur) understanding of the engineering concepts behind this, this is because a port being too large causes a decrease in flow. I'm assuming that (like an exhaust system with too great a diameter) this is due to the turbulence in the large port causing a decrease in overall flow. The aux ports only become efficient at high load because at that point we are exceeding the limitations of the primary + secondary ports in terms of flow.

With that in mind, my intuition is that MAF is actually the best measure of where to configure the changeover (since we want to pick the point where we are outflowing the primaries + secondaries, not some rpm value). Someone running speed-density could use the calculated air flow as a proxy and it would work just as well. We don't actually care about the number so much as the comparison, since the MAF flow curve was not changed between those two runs and we know it will be consistent. So with all of this in mind, here's a PowerBI graph visualizing the above data:



There are a couple of really interesting things about it (keeping in mind that both of the above runs are at WOT so throttle doesn't enter the equation here and we can speak in terms of rpm):

- There is surprisingly little difference from 1500 to 2000 rpm. This might just be due to the poor low rpm chamber filling of the rotary engine itself, but that's just me speculating.

- There is a surprisingly large difference from 2500 to 4500 rpm. This is definitely noticeable when driving. At 3500 rpm it's around 15% more flow with the ports closed.

- The aux ports only become efficient at 5200 rpm. About 1200 higher than the commonly accepted online 4000 rpm number for when the ports are "supposed" to open, and still 700 rpm higher than the training manual's 4500 rpm figure.

- Something's going on to cause that dip at 6250. I think it's tune related. My AFR table still references map for the load which might be causing some weirdness (MAP by 6000rpm shows as 90, which is actually less than the 95-98 I see earlier in the run), and I also noticed AFRs started to get really rich nearer to 7000. In fact, AFR was actually out from target quite a bit during this entire run, so I'll need to revisit my flow curve to see what's up.

Now there are some mitigating factors. For one, I only did one test run. A proper test would involve many back-to-back tests. Two, my car is not stock. The engine itself should be a stock port S4, but I have a different MAF from factory and my exhaust is probably flowing more than stock with it's 3" diameter from the catalyst back. It's not clear to me whether the behaviour I observed would be the same for a stock car (although admittedly I would've expected a modified car to outflow the primaries earlier, but then air flow is a complicated thing). And lastly the intake temp drops a few degrees between runs.

But this does tell me where to configure the changeover:



The reason I picked 112 g/sec and not 118 (where the lines cross in the graph) is that it takes a moment for the ports to open. So I want the ports to start opening slightly in advance of then. The hysteresis value was just something I picked somewhat arbitrarily to prevent the solenoid bouncing around. I'll only know whether 15 is a good number with testing.

So for now that's where I'll leave it. As soon as I get the chance I'll do another back to back to back test with the ports always open, always closed, and opening at my configured set point. Then I can overlay the three lines and see what happens. Until next time :)

1 ... 6 7 8

You'll need to log in to post.

Our Preferred Partners
YSuoD5co5n2ZctR6MshnCEEBrzzrc3byfL0n3daNnaLWfq1vFWBtuGmFAOjf2VSj