MEGAsquirt A place to collectively sort out this megasquirt gizmo

I get bored easily.

Thread Tools
 
Search this Thread
 
Old 01-25-2012, 11:43 PM
  #41  
Cpt. Slow
iTrader: (25)
 
curly's Avatar
 
Join Date: Oct 2005
Location: Oregon City, OR
Posts: 14,184
Total Cats: 1,135
Default

Originally Posted by Joe Perez
Great Scott! I should have used 12AX7 vacuum tubes instead of PN2222A transistors!

I'll keep that in mind for the next build.

(Actually, now that I think about it, building an ECU with tubes in it would definitely get me a spot on Hackaday.com)
Remember, 1955 components only.
curly is offline  
Old 01-26-2012, 10:02 AM
  #42  
y8s
2 Props,3 Dildos,& 1 Cat
iTrader: (8)
 
y8s's Avatar
 
Join Date: Jun 2005
Location: Fake Virginia
Posts: 19,338
Total Cats: 573
Default

steampunk MS.

=Joe just got a lot less bored.
y8s is offline  
Old 01-26-2012, 10:54 AM
  #43  
Boost Czar
iTrader: (62)
 
Braineack's Avatar
 
Join Date: May 2005
Location: Chantilly, VA
Posts: 79,493
Total Cats: 4,080
Default

I sent Joe P a txt last night when y8s was boring me.
Braineack is offline  
Old 01-26-2012, 11:23 AM
  #44  
Elite Member
iTrader: (10)
 
Reverant's Avatar
 
Join Date: Jun 2006
Location: Athens, Greece
Posts: 5,977
Total Cats: 356
Default

Just to let you know - the Enhanced MS2 that I build right now (the one based on the MS2V3), works like this - the medium and high current stuff is seperated, the MS2 mainboard only carries very low current signals and inputs. All the high current stuff (injectors, idle valve, boost control, relay control, etc) is done on my expansion board. In fact, I have seperate grounds on the expansion board for the high current devices and a seperate ground for the analog (and noise sensitive) devices.

Result is that with the standard MS2 code (no advanced TPS filtering) and with a TPSdot lag filter of 85, I'm getting TPSdot spikes that are not higher than about 20. Throttle response is SHARP.
Reverant is offline  
Old 01-26-2012, 11:28 AM
  #45  
Senior Member
 
fastivab6tg25mr's Avatar
 
Join Date: Jan 2011
Location: sacramento ,ca
Posts: 563
Total Cats: 160
Default

i envy your understanding of circuitry.
fastivab6tg25mr is offline  
Old 01-26-2012, 11:38 AM
  #46  
Elite Member
 
JasonC SBB's Avatar
 
Join Date: Jul 2005
Posts: 6,420
Total Cats: 84
Default

Originally Posted by Joe Perez
Correct. It will be exactly identical to the way it's been working for the past 22 years on the stock ECU.

I, too, was present for the first day of class in DC Circuits 1.


Yeah, or I could just try the simple way first and see if it works before I double my parts-count to solve a problem which may not exist.
Without the Schmitts the power MOSFETs themselves have a modicum of filtering. They have a gate threshold voltage ("Vt") of 2-3 V and a large gate capacitance, on the order of 1-10nF depending on the MOSFET. If you have a significantly sized gate resistor driving them you get a low pass filter. Gate drive resistors are good design practice to prevent MOSFETs from self-oscillating at 10-100 MHz during switching transitions. For injector drive rise times of 50 us, you can use as much as 5 kΩ gate drive resistors. Additionally, because the gate drive return currents will flow through the ground wires going to the engine grounding lugs, the inductance of those wires *will* make your MOSFETs more prone to oscillation.

You also shouldn't forget the 10 Ω or so shunt resistor to link the 2 ground systems on your PCB.

Then when you're testing the system, examine the MOSFET Drain to Source voltage and check for oscillation, then examine your MAP sensor signal on the PCB and look for noise that is coincident with your injector signal.
JasonC SBB is offline  
Old 01-26-2012, 12:34 PM
  #47  
