Manual changes to ShadowDash...selecting gauge input

For discussion of other tuning and logging softwares

Moderators: jsmcortina, muythaibxr

Post Reply
walterclark1
Experienced MS/Extra'er
Posts: 292
Joined: Tue Jan 01, 2013 3:37 pm
Location: Dover, MA., USA

Manual changes to ShadowDash...selecting gauge input

Post by walterclark1 »

I want to add an X axis accelerometer to my SD custom dash fed from the X accelerometer in the tablet. At first I defined the gauge source in TS using the Accel X under the Sensor inputs 2 popup menu but that didnt work. I took a look at the code in home_landscape.dash and found this: <OutputChannel type="String">xAxisForce</OutputChannel> under the X Force gauge (which works on the original dash). I substituted that for the source in my custom dashboard_0_landscape.dash which was: <OutputChannel type="String">accelx</OutputChannel>. I assumed this was the difference between Accel X data from the MS3 and Accel X data from the tablet. It must not be that simple as I then get a big red circle with a slash thru it over that gauge when I run this on the tablet.

Little help anyone?
A2 VW GTI 9A - MS3/3X
walterclark1
Experienced MS/Extra'er
Posts: 292
Joined: Tue Jan 01, 2013 3:37 pm
Location: Dover, MA., USA

Re: Manual changes to ShadowDash...selecting gauge input

Post by walterclark1 »

In an effort to understand the difference(s) I created a blank dashboard in TS onto which I copied one of the X force gauges that is part of the SD home gauge set. I saved the gauge. Then I changed the input using the TS menu to the Accel X and saved that one.

Comparing the two files this is the difference I see...

In the original:
<Title type="String">X Force</Title>
<Dirty type="boolean">false</Dirty>
<OutputChannel type="String">xAxisForce</OutputChannel>
<Value type="double">-2.0</Value>
<Dirty type="boolean">false</Dirty>
<EcuConfigurationName type="String">Application Events</EcuConfigurationName>

After modifying the input source:
<Title type="String">Accel X</Title>
<Dirty type="boolean">true</Dirty>
<OutputChannel type="String">accelx</OutputChannel>
<Value type="double">-59.0</Value>
<Dirty type="boolean">true</Dirty>
<EcuConfigurationName type="String"/>

I think the Value type difference in the middle of this is unrelated to the different input (OutputChannel), its just an artifact of what happens when I change input source on gauges - it sets the Gauge limits and values to some default numbers. Not sure why it pops up in the middle of the string like that. the other Value type entries appear scattered throughout the file - but in the same relative line in each.

Anyway I an guessing - without completely understanding - that among these lines are the differences between using the tablet X accelerometer and using a value coming from an input to the MS3.
A2 VW GTI 9A - MS3/3X
LT401Vette
Super MS/Extra'er
Posts: 12733
Joined: Sat Jul 16, 2005 8:07 am
Location: Moorseville, NC
Contact:

Re: Manual changes to ShadowDash...selecting gauge input

Post by LT401Vette »

To get the difference between the 2, you will really need to create a new OutputChannel that represents the difference, then assign that channel to the gauge. You can do this in a custom.ini

But looking at your snippets, there are 2 key lines worth understanding in each block:
<EcuConfigurationName type="String">XXX</EcuConfigurationName>
and
<OutputChannel type="String">xAxisForce</OutputChannel>

The EcuConfigurationName element tells TS and SD what namespace to use for the OutputChannel value, an empty value like you have in the modified block tells TS/SD to use the default namespace, thus the main controller for the project. In the other block you see "Application Events", that is a specialized namespace that tells the app the Channel is not part of any controller in the project, but a channel managed by the app itself.

So xAxisForce is an OuputChannel owned by Application Events
where as accelx is an OutputChannel defined in the MS3 ini file.

You can reference Application Events in your custom.ini in order to get the delta.

Code: Select all

[OutputChannels]

    deltaAccelX = { appEvents.xAxisForce }
Shadow Dash should then accept deltaAccelX as a valid Outputchannel that a gauge can reference in the default namespace.

The trouble you may run into is in TS where appEvents.xAxisForce is no a valid OutputChannel, it is only valid in Shadow Dash. For the GPS Channels they are valid in both TS and SD using GPS.gpsSpeedMPH etc.
Phil Tobin
EFI Analytics, helping to simplify EFI
Next Generation tuning software.
Supporting all MegaSquirt versions and firmwares.
http://www.TunerStudio.com
http://www.efiAnalytics.com/MegaLogViewer/
Support the firmware running your engine:
http://www.msextra.com/doc/donations.html
Post Reply