Jump to content

Canbus to EPAS Signal


Stillrolla

Recommended Posts

Working on calibration setup and still in a learning curve for CAN. So retrofitted to the car is a Toyota Yaris EPAS. Currently the EPAS ECU need VSS from 0-5V and RPM signal thru CAN to start assist when engine is turned on. I currently have the VSS wired to it but now i need to get the Engine speed stream going VIA CAN. 

 

Ive looked at the CAN ID but not sure how to program it. 

http://opengarages.org/index.php/Toyota_CAN_ID

CAN ID (Decimal) CAN ID (Hex) Data Length Description      Rate (seconds) Notes
708                        2C4                8                     Engine Speed 0.02                  Bytes 1 and 2

 

Snippet from another forum who used a CANdo Device 

"The end result looked something like this 2C4 8 06 8A 00 19 00 00 92 09 Repeat rate 20 ms(milliseconds) "

Any help or slight walk thru is appreciated !!

 

Corolla Base Map.pclx

Link to comment
Share on other sites

Since none of the messages on the opengarages page use "Byte 0", Im assuming they are naming the first byte "Byte 1", whereas we call it byte 0.  They say engine speed is in Byte 1/2, but the CANdo example has data in byte 1,2, 4, 7 & 8, so there maybe something else beside engine speed that is needed.

They also do not say which is the high byte, and what bit rate is used, so you'll have to make a few assumptions.  I would start with a bit rate of 500K.

Set up like this and see if anything happens:

tg2NY7h.png

y6LH4qi.png

 

Link to comment
Share on other sites

4 hours ago, Stillrolla said:

Once it's all powered if the stream isn't right would the fault show in the runtime ?

No, there will only be a fault reported if there s a bus problem.  This would be things like incorrect bit rate, wiring, or wrong ID.  There is no way the ECU can know if the steering system is happy with the data format or not.  I suspect it will likely just not work.

Link to comment
Share on other sites

  • 5 months later...

Update: 

Finally wired it in and 500kbps is the bit rate. 

but still no wake up from EPAS from original stream and frame setup, i have found a little more info but... how would i translate this on the CAN setup streams and frames? 

-if there is a checksum would this just be something that cant be produced on the G4X ?  

- Could i possibly run the same canbus ID for RPM from a GT86 if any info is available since its a more supported platform. 

Some findings

"below is an example of the rpm message {2C4 8 0E 1B 00 19 00 00 92 A2}
2C4 is the message ID and this one happens to mean RPM.
8 is the message size, it will send 8 additional pieces of info.
0E is the first piece of info. In decimal it means 14 ---Protip-the stock calculator app in windows can be changed to "programmer" which allows you to input HEX numbers and it auto translates into decimal.
1B is the 2nd, and it translates into 27
Now those two bites alone don't help or add up to anything, but if you put the HEX together (0E1B) it translates into 3,611-which is the actual rpm!
I don't know what the "19" or "92" mean yet, but the A2 should be the checksum at the end.
To calculate the checksum, it helps to know that the message ID is actually two bits, IDH = 2C and IDL = 04. So to calculate it, add(in HEX calculator) 2C+04+08+0E+1B+19+92 = 1A2"

 

 Wish i had a car to scan live :(

Link to comment
Share on other sites

Ok 2 examples attached.  The 1st one will send a message exactly the same as the example in your first post - 1674RPM with the matching checksum etc on the end.

The 2nd example will produce a message the same as your example in the 6th post, 3611RPM with the matching checksum etc.  

The engine doesnot need to be running, this message will just be send out continuously when ecu is powered.

Corolla-EPAS_V1 example 2.pclx Corolla-EPAS_V1 example 1.pclx

Link to comment
Share on other sites

3 hours ago, Adamw said:

Ok 2 examples attached.  The 1st one will send a message exactly the same as the example in your first post - 1674RPM with the matching checksum etc on the end.

The 2nd example will produce a message the same as your example in the 6th post, 3611RPM with the matching checksum etc.  

The engine doesnot need to be running, this message will just be send out continuously when ecu is powered.

Corolla-EPAS_V1 example 2.pclx 408.41 kB · 1 download Corolla-EPAS_V1 example 1.pclx 408.41 kB · 1 download

Both worked perfectly EPAS woke up instantly , looking at the frame it looks a little more complex than just sending engine speed. Appreciate the help Adam! 

Link to comment
Share on other sites

  • 2 months later...

Hi Adam,

message {2C4 8 0E 1B 00 19 00 00 92 A2}

I am learning from your examples, please enlighten how you manage/ analyze the message that by transmiting ECU's table allocation status and its offsets will activate EPS ?

The status value is 0,1 or2

Thank you

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...