View Single Post
      01-05-2019, 05:06 PM   #90
evanevery
Lieutenant Colonel
evanevery's Avatar
954
Rep
1,656
Posts

Drives: i8 Roadster, M4, Tesla MX
Join Date: Feb 2012
Location: Wisconsin

iTrader: (0)

So I got the car out and ran it around the block today. While I think the Maserati Sound Module does sound better (out of the box) then the Maxhaust Module, something is still not right...

I promised everyone to get some high quality side-by-side AUDIO clips so we had something better than a variety of arbitrary iPhone VIDEOS on a bunch of different cars. ...and I'm still going to do that. But a Smart Phone does NOT a good audio recorder make. My original plans were to mount my Tascam DR-05 Stereo Portable Digital Audio Recorder on the rear bumper of the car and record audio while driving through a pre-defined series of events over a very short road circuit (Idle, gentle acceleration, gentle deceleration, spirited acceleration with manual shifting, and engine braking via manual downshifting). I was going to do the same series over the same course for both the Maserati Module and the Maxhaust Module (and maybe even the factory BMW sound module). This should give everyone a pretty complete side-by-side comparison of the difference in sound over a common variety of conditions.

I'm still going to do this but my drive today has given me the incentive to do a bit more detailed analysis...

One of the "shortcomings" I have noted before was the frequency disparity between the fake outside sound (Maxhaust or Maserati) and the fake inside sound (BMW). The fact that our i8's already have some pretty impressive interior sound generation adds a whole new challenge to try and make sure that the outside sound "integrates" properly with the sound being generated inside the cabin. IOW: We don't need the Maxhaust sound to follow the ACTUAL engine RPM (which we DON'T hear), we need the Maxhaust module to follow the RPM of the interior sound (which we DO hear).

Maxhaust makes lots of kits for many different cars and I believe MOST of them do not have interior sound generation. I was hoping the factory default configuration (for both sound modules) would have been better matched to the interior sound being generated by our cars. The good news is that I believe BOTH sound modules (Maserati and Maxhaust) have the ability to tweak the "RPM matching" via the Maxhaust bluetooth controller and app. The adjustment in the app is a bit of a blind alley (it is just a dial from 0 to 100). As I've noted in prior posting: Their tutorial PDF notes that setting "Idle RPM" to 10 and "Dynamic RPM" to 30 will follow the car RPM 1:1...

So what does that actually mean? Is Maxhaust assuming a fixed number of cylinders (4,6,8,...) for all cars when they do their calculations - or do they take into account the actual number of cylinders in our car (3)? ...and "what RPM" are we talking about? Are we talking about the actual engine RPM (which Maxhaust is clearly reading from the CANBUS) or are we talking about the simulated engine RPM being delivered inside the cabin? Based on what I'm hearing, I'm willing to bet they are tracking the actual engine RPM and maybe even basing their sound calculations on a 4 cyl profile. This would explain why their exterior sound is "weak" or "slow" when compared to what is being generated inside the cabin.

Here is where it really gets interesting!

So the engine in the i8 is a 3 cylinder engine. I think we can be pretty sure that BMW is not pumping augmented 3 cylinder engine exhaust sounds into the cabin. (...otherwise the sound we hear in the cabin would be more like a Harley than a Race Car). Its my guess, that in order to avoid audible syncopation, BMW likely chose to emulate the sound of a 6 cylinder or 12 cylinder engine via the interior sound (maybe even a 9 Cylinder). It would seem that using an even multiple of the actual number of cylinders would be a requirement to make the sounds integrate properly.

So, if we were generating a 6 cyl sound on top of a 3 cyl engine we would get an aligned real/fake pulse, followed by a fake pulse, followed by another aligned real/fake pulse, etc. IOW: Emulating a 6 cyl engine on top of a real 3 cyl engine would result in 2 fake exhaust pulses for every real pulse. Fake 12 on top of Real 3 would be 4 fake pulses for every real pulse. Fake 6 on Real 3 = doubled sound frequency. Fake 12 on Real 3 = quadrupled frequency.

In a 4 cycle engine each cylinder goes BANG once every two revolutions. I'm not an exhaust sound expert but it seems to me the dominant frequency of an exhaust sound would correlate with the rate of actual exhaust strokes (bang!) being performed by the cylinders. So, if I'm correct, a 3-cylinder 4-cycle engine running at 5000 RPM should produce a dominant exhaust note at approximately (3 * 5000 / 2) = 7500 pulses per minute or (7500 / 60) = 125 Hz (pulses per second). (I might also be under-rating the freq by a factor of 2 if we count the intake stroke but its all relative in any case). A 2 cyl Harley at 5000 RPM would chug along at 83 Hz and a 12 cyl Ferrari would scream at 1000Hz. I haven't done any research to support this, but I'm quite certain that running an audio spectrum analysis on the wave file (of a actual exhaust sample when the car is running at 5000 RPM) will illuminate the truth! There are lots of free audio apps on the internet which should enable this type of analysis - if I have the sound samples!

So my basic questions are, with our engine running at a particular RPM (I think 5000 is reasonable):

1. What is the frequency of the actual engine exhaust sound?
2. What is the frequency of the fake interior sound generated by BMW?
3. What is the frequency of the fake exterior sound generated by Maxhaust and Maserati sound modules?

I'm willing to bet that number 1 vs 2 is a perfect multiple. (The BMW interior sound is spot on!) However, what I'm hearing leads me to believe that 2 vs 3 is not a perfect 1:1... In fact, in may not even be a perfect multiple.

Maxhaust tells us that setting a couple of parameters to specific values in the app "will follow the car RPM 1:1". (Remember, they are reading the ACTUAL engine RPM from the CANBUS) But with the i8, that's NOT really what we are hearing in the cabin! I think what we want is the simulated EXTERIOR RPM to match the simulated INTERIOR RPM (not actual engine RPM).

So the question becomes: Did Maxhaust set up the i8 definition file specifically for optimization in combination with the interior sound RPM? ...or did they just set it up to match the engine RPM with pre-defined number of cylinders? While what we predominately hear inside the car is the simulated interior sound, even rolling down the window and sticking my head outside seems to indicate they are likely following the actual engine RPM. The result is that the simulated exterior RPM seems to be "weak" when trying to selectively hear it inside the cabin.

Anyway, running a spectrum analysis on some good sound samples obtained both outside and inside the car at a predetermined RPM should provide the answer to most, if not all, of these questions. By disconnecting any/all exterior sound modules, I should be able to get a clean sample of the actual engine exhaust sound (RPM). I'm also curious what the frequency tracking of the factory BMW exterior sound module is (With my connector mod, I can easily check that too!).

I will still need to figure out how the numbers on the adjustment dials in the app actually correlate to ANYTHING (they are "unit-less"). (They kind of remind me of the amplifier dials in Spinal Tap that "go to 11!") However, there is not much point in doing this until I have some way to quantify exactly what I'm hearing so I can then calculate how I'ld like to change it. If I can figure out what I'm hearing then I should be able to figure out specifically how those "unit-less" adjustments effect the exhaust note. (Even if it ends up being by trial and error)

I'm looking forward to this little challenge. ...and, Yeah, the winters ARE pretty long here in Wisconsin... ;-)

Last edited by evanevery; 01-05-2019 at 05:30 PM..