well, since the 60V6 OBD1 crowd could benefit, i'll start a thread for my progress and for suggestions as to what could be done or better ways to do it.
objectives of the nAst1 project: using a common as dirt ECM (1227727 in my case) to allow for the $A1 code to be more or less updated to allow it to better interact with engines of all varieties, including everything from low-revving iron dukes to northstars and nearly anything in between. one of my long-term goals is to control the cam phaser found on the 3500/3900 motors and the variable intake valve found on the 3900s, and have it work both consistently and actually allow it's full benefit.
if possible, i'm looking to keep all of this within 1227727/1227730 capability, or at least the earlier revisions of the nAst1 code, though it may be inevitable to use the 16149396 for it's extra RAM, something some of my additions will need. it is possible(IIRC) to add the RAM module from a 9396 to a 7730, but the longer i can keep it unnecessary, the better, since it will alllow more people to benefit.
current progress:
1. the original VE tables in the A1 mask have been completely disabled, in their place, i have 3 VE tables(that have MAP increments of 5kPa from 20-100):
Low VE from 400-2000 RPM in 100 RPM increments
Mid VE from 2000-5200 RPM in 200 RPM increments
High VE from 5200-8400 RPM in 200 RPM increments
(insert pics here)
since VE has always been calculated and stored as a single 8 bit variable, motors that can actually achieve above 100% VE would need to fudge their injector constant a bit, but the original A1 mask required this as well, and i don't feel that the VERY small number of motors that can do this is worth the potentially massive amount of time necessary to rewrite parts of the airflow calculation to deal with a 16-bit value.
2. "VE Modifier when EGR Active vs RPM vs MAP" was an unnecessary table that was completely unused by all 4T60 equipped cars and seemed to be randomly filled for the vehicles that did use it, so it's now gone, freeing up some CPU cycles in the process. "VE Compensation for EGR Active", "Filter for VEEGRFAC" were used for dealing with these tables as well, they're gone now.
3. "EGR Duty Cycle Multiplier vs EGR Duty Cycle" seemed to be unused by any factory calibration, and seems to only apply to the EVRV equipped vehicles anyway, seems to be a remnant of the $88 code that GM never removed. so, it was deleted to shave execution time as well.
4. the pattern for the VE tables? they're also used for the new Main Spark tables. the "Main Spark Advance Table High RPM Breakpoint" and ">4800RPM Advance Added" values are also removed since they're no longer necessary and obviously, the A1 main spark advance table is gone now.
future work:
1. tracking oil pressure via spare A/D channels. i was wanting this since i like the idea of a low oil pressure fuel cutoff to save the motor in situations where oil pressure should drop to whatever level is determined to be unsafe. i'm thinking of an override switch for this as well, in case of a faulty sensor or emergency situations, like for some reason all pressure drops and the fuel cut kicks in while you're stopped on train tracks, etc....
2. high coolant temp fuel cut: same as above, save the motor.
3. fuel pressure... this one i'm not necessarily sold on, but it may be useful for someone else.
4. alcohol sensor for fuel: and possibly using it to modify stoich and PE AFRs on the fly to keep your fuel trims in check without having to manually adjust for it.
5. barometric sensor: using another MAP specifically for barometric use instead of having to rely on the MAP only with sufficient throttle to get an accurate reading.
6. wideband reading, and possibly for closed loop fueling control: reading and displaying the wideband in the ALDL stream is dead simple, however, i'm looking into using it for closed loop fueling, much the same way the code59 team has done. ideally, i'd also have the prop gains eliminated, at least during tuning, afterwards use a rolling average to get an accurate reading of where the engine is running, similar to how the NB O2s are used now.
7. traction control/torque limiter switch: i have quite a bit of thought into this one already, but simplified: the ECM will look at how long it took to go from one vehicle speed to the current speed. if there is too much change(determined by the user), then some spark is removed until the change is within a user-specified range, then advance will "slowly"(ECM version of slow is measured in mSec BTW ) be added back in until either too much change is registered again, or you're back to full advance. potentially useful for bracket racing, but i was more interested in traction on slick surfaces and being able to just floor the throttle and have just the smallest amount of tire spin until the engine no longer makes enough power to overpower the tires.
8. PWM operation of the TCC: mainly for the later 4T60Es, though it MAY or may not work with a non-PWM TCC but i can't recommend it.
9. some type of light/indicators... i have quite a few in mind, though not enough outputs available on a 7727 to do them all... lean cruise, torque limiting, knock retard, high injector duty cycle, cat overtemp, DFCO active.... may just allow for different options in the code and have the end-user select what they feel they like best.
10. MAFs... now, the early 60V6 MPFI codes, $55 and i believe $46, actually used a MAF for fueling, however they were total failbus and crapped out constantly and GM recalled all of those vehicles and converted them to speed-density. i'm looking at modern MAFs(the kind that go to 10,000+ Hz) and possibly running steady-state fueling calcs with the MAF, leaving speed-density for AE/DE only since MAFs tend to fall behind there.
11. valet switch, limiting vehicle/engine speed to something very conservative should a certain switch not be activated or be activated.
12. PRNDL decoding for the OBD1.5 setups: this one is a bit of a thinker, but for the late 4T60E stuff, it can allow for running the trans VERY strictly, and potentially when combined with a switch (either code or physical), full manual control, aka brainless auto, useful for dyno/etc. it could also have a few other uses should they be thought of...
13. brake switch based TCC disconnect: everything that came before the PWM operated 4T60Es had physical brake switches that would open the circuit that activated the TCC when the brake was pressed, however, the later stuff just used a brake switch as a signal, and cut the TCC via software.
14. >6375 RPM shift points, even though they would probably be fairly damaging to whatever trans you have hooked up, no warranty.
15. low oil level sensor/light, brought about due to OBD1.5->OBD1 conversions, i would rather have it since all of the clusters already have the light for it and the sensor exists, so why not.
16. transaxle temp sensor, another OBD1.5 add-in, though it could be used should you add your own sensor...
ok, that's enough for this post... comments/etc are welcome.
objectives of the nAst1 project: using a common as dirt ECM (1227727 in my case) to allow for the $A1 code to be more or less updated to allow it to better interact with engines of all varieties, including everything from low-revving iron dukes to northstars and nearly anything in between. one of my long-term goals is to control the cam phaser found on the 3500/3900 motors and the variable intake valve found on the 3900s, and have it work both consistently and actually allow it's full benefit.
if possible, i'm looking to keep all of this within 1227727/1227730 capability, or at least the earlier revisions of the nAst1 code, though it may be inevitable to use the 16149396 for it's extra RAM, something some of my additions will need. it is possible(IIRC) to add the RAM module from a 9396 to a 7730, but the longer i can keep it unnecessary, the better, since it will alllow more people to benefit.
current progress:
1. the original VE tables in the A1 mask have been completely disabled, in their place, i have 3 VE tables(that have MAP increments of 5kPa from 20-100):
Low VE from 400-2000 RPM in 100 RPM increments
Mid VE from 2000-5200 RPM in 200 RPM increments
High VE from 5200-8400 RPM in 200 RPM increments
(insert pics here)
since VE has always been calculated and stored as a single 8 bit variable, motors that can actually achieve above 100% VE would need to fudge their injector constant a bit, but the original A1 mask required this as well, and i don't feel that the VERY small number of motors that can do this is worth the potentially massive amount of time necessary to rewrite parts of the airflow calculation to deal with a 16-bit value.
2. "VE Modifier when EGR Active vs RPM vs MAP" was an unnecessary table that was completely unused by all 4T60 equipped cars and seemed to be randomly filled for the vehicles that did use it, so it's now gone, freeing up some CPU cycles in the process. "VE Compensation for EGR Active", "Filter for VEEGRFAC" were used for dealing with these tables as well, they're gone now.
3. "EGR Duty Cycle Multiplier vs EGR Duty Cycle" seemed to be unused by any factory calibration, and seems to only apply to the EVRV equipped vehicles anyway, seems to be a remnant of the $88 code that GM never removed. so, it was deleted to shave execution time as well.
4. the pattern for the VE tables? they're also used for the new Main Spark tables. the "Main Spark Advance Table High RPM Breakpoint" and ">4800RPM Advance Added" values are also removed since they're no longer necessary and obviously, the A1 main spark advance table is gone now.
future work:
1. tracking oil pressure via spare A/D channels. i was wanting this since i like the idea of a low oil pressure fuel cutoff to save the motor in situations where oil pressure should drop to whatever level is determined to be unsafe. i'm thinking of an override switch for this as well, in case of a faulty sensor or emergency situations, like for some reason all pressure drops and the fuel cut kicks in while you're stopped on train tracks, etc....
2. high coolant temp fuel cut: same as above, save the motor.
3. fuel pressure... this one i'm not necessarily sold on, but it may be useful for someone else.
4. alcohol sensor for fuel: and possibly using it to modify stoich and PE AFRs on the fly to keep your fuel trims in check without having to manually adjust for it.
5. barometric sensor: using another MAP specifically for barometric use instead of having to rely on the MAP only with sufficient throttle to get an accurate reading.
6. wideband reading, and possibly for closed loop fueling control: reading and displaying the wideband in the ALDL stream is dead simple, however, i'm looking into using it for closed loop fueling, much the same way the code59 team has done. ideally, i'd also have the prop gains eliminated, at least during tuning, afterwards use a rolling average to get an accurate reading of where the engine is running, similar to how the NB O2s are used now.
7. traction control/torque limiter switch: i have quite a bit of thought into this one already, but simplified: the ECM will look at how long it took to go from one vehicle speed to the current speed. if there is too much change(determined by the user), then some spark is removed until the change is within a user-specified range, then advance will "slowly"(ECM version of slow is measured in mSec BTW ) be added back in until either too much change is registered again, or you're back to full advance. potentially useful for bracket racing, but i was more interested in traction on slick surfaces and being able to just floor the throttle and have just the smallest amount of tire spin until the engine no longer makes enough power to overpower the tires.
8. PWM operation of the TCC: mainly for the later 4T60Es, though it MAY or may not work with a non-PWM TCC but i can't recommend it.
9. some type of light/indicators... i have quite a few in mind, though not enough outputs available on a 7727 to do them all... lean cruise, torque limiting, knock retard, high injector duty cycle, cat overtemp, DFCO active.... may just allow for different options in the code and have the end-user select what they feel they like best.
10. MAFs... now, the early 60V6 MPFI codes, $55 and i believe $46, actually used a MAF for fueling, however they were total failbus and crapped out constantly and GM recalled all of those vehicles and converted them to speed-density. i'm looking at modern MAFs(the kind that go to 10,000+ Hz) and possibly running steady-state fueling calcs with the MAF, leaving speed-density for AE/DE only since MAFs tend to fall behind there.
11. valet switch, limiting vehicle/engine speed to something very conservative should a certain switch not be activated or be activated.
12. PRNDL decoding for the OBD1.5 setups: this one is a bit of a thinker, but for the late 4T60E stuff, it can allow for running the trans VERY strictly, and potentially when combined with a switch (either code or physical), full manual control, aka brainless auto, useful for dyno/etc. it could also have a few other uses should they be thought of...
13. brake switch based TCC disconnect: everything that came before the PWM operated 4T60Es had physical brake switches that would open the circuit that activated the TCC when the brake was pressed, however, the later stuff just used a brake switch as a signal, and cut the TCC via software.
14. >6375 RPM shift points, even though they would probably be fairly damaging to whatever trans you have hooked up, no warranty.
15. low oil level sensor/light, brought about due to OBD1.5->OBD1 conversions, i would rather have it since all of the clusters already have the light for it and the sensor exists, so why not.
16. transaxle temp sensor, another OBD1.5 add-in, though it could be used should you add your own sensor...
ok, that's enough for this post... comments/etc are welcome.
Comment