Jump to content

Roland@pcmtec

PCMTec Staff
  • Posts

    2,341
  • Joined

  • Last visited

  • Days Won

    468

Posts posted by Roland@pcmtec

  1. Flex fuel parameter files.zip

    Attached is a set of parameter files which include the default Ford OEM FFV tables and scalars. Simply untick "values" and press load/append on the base alt tune.

    image.png.da0ad031f8ad92e1b63c786fcb3d3b61.png

    You will then see many tables and scalars added

    image.png.04927f87ef867562bdfb0512f55fcd66.png

    You will find that you can simplify your flex fuel logic dramatically by removing many of these and only adding the required tables.

    Once you have completed building your flex logic in the wizard you will see new copies of the tables located here. These will be active in all tunes unless you have specified the same table/scalar in a tune slot. The PCM will then interpolate between the values in Base Fuel and High Fuel Tune 1 depending on ethanol content.

    image.png.6eac6d4b54d23815c8496b35ad8d4839.png

    Note:

    We have included an example 18 GT parameter file with the fueling tables used for cold start (please do not import the actual values as they will likely not be suitable for your vehicle), you can then add tables to add spark eg spark modifiers or simply use the cylinder pressure limit tables. Eg if the car is primarily going to be run on E85 you may be happy to simply use E85 torque and MBT tables and cap the spark via the max cylinder pressure spark limit. If you are going to be using various blends between E40-E70 you would likely want to add torque and MBT modifiers so that you get the maximum power without any torque errors at partial ethanol blends.

     

    e85 cold start parameters.xml

    • Like 1
  2.  

    image.png.8cf8163b872b1fd94d565cdcb9371ae9.png

    PCMTec Global CustomOS
    FlexFuel Select Reference Guide

    For CAN-Bus Connected Flex Fuel Sensor and CustomOS Configuration

    The guide contains the BOM and installation reference guide for the PCMTEC CANBus Flex Fuel System. To obtain access to the guide please contact support with your vehicle information https://support.pcmtec.com

    This guide is written for a RHD 18+ Gen 3 Mustang, however the general installation on Gen 2, LHD/RHD, Explorer, Focus, Maverick etc is the same. You will simply need to find an appropriate location to install the sensor.

    You also do not have to use a OBD sandwitch plate and could simply wire directly into the HS1 CANBus network, we recommend utilizing a fuse tap at a minimum to easily disable the ECA2 if you hard wire directly into the CAN network. 2022+ vehicles with an SDLC will need to wire in behind the SDLC directly to the HS1 CANBus network.

    We recommend utilising a fuel bypass for all return style fuel systems to ensure no flow restriction or interference with the fuel pressure regulation. On a return style system for lower power applications a bypass is not required but still recommended.

    Example of a fuel bypass for the flex fuel sensor.

    image.png.4e8eb91bf19e2da053493cf66b998e56.png

    Example of a pre-wired kit for a RHD vehicle.

    image.thumb.png.322a4eb3208ab13a339acba2c8eafffc.png

    Example of a fuse tap installed to ensure the ECA2 only draws power when the vehicle accessories are on.

    image.png.bbd565c4f3b10c1f9676ad7b3ff8e4ce.png

    Example location of installation on the strut tower.

    image.thumb.png.ecc4efb787a61d38fd2dfa9d75894816.png

     

    Video guide of how to use the Custom OS Wizard to build your own custom flex fuel logic.

     

    Setup Notes:

    There is delay/lag logic to lag the canbus ethanol signal to allow purging of the fuel lines post filter. Under CustomOS in the datalogger you will see ethanol raw and ethanol. If the engine is not running you will only see ethanol raw update. Once you start the engine it will slowly increase the ethanol to the measured value over approximately 5 minutes with the default filter.

    If you wish to remove this filter (eg you have a return style fuel system) you can increase this value up to 1.0 (no filtering).
    ID    Name    Value
    auF100050    Flex Fuel High Pass Filter    0.005

    However if you have a returnless system we recommend that you leave the lagged signal enabled and simply run the engine, this will ensure that spark is not added until the fuel lines/direct injection pump have been fully purged. The STFT will ensure that any fueling error is taken care of during this period. We found when testing on an 18 GT (with stock fuel system and DI) it takes approximately 10 minutes to purge the lines at idle, when driving it is purged within less than 1-2 minutes. We recommend that the first 10 minutes after a refill you do not drive WOT.

    Note that the lag only occurs when the ethanol signal is increasing, when decreasing it drops back instantly to ensure that ignition timing is dropped to the 93 level immediately.

    Alternatively you can simply unplug the canbus sensor (putting it into an error state) and manually set the ethanol content via the cruise control buttons using the following logic:

    • Engine off
    • Cruise control On
    • Cancel (tune select)
    • Cancel (ethanol select)
    • +/- to select ethanol on the speedo.

    You can do this if you know the lines have already been purged. Then plug the sensor back in, this will manually disable the lagging of the sensor for that fill.

    PCMTEC Flex Fuel Logic vs OEM

    You can also piggy back off the OEM flex logic if you already have an OEM inferred flex fuel tune you want to use as a base. Note that we have not exclusively tested this method and recommend utilising the wizard to build your own custom logic with only the tables you require as this methodology has been tested on 100s of vehicles successfully.

     

    • Like 1
  3. Kind of off topic but you might find it interesting regarding leaving E85 sitting in your tank for long periods of time.

    For fun (not really, I was lazy) I left E85 in a tank for 6 months. The E content increased from E85 to E87 over that time which indicates how much was was absorbed. You could work it out exactly (assuming the water dissolved into the fuel which it should below 20% water content).

    You can do this via the dielectric constant (how a flex sensor works)

    Dielectric constant of water = 80

    Dielectric constant of E100 = 25.3

    Dielectric constant of E0 (gasoline) = 2

    Dielectric constant of E85 = 0.85*25.3 + 0.15*2 = 21.805

    Dielectric constant of E87 = 0.87*25.3 + 0.13*2= 22.271

    Assuming 1% of the "E87" was water you get
     =((0.85-(0.01/2))*25.3)+(((0.15-(0.01/2)*2)+(0.01*80))) = 22.3185

    I think this maths is correct. Anyway you can see that a small amount of water can substantially change the E content reading

    Lets say you somehow absorbed 6% water, you get a DI of 25.636 which is above E100 and would clip the sensor and read E100

    This is all at a temperature of 20°C

     

    • Like 2
  4. For those of you utilising our canbus or user flex fuel configuration. It appears you can use a hybrid of our custom logic and the Ford OEM logic.

    NOTE: This is yet to be tested by PCMTEC, however if it works it means you could use the OEM flex logic with our canbus/user flex fuel as the input to the ethanol content. This would mean no learning is required and you set and forget the ethanol content.

    You must also leave auF35397 "Calibration for Flag for Flex fuel system" disabled. Otherwise it would fight with our custom logic and cause weird things to happen. The FMT Custom OS Wizard will warn you if this flag is left enabled.

    First step is to calibrate auF29291 which is an AFR to PM % lookup. This will then cause PM percentage methanol (really ethanol but Ford like to call it Methanol)

    From a datalog this shows even with FFV (OEM flex fuel logic) disabled it still calculates the PM ratio.

    Note in an F150 where this table is calibrated they use values of 0-1 where 1.0 is 100% ethanol, therefore we would expect the the Mustang should work the same way. If you do not calibrate any of the other tables however, putting 9:100 in the first row may work, but your ethanol % will be completely wrong likely clipped at 1.0 (100% ethanol)

    image.png.c233413e6b127f05c511687ef70cabf2.png

     

    From my brief reading of the code it appears that this means tables like the following could be used.

    auF31238 Load Limit for ethanol (eg if you didn't have sufficient fuel supply for E85 at WOT).

    This table does not appear to exist in the F150s, but it does exist in the Mustangs interestingly.

    image.png.4665e45a499993cca0392a8377855a00.png

    Torque multiplier

    image.png.e385e5aca5dce56ff331c37fcd6f90f4.png

    This is not tested however I am very confident that even the FFV tables for spark multipliers will be used.

    image.png.b7159a898fb8733aa29507faaba663eb.png

    • Like 1
  5. Question: How is open loop (eg WOT) fueling calculated for Gen 2/3 5.0s.

    Note: Open loop values are used as as feed forward to the closed loop fuel value (eg where STFT is applied using the wideband to achieve the requested target. So you can ignore the fact everything says "open loop" when in fact it will be operating in closed loop except for various conditions such as being too cold for the wideband to function.

    Note: The answer is similar for ecoboost vehicles, however with many extra protections put into place that are not taken into account into this guide.

    Note: This is a work in progress and has been deciphered from reading assembly code, this guide should be taken with a grain of salt and everything tested on a dyno to ensure it works as described.

     

    Short Answer for 15-17 (Gen 2)

    auF31663 The WOT open loop fuel table to temperature compensation to avoid cold misfire - This determines the open loop feed forward commanded lambda value when the engine is warm and there are no other limits or features preventing it from running in normal conditions

    auF29139 Base Open Loop desired exhaust lambse fuel table - This is used when cold. Ensure this is calibrated at high loads.

    Long Answer for 15-17:

    Note this is a simplified answer without the flex logic or OPSS logic switch (disabled in all Mustang cals I've looked at) taken into account.

    auF0156 Open Loop Delay - The time delay specified this table (set to 0 in most vehicles) is first waited to expire. before this expires

    image.png.f0cb270d78f235ef08f3e65cfc9c88f0.png

    Before this timer expires the vehicle is in "minimum enrichment mode" which can be determined via datalogging "MID71841" Power Demand Min Enrichment flag; while waiting for the delay to expire. It will be set to 1 if in this mode.

    When in "minimum enrichment mode" the commanded lambda will be determined by the following calculation

    auF31663 The WOT open loop fuel table to temperature compensation to avoid cold misfire

    image.png.9d1370249ed42fdeb69d3f85dfc264f0.png

    auF31661 The WOT open loop fuel table. This is not used in the 15-17 unless the "minimum enrichment delay is set above 0. If it is the calculation is as follows.

    MID55410 = Desired LAMBSE for performance (Power Demand - LBT)

    LAMBDA (MID55410) = MAX(auF31663, auF31661) Eg it takes the maximum of the misfire limit and the WOT open loop fuel table. Ensure that you configure both tables at WOT to be the same to ensure when cold the engine does not run lean at WOT. Note: Typically in a 15-17 auF31661 will not be used and this will not be an issue.

    auF31664 is the FFV OEM Ford flex fuel equivalent of this table.

    When the engine is "cold" it will use the following table auF29139 Base Open Loop desired exhaust lambse fuel table

    image.png.4c2ed132b5b973fdb18330e13b002649.png

    The engine is considered cold before ECT has reached the temperature upon which auF29139 == 1.0 at the lowest load. Eg 50°F according to this calibration FR3A-14C204-CNF as this is when the wideband is considered usable for closed loop operation.

    Eg when MID63525 "Engine is too cold to run closed loop stoich." is set to 1.

     

    Short  Answer for 18+ (Gen3+)

    auF63644 Desired Lambse during power demand (lookup based on ECT,RPM)- This determines the open loop feed forward commanded lambda value when the engine is warm and there are no other limits or features preventing it from running in normal conditions. IMPORTANT NOTE for up to 4 seconds the value will be used from auF37057. Recommend calibrating auf37080 to 0 like the 15-17 for big PD blower cars which make big boost down low. Especially as this only kicks in at gears 7+ you might notice it unless you are on the autobahn.

    auF63635 Base Open Loop desired exhaust lambse fuel table - This is used when cold, ensure this is calibrated for high loads.

    Long Answer for 18+:

    Min enrichment delay phase:

    Where the 18+ differs from the 15-17 is it does indeed utilise the "MID71841" Power Demand Min Enrichment flag

    By default this is 4 seconds at low rpm. This could cause trouble on PD blower cars.

    image.png.1750ad99da28e29691d0ec64a3892566.png

    By default for these 4 seconds it will use the following table. This may catch you out, be sure to calibrate it or remove the delay timer.

    auF37057  Desired Lambse during power demand (lookup based on Engine Speed, MID113340),while waiting for delaytmr(auF0156) to expire

    image.png.141d9f28ad196af97b7677847d445fb6.png

    Like the 15-17 when in "MID71841 Power Demand Min Enrichment" for this 4 second window the lambda is calculated as follows:

    LAMBDA (MID55410) = MAX(auF63644, auF37057)

    Ensure that you configure both tables (auF6344, auF37057_ at WOT to be the same to ensure when cold the engine does not run lean at WOT when in this 4 second window OR set the delay phase (auF37080) to be zero like the 15-17.

    Normal open loop control outside of min enrichment delay phase

    When outside of this min enrichment delay the following table is used. This the most important table to calibrate.

    auF63644

    image.png.5be086b614e3882e92923072105745d7.png

    auF63645 is the FFV equivalent if you use the built in OEM flex system.

    When the engine is "cold" it will use the following table auF63635 "The base open loop fuel table" which is 50°F

    image.png.431f52abd7359293822e0cb0e5afe7c3.png

    The engine is considered cold before ECT has reached the temperature upon which auF63635 == 1.0 at the lowest load. Eg 50°F according to this calibration KR3A-14C204-BKE (same as 15-17) as this is when the wideband is considered usable for closed loop operation.

    Eg when MID63525 "Engine is too cold to run closed loop stoich." is set to 1.

    Note: This is a work in progress and has identified some descriptions which will be updated as a result

     

    • Like 1
  6. 15 hours ago, BeerTurbo said:

    i actually put it on the list for tomorrow. so now its adjust handbrake and drink beer. big list.

    i also just reading the old bf launch control thread and realized i never touched auF2233 , so ill try that tomorrow too.

    auF2233 will induce more spark retard, however it will induce it for ALL torque reductions, this is not likely desirable for a ZF as all your shifts will be truncated with more spark.

    If you've bought our training guide its covered in there. Look at these tables here. ZF00505. This is the maximum torque whilst in gear.

    image.png.94f22bd3ee4f95a8a5b7d71bed8d826c.png

    Log these and you'll see what torque you are making and what the torque delta is, from there you'll be able to figure out the torque ratio (eg torque produced, vs max requested) and that will tell you why you are getting -15 spark.

    image.thumb.png.4f7a21b1fb8fd4dcf3c58a99a9215a7e.png

     

    I can also recommend using the multi tune and simply putting -30 deg in the launch tune with a spark hole where your converter locks up, that works great for anti lag off the line. Check out the video here and have a read of this thread.

     

  7. 3 hours ago, hjtrbo said:

    Wasn't looking. 🤷

    I thought you meant sponsorship regarding coding!

    Yes we do some sponsorship, we find it works best with influencers or end users, simply paying them for videos of their testimonials etc. Eg something they have already created and believe. Our recent batch of training videos was done by an end user under an agreement like this.

  8. 13 hours ago, Mrdriftstar said:

    Hey guys ive got custom os are you guys leaving the vct at stock or modifying them aswell.

    or can ya get away with just negative spark with lambda modification cheers guys 

    Trial and error is the best approach. You can add overlap at redline if you want however you risk a backfire through the intake with severely retarded ignition timing. 

    • Like 1
    • Thanks 1
  9. 4 hours ago, Mick said:

    Hi Rolls

    I've read through it again and unless I'm missing it, there is really nothing there that indicates where the source originates from.

    Is it possible for me to change my tune file strategy to a different one without more credits (adding my VIN to the new one) to find a strategy that does not do it and then do a compare the two to see what is different, to find a possible scaler/table etc?

    You can compare files without licensing them. Licensing is locked to OSID not VIN.

    The scalars that put into max power mode at the two described in the ghost cam article

    https://support.pcmtec.com/kb/article/23-howto-ghost-cam-and-vct-simplification/

    To force the camshaft to use the main maps at all times simply set these scalars out of range to -1000 rpm.

    These define "closed throttle mode" eg 

    auF1079 (VCT Closed throttle disable RPM) set to -1000

    auF1035 VCT Closed throttle enable RPM) set to -1000

    part throttle mode is defined via tables such as auF16501 and if you are in cruise control/traction control etc.

    The rest of the time its in maximum power mode.

    Maximum power mode is the simplest to tune, as you only have the main 3d tables to modify. The way it is running now is easier to configure, the other tables are confusing as there is 6 or 7 of them that are all added together with various limits on overlap etc that clip intake angle.

     

  10. Check out the ghost cam thread, it discusses the scalars which allow it to go into max power mode which is essentially the main cam timing table. The other modes use various 1d tables based on coolant and oil temp. 

×
×
  • Create New...