Well with the sample app like I posted above it didn't wake up the module.
First I realized that because I had tested it at work and the photon wasn't set up for my work wi-fi, only home wi-fi, that it may not have been transmitting since it was flashing green fast. I added the code for SYSTEM_MODE(MANUAL) so the thing wouldn't try to connect to wi-fi at all. Now it breathes white almost immediately on power up.
I read on another forum where a person said they had to transmit every 20ms to get the module to wake up on a Yaris (which doesn't use the CAN for wheel speed, so it only needs rpm for wake up) so I changed mine to transmit every 20ms and that still didn't help.
So I added this into the code (in bold) figuring the Prius may also need the abs data:
if (now - lastTransmitTime > transmitInterval) { CANMessage message;
// A CAN message has an ID that identifies the content inside
message.id = 0x2C4;
// It can have from 0 to 8 data bytes
message.len = 8;
// Pass the data to be transmitted in the data array
message.data[0] = 0x06;
message.data[1] = 0x8A;
message.data[2] = 0x00;
message.data[3] = 0x19;
message.data[4] = 0x00;
message.data[5] = 0x00;
message.data[6] = 0x92;
message.data[7] = 0x09;
// Send the message on the bus!
carloop.can().transmit(message);
// A CAN message has an ID that identifies the content inside
message.id = 0x0B4;
// It can have from 0 to 8 data bytes
message.len = 8;
// Pass the data to be transmitted in the data array
message.data[0] = 0x00;
message.data[1] = 0x00;
message.data[2] = 0x00;
message.data[3] = 0x00;
message.data[4] = 0x8D;
message.data[5] = 0x06;
message.data[6] = 0x66;
message.data[7] = 0xB5;
// Send the message on the bus!
carloop.can().transmit(message);
lastTransmitTime = now;
}
Which should be around a 10mph wheel speed signal too, along with the original rpm signal every 20ms.
That worked!
Now the EPS powers on nearly immediately on key on. There is a very slight delay maybe less than 1/2 a second where the photon is booting up or whatever but that is much better than the original delay of 10 to 15 seconds which was so long there were times I was having to drive with no power assist as I pulled away. Like after cranking and leaving the gas pump for example, or pulling out of the parking spot at work, there were times I was already moving and trying to steer before the fail safe mode would kick in. You could sit there an extra few seconds and it was fine, but that's annoying LOL.
Not sure yet if the thing is giving the extra assist levels, I have only tested it on the glass smooth concrete floor of my garage today. The torque sensor in the column only gives enough assist to steer as needed and the floor is so smooth its not too hard to turn even with plain manual steering. Tomorrow I plan on backing it out onto the rough textured concrete driveway where the assist level was previously not enough to see if its better. I will play with the wheel speed message some to try different speeds. I may have given it enough CAN data to immediately turn on, but I'm not sure what this EPS module is looking for exactly, so I have to see if it is still throwing loss of communication (Uxxxx) codes or not. Plus I'm not sure I've given it the correct speed data. I've seen where both IDs 0x0B4 and 0x610 are speed PIDs. plus 0x0B1 and 0x0B3 are front and rear axle individual wheel speeds (left and right on individual bits) and I have no idea which ones or if there may be others the EPS is looking for. The plan is to hook it to the scan tool at work to see if it is reporting the speed I want, to try differing speeds to see how it affects the assist level and the "dead band." The dead band where assist is reduced is supposed to get wider at faster speeds to keep the steering from feeling "twitchy" 0 dead band at low speeds for parking, +/- 5 degrees from center dead band at medium speed, and 10* above 45mph
I still plan to try to get this working, but I also just purchased a non abs Yaris EPS module on Ebay, so I may switch over to it. The non abs Yaris module is hardwired to a speed sensor and only needs a rpm signal over CAN to turn on. So that may be simpler on my car, I can use this project to turn on the EPS with the original sample transmit app and hook a speed sensor directly to the EPS. The Yaris and Prius EPS are the same physical size, mounting bracketry and connectors.
I'd still like to get this working even if its just a set hard coded MPH signal because these swaps are getting to be more common place (Hot Rod Magazine recently did a web article on them, with lots of people commenting about it being interesting) and while the system works pretty good in fail-safe, there are lots of people who may prefer having extra control and there's not a whole lot of info out there on the CAN-BUS side of it. Also because the non-abs Yarus (Yarii?) are harder to find in the junk yards as there were less made. I have been looking nearly a year to find one in a local yard, or online and just found this one yesterday. The ABS equipped Yarus and Pruis use the exact same part number module, column and operate the same way. They are much easier to find and thus will probably be the more commonly swapped.