Index: /trunk/src/com/romraider/logger/external/core/ExternalDataSourceLoaderImpl.java
===================================================================
--- /trunk/src/com/romraider/logger/external/core/ExternalDataSourceLoaderImpl.java	(revision 338)
+++ /trunk/src/com/romraider/logger/external/core/ExternalDataSourceLoaderImpl.java	(revision 339)
@@ -39,5 +39,5 @@
             File pluginsDir = new File("./plugins");
             if (pluginsDir.exists() && pluginsDir.isDirectory()) {
-                externalDataSources = new ArrayList<ExternalDataSource>();
+//                externalDataSources = new ArrayList<ExternalDataSource>();
                 File[] pluginPropertyFiles = pluginsDir.listFiles(new PluginFilenameFilter());
                 for (File pluginPropertyFile : pluginPropertyFiles) {
Index: /trunk/src/com/romraider/logger/external/te/plugin/TEDataItem.java
===================================================================
--- /trunk/src/com/romraider/logger/external/te/plugin/TEDataItem.java	(revision 338)
+++ /trunk/src/com/romraider/logger/external/te/plugin/TEDataItem.java	(revision 339)
@@ -24,3 +24,7 @@
 public interface TEDataItem extends ExternalDataItem {
     void setRaw(int... raw);
+    
+    String getFormat();
+    
+    String getExpression();
 }
Index: /trunk/src/com/romraider/logger/external/te/plugin/TEDataItemImpl.java
===================================================================
--- /trunk/src/com/romraider/logger/external/te/plugin/TEDataItemImpl.java	(revision 338)
+++ /trunk/src/com/romraider/logger/external/te/plugin/TEDataItemImpl.java	(revision 339)
@@ -26,9 +26,12 @@
     private final TESensorUnits sensorUnits;
     private final TESensorType sensorType;
-    private final String[] units;
+    private final String units;
     private final String name;
+    private final String format;
+    private final String expression;
     private int[] raw;
 
-    public TEDataItemImpl(String name, String[] units, TESensorType sensorType, TESensorUnits sensorUnits) {
+//    public TEDataItemImpl(String name, String[] units, TESensorType sensorType, TESensorUnits sensorUnits) {
+    public TEDataItemImpl(String name, String units, TESensorType sensorType, TESensorUnits sensorUnits, String format, String expression) {
         super();
         this.name = name;
@@ -36,4 +39,6 @@
         this.sensorType = sensorType;
         this.sensorUnits = sensorUnits;
+        this.format = format;
+        this.expression = expression;
     }
 
@@ -47,5 +52,13 @@
 
     public String getUnits() {
-        return units[0];
+        return units;
+    }
+
+    public String getFormat() {
+        return format;
+    }
+
+    public String getExpression() {
+        return expression;
     }
 
Index: /trunk/src/com/romraider/logger/external/te/plugin/TEDataSource.java
===================================================================
--- /trunk/src/com/romraider/logger/external/te/plugin/TEDataSource.java	(revision 338)
+++ /trunk/src/com/romraider/logger/external/te/plugin/TEDataSource.java	(revision 339)
@@ -53,14 +53,24 @@
 
     {
-        dataItems.put(Lambda, new TEDataItemImpl("Wideband", new String[]{"Lambda", "AFR"}, Lambda, WIDEBAND_AFR_LAMBDA));
-        dataItems.put(AFR, new TEDataItemImpl("Wideband", new String[]{"AFR"}, Lambda, WIDEBAND_AFR_GASOLINE147));
-        dataItems.put(USR1, new TEDataItemImpl("User 1", new String[]{"VDC"}, USR1, VDC));
-        dataItems.put(USR2, new TEDataItemImpl("User 2", new String[]{"VDC"}, USR2, VDC));
-        dataItems.put(USR3, new TEDataItemImpl("User 3", new String[]{"VDC"}, USR3, VDC));
-        dataItems.put(TC1, new TEDataItemImpl("Thermocouple 1", new String[]{"raw"}, TC1, RAW));
-        dataItems.put(TC2, new TEDataItemImpl("Thermocouple 2", new String[]{"raw"}, TC2, RAW));
-        dataItems.put(TC3, new TEDataItemImpl("Thermocouple 3", new String[]{"raw"}, TC3, RAW));
-        dataItems.put(TorVss, new TEDataItemImpl("Thermistor or Vss", new String[]{"raw"}, TorVss, RAW));
-        dataItems.put(RPM, new TEDataItemImpl("Engine Speed (4-cyl)", new String[]{"RPM"}, RPM, ENGINE_SPEED));
+//        dataItems.put(Lambda, new TEDataItemImpl("Wideband", new String[]{"Lambda", "AFR"}, Lambda, WIDEBAND_AFR_LAMBDA));
+//        dataItems.put(AFR, new TEDataItemImpl("Wideband", new String[]{"AFR"}, Lambda, WIDEBAND_AFR_GASOLINE147));
+//        dataItems.put(USR1, new TEDataItemImpl("User 1", new String[]{"VDC"}, USR1, VDC));
+//        dataItems.put(USR2, new TEDataItemImpl("User 2", new String[]{"VDC"}, USR2, VDC));
+//        dataItems.put(USR3, new TEDataItemImpl("User 3", new String[]{"VDC"}, USR3, VDC));
+//        dataItems.put(TC1, new TEDataItemImpl("Thermocouple 1", new String[]{"raw"}, TC1, RAW));
+//        dataItems.put(TC2, new TEDataItemImpl("Thermocouple 2", new String[]{"raw"}, TC2, RAW));
+//        dataItems.put(TC3, new TEDataItemImpl("Thermocouple 3", new String[]{"raw"}, TC3, RAW));
+//        dataItems.put(TorVss, new TEDataItemImpl("Thermistor or Vss", new String[]{"raw"}, TorVss, RAW));
+//        dataItems.put(RPM, new TEDataItemImpl("Engine Speed (4-cyl)", new String[]{"RPM"}, RPM, ENGINE_SPEED));
+        dataItems.put(Lambda, new TEDataItemImpl("Wideband", "Lambda", Lambda, WIDEBAND_AFR_LAMBDA, "x", "0.##"));
+        dataItems.put(AFR, new TEDataItemImpl("Wideband", "AFR", Lambda, WIDEBAND_AFR_GASOLINE147, "x", "0.##"));
+        dataItems.put(USR1, new TEDataItemImpl("User 1", "VDC", USR1, VDC, "x", "0.##"));
+        dataItems.put(USR2, new TEDataItemImpl("User 2", "VDC", USR2, VDC, "x", "0.##"));
+        dataItems.put(USR3, new TEDataItemImpl("User 3", "VDC", USR3, VDC, "x", "0.##"));
+        dataItems.put(TC1, new TEDataItemImpl("Thermocouple 1", "raw", TC1, RAW, "x", "0.##"));
+        dataItems.put(TC2, new TEDataItemImpl("Thermocouple 2", "raw", TC2, RAW, "x", "0.##"));
+        dataItems.put(TC3, new TEDataItemImpl("Thermocouple 3", "raw", TC3, RAW, "x", "0.##"));
+        dataItems.put(TorVss, new TEDataItemImpl("Thermistor or Vss", "raw", TorVss, RAW, "x", "0.##"));
+        dataItems.put(RPM, new TEDataItemImpl("Engine Speed (4-cyl)", "RPM", RPM, ENGINE_SPEED, "x", "0.##"));
     }
 
Index: /trunk/src/com/romraider/logger/ecu/definition/ExternalDataConvertorImpl.java
===================================================================
--- /trunk/src/com/romraider/logger/ecu/definition/ExternalDataConvertorImpl.java	(revision 338)
+++ /trunk/src/com/romraider/logger/ecu/definition/ExternalDataConvertorImpl.java	(revision 339)
@@ -21,4 +21,8 @@
 
 import static com.romraider.logger.ecu.definition.xml.ConverterMaxMinDefaults.getMaxMin;
+import static com.romraider.util.ByteUtil.asUnsignedInt;
+import static com.romraider.util.JEPUtil.evaluate;
+import static com.romraider.util.ParamChecker.isValidBit;
+import static java.lang.Float.intBitsToFloat;
 
 import com.romraider.logger.ecu.ui.handler.dash.GaugeMinMax;
@@ -26,16 +30,30 @@
 
 import java.text.DecimalFormat;
+import java.util.Map;
 
 public final class ExternalDataConvertorImpl implements EcuDataConvertor {
+    private final String units;
+    private final String expression;
+    private final GaugeMinMax gaugeMinMax;
 	private final ExternalDataItem dataItem; 
-    private static final String FORMAT = "0.##";
-    private DecimalFormat format = new DecimalFormat(FORMAT);
+    private DecimalFormat format;
+    
+//    <conversion units="psi" expr="x*37/255" format="0.00" gauge_min="-20" gauge_max="40" gauge_step="5" />
+//    <conversion units="kPa" expr="x*37/255/14.50377*100" format="0" gauge_min="-120" gauge_max="280" gauge_step="40" />
+//    <conversion units="hPa" expr="x*37/255/14.50377*1000" format="0" gauge_min="-1200" gauge_max="2800" gauge_step="400" />
+//    <conversion units="bar" expr="x*37/255/14.50377" format="0.000" gauge_min="-1.2" gauge_max="2.8" gauge_step="0.4" />
 	
 	public ExternalDataConvertorImpl(ExternalDataItem dataItem) {
 		this.dataItem = dataItem;
+		this.units = dataItem.getUnits();
+		this.expression = "x";
+		this.gaugeMinMax = new GaugeMinMax(0,0,0);
+		this.format = new DecimalFormat("0.##");
 	}
 
     public double convert(byte[] bytes) {
-        return dataItem.getData();
+        double value = dataItem.getData();
+        double result = evaluate(expression, value);
+        return Double.isNaN(result) || Double.isInfinite(result) ? 0.0 : result;
     }
 
@@ -45,5 +63,5 @@
 
     public String getUnits() {
-        return dataItem.getUnits();
+        return units;
     }
 
@@ -53,5 +71,5 @@
 
     public String getFormat() {
-        return FORMAT;
+        return format.toPattern();
     }
 }
Index: /trunk/src/com/romraider/logger/ecu/EcuLogger.java
===================================================================
--- /trunk/src/com/romraider/logger/ecu/EcuLogger.java	(revision 338)
+++ /trunk/src/com/romraider/logger/ecu/EcuLogger.java	(revision 339)
@@ -628,5 +628,4 @@
             try {
                 List<? extends ExternalDataItem> dataItems = dataSource.getDataItems();
-
                 for (ExternalDataItem item : dataItems) {
                     externalDatas.add(new ExternalDataImpl(item, dataSource));
Index: /trunk/release_notes.txt
===================================================================
--- /trunk/release_notes.txt	(revision 338)
+++ /trunk/release_notes.txt	(revision 339)
@@ -35,10 +35,10 @@
 
 -------------------------------
-- 0.5.3b RC10 Notes (09/12/2011) -
+- 0.5.3b RC11 Notes (??/??/????) -
 -------------------------------
-This is the tenth beta release of the upcoming official 0.5.3b release.
+This is the eleventh beta release of the upcoming official 0.5.3b release.
 
 ---------------------------
-- 0.5.3b RC10 Known Issues -
+- 0.5.3b RC11 Known Issues -
 ---------------------------
 - Editor
@@ -55,4 +55,13 @@
 - Change Log -
 --------------
+
+0.5.3b RC11 (??/??/????)
+-----------------------
+
+--- Logger ---
+- TXS Tuner Wideband plugin added curtosy of, nitros
+- Added support for ECU/TCU Switch filtering
+- Added (msec) designation to logged CSV column heading
+- Added support for sorting the Selected? & Description paramater list entries.
 
 0.5.3b RC10 (09/12/2011)
