Page 4 of 5 FirstFirst 12345 LastLast
Results 46 to 60 of 65

Thread: Hacking the DataStream

  1. #46
    Fuel Injected! gregs78cam's Avatar
    Join Date
    May 2011
    Location
    N. Idaho
    Posts
    767
    NOW THAT LOOKS A LOT BETTER. BC0EBC0F looks like what we are looking for. The range is right, the way it follows TPS looks right. SWEET!!! Only way to be sure would be to hook up a DMM to the injector line and verify milliseconds at idle. I will update first post.
    Last edited by gregs78cam; 03-02-2012 at 05:04 AM.
    1978 Camaro Type LT, 383, Dual TBI, '7427, 4L80E
    1981 Camaro Z-28 Clone, T-Tops, 350/TH350
    1981 Camaro Berlinetta, V-6, 3spd
    1974 Chevy/GMC Truck, '90 TBI 350, '7427, TH350, NP203, 6" lift, 35s

  2. #47
    Super Moderator
    Join Date
    Mar 2011
    Location
    Camden, MI
    Age
    35
    Posts
    3,026
    so you can directly read the hardware registers for the C3 datastream. neat.
    1995 Chevrolet Monte Carlo LS 3100 + 4T60E


  3. #48
    RIP EagleMark's Avatar
    Join Date
    Feb 2011
    Location
    North Idaho
    Age
    63
    Posts
    10,477
    Quote Originally Posted by gregs78cam View Post
    NOW THAT LOOKS A LOT BETTER. BC0EBC0F looks like what we are looking for. The range is right, the way it follows TPS looks right. SWEET!!! Only way to be sure would be to hook up a DMM to the injector line and verify milliseconds at idle. I will update first post.
    Alright!

    I updated the XDF and ADX file with this and the TPS% hac. What would be correct name for this? BPW Duty Cycle? Injector Pulsewidth?

    1990 Chevy Suburban 5.7L Auto ECM 1227747 $42!
    1998 Chevy Silverado 5.7L Vortec 0411 Swap to RoadRunner!
    -= =-

  4. #49
    Super Moderator
    Join Date
    Mar 2011
    Location
    Camden, MI
    Age
    35
    Posts
    3,026
    BCOE is sync BPW.

    so i'd just call it BPW, since with 160 baud, you'll never be able to see async BPW.
    1995 Chevrolet Monte Carlo LS 3100 + 4T60E


  5. #50
    RIP EagleMark's Avatar
    Join Date
    Feb 2011
    Location
    North Idaho
    Age
    63
    Posts
    10,477
    What is the range on this BPW supposed to be? Looks like it's hitting 5.1xx IIRC. Is there any math formula to make this percent? Would be easier to read...

    1990 Chevy Suburban 5.7L Auto ECM 1227747 $42!
    1998 Chevy Silverado 5.7L Vortec 0411 Swap to RoadRunner!
    -= =-

  6. #51
    Super Moderator
    Join Date
    Mar 2011
    Location
    Camden, MI
    Age
    35
    Posts
    3,026
    i'm not the expert when it comes to TBI, but IIRC, the injectors fire with every reference pulse, with the injector pair alternating which one fires for a given pulse?
    1995 Chevrolet Monte Carlo LS 3100 + 4T60E


  7. #52
    Fuel Injected! gregs78cam's Avatar
    Join Date
    May 2011
    Location
    N. Idaho
    Posts
    767
    It changes by RPM......

    From RBob:

    Static is at 100% or greater. The '747/'8063/'8746 ECMs fire an injector every time a plug fires. There are two injectors. They alternate on plugs firings.

    Before I go too much further this is in synchronous mode. Sync mode is sync'd to plug firings. This is the most common mode. I have seen a few cals that are always in async mode, but never an f-body cal.

    So for each revolution (V8) there are four plug firings. It takes two revolutions to fire all eight cylinders/plugs. Alternating injectors, that means each injector fires twice on each engine revolution.

    At 4,000 RPM (revolutions per minute), divide by 60 for revolutions per second: 4000 / 60 = 66.67 revolutions per second. Invert this value for the time of each revolution (or frequency thereof): 1 / 66.67 = 0.015 seconds. Or, 15 milli-seconds (msec) per revolution.

    With each injector firing twice each revolution we need to divide the amount of time in half: 15 msec / 2 = 7.5 msec.

    This 7.5 msec is the amount of time an injector has before it is fired again (at 4,000 RPM). The higher the engine speed, the less time there is for an injector to deliver the required amount of fuel.

    This is why it is important to keep an eye on the injector PW. Once the PW value exceeds that given amount of time, no more fuel can be added. The darn injector is on ALL of the time.

    At this point the only thing that can be done is to increase the delivery of fuel. Bigger injectors and/or higher fuel pressure is required.

    As another data point at 6,000 RPM a TBI injector is static once it hits 5.0 msec of on time. For best results TBI injectors shouldn't be open for more then 85% duty cycle. At 6K RPM this is 4.25 msec's.

    RBob.
    1978 Camaro Type LT, 383, Dual TBI, '7427, 4L80E
    1981 Camaro Z-28 Clone, T-Tops, 350/TH350
    1981 Camaro Berlinetta, V-6, 3spd
    1974 Chevy/GMC Truck, '90 TBI 350, '7427, TH350, NP203, 6" lift, 35s

  8. #53
    RIP EagleMark's Avatar
    Join Date
    Feb 2011
    Location
    North Idaho
    Age
    63
    Posts
    10,477
    Like I could do the math for that? Let alone the x BPW * y RPM = then split into percent?

    1990 Chevy Suburban 5.7L Auto ECM 1227747 $42!
    1998 Chevy Silverado 5.7L Vortec 0411 Swap to RoadRunner!
    -= =-

  9. #54
    Super Moderator
    Join Date
    Mar 2011
    Location
    Camden, MI
    Age
    35
    Posts
    3,026
    well, here is how it works with double-fire MPFI:

    (X*y)/600

    X and Y are RPM and BPW.

    and with single fire MPFI:

    (X*y)/1200

    X/Y still RPM and BPW.

    single fire fires the injectors once every 4 stroke cycle(so every other revolution), double fire does once every revolution.
    1995 Chevrolet Monte Carlo LS 3100 + 4T60E


  10. #55
    RIP EagleMark's Avatar
    Join Date
    Feb 2011
    Location
    North Idaho
    Age
    63
    Posts
    10,477
    OK how about another value of DC % and

    X*Y/60000*100

    x base pulse width
    y RPM

    ?

    1990 Chevy Suburban 5.7L Auto ECM 1227747 $42!
    1998 Chevy Silverado 5.7L Vortec 0411 Swap to RoadRunner!
    -= =-

  11. #56
    RIP EagleMark's Avatar
    Join Date
    Feb 2011
    Location
    North Idaho
    Age
    63
    Posts
    10,477
    and does this conversion for BPW do the same thing as the one you made Greg?

    X * 0.015259 + 0.000000

    1990 Chevy Suburban 5.7L Auto ECM 1227747 $42!
    1998 Chevy Silverado 5.7L Vortec 0411 Swap to RoadRunner!
    -= =-

  12. #57
    Fuel Injected! gregs78cam's Avatar
    Join Date
    May 2011
    Location
    N. Idaho
    Posts
    767
    Some more good info, especially the Asynch stuff at the end.....

    http://www.fullsizechevy.com/forum/g...ctor-size.html

    The reference period to calculate duty cycle is the amount of time the injector can physically stay open in relation to its current opening duration. You can run the same pulsewidth on an injector, say 5 msec and the duty cycle will rise with RPM. Increase the pulsewidth and you increase fuel delivery, but fuel delivery also increases with rpm as the duty cycle increases. I will make two specific examples here to use. Keep in mind that TBI injectors fire alternately at each reference pulse, 2x per crank rotation each. There is an injector firing every reference pulse, but the alternate back and forth between left and right. You also want the injectors to run no more than 80-85% DC. With that knowledge we are first going to look at what is happening at 600 rpm, again at 1,800, 3,600, and finally 6,000 rpm. I am assuming an engine with a hot-rod nature and peak torque around 3,600 rpm and a 6K redline. It is easiest to look at it in terms of multiples of 6.

    600rpm/60sec = 10 r.p.s. 1sec = 1000 msec. 10 r.p.s. is 1 revolution every 100 msec. During that 100 msec time period, you have to squeeze in two injector firings. That means there is 50 msec worth of time to fire the injector each time. At the engines normal idle speed/load you will see around 2 msec pulsewidth. At idle you are at roughly 4% duty cycle and 2 msec pulsewidth @ 600 rpm.

    1,800rpm / 60sec = 30 rps (revolutions per second) or 60 fps (firings per second) = 1000/30 = 16.67 msec per firing, max. Your commanded pulsewidth will be around 3 msec at normal load. 3/16.67x100 = 17.99 or about 18% DC for 3 msec @ 1,800rpm

    3,600rpm/60sec = 60 rps or 120 fps. 1000/120= 8.33 msec MAX. Your commanded fuel will likely be around 7 msec around peak torque 7/8.33 = 84% DC for 7 msec @ 3,600 rpm.

    6,000 rpm/60 sec = 100 rps or 200fps 1000/200 = 5 msec MAX. Your pulsewidth will put you very static here, without a strong fuel delivery system. With the TBI firing stategy you either need to run large injectors or go asynch at high load. Asynch mode fires the injectors 85 times per second on BOTH injectors. This allows you to dump in A LOT more fuel from the same injectors. I am going to go ahead and run the math though. You will very likely need 5+ msec of pulsewidth here. Lets say 5.25 msec. 5.25/5 = 1.05*100 = 105% DC. Obviously once you have reached about 85-90% DC your injectors are static. To stay under 85% DC, you need to keep you pulsewidth under 4.25 msec @ 6,000 rpm.

    Now finally here is why to go asynch @ WOT. Your injectors are firing at a fixed 85 hz or 85 times per second which is once every 12.5 msec. If you are firing once per 12.5 msec you are able to run 10.625 msec before you cross 85% DC. You are able to flow ALOT more fuel with one 10.625 msec firing than you are with two 4.25 msec firings totaling 8.5 msec! You are able to flow something around 20% more fuel through the same injectors in asynch mode.

    Last edited by Fast305; 10-20-2008 at 01:04 PM.
    Last edited by gregs78cam; 03-03-2012 at 06:28 AM.
    1978 Camaro Type LT, 383, Dual TBI, '7427, 4L80E
    1981 Camaro Z-28 Clone, T-Tops, 350/TH350
    1981 Camaro Berlinetta, V-6, 3spd
    1974 Chevy/GMC Truck, '90 TBI 350, '7427, TH350, NP203, 6" lift, 35s

  13. #58
    Fuel Injected! gregs78cam's Avatar
    Join Date
    May 2011
    Location
    N. Idaho
    Posts
    767
    Quote Originally Posted by EagleMark View Post
    and does this conversion for BPW do the same thing as the one you made Greg?

    X * 0.015259 + 0.000000
    Yes .. X / 65.536 = X * 0.015259

    If you want to make a gauge for Duty Cycle, look through the one in $0D or $0E and copy that one.
    Last edited by gregs78cam; 03-03-2012 at 06:35 AM.
    1978 Camaro Type LT, 383, Dual TBI, '7427, 4L80E
    1981 Camaro Z-28 Clone, T-Tops, 350/TH350
    1981 Camaro Berlinetta, V-6, 3spd
    1974 Chevy/GMC Truck, '90 TBI 350, '7427, TH350, NP203, 6" lift, 35s

  14. #59
    Administrator
    Join Date
    May 2011
    Location
    Lakes Region, NH
    Age
    54
    Posts
    3,852
    OLDPA3 (decoded: previous pulse accumulator #3) = knock counter.

    and you can always use just the LSB of the spark advance, it's a signed(or is it 2's compliment?) value, so unless you get near firing ATDC often, i wouldn't think its an issue. when bit 7 of the MSB is set, then the SA is displayed in ATDC, with FFFF being 0* or 0.39* ATDC and lower numbers being even further after TDC.

    and yeah, once you have control of the datastream, you'll wonder why GM put in some of the stuff that they did.
    Datamaster for $58 displays timing based on LSB only. It works ok with a Dizzy cal but the DIS conversions require mental math to understand. I've always wished DM didn't shortcut this since the full 16 bit value is xmitted on the datastream.

    PROM ID is for a service tech so prom identification didn't require ecm removal and partial disassembly. Some of you guys never got to experience the days when GM was releasing updates almost as fast as new cars. Any driveablility complaint was first addressed by checking for latest cal and installing if needed. If that didn't fix it, then diagnosis would actually be required.

    What is the range on this BPW supposed to be? Looks like it's hitting 5.1xx IIRC. Is there any math formula to make this percent? Would be easier to read...
    You shouldn't need much math. The ECM records the time between reference pulses in order to calculate RPM. Since synch mode injectors fire 1x per 2 REF pulses, the math is IDC%= IPW / (2 X REFPER). REFPER is available directly from the EST hardware as seen below but must be converted to seconds if IPW is in seconds.
    Code:
    D7FD:            LDX     LBC00              ; DRP COUNT,   ECU HARDWARE
    Unfortunately this is a label not an actual address. The address is probably $BC00 but maybe not. The way to tell is to xmit this address over the ALDL with no translation and compare it to calculated values based on the number of cylinders and the rpm. For an 8 cylinder engine, here are useful values for comparisons.

    Code:
    rpm     counter   counter      time /
            (hex)    (decimal)    pulse
    500        07AE      1966      30ms
    1000       03D7      983      15ms
    1500       028F      655      10ms
    2000       01EC      492       7.5ms
    2500       0189      393       6ms
    3000       0148      328       5ms
    3500       0119      281       4.28ms
    4000       00F6      246       3.75ms
    4500       00DA      218       3.3ms
    5000       00C5      197       3ms
    5500       00B3      179       2.7ms
    To make it really complete, try to make the ADX file monitor the asynch firing bit and switch off the IDC betwwen synch mode and asynch mode calcs appropriately.
    Last edited by 1project2many; 03-03-2012 at 09:02 AM.

  15. #60
    RIP EagleMark's Avatar
    Join Date
    Feb 2011
    Location
    North Idaho
    Age
    63
    Posts
    10,477
    Thanks Project!

    Quote Originally Posted by gregs78cam View Post
    Yes .. X / 65.536 = X * 0.015259

    If you want to make a gauge for Duty Cycle, look through the one in $0D or $0E and copy that one.
    You didn't think I came up with those calculations did you?

    Your the only math skills I have!

    1990 Chevy Suburban 5.7L Auto ECM 1227747 $42!
    1998 Chevy Silverado 5.7L Vortec 0411 Swap to RoadRunner!
    -= =-

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •