follow ft86club on our blog, twitter or facebook.
FT86CLUB
Ft86Club
Delicious Tuning
Register Garage Members List Calendar Search Today's Posts Mark Forums Read

Go Back   Toyota GR86, 86, FR-S and Subaru BRZ Forum & Owners Community - FT86CLUB > Technical Topics > Engine Swaps

Engine Swaps Discussion of engine swaps.


User Tag List

Reply
 
Thread Tools Search this Thread
Old 06-26-2015, 06:21 PM   #1
Spartarus
...Just add nauseum
 
Spartarus's Avatar
 
Join Date: Jan 2015
Drives: 2003 (AP1) S2000
Location: Miami, FL
Posts: 545
Thanks: 310
Thanked 784 Times in 335 Posts
Mentioned: 19 Post(s)
Tagged: 1 Thread(s)
CAN BUS - for DIY swappers, HELP! Engineers / shops welcome

EDIT: I WILL NOT HAVE THIS THREAD TURN INTO YET ANOTHER ARGUMENT ABOUT SWAP COST OR BUDGET. START THAT ELSEWHERE. BETTER YET, MAKE YOUR OWN PRODUCTIVE, REALISTIC, HELPFUL THREAD ABOUT BUDGET. TOO MANY SWAP THREADS MAYE BEEN HIJACKED LURK, CONTRIBUTE, OR GET OUT

EDIT: This thread is a rushed mess right now, I typed it on the way out the door. Plans to clean it up and add appropriate content.
Hi everyone,

It is common knowledge that the ft86 has a CAN BUS to control various systems. There is no comprehensive documentation on the forums regarding the CAN BUS. It is the single biggest obstacle to getting any engine swap working correctly. I hope to create a resource here for people who want to do DIY engine swaps, but can't seem to get over the CAN BUS hurdle. I don't think that should be a $6000+ hurdle. I also don't think that a do-it-all-yourself engine swap should be a $25000 affair. They never have been before.

People who have swaps complete with all systems working are encouraged add information on this topic.

Overview:
A controller area network (CAN bus) is a multi-master serial bus designed to allow microcontrollers and devices to communicate with each other in applications without a host computer. It is a message-based protocol; Units [ECUs] on the network are known as nodes. The node may also be a gateway allowing a standard computer to communicate over a USB or Ethernet port to the devices on a CAN network. The DLC3 (D10) node in the Toyobaru is the OBD port, and is an example of such a node. All nodes are connected to each other through a two wire bus. (CANH and CANL)

CAN data transmission uses a lossless bit-wise arbitration method of contention resolution. This arbitration method requires all nodes on the CAN network to be synchronized to sample every bit on the CAN network at the same time. Each transmission on a modern CAN BUS network begins with an 11-bit identifier.

The CAN specifications use the terms "dominant" bits and "recessive" bits where dominant is a logical 0 (actively driven to a voltage by the transmitter) and recessive is a logical 1 (passively returned to a voltage by a resistor). The idle state is represented by the recessive level (Logical 1). If one node transmits a dominant bit and another node transmits a recessive bit then there is a collision and the dominant bit "wins". This means there is no delay to the higher-priority message, and the node transmitting the lower priority message automatically attempts to re-transmit six bit clocks after the end of the dominant message.

Tl-Dr - All the CAN devices talk onto an open network like people on a radio channel, and they only grab the specific signals they want to listen to. The network is not dependent on a central hub, so any system can be pulled off the network without destroying it. The only downside is the devices listening for certain signals will stop receiving those signals and hence stop working.

Confirmed Swaps:
Vorshlag: GM ECM -> Factory ECM -> CAN BUS, LS-Series engine
Manji: Motec M150, 1UZ-FE VVTi
I want a longer list here! I know there's working examples of other Subaru engines and a few Toyota 2jz's at the very least

I'm personally working on a 1uz swap while I fiddle around with this little FA20 4-banger and wait for my turbo to blow it up. There's great documentation out there on getting it running on a standalone ECU. As much as I'd like a $6K ecu solution that'll make my F****** coffee for me, I'd rather not almost double the cost of the swap with the ecu and wiring alone. Motec, then, is off the table for most people.

Many other aftermarket standalone wire-in ECU's have CAN outputs.
LiNK (some models)
MegaSquirt (some models) - has been used to drive OEM CAN gauges with modifications to source code. Porsche 996tt
AEM (some models)
Hydra EMS (confirmed working, on the market with support for FA20 on this platform - looking into capabilities for swaps)

