Results 1 to 15 of 81

Thread: Stand alone tranmission controller

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Fuel Injected!
    Join Date
    Oct 2013
    Posts
    1,022
    It sounds like an interesting project. If you can make it work, using a MAP sensor instead of a TPS sensor could be handy since that would be easier to install.

    If you expect much commercial success then you'll need to have it fairly adjustable. You pretty much need to have the ability to alter each shift curve.

  2. #2
    Fuel Injected!
    Join Date
    Sep 2013
    Location
    Tulsa, Ok
    Age
    48
    Posts
    457
    Steveo, Im not building an "ecm" Im building a tcm lol :) but I hear what youre saying. I may bug you on how to integrate the tunperpro xdf since I have no exp with that.
    If it don't fit force it, if it don't force fit f&%@ it!

  3. #3
    LT1 specialist steveo's Avatar
    Join Date
    Aug 2013
    Posts
    4,055
    if the language would allow (never used this compiler) an easy way to (usually) ensure something ends up as a constant in the data section with a pointer to it (instead of inline with the code), putting it as a pointer to a constant in global space is usually what you want:

    Code:
    char *lockup_min_spd = 0x05;
    
    void function() {
      if(lockup_min_spd >= current_spd) /* do whatever */
    };
    of course the compiler will put it wherever the hell it wants in the binary, but locating it in the binary is easy after, just compile two versions, one 0x05 and one 0x06 and see what changes. then throw the location and any conversion in the xdf, and you're good to go.

    what you're trying to avoid by doing this, is the compiler going "oh! it'll be faster if we just replicate the data in this case" (or worse, using a #define, that pretty much forces it to replicate when used). that would mean you'd have to have two or more constants in your XDF that do the same thing, which would be dumb.

    many compilers will screw you over and optimize it out sometimes if you put it in local function scope, or do all sorts of trickery or optimizations on the value..

  4. #4
    Fuel Injected!
    Join Date
    Sep 2013
    Location
    Tulsa, Ok
    Age
    48
    Posts
    457
    Quote Originally Posted by steveo View Post
    if the language would allow (never used this compiler) an easy way to (usually) ensure something ends up as a constant in the data section with a pointer to it (instead of inline with the code), putting it as a pointer to a constant in global space is usually what you want:

    Code:
    char *lockup_min_spd = 0x05;
    
    void function() {
      if(lockup_min_spd >= current_spd) /* do whatever */
    };
    of course the compiler will put it wherever the hell it wants in the binary, but locating it in the binary is easy after, just compile two versions, one 0x05 and one 0x06 and see what changes. then throw the location and any conversion in the xdf, and you're good to go.

    what you're trying to avoid by doing this, is the compiler going "oh! it'll be faster if we just replicate the data in this case" (or worse, using a #define, that pretty much forces it to replicate when used). that would mean you'd have to have two or more constants in your XDF that do the same thing, which would be dumb.

    many compilers will screw you over and optimize it out sometimes if you put it in local function scope, or do all sorts of trickery or optimizations on the value..

    Thanks for the input Steveo. I have the constants global so any part of the code can use those variables. With only basic inputs(more are in the code for different gear selections, manual/auto mode, etc) like tps/map and vss it seems easier that way. I have to admit its been 20+ years since ive written much code(BASIC) until this project. The code is a bit "clunky" but at 16mips its more than adequate for this project. As of now its a basic shift box that reads 2 inputs and has 4 outputs. Ill have to sit i front of the laptop this weekend and figure out how to make an xdf and linking it to the controller.

    Buddrow
    If it don't fit force it, if it don't force fit f&%@ it!

  5. #5
    Fuel Injected!
    Join Date
    Sep 2013
    Location
    Tulsa, Ok
    Age
    48
    Posts
    457
    UPDATE:
    Project is moving right along. Code is nearing completion and hardware testing is coming in the next week or two.
    Looking for a tester or two if anyone is interested pm me.
    If it don't fit force it, if it don't force fit f&%@ it!

  6. #6
    Fuel Injected! mytmouz's Avatar
    Join Date
    Apr 2013
    Posts
    62
    I am following this. I have a 4L80 I am putting in yet another v8 Chevy LUV, but I am a ways away from finishing it up...

  7. #7
    Fuel Injected!
    Join Date
    Sep 2013
    Location
    Tulsa, Ok
    Age
    48
    Posts
    457
    The controller will oprate the 4L80 as well as the 4L60E. I will continue to update as progress comes so check back at least weekly. ;) would love some picks of another v8 luv ;)
    If it don't fit force it, if it don't force fit f&%@ it!

Similar Threads

  1. Replies: 26
    Last Post: 01-30-2014, 12:02 AM
  2. 2014 Corvette E92 Controller tuning started!
    By EagleMark in forum OBDII Tuning
    Replies: 4
    Last Post: 11-10-2013, 10:46 PM

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
  •