Sequential/semi-sequential code

This is a forum for discussing the development and testing of alpha MS2/Extra code. Documentation
(Runs on MS2 and Microsquirt)

Moderators: daxtojeiro, muythaibxr, jsmcortina

Sequential/semi-sequential code

Postby racingmini_mtl » Sat Feb 28, 2009 1:16 pm

After talking about it for about 2 years, I've done a 3-week blitz and finally did the code. This is currently named MS2/Extra Sequential Alpha 1.0.3 and is not an official release and the current naming and numbering can change in the future depending on its status.

This code will do sequential (and semi-sequential) injection on engines with 1 to 4 cylinders and semi-sequential on 6 and 8 cylinder engine and timed injection on 5, 10, and 12 cylinder engine with some combinations of triggers and number of squirts. The table below shows what is available and is configured automatically in the code depending on the number of cylinder, the type of trigger, the number of injector drivers and whether staging is enabled.
Code: Select all
                         No Staging                       Staging   
# Cyl    Cam trigger    # Inj    # Squirts per 720 deg    # Inj    # Squirts per 720 deg
1                          1                2                2                2
1             *            1                1                2                1
2                          1                2                2                2
2             *            2                1                4                1
3             *            1                3                2                3
3             *            3                1                -                -
4                          -                -                2                4
4                          2                2                4                2
4             *            4                1                -                -
5             *            1                5                2                5
6                          1                6                2                6
6             *            2                3                4                3
6                          3                2                -                -
6             *            3                2                -                -
8                          -                -                2                8
8                          2                4                4                4
8                          4                2                -                -
10                         1               10                2               10
12                         2                6                4                6
12                         3                4                -                -

The code can use the standard injector drivers (but is of course limited to 2 in that case). The use of 4 injector drivers requires a small modification on the MS2 board which can be seen here. The modification is simple with the addition of 2 small jumpers to bring the signal from the pins 1 and 4 of the NAND gate chip to the card pins 4 and 5. This requires that the clock circuit on the MS board not be installed (this circuit is not needed for MS2).

That will also require the use of 4 external drivers which can be simple like the VNP5N07 (similar to the Microsquirt drivers) for high-Z injectors. For low-Z injectors, another solution will be required since PWM is no longer available with 4 drivers so the use of inline resistors or LM1949-based drivers (such as on my p&h board) will be required. The 4 drivers will need to be connected to pins 39, 40, 4, 5 for injectors drivers 1,2,3,4, respectively. It will be more practical to connect to the equivalent on the MS board as shown on the linked page.

One more thing is that Megatune 2.25 will not be an option for tuning because it doesn't support the number of tables in the new code so TunerStudio will be the one to use. The menu addition are in the Advanced menu as shown below:
Image

The new configuration window looks like this:
Image

The Sequential option allows the selection of the regular untimed injection, Sequential/semi-sequential injection, and semi-sequential and sequential for siamese-port engines. The timing trigger option is to determine if the timing value will be with respect to the start of the injection pulse, the end of the pulse or the middle of the pulse. The end-of-pulse option is nice if you want to time the injection with the opening or closing of the intake valve so that the injection always finishes at that angle no matter what the pulse width is. The middle-of pulse option times the injection with the middle of the pulse (the middle of the effective pulse without the opening time). This is good when the injection has to be within a certain injection angle window such as on siamese-port engines.

"Fixed timing or tables" is for selecting if the timing will be a fixed value for the entire load/rpm range or for using a table. The timing table is a 6x6 table since the timing should be a rather linear thing and not require more than that. It's also limited due to available memory limitations. The number of timing values is to select between 1 or 2 values but the 2 values are only needed for the siamese-port engine configurations. The following options are to enter the timing values if using a fixed timing value.

The VE trim tables are used to trim the injection pulse width individually on each of the injector drivers. It is possible to add or subtract up to 12.4% in 0.1% increments and the tables are full size 16x16 tables. This is not a real VE trim in that it's not done by adding or subtracting from the VE and then doing the fuel calculations but it has a similar effect with it being used to multiply the final pulse width.

The Injector drivers option is to select between the standard MS injector drivers and the additional drivers as described above. If this is selected when no additional drivers and without the MS2 board modification nothing bad will happen to the board or injectors but at best the injector won't fire and at worst they will do so in a non-effective manner. The last options are for entering separate values for the injector characteristics for the additional injectors. These options are only available if the option to have different values is select in the standard injector menu.

As mentioned, the code also does timed injection, in semi-sequential and full sequential modes, for siamese-port engines such as the classic Mini's engine (Rover's A-series engine) but this will be elaborated on seperately.

