Haltech ECU + WBo2
AEM CD7 dashboard
RCP Mk2, firmware 2.13.0
I have a number of the important CAN channels from my ECU mapped in the RCP for logging purposes.
Here's my current script:
https://gist.github.com/thoraxe/8405bcb ... edce87311b
If I move the sendGPS/IMU function calls out of the drain (repeat/until) loop, it seems like they basically never happen. My dashboard doesn't seem to ever get GPS data from the RCP. With them inside the loop (as pictured), it seems like some of the channel data ends up getting transmitted very, very slowly. I think because it's actually transmitting GPS data for every single channel it pulled off the buffer.
What I really want:
I want to retransmit a specific subset of CAN channels/messages without having to essentially rebuild the CAN mapping again. In other words, I know that I want to retransmit channel 864, 865, and several others. I've already mapped this data in the RaceCapture app.
I don't want to have to basically re-map it in Lua just to be able to transmit it.
Is there some way to do the following (pseudocode):
I know I can grab mapped channels virtually (getChannel), but my dash is looking for Haltech formatted messages already, so I'd actually have to re-un-format the mapped channel into the Haltech data format, assemble a message from the mapped channels, and then transmit it.
Code: Select all
function onTick() txcan ( rxcan(some specific can message / channel) ) txcan ( rxcan(some other specific message / channel) ) sendGPS() sendIMU() end
That seems like an atrocious amount of work.
My other and uglier and more physically intensive option is to abandon using the RCP for retransmit and just homerun another CAN cable from the ECU all the way to the dash's other CAN channel. So basically I'd only be sending GPS data from the RCP to the AEM CD7, and the CD7 would pick up all of the other vehicle data directly from the CAN bus.