DTASwin rewrite

Discuss issues and tuning software like DTASWin, E-Race, MegaLogViewer(DTA), etc. Also post archive versions of firmware.
Post Reply
Alex DTA
Posts: 1622
Joined: Fri Feb 28, 2014 1:03 pm
ECU Model: S40 Pro
Distributor: DTA
Firmware Version: 79

DTASwin rewrite

Post by Alex DTA »

Hi all

I'm starting to rewrite DTASwin from the ground up. I have a whole load of improvements to make, but would like to know what you guys think can be improved.

Please note, this is not an ECU features thread, this is only the software.

I don't promise to include all of them, or even any of them, but please feel free to include even a small niggle.

The main change I'm making is to remove the dependence on a particular USB driver. Hopefully this will mean other makes of cable can reliably be used, but Prolific will still be the main one, as it's widely recognised as the best.

There will also be UI updates to move logic off UI threads, and much more in the background that will never be seen.

I'll be changing the gauges on the Real Time Display. I'm hoping to make them user definable, or at least give the option to select a few values from the data stream.

I'd also like to improve the Real Time Mapping screen to have a target showing where the current values are.

That's just a few of the things I'm thinking of.

Over to you.
Rob Stevens
Posts: 1247
Joined: Thu Jul 28, 2011 4:10 am
ECU Model: S100 Pro
Distributor: None-Coil On Plug :)

Re: DTASwin rewrite

Post by Rob Stevens »

Alex, I mentioned before that the oil pressure shut down operates on high pressure as well as Low, high as in over 10 Bar.
Perhaps somehow freeing up the inputs and outputs so that they are user selectable i.e. the coils or injector drivers are not dedicated as such.

I too would like to see a tidy up of the real time mapping, I've always found it odd that the cross hairs are not centred on the cell you are interested in.

I use launch control and would like the ability to reduce the rpm target as speed rises. I know I sort of have that option via time control where no wheel speed sensor is allowed but other ecu's allow what i'm interested in. Currently I turn the launch knob down whilst under way!

For cars with sequential gear boxes and gear pot the ability to turn off launch control once out of your start gear, I find if I change up early from 1st to 2nd to try and get some traction I'm stuck with traction not coming on until pre set speed.

Perhaps a more useful data log without the need to load up e-race

And that's just a start!
stevieturbo
Posts: 3577
Joined: Tue Aug 02, 2011 12:08 pm
ECU Model: No ECU
Location: Norn Iron

Re: DTASwin rewrite

Post by stevieturbo »

When you say software, and not features...the two are sort of integrated ? Some of the below may fall outside that, but they are all software related.

From a software perspective...ie actual live tuning...there is room for improvement.

Main gripes were always that there is still no proper live mapping, as making changes was always cumbersome. Although I appreciate Allan liked this, as it prevented mistakes having an immediate effect. It also prevented actual tuning having an immediate effect lol.

So...

Ability to either select a cell, and +/- keys to alter the value. ( motec uses pgup/pgdown buttons, which can be convenient too as these are typically on the far side of the keyboard so easy accessed....it's about the only good thing on their live tuning software though ! )

But I'm more used to using the +/- buttons from other ecu's and for most it would make more sense

Ability to select a group of cells, and do the same thing, means changes to the map can be made very quickly.
As well as normal direct value entries to either a single cell or block of cells.

Ability to select a group of cells, and much as current software, apply a maths function to those cells, whether add, subtract, multiply or divide )

All the above just make live tuning fast and easy, and for those changes to happen in real time, with no additional keystrokes.

If you wanted to add small safety feature elsewhere there could be an overall user definable spark timing maximum, to prevent timing hitting say 60deg if you did incorrectly do something silly.

Divorcing the Analogue inputs and outputs is a biggie. Feature or software ? Bit of both really.

Likewise as Rob says, allowing the user to use any un-used output as a flexible PWM output with a user definable 3d table for each. Even just a basic PWM table gives users a lot of freedom, if there isnt a specific application already defined.

Instead of having to manually press a switch for launch control...for those with a speed input, give them the option of simply using speed as the triggers.

ie speed below 2mph and TPS > 60% ( user definable settings ) and launch is ON. The launch timer or ramp then starts as soon as the vehicle moves or exceeds 2mph.

Launch can then re-enable once speed falls below a pre-set speed again.

