Toyota GR86, 86, FR-S and Subaru BRZ Forum & Owners Community - FT86CLUB

Toyota GR86, 86, FR-S and Subaru BRZ Forum & Owners Community - FT86CLUB (https://www.ft86club.com/forums/index.php)
-   Engine Swaps (https://www.ft86club.com/forums/forumdisplay.php?f=92)
-   -   CAN BUS - for DIY swappers, HELP! Engineers / shops welcome (https://www.ft86club.com/forums/showthread.php?t=90692)

toddy101 10-20-2015 06:54 AM

Hey guys,

I have made a prototype GM to BRZ/86 CAN translator and have done some initial testing. So far I have the full dash working with the GM motor, so Tacho, Temperature Gauge, Oil and Check Engine lights. I have also got the electric power steering motor to work. Once it is fed the right data, the steering warning lamp goes out, the motor starts humming and it is easier to turn the wheel.
I have also done some work on the traction control side of things, and have figured out the torque reduction from both the GM and 86/BRZ. There is also a variable resistor on the circuit board which allows this torque reduction value (gain) to be altered to account for the big differences in engine power. (a V8 at 50% torque is going to about about the same as the FA20 at 50% torque, put the reduction to 50% and it will equate to a 25% signal to the GM). The ABS is not yet tested so there is still some testing and further development needed here.

It has been tested live on a couple of late model V8 Commodores (Australian), as well as a US LS3 Ecu using simulated engine data for crank signal and coolant temp, oil pressure etc.

Captain Kermit 10-21-2015 08:24 AM

Quote:

Originally Posted by toddy101 (Post 2425430)
Hey guys,

I have made a prototype GM to BRZ/86 CAN translator and have done some initial testing. So far I have the full dash working with the GM motor, so Tacho, Temperature Gauge, Oil and Check Engine lights. I have also got the electric power steering motor to work. Once it is fed the right data, the steering warning lamp goes out, the motor starts humming and it is easier to turn the wheel.
I have also done some work on the traction control side of things, and have figured out the torque reduction from both the GM and 86/BRZ. There is also a variable resistor on the circuit board which allows this torque reduction value (gain) to be altered to account for the big differences in engine power. (a V8 at 50% torque is going to about about the same as the FA20 at 50% torque, put the reduction to 50% and it will equate to a 25% signal to the GM). The ABS is not yet tested so there is still some testing and further development needed here.

It has been tested live on a couple of late model V8 Commodores (Australian), as well as a US LS3 Ecu using simulated engine data for crank signal and coolant temp, oil pressure etc.

Is this a private enterprise for you or are you doing it as an employee of a shop?

redlined600 10-21-2015 12:58 PM

This is all very exciting!

toddy101 11-25-2015 09:27 PM

Quote:

Originally Posted by Captain Kermit (Post 2426821)
Is this a private enterprise for you or are you doing it as an employee of a shop?

I run my own business, with one arm being wiring conversions (specialising in subaru). Very close to you by the sound of it (Thornton).


Also I have some good news, the prototype Canbus Translator is working in an LS powered 86. The Tacho, Temp Gauge, oil pressure light and Check Engine light are all working on the OEM 86 dash as they should. Also the electric power steering is reported to be working.

The only error lights on the dash that remain on after engine start are the ABS and Traction Control lights. Not sure if this is because of the engine and something is not translated that the ABS wants to see, or if it is something totally unrelated. Waiting to get the ABS unit scanned to see what errors it has. As far as I can tell with the ABS I have translated the engine torque allowed signals from 86 tom GM and GM engine torque data from GM to 86. Thinking it may want engine vacuum? I cannot really do much more until I can test this in a working car, to test the traction control functions. However if traction control is not wanted, the unit should work as is. The box is software up-gradable so can be tweaked at a later stage if need be.

Regards, Andrew.

Captain Kermit 11-26-2015 03:57 AM

Awesome news, I'm in Lake Macquarie so knowing there's someone this far along only half an hour up the road is great news.

cf6mech 11-27-2015 03:47 PM

@toddy101....Need it.....want it .......ASAP !!!!!!!!¡!!!!..........do you have more than just this prototype. I can also give you feedback and work with you.

mkivalex 11-27-2015 03:58 PM

Quote:

Originally Posted by cf6mech (Post 2464104)
@toddy101....Need it.....want it .......ASAP !!!!!!!!¡!!!!..........do you have more than just this prototype. I can also give you feedback and work with you.

So I take it vorshlag still hasn't figured this all out?

Loosing faith in the vorshlag swap.

I've heard of a few separate people getting the CAN functions to work properly using a micro controller.

I could do the same thing through a hydraulic system controller from my work but with the cost you could just use an aftermarket ecm.

Looking forward to seeing some of these solutions come to light. I plan on doing all my own wiring so having a simple controller like mentioned would be perfect.

Worstenemy453 12-17-2015 10:07 PM

@toddy101. I'm also depending on you. The only thing stopping me from collecting parts is electronics. I need all the OE shit to work.

Sent from my SM-N900V using Tapatalk

ztan 02-22-2016 11:44 PM

CAN MBx table in ROM
 
Have been digging around the CAN routine in the ROM.
Found this area which is the same in A01G, A01C, B01C.
Looks like descriptors for CAN Mailboxes 0-31;

struct{
CAN ID data.l
memory location data.l
data.b
number of bytes accepted data.b
data.b
data.b
}

Code:

0000CADC 00 00 01 11 dword_CADC:    .data.l h'111          ; DATA XREF: ROM:CAN_Channel_Setup_Vectoro
0000CAE0 00 00 00 00                .data.l 0
0000CAE4 00 08 00 00                .data.l loc_80000
0000CAE8 00 00 07 DF dword_CAE8:    .data.l h'7DF          ; DATA XREF: ROM:0000CC60o
0000CAEC 00 00 00 00                .datab.b 4, 0
0000CAF0 00 08 00 00                .data.l loc_80000
0000CAF4 00 00 07 E0 dword_CAF4:    .data.l h'7E0          ; DATA XREF: ROM:0000CC64o
0000CAF8 00 00 00 00                .data.l 0
0000CAFC 00 08 00 00                .data.l loc_80000
0000CB00 00 00 07 E8 dword_CB00:    .data.l h'7E8          ; DATA XREF: ROM:0000CC68o
0000CB04 00 00 00 00                .data.l 0
0000CB08 00 08 00 00                .data.l loc_80000
0000CB0C 00 00 07 71 dword_CB0C:    .data.l h'771          ; DATA XREF: ROM:0000CC6Co
0000CB10 00 00 00 00                .data.l 0
0000CB14 00 08 00 00                .data.l loc_80000
0000CB18 00 00 07 72 dword_CB18:    .data.l h'772          ; DATA XREF: ROM:0000CC70o
0000CB1C 00 00 00 00                .data.l 0
0000CB20 00 08 00 00                .data.l loc_80000
0000CB24 00 00 07 73 dword_CB24:    .data.l h'773          ; DATA XREF: ROM:0000CC74o
0000CB28 00 00 00 00                .data.l 0
0000CB2C 00 08 00 00                .data.l loc_80000
0000CB30 00 00 07 74 dword_CB30:    .data.l h'774          ; DATA XREF: ROM:0000CC78o
0000CB34 00 00 00 00                .data.l 0
0000CB38 00 08 00 00                .data.l loc_80000
0000CB3C 00 00 07 75 dword_CB3C:    .data.l h'775          ; DATA XREF: ROM:0000CC7Co
0000CB40 00 00 00 00                .data.l 0
0000CB44 00 08 00 00                .data.l loc_80000
0000CB48 00 00 01 40 dword_CB48:    .data.l h'140          ; DATA XREF: ROM:0000CC80o
0000CB48                                                    ; sub_3D304+19Eo ...
0000CB4C FF F8 88 74                .data.l dword_FFF88874
0000CB50 00 08 00 00                .data.l loc_80000
0000CB54 00 00 01 41 dword_CB54:    .data.l h'141          ; DATA XREF: ROM:0000CC84o
0000CB54                                                    ; sub_3D522+1B0o ...
0000CB58 FF F8 88 7C                .data.l dword_FFF8887C
0000CB5C 00 08 00 00                .data.l h'80000
0000CB60 00 00 01 42 dword_CB60:    .data.l h'142          ; DATA XREF: ROM:0000CC88o
0000CB60                                                    ; sub_3D6EE+76o ...
0000CB64 FF F8 88 84                .data.l dword_FFF88884
0000CB68 00 08 00 00                .data.l h'80000
0000CB6C 00 00 01 44 dword_CB6C:    .data.l h'144          ; DATA XREF: ROM:0000CC8Co
0000CB6C                                                    ; sub_3D7DC+2D0o ...
0000CB70 FF F8 88 8C                .data.l dword_FFF8888C
0000CB74 00 08 00 00                .data.l h'80000
0000CB78 00 00 03 60 dword_CB78:    .data.l h'360          ; DATA XREF: ROM:0000CC90o
0000CB78                                                    ; sub_3DAC0+184o ...
0000CB7C FF F8 88 94                .data.l dword_FFF88894
0000CB80 00 08 00 00                .data.l h'80000
0000CB84 00 00 03 61 dword_CB84:    .data.l h'361          ; DATA XREF: ROM:0000CC94o
0000CB84                                                    ; sub_3DCC0+1AAo ...
0000CB88 FF F8 88 9C                .data.l dword_FFF8889C
0000CB8C 00 08 00 00                .data.l h'80000
0000CB90 00 00 04 C1 dword_CB90:    .data.l h'4C1          ; DATA XREF: ROM:0000CC98o
0000CB90                                                    ; sub_3DE82+24o ...
0000CB94 FF F8 88 A4                .data.l dword_FFF888A4
0000CB98 00 08 00 00                .data.l h'80000
0000CB9C 00 00 00 D1 dword_CB9C:    .data.l h'D1            ; DATA XREF: ROM:0000CC9Co
0000CBA0 FF F8 8C 63                .data.l unk_FFF88C63
0000CBA4 00 04 00 00                .data.l h'40000
0000CBA8 00 00 00 D2 dword_CBA8:    .data.l h'D2            ; DATA XREF: ROM:0000CCA0o
0000CBAC FF F8 8C 67                .data.l unk_FFF88C67
0000CBB0 00 08 00 00                .data.l h'80000
0000CBB4 00 00 00 D3 dword_CBB4:    .data.l h'D3            ; DATA XREF: ROM:0000CCA4o
0000CBB8 FF F8 8C 6F                .data.l unk_FFF88C6F
0000CBBC 00 07 00 00                .data.l h'70000
0000CBC0 00 00 00 D4 dword_CBC0:    .data.l h'D4            ; DATA XREF: ROM:0000CCA8o
0000CBC4 FF F8 8C 76                .data.l unk_FFF88C76
0000CBC8 00 08 00 00                .data.l h'80000
0000CBCC 00 00 01 48 dword_CBCC:    .data.l h'148          ; DATA XREF: ROM:0000CCACo
0000***0 FF F8 8B 48                .data.l unk_FFF88B48
0000***4 00 08 00 00                .data.l h'80000
0000***8 00 00 01 49 dword_***8:    .data.l h'149          ; DATA XREF: ROM:0000CCB0o
0000***C FF F8 8B 50                .data.l unk_FFF88B50
0000CBE0 00 08 00 00                .data.l h'80000
0000CBE4 00 00 01 4A dword_CBE4:    .data.l h'14A          ; DATA XREF: ROM:0000CCB4o
0000CBE8 FF F8 8B 58                .data.l unk_FFF88B58
0000CBEC 00 08 00 00                .data.l h'80000
0000CBF0 00 00 03 68 dword_CBF0:    .data.l h'368          ; DATA XREF: ROM:0000CCB8o
0000CBF4 FF F8 8B 60                .data.l unk_FFF88B60
0000CBF8 00 08 00 00                .data.l h'80000
0000CBFC 00 00 01 52 dword_CBFC:    .data.l h'152          ; DATA XREF: ROM:0000CCBCo
0000CC00 FF F8 8B DD                .data.l unk_FFF88BDD
0000CC04 00 08 00 00                .data.l h'80000
0000CC08 00 00 06 3B dword_CC08:    .data.l h'63B          ; DATA XREF: ROM:0000CCC0o
0000CC0C FF F8 8B E5                .data.l unk_FFF88BE5
0000CC10 00 08 00 00                .data.l h'80000
0000CC14 00 00 02 80 dword_CC14:    .data.l h'280          ; DATA XREF: ROM:0000CCC4o
0000CC18 FF F8 8A 28                .data.l dword_FFF88A28
0000CC1C 00 08 00 00                .data.l h'80000
0000CC20 00 00 02 82 dword_CC20:    .data.l h'282          ; DATA XREF: ROM:0000CCC8o
0000CC24 FF F8 8A 66                .data.l unk_FFF88A66
0000CC28 00 08 00 00                .data.l h'80000
0000CC2C 00 00 03 70 dword_CC2C:    .data.l h'370          ; DATA XREF: ROM:0000CCCCo
0000CC30 FF F8 8A 98                .data.l dword_FFF88A98
0000CC34 00 08 00 00                .data.l h'80000
0000CC38 00 00 03 72 dword_CC38:    .data.l h'372          ; DATA XREF: ROM:0000CCD0o
0000CC3C FF F8 8A BC                .data.l byte_FFF88ABC
0000CC40 00 08 00 00                .data.l h'80000
0000CC44 00 00 07 20 dword_CC44:    .data.l h'720          ; DATA XREF: ROM:0000CCD4o
0000CC48 00 00 00 00                .data.l 0
0000CC4C 00 08 00 00                .data.l h'80000
0000CC50 00 00 00 D0 dword_CC50:    .data.l h'D0            ; DATA XREF: ROM:0000CCD8o
0000CC54 FF F8 8C 5B                .data.l unk_FFF88C5B
0000CC58 00 08 00 00                .data.l h'80000


ForcedFab_Jon 02-29-2016 06:17 PM

Has anyone built out this to work yet? I haven't had time to dig though all the developments.

I have been working with a software/hardware manufacturing company that has developed some programmable canbus modules for Lsx swaps with full canbus capabilities. And even some additional programmable features.
They have their modules working on other platforms , but they want to get a Ft86 car soon to do some testing and development on. We don't have anyone local that is ready to swap so we haven't been able to proceed on the development. A few of our local customers are holding back until this is developed and a plug and play device.

SO anyone out there that has a swap that would be interested in possibly helping test/develop the module let me know. The company I have been working with is a tier 1 oem supplier for automotive controllers and modules. The have access to software and tools that a smaller firm may not. I can get you all the details on time frame and requirements. I know the car would be needed for a few weeks 2-4 I believe. That is why we would love to have someone local to us, there is going to be a ton of logging and data crunching done to get it all working correctly.

If anyone is interested shoot me an email at Sales@forcedfabllc.com put ATT Jon BRZ LSX swap.

slicktop 02-29-2016 07:03 PM

It's irritating that all of a sudden people are stepping up to develop CANbus solutions when that has been the main hurdle for people wanting to swap it.

Captain Kermit 03-01-2016 07:08 AM

Quote:

Originally Posted by slicktop (Post 2564141)
It's irritating that all of a sudden people are stepping up to develop CANbus solutions when that has been the main hurdle for people wanting to swap it.

I reckon I'd be quite a bit more irritated if people didn't step up to develop CANbus solutions.

If you've had everything but CANbus sorted for any reasonable length of time the option was there for you to work it out yourself or pay someone to work it out. If you've been hanging back waiting for someone to do the hard yards for you I guess it's a case of put up or shut up.

wutsaiu 03-01-2016 09:41 AM

Quote:

Originally Posted by slicktop (Post 2564141)
It's irritating that all of a sudden people are stepping up to develop CANbus solutions when that has been the main hurdle for people wanting to swap it.

You can build a simple CanBus Arduino microcontroller for less than $100.
May not have all the features of these 'professional' ones but having a few things like functioning tachometer and power steering should be good enough while you wait for something better.
There have been solutions for a while now, they just get overlooked.

slicktop 03-01-2016 11:42 AM

Quote:

Originally Posted by Captain Kermit (Post 2564618)
I reckon I'd be quite a bit more irritated if people didn't step up to develop CANbus solutions.

If you've had everything but CANbus sorted for any reasonable length of time the option was there for you to work it out yourself or pay someone to work it out. If you've been hanging back waiting for someone to do the hard yards for you I guess it's a case of put up or shut up.

I'm having a particularly rough morning so I'm taking this as an attack on my credentials. I'm confident in staying that I was the first to privately attempt a 2JZ swap in the nation. In addition, I have yet to see any swap with fully functioning OEM functions (A/C, EPAS, T/C, dash). I have seen people with bits of each but nothing fully functioning.

I originally tried running with ProEFI because it was cost effective and it was advertised to support CANbus communication. The issue (which wasn't found out until Dec/Jan) was I would need to have a master tuner of theirs pull the code from a functioning OEM car ($750) plus the coding ($2500) in order to implement the CANbus capability. So, I had to spend more money to get it to work - which I decided to sell and swap to a known EMS (was MoTeC, ended up going with Emtron which i'll explain that). It made no sense to pour more money into something which already let me down.

On top of that, the wiring harness was fucked. That was at least $2k down the toilet because of modification costs to the original custom harness. Without going into too much detail, I've put in about $3-4k (EDIT: actually more like $8k) worth of... lets call it tuition, on this build. I'm funding this entire build with no sponsors. Besides one other build, I've spent a lot more money than 99% of the community just to get the swap done and working 100%.

I ended up going with Emtron because it looks like a cost effective solution that the entire community can learn and profit from. You guys (all non-Australians) will benefit from a very new company with emerging capabilities. If I were more of an asshole, there'd be no responding to the hundreds of emails, PMs, DMs, messages (whatever you want to call them from the various websites I'm on). There would be no sharing of information. I talk to people daily on options. Everyone I know spends at least the same amount of time and probably more than I do helping as much as we can. We get to say whatever the fuck we want to because we've put in so much work into our cars with nothing expected in return. We've put up.


All times are GMT -4. The time now is 06:21 AM.

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


Garage vBulletin Plugins by Drive Thru Online, Inc.