I have attached the s19 and ini files. I will provide the source code when the status of the code is clarified with James and Ken. Also, the attached code will only work with even wheels (m-n) and the Rover wheel patterns because I had to disable the other wheel patterns since the code was larger than the available memory. However, upon request, I can produce other s19 files that will have the desired patterns by disabling one mode and enabling another one. Of course, this is only valid for the currently available wheel patterns and the code is based on the beta20090201 version.

Jean

EDIT: Old code removed go here for the new code.
Last edited by racingmini_mtl on Fri Mar 13, 2009 5:43 pm, edited 1 time in total.
jbperf.com Main site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . jbperf.com Forum
Image
racingmini_mtl
Super MS/Extra'er
 
Posts: 2115
Joined: Sun May 02, 2004 6:51 am
Location: Montreal, Canada

Re: Sequential/semi-sequential code

Postby UnaClocker » Sat Feb 28, 2009 1:27 pm

Oh my god, this is sooooo freaking awesome! Good job!

Say I have large injectors on a forced induction motor.. So the idle PW is really low.. Will this new sequential mode work well with that situation?
UnaClocker
Super MS/Extra'er
 
Posts: 1465
Joined: Fri May 07, 2004 12:59 pm
Location: Olalla, WA

Re: Sequential/semi-sequential code

Postby racingmini_mtl » Sat Feb 28, 2009 1:56 pm

I'm not sure but there are 2 things that could help. First for a 4-cylinder engine with additional injector drivers, you can run with a single squirt per cycle (which maximizes the pulse width and therefore precision) and position it for the best response. And the injection timing will be the same for all cylinders so if your engine prefers injection on a closed valve (or open valve or anything in between) that's what you get for all cylinders.

Second, you can adjust the ve trim to a precision of 0.1% (which is interpolated to 0.01% between cells) so for very short pulses this can make the difference between a rough running engine and a smooth one. And you don't have to have the same RPM and load tuning points for the ve trim as you have for the fuel VE table. They are all independent so you can concentrate the cells where you need them.

Jean
jbperf.com Main site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . jbperf.com Forum
Image
racingmini_mtl
Super MS/Extra'er
 
Posts: 2115
Joined: Sun May 02, 2004 6:51 am
Location: Montreal, Canada

Re: Sequential/semi-sequential code

Postby turbo355 » Sat Feb 28, 2009 3:20 pm

If we use additional injector drivers will they need to still use the IXD inverted driver or will we wire the VND507's gate pin straight to the 74hc ?


GREAT work cant wait to try it out. :yeah!:
2000 Suzuki Hayabusa turbo MS3 beta testing Plug and Play standalone

http://interfacepnp.webs.com/

http://www.youtube.com/Busams
User avatar
turbo355
Master MS/Extra'er
 
Posts: 566
Joined: Tue Feb 21, 2006 11:32 pm

Re: Sequential/semi-sequential code

Postby racingmini_mtl » Sat Feb 28, 2009 3:45 pm

