Cadillac Powertrain Control Module (PCM) Tuning Discussion, OBD1 N* BINs in Cadillac Engine Technical Discussion; first, a quick and relevant intro since i'm new here:
recently i've been writing custom code(read: not just calibrating, literally ...
first, a quick and relevant intro since i'm new here:
recently i've been writing custom code(read: not just calibrating, literally wiritng code for the MCU to execute) for the 91-94 60V6 mask $A1, adding stuff the factory likely didn't care about at the time, was deemed unnecessary or hadn't been thought of yet, stuff like VE and spark control from 400-8400 RPM, VVT solenoid control, bypassing narrowband O2 stuff completely and adjusting fuel on only the 5V signal a wideband controller outputs, MAF fueling, a whole bunch of neat stuff.
now, i've gotten ahold of the engine half of a 95 Aurora BIN, but with that alone i can't do much though i was able to quickly identify the lower and upper VE tables, and 3 sets of upper and lower main spark tables. now what i need is more BINs, specifically the pair from each MEMCAL for the 93-95 Northstars that is still around.
now, i have no Cadillac yet, though i am a VERY big fan of the 94-95 ETC's and STS's (not so much the 93 due to the odd steering wheel). however, i am a VERY big fan of the Northstar engine, i've been considering a side project with installing one into a 95 Monte Carlo, and though it's been done at least once before, it was never quite correct due to a few factors, some of which involve the lack of support for the 93-95 N* PCM.
and yes, i'm sure some of you have heard this kind of story before, only to have the person suggesting it disappear or otherwise screw you over. let me assure you, i have a well established reputation on a few automotive forums, including, but not limited to, W-Body.com, 60degreeV6.com, TunerPro.net(i'm actually a mod there), thirdgen.org, and fairly recently i've gotten involved with GMforum.com.
why do i state all this? well, i kinda like to hear myself talk..... err, type. i also invite you to see that i'm not going to just disappear into nothing after getting what i want, as i've been an active member of most of those forums since ~2007.
and here's the kicker: i like to make all of my projects open-source, so the more help i can get, the more i'll be able to do for the crowd that wants to be able to tune their OBD1 cars.
a month and a half has passed, and not a single reply.... perhaps i am asking the wrong questions?
i am trying to help this community by opening up a real tuning option(FREE at that) for the 93-95 4.0 and 4.6 cars, but i need some files to disassemble to do so, specifically, the BINs contained in the MEMCAL of the PCM. the more BINs i can get ahold of, the better, since i do have access to some information from GM stating what some of the changes were in the calibrations they released.
now, if there is anybody out there with a PROM burner(or maybe a tech oriented friend), i'd appreciate it if you could read both 64KB BINs of off the MEMCAL and either email them to me or post them somewhere. if i weren't such a newb here, and the fact that none of you can vouch for me, i'd even offer to pay for MEMCALs to be shipped to me, read off the BINs, and ship them back, but for all you know, i'm the world's greatest con artist.... or the worst.
so, is anybody even at least interested in what i'm attempting to do? or am i going to have to raid some junkyards hoping for some good MEMCALs?
okay, on my first pass through the BKFX(94 Seville/Eldorado with LD8) B side BIN AJ sent me, i identified 298 2D and 3D tables(and i know i missed some as well).... AFAIK, the B side is largely trans control and honestly i expected a few less tables based on other late OBD1 calibrations that use a similar transmission control scheme...
what i'm thinking i will do is to go through the A side of a BMRY (95 Aurora with 3.71 FDR), identify all of the tables i can, then setup a barebones XDF for tunerpro for both the A and B sides(i'm assuming the masks are the same between years and applications, and would need more BINs to verify this 100%), release them(somewhere), and then go through the BINs again with my disassembler, try and locate and label all of the flags correctly, release that, then go through and locate all of the constants i can decipher(basically anything left in the calibration area that isn't a table or flag), then release those XDFs.
at that point, the long process of determining what exactly all of the items do would be next....
i'm not looking to profit from what i'm doing, and i certainly couldn't stop anyone from profiting from my work either, but i'm interested and investing my time for 2 reasons:
1. for swapping into vehicles that don't use the N* PCM, since you'll be far ahead of the game if you can copy known good VE, spark, trans tables from a N* calibration into whatever you want to run it on. i made 8400 RPM VE and spark tables and integrated them into a custom mask specifically due to high revving engines like these.
2. supposedly, this is the THE PCM to hack... i'm not having much trouble with it ATM, but i know it's unlikely that i will understand it as well as i do other common ECM/PCMs.
any files you can contribute will certainly help. i currently have the full BKFX calibration thanks to AJ, and the engine portion of the BMRY. the good news is the masks appear to be the same, even though the algorithm is different.
the initial tables only XDF for the engine side is more or less finished, but there's one hold-up from me releasing it: the N* BINs use a strange checksum routine compared to other masks, they sum up from h800 to h2E00, keep the value in memory, then start adding to that value from h4000 to hFFFF, then subtracts the values found from h8000-h8007. then that value is finally compared to the one stored at 8006-8007. if it matches, all is well and the PCM goes about it's business. if it doesn't match, bad voodoo.
but the problem here is that tunerpro doesn't natively support being able to deal with that type of checksum, so what i need to do is write a checksum plugin for TP to get it to do so without having to calculate it in other methods.
so that's the hold up, just thought anyone interested should know. i have to go relearn C++ to get the plugin done, so it may take a while unless there are other options available in the meantime.
another update: looks like 93, 94 and 95 4.6 motors all have different algorithms for some reason, which means there is a very good chance that none of them would use the same mask area either..... the 95 4.0 stuff is slightly different compared to the 95 4.6 as well...