y8s
2 Props,3 Dildos,& 1 Cat
iTrader: (8)
 
y8s's Avatar
 
Join Date: Jun 2005
Location: Fake Virginia
Posts: 19,338
Total Cats: 573
Default

Originally Posted by Braineack
I sent Joe P a txt last night when y8s was boring me.
who are you, paris hilton?
y8s is offline  
Old 01-26-2012, 01:00 PM
  #48  
Boost Czar
iTrader: (62)
 
Braineack's Avatar
 
Join Date: May 2005
Location: Chantilly, VA
Posts: 79,493
Total Cats: 4,080
Default

Originally Posted by y8s
who are you, paris hilton?
I dont google myself or have herpes...but that's only because no one wants to do me.
Braineack is offline  
Old 01-26-2012, 01:01 PM
  #49  
Boost Pope
Thread Starter
iTrader: (8)
 
Joe Perez's Avatar
 
Join Date: Sep 2005
Location: Chicago. (The less-murder part.)
Posts: 33,026
Total Cats: 6,592
Default

Originally Posted by Braineack
I sent Joe P a txt last night when y8s was boring me.
I saw that when I got back to my laptop, but you were already offline.

So, what evil things was he saying about me?
Joe Perez is online now  
Old 01-26-2012, 01:39 PM
  #50  
Boost Czar
iTrader: (62)
 
Braineack's Avatar
 
Join Date: May 2005
Location: Chantilly, VA
Posts: 79,493
Total Cats: 4,080
Default

nothing, I lied.
Braineack is offline  
Old 01-26-2012, 02:38 PM
  #51  
Boost Pope
Thread Starter
iTrader: (8)
 
Joe Perez's Avatar
 
Join Date: Sep 2005
Location: Chicago. (The less-murder part.)
Posts: 33,026
Total Cats: 6,592
Default

Originally Posted by Reverant
Just to let you know - the Enhanced MS2 that I build right now (the one based on the MS2V3), works like this - the medium and high current stuff is seperated, the MS2 mainboard only carries very low current signals and inputs. All the high current stuff (injectors, idle valve, boost control, relay control, etc) is done on my expansion board. In fact, I have seperate grounds on the expansion board for the high current devices and a seperate ground for the analog (and noise sensitive) devices.

Result is that with the standard MS2 code (no advanced TPS filtering) and with a TPSdot lag filter of 85, I'm getting TPSdot spikes that are not higher than about 20. Throttle response is SHARP.
That's pretty much what I'm aiming for. Initially, I'm using a pretty fast RC filter on the analog stuff, as I want to see how clean these signals can be gotten. If I have to, I'll tear back into it later and bump the time constants.

I've seen some of your stuff, and I'm impressed. Honestly, what I'm doing here isn't all that fancy. I have decided that the ECU should control the check-engine light at startup (for smog-testing purposes), and since this car has aircon, I'm also experimenting with a new circuit for driving that. It's compatible with JustinHoMi's A/C idle-up code modification, and also lets the ECU automatically disengage the compressor if RPM falls below a certain threshold. Aside from that, I'm keeping things simple.
Joe Perez is online now  
Old 01-26-2012, 02:42 PM
  #52  
Junior Member
 
Tw34k's Avatar
 
Join Date: Nov 2009
Location: Jax Fl
Posts: 459
Total Cats: 31
Default

Neat stuff, right up my alley, thanks for sharing.
Tw34k is offline  
Old 01-26-2012, 02:44 PM
  #53  
Boost Czar
iTrader: (62)
 
Braineack's Avatar
 
Join Date: May 2005
Location: Chantilly, VA
Posts: 79,493
Total Cats: 4,080
Default

Originally Posted by Joe Perez
It's compatible with JustinHoMi's A/C idle-up code modification, and also lets the ECU automatically disengage the compressor if RPM falls below a certain threshold. Aside from that, I'm keeping things simple.

EDIT: Nevermind. MSI.
Braineack is offline  
Old 01-26-2012, 05:02 PM
  #54  