All the components from the standard injector drivers are unused for the 4 injector drivers when you select the additional injector drivers option. To use the injector drivers 3 and 4 you must do the modification shown in the picture below (or connect the drivers directly to the NAND gate pins but that's not the best option). Note that there are 2 jumpers on the picture: one is easily seen with the blue wire between pin 1 and MS2 pin 4 and the other is a completely stripped wire between the via by pin 4 of the NAND gate and pin5 of the MS2 card. Just to give a better scale, the wire is a 30-gauge single strand wire.
Image

Once those are done, the best thing to do is to use the points shown on the picture below to connect to the new injector drivers. Alternatively, you can connect to the MS2 card pins directly or even to the NAND gate pins but those are not the most reliable solutions.
Image

Jean
jbperf.com Main site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . jbperf.com Forum
Image
racingmini_mtl
Super MS/Extra'er
 
Posts: 2115
Joined: Sun May 02, 2004 6:51 am
Location: Montreal, Canada

Re: Sequential/semi-sequential code

Postby turbo355 » Sat Feb 28, 2009 4:13 pm

Ok so the VND's don need a input resistor they will be fine to hook the gate to the 74hc?

Sorry for all the questions on this i dont want burn anything up.LOL
2000 Suzuki Hayabusa turbo MS3 beta testing Plug and Play standalone

http://interfacepnp.webs.com/

http://www.youtube.com/Busams
User avatar
turbo355
Master MS/Extra'er
 
Posts: 566
Joined: Tue Feb 21, 2006 11:32 pm

Re: Sequential/semi-sequential code

Postby racingmini_mtl » Sat Feb 28, 2009 4:20 pm

Sorry, I misunderstood what you meant. Yes you will want inline resistors. The VNP5N07 is the same thing as the Microsquirt injector driver except that it is in a TO220 package (the Microsquirt's VND5N07 is in a DPAK surface mount package) and will need the exact same thing as on the Microsquirt. Look at this to see what's needed.

By the way, I have a new board coming that will use the VND5N07 for those with high-Z injectors. The board will also have a place for 4 IGBTs and a DB15 connector.

Jean
jbperf.com Main site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . jbperf.com Forum
Image
racingmini_mtl
Super MS/Extra'er
 
Posts: 2115
Joined: Sun May 02, 2004 6:51 am
Location: Montreal, Canada

Re: Sequential/semi-sequential code

Postby turbo355 » Sat Feb 28, 2009 4:26 pm

racingmini_mtl wrote:Sorry, I misunderstood what you meant. Yes you will want inline resistors. The VNP5N07 is the same thing as the Microsquirt injector driver except that it is in a TO220 package (the Microsquirt's VND5N07 is in a DPAK surface mount package) and will need the exact same thing as on the Microsquirt. Look at this to see what's needed.

By the way, I have a new board coming that will use the VND5N07 for those with high-Z injectors. The board will also have a place for 4 IGBTs and a DB15 connector.

Jean

OK sounds good my adapter board for the bikes use the Dpak VND's for boost solenoid control with a micro i program and i use resistors on the gates for them just didnt know if the 9s12 and the 74hc could take it or not.

Looking forward to trying this out soon.
2000 Suzuki Hayabusa turbo MS3 beta testing Plug and Play standalone

http://interfacepnp.webs.com/

http://www.youtube.com/Busams
User avatar
turbo355
Master MS/Extra'er
 
Posts: 566
Joined: Tue Feb 21, 2006 11:32 pm

Re: Sequential/semi-sequential code

Postby racingmini_mtl » Sat Feb 28, 2009 4:31 pm

So that should be relatively easy and quick for you to try this out. By the way, the 74hc is not even involved in this since you're connecting on the input side. It's just a more convenient place to connect to than the smaller 9s12.

Jean
jbperf.com Main site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . jbperf.com Forum
Image
racingmini_mtl
Super MS/Extra'er
 
Posts: 2115
Joined: Sun May 02, 2004 6:51 am
Location: Montreal, Canada

Re: Sequential/semi-sequential code

Postby turbo355 » Sat Feb 28, 2009 4:36 pm

Yeah i could allocate 2 of the boost solenoid drivers for injector drivers and try it out .

Might be a little bit though im finishing up some test boards for debugging of my board itself, but i will build up another test board and mod a MS2 card and try it out see how it does
2000 Suzuki Hayabusa turbo MS3 beta testing Plug and Play standalone

http://interfacepnp.webs.com/

http://www.youtube.com/Busams
User avatar
turbo355
Master MS/Extra'er
 
Posts: 566
Joined: Tue Feb 21, 2006 11:32 pm

Re: Sequential/semi-sequential code

Postby racingmini_mtl » Sat Feb 28, 2009 4:49 pm

You will need 4 drivers if you want to try full sequential and not semi-sequential (and of course you need a cam sensor for full sequential). Or did you want to try semi-sequential?

Jean
jbperf.com Main site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . jbperf.com Forum
Image
racingmini_mtl
Super MS/Extra'er
 
Posts: 2115
Joined: Sun May 02, 2004 6:51 am
Location: Montreal, Canada

Re: Sequential/semi-sequential code

Postby turbo355 » Sat Feb 28, 2009 4:57 pm

I should be able to do any of the choices, my board is setup for whatever i need the bike already has a cam sensor , i have have run the ignition both ways WS and cop , and i have enough drivers onboard to run 4 injectors .

I will try it out as soon as i can got to finish up some projects first then i will give it a go.
2000 Suzuki Hayabusa turbo MS3 beta testing Plug and Play standalone

http://interfacepnp.webs.com/

http://www.youtube.com/Busams
User avatar
turbo355
Master MS/Extra'er
 
Posts: 566
Joined: Tue Feb 21, 2006 11:32 pm

Re: Sequential/semi-sequential code

Postby racingmini_mtl » Sat Feb 28, 2009 5:00 pm

Good! I look forward to see how that goes.
jbperf.com Main site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . jbperf.com Forum
Image
racingmini_mtl
Super MS/Extra'er
 
Posts: 2115
Joined: Sun May 02, 2004 6:51 am
Location: Montreal, Canada

Re: Sequential/semi-sequential code

Postby racingmini_mtl » Sat Feb 28, 2009 5:13 pm

One thing I forgot to mention is that timing is with respect to TDC of the cylinder corresponding to the injector driver but in sequential mode it's TDC of the combustion stroke (as per ignition timing since that's what's available in the code). However, since you can input from -360 to 360 degrees for timing, you can place the injection anywhere you want in the whole cycle.

For semi-sequential, it's still with respect to TDC but since there are 2 cylinders per driver, it's TDC on every rev. For the other timed modes, it's going to be with respect to TDC of all the cylinders on the drivers so it could be every 240, 180, 144, 120, 90, or 72 degrees depending on the number of cylinders and injectors and the trigger type (as per the table above).

Jean
jbperf.com Main site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . jbperf.com Forum
Image
racingmini_mtl
Super MS/Extra'er
 
Posts: 2115
Joined: Sun May 02, 2004 6:51 am
Location: Montreal, Canada

Re: Sequential/semi-sequential code

Postby UnaClocker » Sat Feb 28, 2009 7:46 pm

Maybe a stupid question here.. I'm going to need a cam sensor to do the full on sequential injection on a 4 cylinder? (Neon/420a mode in wasted spark)
And one other question.. Your S19 you posted.. Which version of MS2E is that based off of? The latest beta, or one of the recent beta's?
UnaClocker
Super MS/Extra'er
 
Posts: 1465
Joined: Fri May 07, 2004 12:59 pm
Location: Olalla, WA

Re: Sequential/semi-sequential code

Postby racingmini_mtl » Sat Feb 28, 2009 8:04 pm

To do the full sequential, you need a cam sensor. Without it there's no way to know when the valves are open and when they're closed. The Neon/420a mode has an option to use a cam sensor even if you use wasted spark. I'd need to produce another s19 file though because this mode isn't supported in the posted one.

As I mentioned at the very end of my first post (which I admit was rather long), the code is base on beta20090201 so not the most current one be the one before. I'll be looking at integrating the latest changes into the code but I'll have to see if there are any incompatibilities first.

Jean
jbperf.com Main site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . jbperf.com Forum
Image
racingmini_mtl
Super MS/Extra'er
 
Posts: 2115
Joined: Sun May 02, 2004 6:51 am
Location: Montreal, Canada

Re: Sequential/semi-sequential code

Postby UnaClocker » Sat Feb 28, 2009 8:41 pm

That's cool, I was just curious where the code stood. Yeah, I'd have to set mine to use the cam sensor in wasted spark. My engine is down for a turbo install at the moment anyways, can't try out this code for a couple more weeks. :)
UnaClocker
Super MS/Extra'er
 
Posts: 1465
Joined: Fri May 07, 2004 12:59 pm
Location: Olalla, WA

Re: Sequential/semi-sequential code

Postby racingmini_mtl » Sat Feb 28, 2009 9:54 pm

Let me know when you think you're close to trying it and I'll make an s19 file with the Neon/420a mode enabled if I haven't done it in the mean time.

Jean
jbperf.com Main site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . jbperf.com Forum
Image
racingmini_mtl
Super MS/Extra'er
 
Posts: 2115
Joined: Sun May 02, 2004 6:51 am
Location: Montreal, Canada

Re: Sequential/semi-sequential code

Postby Gokart » Sun Mar 01, 2009 5:02 am

racingmini_mtl wrote:That will also require the use of 4 external drivers which can be simple like the VNP5N07 (similar to the Microsquirt drivers) for high-Z injectors. For low-Z injectors, another solution will be required since PWM is no longer available with 4 drivers so the use of inline resistors or LM1949-based drivers (such as on my p&h board) will be required. The 4 drivers will need to be connected to pins 39, 40, 4, 5 for injectors drivers 1,2,3,4, respectively. It will be more practical to connect to the equivalent on the MS board as shown on the linked page.

Jean


Can those VNP5N07 be substitute by BIP373?
(4G63T - MSIIextra) (4G13 - MS3-beta testing)
Gokart
Master MS/Extra'er
 
Posts: 552
Joined: Thu Aug 03, 2006 2:38 am

Re: Sequential/semi-sequential code

Postby JaccoF » Sun Mar 01, 2009 6:17 am

Sweet, can't wait to try it on my V8. How do i wire the P&H boards up without the IXD inverted driver?
Jacco

68 Mustang 289 V8 megasquirt 3 MPI BiFuel fullseq. V8 LPG & Petrol Injection & Spark

Your European Megasquirt source
http://www.jfetech.nl
JaccoF
Helpful MS/Extra'er
 
Posts: 84
Joined: Tue Sep 11, 2007 2:44 am
Location: Ermelo, The Netherlands

Next

Return to MS2/Extra Development

Who is online

Users browsing this forum: No registered users and 0 guests