If the driver closes throttle below 60%, launch turns off again. So it's always there in the background, and doesnt need any buttons pressed or held when there is a speed signal to use.

Some clarity added to Lambda functions...at present it's still a mix/match of narrowband/wideband settings on same screen.
Free up Lambda2 for logging at all times. Just because sequential is not operative, doesnt mean it isnt worthwhile logging both banks.
While some users want or dont want it...an ability to turn off/on wideband control under/over certain load thresholds.

Maybe have a 3d table as per normal fuel/spark tables with a simple off/on value in each cell for closed loop off or on ?

I mentioned before about safety features/limp modes

Oil pressure/temp coolant temp are all obvious

Fuel pressure is a good one...simple limp mode trigger if fuel pressure relative to manifold pressure falls below a certain threshold for a user defined time

relative fuel pressure should be an almost static value if everything is working ok. If this value falls below threshold for say 0.5s, thats an indication of a problem and limp mode.

Likewise lean trip in a similar fashion.

Engine coolant pressure or crankcase pressure trips ? Coolant pressure can be handy, for either leaks, head gasket issues etc.
Whilst I havent seen it done yet, a rate of change trip would be best.
ie if coolant pressure rises fast, it could mean a HG problem and you could implement a limp mode. Slow rises in pressure not so bad, but with an overall upper limit.
Likewise from a burst hose or leak...a fast rate of change downwards would indicate a problem and force a limp.


PC Comms is one thing....slow datalog downloads was one of my biggest gripes with DTA. It takes far too long to download what are very small logs. Could that be improved ? That always drove me mad downloading logs !

And even bigger ask...ability to download a log without having to kill the engine ?
And on logging, ability to log certain parameters at different rates.

eg temps could be slower than rpm or tps. And giving the user more automated start/stop points.

I personally like logging all the time, but some dont.

And the main tables. MAP1 and MAP2 were always restrictive...especially as MAP2 essentially covered ALS.

Giving the user 2, 3, 4 full fuel/spark/boost/AFR tables would be much better, and fully divorce ALS as a separate function.
Maps can be selected via a manual switch by the driver.

Idle control, use idle air valve and/or timing. Not one or the other, but both if desired.

Oscilloscope feature. Would be nice if it displayed an actual scope trace, and an easier to understand timescale along the bottom.
eg show crank rotation degrees as a lower scale ? And 0 would indicate where in the cycle the scope actually is taking into account where the user has set the missing tooth to
It would be helpful for remote diagnosis with more info.
Alex DTA
Posts: 1622
Joined: Fri Feb 28, 2014 1:03 pm
ECU Model: S40 Pro
Distributor: DTA
Firmware Version: 79

Re: DTASwin rewrite

Post by Alex DTA »

Useful stuff already, but just to clarify, I'm talking software only (not firmware, not hardware).
Another way of thinking of this is how you change things, not what you can change.
I'm only talking about what you see on the PC, and how that can be improved.

Changing outputs/launch functionality, etc. is firmware/hardware.

Real time mapping and scope improvements, yes.

I'll dissect the above properly tomorrow, it's late now.
stevieturbo
Posts: 3577
Joined: Tue Aug 02, 2011 12:08 pm
ECU Model: No ECU
Location: Norn Iron

Re: DTASwin rewrite

Post by stevieturbo »

Some things I'd stay away from..making the software all colourful and glitzy, and requiring a mouse to navigate.

I may be more old school...but I like being able to use the keyboard to navigate. Sitting inside a car it's just more positive than the mouse pad, especially when the vehicle is moving.

Some of the newer ecu stuff out there like Link, Haltech etc....their software is horrific to navigate even sitting still with a proper mouse/keyboard.

I like the keep it simple approach.
lumley32
Posts: 214
Joined: Mon May 10, 2010 5:09 pm
ECU Model: S80 Pro
Firmware Version: 61

Re: DTASwin rewrite

Post by lumley32 »

as stevie said, i think it would be far better to have a simple layout that can be used with only a keyboard.

apart from that the only thing that springs to mind is when doing rough mapping when you select cells to be modified (Ctrl F5) with the engine running some times it will de select the cells you want. i think its when the running cell changes.
stevieturbo
Posts: 3577
Joined: Tue Aug 02, 2011 12:08 pm
ECU Model: No ECU
Location: Norn Iron