Junior Member
iTrader: (4)
 
redrider706's Avatar
 
Join Date: May 2009
Location: Athens GA
Posts: 440
Total Cats: 6
Default

Originally Posted by Joe Perez
Progress pics. The sub-board has the power regulator along with all of the "noisy" stuff, which is basically the injector drivers and the IDL driver. They have their own dedicated grounds, completely isolated from the analog / logic grounds. (This is one of the design flaws in the 3.0 board that has always bothered me- everything shares a common ground.)
Can the same idea be implemented using the MS3+MS3x? All the high current circuits are on the MS3X and the signal inputs are all on the main board. The MS3X has its own high current ground and it is connected to the main board ground via a polyfuse.

Thanks.
-Raj
redrider706 is offline  
Old 01-26-2012, 05:16 PM
  #55  
Boost Pope
Thread Starter
iTrader: (8)
 
Joe Perez's Avatar
 
Join Date: Sep 2005
Location: Chicago. (The less-murder part.)
Posts: 33,026
Total Cats: 6,592
Default

Originally Posted by redrider706
Can the same idea be implemented using the MS3+MS3x? All the high current circuits are on the MS3X and the signal inputs are all on the main board. The MS3X has its own high current ground and it is connected to the main board ground via a polyfuse.
Yeah, I can't quite figure out why that polyfuse is there between the INJ GND and main ground on the MS3X board. When there's no current flowing across it, that polyfuse has a resistance of 0.5 to 0.77 ohms, so it's nearly the same as not having a separate ground in the first place.

I don't want to cause anyone to blow up their MS3X, however at first glance, I see no harm in removing it, once you've made quite certain that your INJ GND pins are well coupled to ground.
Joe Perez is online now  
Old 01-26-2012, 09:37 PM
  #56  
I'm Miserable!
 
Techsalvager's Avatar
 
Join Date: Jun 2009
Location: albany, ga
Posts: 1,866
Total Cats: 0
Default

Joe have you looked into FreeEMS? They have come long ways into getting a working EMS going and there is a few working and running installs already. Considering its all GPL you can build your own board and use their code without issues.

http://freeems.org/
Techsalvager is offline  
Old 01-27-2012, 12:36 AM
  #57  
Elite Member
 
JasonC SBB's Avatar
 
Join Date: Jul 2005
Posts: 6,420
Total Cats: 84
Default

Originally Posted by Joe Perez
Yeah, I can't quite figure out why that polyfuse is there between the INJ GND and main ground on the MS3X board. When there's no current flowing across it, that polyfuse has a resistance of 0.5 to 0.77 ohms, so it's nearly the same as not having a separate ground in the first place.
It'll have some effect, the round trip resistance of the high current ground wire and logic ground wire to the engine will be a fraction of that. And, the more important thing (if the high current grounds and signal grounds are connected together at the ECU, is that the sensor grounds are returned to the ECU logic/analog ground and not connected to the engine/chassis like in the 1.6 miatas.
JasonC SBB is offline  
Old 01-27-2012, 01:45 AM
  #58  
Boost Pope
Thread Starter
iTrader: (8)
 
Joe Perez's Avatar
 
Join Date: Sep 2005
Location: Chicago. (The less-murder part.)
Posts: 33,026
Total Cats: 6,592
Default

