rip-custom-ini

Good bye to editing custom.ini files!  

Many of us have been there, you want to use a new fuel pressure sensor with your MegaSquirt. You have the data sheet for the sensor and a spare input. Or maybe you want a new field for your own tuning circumstances, a field based on a table lookup or a single bit.

They tell you no problem, MegaSquirt and TunerStudio support that! If your lucky enough to have an MS3 based ECU, you might be able to set it up without much trouble as a Generic Sensor, Great.

If that doesn't work for you, don't worry, a custom.ini file can get the job done! There is little you can't do in a custom.ini file for the hard core computer wizards, but it is like a programming language in itself.

 

With TunerStudio MS 3.0 that finally changes. The "Add Channel Wizard" and "Custom Channel Editor" remove the need to hand edit a custom.ini file ever again. Beeter yet, if you do have a custom ini already working, you can now edit OutputChannels, Gauge Templates and DataLog fields using nice simple user interfaces:

 

Add Channel Wizard

A simple 2 page wizard to add a new channel and setup how you want to view the data from the new Channel.

Page 1

The 1st page allows you to define the new Channel. If it is a typical sensor you are setting up, the simple view will likely be all you need. You can set it up as a Linear sensor by setting up the input channel(The Channel supplying the raw sensor value) and using 2 know conversion points.

AddChannelWizard Simple

 

If the sensor output is non-linear, you can set the input channel and supplying an inc file that maps the input values to the output values.

AddChannelWizard SimpleInc

 

If you need something more complex, go to Advanced mode, now you can create your own custom expression using any of TunerStudio's built in functions and operations with any OutputChannle or calibration value used as inputs. There are table functions to perform table lookups on 1D and 2D tables along with smoothing functions and all the standard math functions.

AddChannelWizard Advanced

 

Page 2

On Page 2 you select how you want to see your new Channel by createing a Gauge Template and/or a new DataLog field. Gauge Templates will show up on the right click menu of any dashboard allowing you to quickly change any gauge to display your new value. A DataLogField, will add your new field to be logged when ever you capture a normal datalog.

AddGaugeDataLogField

 

That is it, you have set up yout own custom channel that will now be part of your Project. 

But, if you want to keep going, you can add, remove, edit any of the custom channels you want using the Custom Channel editor.

 

Custom Channel Editor

The Custom Channel Editor gives you access to all your custom Channels, Gauges and Data Log Fields. Using this interface you can:

- Add Custom Channels

- Add Gauge Templates for custom or non custom channels

- Add DataLog Fields for custom or non custom channels

 

The tree on the left side will group and display all custom Channels, Gauge Templates and Data Log Fields. By Double Clicking on any tree node, the appropriate editor is brought up in the right hand work space.

CustomIniEditorSimple

 

CustomIniEditorAdvanced

 

Once you click the Save button, any change you made are applied real-time to your currently loaded project and will be saved to your custom.ini for the future.


Example usage

Example steps to add a data log channel to MS3 that will represent table 1 vs table 3 when doing table switching:

To see in your logs which table is active is a little tricky, but there are 2 ways to accomplish it... The TunerStudio way or the MegaLogViewer Way.
If you are using the Beta TS and Ultra,
Open the "Custom Channel Editor" under the menu:
Tools --> Custom Channel Editor"
- Right Clcik on the tree node "Output Channel"
- Select "Add Output Channel"
- Set the name to table3Active
- Click Ok
- Click the "Advanced" radio
- Set the expression:
status1 & 32 ? 1 : 0
- Click "Ok"

Now you have a channel that will be 1 when table 3 is active, 0 when not. Next we want to data log that field.
- Right click on the node "Data Log Field"
- Select "Add Data Log Field"
- Name it "VE Table 3" (This will be the name of the new field in your logs.
- For OutputChannel select your channel table3Active
- For Value Format, select: active/Inactive
- leave Enable Expression and Record lag, empty.
- Click Ok

Click the Save Icon, and close the Custom Channel Editor. Any Data Log you capture from here forward will have a field named "VE Table 3" and MegaLogViewer will display either Active or Inactive depending on state.