Re: DTASwin rewrite

Post by stevieturbo »

The good thing about keeping most navigation via keyboard...is that you always have the mouse option too. But when you gear everything around mouse use...it doesnt always work so easy because keystrokes are missing.

Re logging. Adding more logging., eg raw input values can be handy, log any corrections that are in place or any closed loop corrections taking place etc.
It can be a huge help diagnosing problems when you can see what the ecu was doing to any base values, to then end up at the output value.
PhillipM
Posts: 177
Joined: Tue May 13, 2014 5:30 am
ECU Model: S80 Pro
Distributor: DTA UK
Firmware Version: 73

Re: DTASwin rewrite

Post by PhillipM »

I'd like a fix for the hidden buttons and cells on the bottom of pages that don't appear unless you resize a window to be big enough - that's pretty damned annoying.
Alex DTA
Posts: 1622
Joined: Fri Feb 28, 2014 1:03 pm
ECU Model: S40 Pro
Distributor: DTA
Firmware Version: 79

Re: DTASwin rewrite

Post by Alex DTA »

Rob Stevens wrote:Alex, I mentioned before that the oil pressure shut down operates on high pressure as well as Low, high as in over 10 Bar.
Perhaps somehow freeing up the inputs and outputs so that they are user selectable i.e. the coils or injector drivers are not dedicated as such.
Oil pressure is firmware, freeing up inputs is hardware.
Rob Stevens wrote:I use launch control and would like the ability to reduce the rpm target as speed rises. I know I sort of have that option via time control where no wheel speed sensor is allowed but other ecu's allow what i'm interested in. Currently I turn the launch knob down whilst under way!

For cars with sequential gear boxes and gear pot the ability to turn off launch control once out of your start gear, I find if I change up early from 1st to 2nd to try and get some traction I'm stuck with traction not coming on until pre set speed.
Both firmware.
Rob Stevens wrote:Perhaps a more useful data log without the need to load up e-race
I hadn't even thought about that. Not sure, but I'll look in to it. There are other very good options if you don't like ERace.

Real Time Mapping, yes.
Alex DTA
Posts: 1622
Joined: Fri Feb 28, 2014 1:03 pm
ECU Model: S40 Pro
Distributor: DTA
Firmware Version: 79

Re: DTASwin rewrite

Post by Alex DTA »

stevieturbo wrote:When you say software, and not features...the two are sort of integrated ? Some of the below may fall outside that, but they are all software related.
DTASwin is changing, but the the ECU and Firmware aren't. This means that no features will be added or removed to the ECU. Does that make more sense?
stevieturbo wrote:From a software perspective...ie actual live tuning...there is room for improvement.

Main gripes were always that there is still no proper live mapping, as making changes was always cumbersome. Although I appreciate Allan liked this, as it prevented mistakes having an immediate effect. It also prevented actual tuning having an immediate effect lol.
I'm not sure I understand this. If you use the knob box, or the keyboard controls, to change a value, this is updated on the ECU straight away. If you then change it again, it changes straight away. Once you're happy, you press Enter, and that value is recorded in brown on the map for saving if you want. F6 saves it to the map.
So the values are changed independently of the map, until they're what you want, and then saved to the map.

If this isn't what you mean, please elaborate.