Originally Posted by JasonC SBB
And, the more important thing (if the high current grounds and signal grounds are connected together at the ECU, is that the sensor grounds are returned to the ECU logic/analog ground and not connected to the engine/chassis like in the 1.6 miatas.
Huh?

I can't see how conjoining the Inj GND and analog GND within the ECU itself has any effect whatsoever on how the CPU perceives the sensors. That is dictated by the wiring of the sensor grounds within the vehicle harness.

Perhaps you're not understanding the wiring of the 1.6 car? The analog ground is essentially a star topology. Essentially, all of the various sensor grounds and the ECU "analog" ground go to a central point (the aforementioned JC-02) and then from there to engine ground. The sensors are NOT grounded directly to the engine.

Conjoining the two ground planes within the ECU can only hurt the performance of the analog sensors. It can't help it.
Joe Perez is online now  
Old 01-27-2012, 09:37 AM
  #59  
Boost Pope
Thread Starter
iTrader: (8)
 
Joe Perez's Avatar
 
Join Date: Sep 2005
Location: Chicago. (The less-murder part.)
Posts: 33,026
Total Cats: 6,592
Default

Moar wire!

Attached Thumbnails I get bored easily.-jxn6d.jpg  
Joe Perez is online now  
Old 01-27-2012, 11:54 AM
  #60  
Elite Member
 
JasonC SBB's Avatar
 
Join Date: Jul 2005
Posts: 6,420
Total Cats: 84
Default

Originally Posted by Joe Perez
Huh?

I can't see how conjoining the Inj GND and analog GND within the ECU itself has any effect whatsoever on how the CPU perceives the sensors. That is dictated by the wiring of the sensor grounds within the vehicle harness.
I was talking about the system of connecting the 2 separate ground systems on the PCB at one point via a 0.7Ω polyfuse. The analog signals won't be contaminated if

1) the 2 ground systems are kept separate except at that polyfuse point
and
2) the car's sensor grounds are returned only to the PCB, to the logic/analog ground and aren't connected to the engine ground along the way.

I understand that the 1.6 cars violate (2) above, and in that case, I explained that a 0.7Ω resistance is greater than the total resistance of the ground wires a) from the PCB high current ground to the 1.6 car high current ground lug, and b) the ground wire from the PCB logic ground to the 1.6 engine ground lug #2.

More specifically, injector and solenoid currents will preferentially flow through the low resistance high current ground wire to the engine, than through the 0.7Ω resistor, then through the logic ground wire to engine ground lug #2. More specifically, they form a current divider. Only a small fraction of the injector currents flow through the polyfuse and down the logic ground wire.

Also, the voltage drops on wire developed from high currents, will cause a voltage to appear on said ground wire, which will also appear on the 0.7Ω polyfuse. This is little different than not having the polyfuse present, *if* the wire resistance is much smaller than the polyfuse. i.e. the 2 ground systems are allowed to have slightly different voltages.

The analog inputs will sense sensor voltages against the logic ground, which is firmly wired to engine lug #2. Voltage drops across this logic ground wire will appear to the analog inputs as a noise voltage that is added to the actual sensor voltages. This voltage drop is small (because the logic ground wire voltage drops are small), thus the noise is small.

What the above analysis describes is *shared impedance noise coupling*. Essentially when 2 different circuit currents share a common impedance or conductor, the voltage drop on said conductor impedance from a high current circuit appears as a voltage input on the other circuit. In our case the shared path is the combo of the high current ground wire, in parallel with the series combo of polyfuse and logic ground wire.

Thus to minimize noise in the analog signals due to the grounding arrangement:
1) the polyfuse resistance value must be greater than both ground wires
2) the high current ground wire should have minimal voltage drop with its high current loads - a
3) the logic ground wire should have minimal voltage drops with its currents - shared current

If the polyfuse were shorted out, the 2 ground wires are completely in parallel, and there would be no voltage between the 2 ground systems. All voltage drops in the wire, from injector currents, would get added to the sensor voltages, at the analog inputs.

This is badly called a "ground loop". Some people simplistically say "all grounds returned to a single point". If you consider the ECU as only having 2 circuits, then these 2 cases follow that rule:

1) completely separate grounds only joining at the engine (sensor grounds returned to a separate lug than high current ground), the 1.6 case Joe likes
2) completely separate grounds, only joining at the ECU (sensor grounds returned to ECU)

The case of the polyfuse I described lengthily above, is #1 but with a 0.7Ω polyfuse connecting the 2 grounds together at the ECU.

The case of the polyfuse shorted out, in a 1.6, is a violation of the "single point" ground rule, because the 2 ground systems are joined at 2 points - at the engine, and at the ECU.
JasonC SBB is offline  


Quick Reply: I get bored easily.



All times are GMT -4. The time now is 04:52 PM.