DL1 serial buffer and ECU interface buffer size and speed

Halsbury Racing
Posts: 28
Joined: Wed Jul 08, 2009 11:33 am

DL1 serial buffer and ECU interface buffer size and speed

Postby Halsbury Racing » Thu Feb 26, 2015 2:06 pm

My arduino project is 90% working (7x arduino's connected between RT Dash2 and RT ECU Serial interface.)

RT Monitor is showing all 36 channels (4 Dash2) + (12 ECU) + (20 Arduino) coming out of the ECU serial interface with circa 0.2% errors.

However, the DL1 cannot read the serial stream unless I reduce my channel count.

I have no prior electronics or software background (trial, error and Google are my friends) - so this is a wild guess:

The DL1 serial buffer is overflowing? but the ECU interface cable is coping OK?
(f.y.i. my transmission code is not time-managed with any IRQ's)

What do you think?

Any suggestions what I should try next are much appreciated.

regards

Paul

Turby
Posts: 296
Joined: Thu Nov 17, 2005 2:28 pm

Postby Turby » Thu Feb 26, 2015 2:52 pm


Halsbury Racing
Posts: 28
Joined: Wed Jul 08, 2009 11:33 am

Postby Halsbury Racing » Thu Feb 26, 2015 5:14 pm

Yes I have: this page explains the speed of data signals and approximate number of channels, but does not specify if there is a lower actual maximum speed induced by hardware.

I should have perhaps asked what the maximum speed of decoding serial is (decoding is an optional tick box in the SETUP.BIN that the DL1 reads from the compact flash at start-up)

My testing is suggesting to me that the DL1 cannot decode a constant stream at 112500Hz, but the PC running RT Monitor software can.

My 20 added channels are 5 byte and run at 10Hz but are sent without any direct time reference to each other or the ECU data or the DASH2 data.
I'm using a 256byte transmit buffer so I could possibly be sending 100 bytes in 0.01 seconds which might be too quick for the DL1 to decode?

regards,

Paul

Turby
Posts: 296
Joined: Thu Nov 17, 2005 2:28 pm

Postby Turby » Thu Feb 26, 2015 11:26 pm

Do you have a picture / sketch showing how the DL1, ECU and arduino are connected together via serial bus ?

Are you using RS232 or TTL level signals from the arduino ?

What variant of DL1 have you got ?

Halsbury Racing
Posts: 28
Joined: Wed Jul 08, 2009 11:33 am

Postby Halsbury Racing » Sat Feb 28, 2015 10:42 pm

I have Tx line of Dash2 - to Arduino - to ECU serial interface - to DL1 mk2.
I have Rx line of Dash2 - hardwired to DL1 Tx, but it is tapped into the arduino so I can read from this line.

I have upped my arduino buffer to 256 bytes, and today tested with my transmissions triggered directly by every 3rd Analogue 20 message from the Dash, and sequenced with time intervals so that I am giving the DL1 time to decode them. (assuming 30Hz / 3 = 10Hz)

This works!, all 36 serial variables logged by the DL1, but Im not getting 10Hz.

I put a debug stopwatch into my arduino code on the 4 analogue channels from the Dash 2 and this is a short extract from the data:

Channel Hz
Ch 17 17
Ch 18 91
Ch 19 18
Ch 20 18
Ch 17 19
Ch 18 19
Ch 19 102
Ch 20 18
Ch 17 17
Ch 18 18
Ch 19 18
Ch 20 145
Ch 17 18
Ch 18 18
Ch 19 17
Ch 20 17
Ch 17 111

The frequencies displayed in RT Monitor seem to back this up.
I tested without the arduino hardware in the loop, and it appears the same.
Any ideas?

Paul

Halsbury Racing
Posts: 28
Joined: Wed Jul 08, 2009 11:33 am

Postby Halsbury Racing » Thu Mar 05, 2015 11:36 am

Ok, this problem is now sorted.

It is not possible to piggy-back the DASH2 messages as they are not timed tightly enough.

I have successful logging of all 36 serial channels by ensuring there is a delay between each message I send which gives the DL1 time to read them, and more importantly, time to decode them.

Paul


Return to “General support questions”

Who is online

Users browsing this forum: No registered users and 51 guests