stevieturbo wrote:Ability to either select a cell, and +/- keys to alter the value. ( motec uses pgup/pgdown buttons, which can be convenient too as these are typically on the far side of the keyboard so easy accessed....it's about the only good thing on their live tuning software though ! )

But I'm more used to using the +/- buttons from other ecu's and for most it would make more sense
This can already be done, in both live mapping and the main maps.

IN 20 x 14 Main Maps
Alt Up Arrow Nudge Cell to Higher Value
Alt Down Arrow Nudge Cell to Lower Value
Alt Page Up Coarser Nudge Cell to Higher Value
Alt Page Down Coarser Nudge Cell to Lower Value

IN REAL TIME MAPPING
Shift F7 Ignition+
Cntrl F7 Ignition-
Shift F8 Fuel +
Cntrl F8 Fuel-
Cntrl P Knobs on/off (toggle)
Cntrl C Knobs coarse/fine
Cntrl K Stop Engine
Cntrl I Interp on/off
F6 Send Traced Cells to ECU
F7 Cam 1 target on left Dyno Box Knob
F8 Cam 2 target on right Dyno Box Knob
stevieturbo wrote:Ability to select a group of cells, and do the same thing, means changes to the map can be made very quickly.
As well as normal direct value entries to either a single cell or block of cells.
Yes, I'll look at this.
stevieturbo wrote:Ability to select a group of cells, and much as current software, apply a maths function to those cells, whether add, subtract, multiply or divide )
So you're just asking for the current functionality to be increased?
stevieturbo wrote:Divorcing the Analogue inputs and outputs is a biggie. Feature or software ? Bit of both really.
Firmware, as it requires an ECU change to match.
stevieturbo wrote:Likewise as Rob says, allowing the user to use any un-used output as a flexible PWM output with a user definable 3d table for each. Even just a basic PWM table gives users a lot of freedom, if there isnt a specific application already defined.
Noted, same answer as above.
stevieturbo wrote:Instead of having to manually press a switch for launch control...for those with a speed input, give them the option of simply using speed as the triggers.

ie speed below 2mph and TPS > 60% ( user definable settings ) and launch is ON. The launch timer or ramp then starts as soon as the vehicle moves or exceeds 2mph.

Launch can then re-enable once speed falls below a pre-set speed again.

If the driver closes throttle below 60%, launch turns off again. So it's always there in the background, and doesnt need any buttons pressed or held when there is a speed signal to use.
Why would you want launch to activate at a low speed? Once you're going, traction control should take over.
stevieturbo wrote:Some clarity added to Lambda functions...at present it's still a mix/match of narrowband/wideband settings on same screen.
Yes
stevieturbo wrote:Free up Lambda2 for logging at all times. Just because sequential is not operative, doesnt mean it isnt worthwhile logging both banks.
While some users want or dont want it...an ability to turn off/on wideband control under/over certain load thresholds.

Maybe have a 3d table as per normal fuel/spark tables with a simple off/on value in each cell for closed loop off or on ?
Firmware
stevieturbo wrote:I mentioned before about safety features/limp modes

Oil pressure/temp coolant temp are all obvious

Fuel pressure is a good one...simple limp mode trigger if fuel pressure relative to manifold pressure falls below a certain threshold for a user defined time

relative fuel pressure should be an almost static value if everything is working ok. If this value falls below threshold for say 0.5s, thats an indication of a problem and limp mode.

Likewise lean trip in a similar fashion.

Engine coolant pressure or crankcase pressure trips ? Coolant pressure can be handy, for either leaks, head gasket issues etc.
Whilst I havent seen it done yet, a rate of change trip would be best.
ie if coolant pressure rises fast, it could mean a HG problem and you could implement a limp mode. Slow rises in pressure not so bad, but with an overall upper limit.
Likewise from a burst hose or leak...a fast rate of change downwards would indicate a problem and force a limp.
Firmware, and also sensors we don't yet have.
stevieturbo wrote:PC Comms is one thing....slow datalog downloads was one of my biggest gripes with DTA. It takes far too long to download what are very small logs. Could that be improved ? That always drove me mad downloading logs !
I don't know, but I'll certainly look at it.
stevieturbo wrote:And even bigger ask...ability to download a log without having to kill the engine ?
Firmware.
stevieturbo wrote:And on logging, ability to log certain parameters at different rates.

eg temps could be slower than rpm or tps. And giving the user more automated start/stop points.
Firmware
stevieturbo wrote:And the main tables. MAP1 and MAP2 were always restrictive...especially as MAP2 essentially covered ALS.

Giving the user 2, 3, 4 full fuel/spark/boost/AFR tables would be much better, and fully divorce ALS as a separate function.
Maps can be selected via a manual switch by the driver.
That's a hardware limitation of the current ECU design. Not going to change, but I'll bear it in mind for the next generation.
stevieturbo wrote:Idle control, use idle air valve and/or timing. Not one or the other, but both if desired.
Firmware
stevieturbo wrote:Oscilloscope feature. Would be nice if it displayed an actual scope trace, and an easier to understand timescale along the bottom.
eg show crank rotation degrees as a lower scale ? And 0 would indicate where in the cycle the scope actually is taking into account where the user has set the missing tooth to
It would be helpful for remote diagnosis with more info.
Yes, will look at what can be done
Post Reply