Ignitron/Dashbox/Android CAN confusion - XML added

HI, I’ve been working on the above combo for a little while but i have hit a brick walll…

The ignitron ECU is transmitting to dashbox and i can monitor the output from the CANbus with the monitor in realdash and everything is transmittting nicely; i’ve taken logs and analysed the data with excel and it marries with the data shown on the ignitrons screens.

The problem comes when attempting to display the data in realdash, the bytes of data don’t display, all values end up displaying the value read as RPM…i’ve included a line from the log below and also the frame definition from my XML file too, i’m genuinely going crazy because i don’t understand where i’m going wrong!!

Index System Time Channel Direction Frame ID Data RPM CLT MAP IAT
29 03:54.1 ch1 R 0x0600 x C0 07 1C 02 10 27 91 02 1984 140 0.689464975
49 03:54.1 ch1 R 0x0600 x C8 07 1C 02 10 27 91 02 1992 140 0.689464975
82 03:54.2 ch1 R 0x0600 x B5 07 1C 02 10 27 91 03 1973 140 0.689464975
131 03:54.3 ch1 R 0x0600 x C0 07 1C 02 10 27 91 03 1984 140 0.689464975
180 03:54.5 ch1 R 0x0600 x BF 07 1C 02 10 27 91 03 1983 140 0.689464975
208 03:54.5 ch1 R 0x0600 x BF 07 1C 02 10 27 91 03 1983 140 0.689464975
234 03:54.5 ch1 R 0x0600 x AC 07 1C 02 10 27 91 03 1964 140 0.689464975
<?xml version="1.0" encoding="utf-8"?>
<!-- RealDash CAN XML description file, version 2 Requires RealDash version 1.5.8 or newer -->
<RealDashCAN version="2">

<frames>
	<frame id="0x600" endianness="little">
      		<value name="Ignitron:RPM" Offset="0" length="2" unit="rpm"/><!-- RPM -->
      		<value name="Ignitron:CLT" Offset="2" length="2" unit="°C" conversion="V/10"/><!-- Coolant T -->
      		<value name="Ignitron:MAP" Offset="4" length="2" conversion="V/14504"/><!-- MAP -->
      		<value name="Ignitron:IAT" Offset="6" length="2" unit="°C" offset="0" decimalPlaces="1"/><!-- Intake T -->
    	</frame>

  </frames>
</RealDashCAN>

please call me an idiot and point out my school boy error(s)!

Cheers

I’m seeing couple issues:

  • endianness=“little” can be removed as it is a default value.
  • attribute ‘offset’ must be lower case ‘o’
  • attribute ‘unit’ should be ‘units’
  • units=“rpm” has no meaning, you can remove it
  • unit=“°C” should be units=“C”
  • attribute ‘decimalPlaces’ probably does nothing
  • value ‘Ignitron:IAT’ has dual ‘offset’ attribute

To make this compatible with RD dashes, I’d recommend using targetId:s instead of name attribute. Here is an example XML with fixes:

<?xml version="1.0" encoding="utf-8"?>
<!-- RealDash CAN XML description file, version 2 Requires RealDash version 1.5.8 or newer -->
<RealDashCAN version="2">

<frames>
    <frame id="0x600">
        <value targetId="37" offset="0" length="2"></value><!-- RPM -->
        <value targetId="14" offset="2" length="2" units="C" conversion="V/10"></value> <!-- Coolant T -->
        <value targetId="31" offset="4" length="2" conversion="V/14504"></value><!-- MAP -->
        <value targetId="27" offset="6" length="2" units="C"></value><!-- Intake T -->
    </frame>

</frames>
</RealDashCAN>

Hope this helps

Thank you!! Lots of little issues; I’ll try this tonight and report back