Why can't these be used? I hope this thread will help us figure out what CAN signals the ECM sends and receives, and how to replicate those with an aftermarket standalone ECU.

Attached is an accurate wiring diagram of the FR-S / BRZ CAN BUS. I slapped it together from a few pages of the service manual. The D43 junction connector is just a simple wiring junction near the firewall, and need not be F***ed with. With a suitable CAN capable ECU, only 2 wires (pins 19 and 18) from the factory ECM need to be plugged into the aftermarket ECM to retain full CAN BUS functionality.

Next post will list the CAN BUS signals required from the ECM, by system, and the signals required by the ECM, from each system. I have a partial list, I'll post tomorrow. Updated as people chime in. Following post will also include guidance on DIY CAN-BUS setup.

The ECM, labeled MOTOR (A33 in the manual) is the engine ECU. This is the ECU everybody will change out in a swap

I'd REALLY like to hear from some EcuTeK tuners on this topic, as they have documented use of the CAN controls for map switching, LC, etc. using cruise control switches and rear window heat switches, and using the Tachometer as a selected map display. at least one of which is not connected directly to the ECM, and required CAN sorcery
Attached Images
   

Last edited by Spartarus; 07-01-2015 at 05:40 PM. Reason: Continuous updating
Spartarus is offline   Reply With Quote
The Following 14 Users Say Thank You to Spartarus For This Useful Post:
200hp/tonne (03-29-2016), @Art_Mighty (11-21-2016), Calum (06-26-2015), civicdrivr (07-10-2015), flippy (02-23-2016), FRSToyota86 (06-29-2015), FutureFT86 (08-13-2016), JS + BRZ (07-23-2015), Sarlacc (03-06-2016), Sportsguy83 (07-29-2016), VAcuban (06-16-2017), Valentino (06-28-2015), whataboutbob (03-14-2016), WillRacer1jz (03-14-2016)
Old 06-26-2015, 06:21 PM   #2
Spartarus
...Just add nauseum
 
Spartarus's Avatar
 
Join Date: Jan 2015
Drives: 2003 (AP1) S2000
Location: Miami, FL
Posts: 545
Thanks: 310
Thanked 784 Times in 335 Posts
Mentioned: 19 Post(s)
Tagged: 1 Thread(s)
Partial list - I'll throw it up now and fix it later

According the the wiring diagrams,

-Gauge cluster receives the following signals via CAN from the ECM - crankshaft position (tach) and ECT.

-The VSC / ABS ECU receives a crankshaft position sensor signal and a signal from the throttle body sensor.

-The CAN network signals can be monitored via the OBDII port on pins 6 and 14 as shown in the wiring diagram above. This can / will be useful in reverse - engineering the system

Data needed:

OEM CAN baud rate (assumed 500k for now)
OEM CAN ID length (assumed 11-bit standard, but could be 29 [unlikely]) 11 bit confirmed.
ECM Broadcast interval (milliseconds) (assumed 250 for now)
VSC / ABS traction control signals from VSC ECU. (ignition cut? fuel cut? throttle cut?) IMPORTANT! Please cite source and include specific data if able.
CAN ID's for each transmission

Last edited by Spartarus; 03-29-2016 at 11:21 AM.
Spartarus is offline   Reply With Quote
The Following User Says Thank You to Spartarus For This Useful Post:
Sportsguy83 (07-29-2016)
Old 06-27-2015, 08:37 AM   #3
Calum
That Guy
 
Join Date: Dec 2011
Drives: 2013 asphalt FRS MT
Location: Halifax, Nova Scotia
Posts: 4,865
Thanks: 5,058
Thanked 2,867 Times in 1,499 Posts
Mentioned: 82 Post(s)
Tagged: 1 Thread(s)
It's amazing how versitile CAN BUS is. We actually have a couple pieces of equipment that use it in the Navy.

I wish I had something to contribute to this, but I can say I'm very curious about this topic.

Do you know if, for example, crank shaft position, would be the same word on the FA20 ECU's bus as on the LSx ECU's bus? What about IP's for the various inputs and outputs? Is there an industry standard for these, or are those details left to the OE?

A little off topic, but have you ever used a CAN BUS to USB converter? (An industrial one that doesn't plug into the OBD2 port but just has terminals for wires.) Do you know if one would work to talk with an android OBD2 app, or could an industrial one require a different protocol?
Calum is offline   Reply With Quote
Old 06-27-2015, 10:38 AM   #4
mkivalex
Senior Member
 
Join Date: Oct 2011
Drives: 13 Scion FRS, 93 JDM Toyota Supra
Location: Ontario
Posts: 329
Thanks: 5
Thanked 113 Times in 67 Posts
Mentioned: 6 Post(s)
Tagged: 0 Thread(s)
Hmmm.... I really should take some time looking at the CANBuS on the FRS. At work I'm in the mobile hydraulics industry and I program trucks to work with electronic hydraulic applications using Parker IQAN software using canbus Signals. I will revisit this thread after I do some further reading. I almost wonder if one of the modules I use could be used between the devices and the ECM to convert all required signals.
mkivalex is offline   Reply With Quote
Old 06-27-2015, 11:13 AM   #5
Cuchullain
Member
 
Cuchullain's Avatar
 
Join Date: Aug 2013
Drives: 2013 GBS Subaru BRZ Limited
Location: Philadelphia PA
Posts: 69
Thanks: 7
Thanked 31 Times in 16 Posts
Mentioned: 2 Post(s)
Tagged: 1 Thread(s)
If you are really interested, there are a number of sites around that have been working on listing out different OEM CAN bus values.

Also of interest is the Canbus triple. Little device that can log and edit canbus values on the fly. Should be really useful for figuring out what system values control what.
Cuchullain is offline   Reply With Quote
Old 06-27-2015, 12:21 PM   #6
Spartarus
...Just add nauseum
 
Spartarus's Avatar
 
Join Date: Jan 2015
Drives: 2003 (AP1) S2000
Location: Miami, FL
Posts: 545
Thanks: 310
Thanked 784 Times in 335 Posts
Mentioned: 19 Post(s)
Tagged: 1 Thread(s)
Quote:
Originally Posted by Calum View Post
Do you know if, for example, crank shaft position, would be the same word on the FA20 ECU's bus as on the LSx ECU's bus? What about IP's for the various inputs and outputs? Is there an industry standard for these, or are those details left to the OE?
Kind of. There's no address like in TCP / IP. There's no central network controller either. In lay terms, the devices all just start talking when they have something to say, the type of data and the source device are included in the message header. The devices are listening passively at all times, and if another device talks over with a more "important" message they all just shut up and attempt to re-broadcast six bit clocks later. They only pick out and listen to the signals they want to hear. So, the trick is to figure out what the engine ECM is saying to the network, and replicate those signals. More on this.

As far as the signals go, they are proprietary per manufacturer. However, any device with a CAN output can be tricked into throwing out the appropriate type of signal. It doesn't matter if the raw sensor data doesn't match, i.e. if GM cps has more teeth on the crank sensor ring than Toyota. Or if they use hall-type or optical sensors.

There are two ways to do this, modify the firmware of the CAN controller, this has been done successfully with a 996tt on MegaSquirt, for example. The second way is to have a translator box, several examples for e36 BMW's exist using arudino boards.

Quote:
Originally Posted by Calum View Post
A little off topic, but have you ever used a CAN BUS to USB converter? (An industrial one that doesn't plug into the OBD2 port but just has terminals for wires.) Do you know if one would work to talk with an android OBD2 app, or could an industrial one require a different protocol?
Haven't used one before, but they exist. You can use any device with serial input to sniff for CAN signals, it just has to have the right application. I don't know if Android has one, but it might. None of the OBDII apps are likely to have CAN sniffing or CAN output features.

This whole operation depends on a few things. If the engine ECM only broadcasts data and never receives, this will be super-easy and probably cheap. If the engine ECM receives data, or receives data requests, it will be less easy. Example - if the ABS / VSC ECU is telling the the engine when to kick on the traction control (ECUTEK tuners please chime in, I'm 99.9% sure you know the answer because you can mess with the TC settings.) Then you add another layer of complexity, unless you just don't care about TC, like me.

Quote:
Originally Posted by Cuchullain View Post
If you are really interested, there are a number of sites around that have been working on listing out different OEM CAN bus values.
True. In just a day or two, I have unearthed a massive amount of information other people have already figured out. However, this forum is quieter on that subject than the crickets after a GDI delete. There are a whole bunch of people hanging around on this forum who would love to do a swap if only there was a resource for getting the CAN stuff working. Many of them have done other swaps before.

EDIT: this is where it started
Attached Images
 

Last edited by Spartarus; 06-27-2015 at 01:04 PM.
Spartarus is offline   Reply With Quote
The Following 4 Users Say Thank You to Spartarus For This Useful Post:
Calum (06-27-2015), civicdrivr (07-10-2015), whataboutbob (03-14-2016), wparsons (07-09-2015)
Old 06-27-2015, 02:33 PM   #7
rusty959
Senior Member
 
Join Date: Jun 2012
Drives: DGM BRZ limited
Location: Indiana
Posts: 366
Thanks: 98
Thanked 145 Times in 95 Posts
Mentioned: 7 Post(s)
Tagged: 0 Thread(s)
This topic interests me, but right now I don't have much to add.

However, I have a background in computer engineering and a MS1 laying around for another project. I could possibly be convinced to upgrade it to, say, a MS3 and do some testing.
__________________
rusty959 is offline   Reply With Quote
Old 06-27-2015, 10:11 PM   #8
Streetthrowback
Senior Member
 
Join Date: Mar 2015
Drives: 2015 brz
Location: Long Island
Posts: 304
Thanks: 4
Thanked 35 Times in 35 Posts
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Subbed
Streetthrowback is offline   Reply With Quote
Old 06-27-2015, 10:30 PM   #9
burdickjp
Senior Member
 
Join Date: Jan 2015
Drives: 2013 ultramarine Scion FR-S
Location: Richmond, VA
Posts: 293
Thanks: 140
Thanked 137 Times in 70 Posts
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
The Tactrix logs CAN BUS data. I believe the values listed here are the addresses:
http://www.ft86club.com/forums/showthread.php?t=62332

CAN BUS is really easy to play with using microcontrollers, such as the arduino. Here's a few projects I've done with it and megasquirt:
http://grassrootsmotorsports.com/for...s/87878/page1/
http://grassrootsmotorsports.com/for...s/88593/page1/
burdickjp is offline   Reply With Quote
Old 06-28-2015, 01:13 PM   #10
wutsaiu
Senior Member
 
wutsaiu's Avatar
 
Join Date: Aug 2013
Drives: 2015 Raven V8
Location: Aurora
Posts: 194
Thanks: 111
Thanked 263 Times in 81 Posts
Mentioned: 6 Post(s)
Tagged: 1 Thread(s)
I got my tach running via Arduino with Canbus.

message.id = 0x141;
message.header.rtr = 0;
message.header.length = 8;
message.data[0] = 0x8F;
message.data[1] = 0x26;
message.data[2] = 0xDF;
message.data[3] = 0x28;
message.data[4] = (RPM % 256);
message.data[5] = (RPM / 256) + 0x80;
message.data[6] = 0xA7;
message.data[7] = 0x00;

It's nice but I still have CEL, ABS, TRAC, AIRBAG lights on. I assume ABS and AIRBAG are not functioning which I'd like them to. I don't care about CEL or TRAC although I'd like the lights off.
wutsaiu is offline   Reply With Quote
The Following 2 Users Say Thank You to wutsaiu For This Useful Post:
timurrrr (09-09-2020), whataboutbob (03-14-2016)
Old 06-28-2015, 01:44 PM   #11
burdickjp
Senior Member
 
Join Date: Jan 2015
Drives: 2013 ultramarine Scion FR-S
Location: Richmond, VA
Posts: 293
Thanks: 140
Thanked 137 Times in 70 Posts
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quote:
Originally Posted by wutsaiu View Post
I got my tach running via Arduino with Canbus.

message.id = 0x141;
message.header.rtr = 0;
message.header.length = 8;
message.data[0] = 0x8F;
message.data[1] = 0x26;
message.data[2] = 0xDF;
message.data[3] = 0x28;
message.data[4] = (RPM % 256);
message.data[5] = (RPM / 256) + 0x80;
message.data[6] = 0xA7;
message.data[7] = 0x00;

It's nice but I still have CEL, ABS, TRAC, AIRBAG lights on. I assume ABS and AIRBAG are not functioning which I'd like them to. I don't care about CEL or TRAC although I'd like the lights off.
So you got your OEM tach working by sending data to it with CAN BUS or you got an aftermarket tach working by receiving data via CAN BUS?
burdickjp is offline   Reply With Quote
Old 06-28-2015, 02:26 PM   #12
wutsaiu
Senior Member
 
wutsaiu's Avatar
 
Join Date: Aug 2013
Drives: 2015 Raven V8
Location: Aurora
Posts: 194
Thanks: 111
Thanked 263 Times in 81 Posts
Mentioned: 6 Post(s)
Tagged: 1 Thread(s)
Quote:
Originally Posted by bur****jp View Post
So you got your OEM tach working by sending data to it with CAN BUS or you got an aftermarket tach working by receiving data via CAN BUS?
Got OEM tach working by sending data.
wutsaiu is offline   Reply With Quote
Old 06-28-2015, 03:18 PM   #13
modernbeat
Vorshlag R&D
 
modernbeat's Avatar
 
Join Date: Nov 2011
Drives: A new one every month
Location: Dallas, TX
Posts: 46
Thanks: 6
Thanked 91 Times in 31 Posts
Mentioned: 3 Post(s)
Tagged: 1 Thread(s)
I'm doing the programming to make a third party ECM talk to the OEM ECM to make swaps easier. We'll debut it on Rick's V8 swap.
__________________
Jason McDaniel at Vorshlag Motorsports
modernbeat is offline   Reply With Quote
The Following 5 Users Say Thank You to modernbeat For This Useful Post:
Calum (06-28-2015), cf6mech (06-29-2015), civicdrivr (07-10-2015), Hagbard (06-29-2015), Valentino (06-29-2015)
Old 06-28-2015, 08:18 PM   #14
Manji
Toyotas don't have boxers
 
Manji's Avatar
 
Join Date: Jun 2014
Drives: GTV86, ISF, TE27
Location: NZ
Posts: 212
Thanks: 148
Thanked 511 Times in 146 Posts
Mentioned: 15 Post(s)
Tagged: 0 Thread(s)
Couple of things that stand out here already.

Comment I saw about not wanting to spend money on a motec, because it will double the cost of the swap. All I'll say here is that you are biting of more than you can chew if you think the rest of the swap will be done for $6.5k. You can itemise and forum mechanic it all you like, but if you want my advice, double that budget; at least.

Another thing I noticed, "I'm going to blow my fa20 up and then do this". This mentality has never made sense to me. Why not sell it while its worth money? I sold my fa20, gearbox, and turbo kit for $12k. Sure I realise this is because I'm in NZ and was the only person to have these parts for sale, and I had to wait a year for someone to blow their motor and need mine, but point is still valid.

Either way, not knocking what you are trying to do. 10 years ago in my 20's I was looking to DIY all the things with car projects. Now I'm a little older, a little wiser, and a lot busier with work to even entertain this type of thing. The effort in doing so is better spent at work, earning money, so I can pay others to do a better job than I could ever do.

It's one of those things, I paid for the motec (I also paid well less than $6.5k, though we get a much better deal on them here) because it was the only option that worked. I could've waited 5 years for guys like yourself to have sorted a way to do it (as you are trying to now) for next to nothing. But I accepted I paid early adopter tax.

FWIW, I approached Link (they are based here) about whether they wanted to write a gt86 canbus platform and use my car to do so (of course I was still going to pay, but I already have a Link in my racecar and was familiar with them). To my surprise they weren't even slightly interested and didn't believe there was enough of a market there. (Which in NZ is true, Christchurch has 400,000 people and I'm the only one do have done anything major like forced induction or motor swap) but they clearly have not realised the popularity of the car internationally.
Manji is offline   Reply With Quote
The Following 4 Users Say Thank You to Manji For This Useful Post:
Aphaux (03-11-2020), Kris86 (09-08-2016), slicktop (07-03-2015), Sportsguy83 (07-29-2016)
 
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Eric's BRZ - A motorsports engineers perspective eric6 Member's Car Journals 225 07-14-2015 11:15 AM
Why I like Mazda engineers themadscientist Other Vehicles & General Automotive Discussions 59 03-02-2015 10:41 PM
For you engineers out there... cdrazic93 Off-Topic Lounge [WARNING: NO POLITICS] 32 02-05-2015 01:16 PM
Engineers Certificate needed for turbo kit? happytimetom Forced Induction 18 02-23-2014 05:47 PM
Software and electrical engineers look here jonbonazza Engine, Exhaust, Transmission 6 09-15-2013 11:06 PM


All times are GMT -4. The time now is 02:48 AM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
User Alert System provided by Advanced User Tagging v3.3.0 (Lite) - vBulletin Mods & Addons Copyright © 2024 DragonByte Technologies Ltd.

Garage vBulletin Plugins by Drive Thru Online, Inc.