Dave's unofficial TODO list from his favorite nitpicker

MegaTunix is a cross-platform tuning application written and maintained by David J. Andruczyk. Discuss all things MTX here!
dandruczyk
LQFP112 - Up with the play
Posts: 100
Joined: Sun Apr 06, 2008 6:30 pm

Re: Dave's unofficial TODO list from his favorite nitpicker

Post by dandruczyk »

Fred wrote:When logging, and you send a hard reset, you get a bunch of all zero log entries, this could easily be a firmware thing, just all zero until something gets done, and you are asking N times before that, Thoughts? Probably my fault/issue/feature/design. I might work on that if it is, but could also be your requests getting ignored and you just filling out zeros? Just taking a stab in the dark on this one. Not a big deal no matter what anyway.

Dave, i get segfaults when its trying to interrogate sometimes. I haven't done a trace, no, but you can probably make it happen if you try enough? I had other things to say too, like how do i make it always choose freeems (or ms2 for the vast majority of users) and just try that straight away when launching without asking? And can we get the "save internal data" to not seg fault and just exit even if it doesnt save? And logs end up empty if you remove the device out from under mtx before you close them. I noticed more stuff, but it's late, and I just sorted out the decoder stuff and need to pack my things. So no further detail at this time.

Also, something to think about, when you do a hard reset, you end up with heaps of streamed packets flying at you which you had previously turned off. Just a thought.

Keen for:

Stability, usability, faster logging/stream logging, in that order, if you care what i want, which you probably don't really :-)

I'll start wanting other things sometime after sunday, but I understand how busy you are, so...

Fred.

LOAD/SAVE is NOT IMPLEMENTED until you get me XML descriptions of the data layout (as previously discussed, unless you want me to implement that backup/restore format that I currently use for MS (which sucks in many ways). so it WILL crash if you try to use that as the handlers are unconnected (null pointer).

Stream logging is already re-enabled, and YOU NEED TO TEST IT. and fix gufi's app to detect the different payload ID's and handle appropriately.

If you report crashes that I don't see without a debug build trace, I WILL IGNORE them. I don;t see crashes with my TA card, so without a debug level trace from you, I am ignoring you.
dandruczyk
LQFP112 - Up with the play
Posts: 100
Joined: Sun Apr 06, 2008 6:30 pm

Re: Dave's unofficial TODO list from his favorite nitpicker

Post by dandruczyk »

Fred wrote:Everything is working spiffingly, but I'd like to see some usability changes, copy/paste from IRC :

[17:21] <puma_numero_uno> djandruczyk: that mtx whinging is about to start :-) something i heard marcos complaining about too. incescant dialog boxes. particularly the "i've unplugged the cable" one, i [fizzle] know in the first place, but ok, pop it up once, after that, leave it down as i already hit OK and I definitely know by now.
[17:22] <puma_numero_uno> what would be even better would be if it said "go offline" or "retry" or "just wait till i tell you to try again bastard" or "try periodically, and work when it connects and dont bother me again till then, or not even then"
[17:23] <puma_numero_uno> it'd be great to be able to turn off the exit ones too. "are you sure you want to quit" - yes, yes and never ask me again, no - should be the options there :-)
[17:23] == `CHR1S [~chris@c-71-206-192-128.hsd1.pa.comcast.net] has quit [Ping timeout: 250 seconds]
[17:24] <puma_numero_uno> and the saving stuff, the internal datalog one, i never asked for such a log, so either save it without teling me, or dont save it unless i ask you to,
[17:24] <puma_numero_uno> the last one is "do you want to save your settings" well, how about "yes, yes, and remember my decision, no, no and remember my decision"
[17:25] <puma_numero_uno> a few changes in those areas and you could keep the same functionality for those that like it, and the rest of us can ditch it in favour of faster use and less annoying popups
[17:25] <puma_numero_uno> disclaimer, this hasn't been well thought through, but there is some good stuff here, and I'm sure many others would agree with at least some of it, plus none of it removes the option to retain the same behaviour.
[17:25] <puma_numero_uno> posting all this to your thread :-)

Pretty please? :-)

run megatunix with the "-q" arg and it will not bother you. if you can't stand the extra 3 chars, setup an alias.
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Dave's unofficial TODO list from his favorite nitpicker

Post by Fred »

For fcuks sake, Dave, seriously.... I wrote that post while running out the door/going to sleep in order to give you information to think about on a subconscious level before I went away and before i could get you a trace, why be such a pain about it? I said "no, I don't have a trace" because I knew you'd ask. IMO I'd rather hear someone come back to me with "I had this happen at this point of execution" without more information early and provide more info later than just come later with more info. The more time it has to soak in the better.

Re the -q : I don't want them gone all together, I want specific different behaviour to what the default is. And I don't want the same behaviour for each of the events that warrants a dialog. And I strongly disagree with some of the ways it works on connect/startup/close. While it's working, great, love it, so far! But that stop/connect/start stuff is suboptimal in my opinion. I realise yours differs, however this is a thread for FEEDBACK, you're allowed to disagree, I'll keep giving it, you keep disagreeing, great, but why be so fcuking difficult about it always? :-/

As for the load/save thing, why not stub it so that it does not crash??? I knew why it was dying, but IMO, you shouldn't show the option, or should make it do nothing/not crash if you do show it. I'm not asking for you to implement it, just to make it behave sanely. Again, you can ignore this request, but please do it in a friendly way... :-p

Stream logging I will test shortly, I just got back from 24 hours offline/at the beach/shooting things/4wding/etc, I was trying to give you information, whatever i fcuking could, before I went away, for your benefit, to make things easier for you...

Take it as intended, we're supposed to be friends, I'm trying to help!!!

Your mate, Fred!
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
dandruczyk
LQFP112 - Up with the play
Posts: 100
Joined: Sun Apr 06, 2008 6:30 pm

Re: Dave's unofficial TODO list from his favorite nitpicker

Post by dandruczyk »

Fred wrote:For fcuks sake, Dave, seriously.... I wrote that post while running out the door/going to sleep in order to give you information to think about on a subconscious level before I went away and before i could get you a trace, why be such a pain about it? I said "no, I don't have a trace" because I knew you'd ask. IMO I'd rather hear someone come back to me with "I had this happen at this point of execution" without more information early and provide more info later than just come later with more info. The more time it has to soak in the better.

Re the -q : I don't want them gone all together, I want specific different behaviour to what the default is. And I don't want the same behaviour for each of the events that warrants a dialog. And I strongly disagree with some of the ways it works on connect/startup/close. While it's working, great, love it, so far! But that stop/connect/start stuff is suboptimal in my opinion. I realise yours differs, however this is a thread for FEEDBACK, you're allowed to disagree, I'll keep giving it, you keep disagreeing, great, but why be so fcuking difficult about it always? :-/
The come up with a seque4nce of HOW you want it 5to behave and BACK IT UP with GOOD REASONS WHY it should behave that way. You have failed to do that (back it up), and only spout off about how it isn't; the way you want it to be, without putting in thoughtful GOOD suggestiosn on how to make it better while still properly conveying state to the end user.
Fred wrote: As for the load/save thing, why not stub it so that it does not crash??? I knew why it was dying, but IMO, you shouldn't show the option, or should make it do nothing/not crash if you do show it. I'm not asking for you to implement it, just to make it behave sanely. Again, you can ignore this request, but please do it in a friendly way... :-p

Stream logging I will test shortly, I just got back from 24 hours offline/at the beach/shooting things/4wding/etc, I was trying to give you information, whatever i fcuking could, before I went away, for your benefit, to make things easier for you...

Take it as intended, we're supposed to be friends, I'm trying to help!!!

Your mate, Fred!
I will not blindly change behavior in mtx (even if you think its surrent mode sucks) without a REALISTIC compelling reason AS WELL AS a suggested alternative that is logical, sensible and helpful to the end user (And not just the technical end user. You need to think of things not just for you, but for ALL the users who use mtx (all 6 of them))
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Dave's unofficial TODO list from his favorite nitpicker

Post by Fred »

I'll reply to that another time, but for now:

Code: Select all

libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../../.. -I../../../include -D_REENTRANT -I/opt/local/include/gtk-2.0 -I/opt/local/lib/gtk-2.0/include -I/opt/local/include/atk-1.0 -I/opt/local/include/cairo -I/opt/local/include/gdk-pixbuf-2.0 -I/opt/local/include/pango-1.0 -I/opt/local/include/gio-unix-2.0/ -I/opt/local/include -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include/pixman-1 -I/opt/local/include/freetype2 -I/opt/local/include/libpng12 -DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED -I/opt/local/include/libxml2 -D_REENTRANT -I/opt/local/include/libglade-2.0 -I/opt/local/include/gtk-2.0 -I/opt/local/include/libxml2 -I/opt/local/lib/gtk-2.0/include -I/opt/local/include/atk-1.0 -I/opt/local/include/cairo -I/opt/local/include/gdk-pixbuf-2.0 -I/opt/local/include/pango-1.0 -I/opt/local/include/gio-unix-2.0/ -I/opt/local/include -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include/pixman-1 -I/opt/local/include/freetype2 -I/opt/local/include/libpng12 -O2 -DMTXPLUGINDIR=\"/usr/local/share/MegaTunix/plugins\" -DLOCALEDIR=\"/usr/local/share/MegaTunix/locale\" -DDATA_DIR=\"/usr/local/share/MegaTunix\" -DSNAPSHOTS_DATA_DIR=\"ecu_snapshots\" -DLOOKUPTABLES_DATA_DIR=\"LookupTables\" -DINTERROGATOR_DATA_DIR=\"Interrogator\" -DGUI_DATA_DIR=\"Gui\" -DGAUGES_DATA_DIR=\"Gauges\" -DDASHES_DATA_DIR=\"Dashboards\" -DGAUGEDESIGNER_GLADE_DIR=\"gaugedesigner\" -DDASHDESIGNER_GLADE_DIR=\"dashdesigner\" -DREALTIME_MAPS_DATA_DIR=\"RealtimeMaps\" -DRTSLIDERS_DATA_DIR=\"RuntimeSliders\" -DRTTEXT_DATA_DIR=\"RuntimeText\" -DRTSTATUS_DATA_DIR=\"RuntimeStatus\" -DGTK_DISABLE_COMPAT_H -D_MAJOR_=0 -D_MINOR_=9 -D_MICRO_=24 -D_VER_SUFFIX_=\"modular_0.4\" -Wall -Wno-unused -pedantic -O2 -MT ms1_gui_handlers.lo -MD -MP -MF .deps/ms1_gui_handlers.Tpo -c ms1_gui_handlers.c  -fno-common -DPIC -o .libs/ms1_gui_handlers.o
ms1_gui_handlers.c: In function 'ecu_entry_handler':
ms1_gui_handlers.c:68: warning: ISO C forbids conversion of function pointer to object pointer type
ms1_gui_handlers.c:69: warning: ISO C forbids conversion of function pointer to object pointer type
ms1_gui_handlers.c:73: warning: ISO C forbids conversion of function pointer to object pointer type
ms1_gui_handlers.c:74: warning: ISO C forbids conversion of function pointer to object pointer type
ms1_gui_handlers.c: In function 'ecu_combo_handler':
ms1_gui_handlers.c:434: error: 'check_limits' declared as function returning a function
ms1_gui_handlers.c: In function 'ecu_update_entry':
ms1_gui_handlers.c:498: warning: ISO C does not support %n$ operand number formats
ms1_gui_handlers.c:526: warning: ISO C does not support %n$ operand number formats
make[4]: *** [ms1_gui_handlers.lo] Error 1
make[3]: *** [all-recursive] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
FreeAir:MegaTunix.ports fred$ 
Help! :-)
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
dandruczyk
LQFP112 - Up with the play
Posts: 100
Joined: Sun Apr 06, 2008 6:30 pm

Re: Dave's unofficial TODO list from his favorite nitpicker

Post by dandruczyk »

Fixed
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Dave's unofficial TODO list from his favorite nitpicker

Post by Fred »

Thanks man! I found some other shit last night, wrote the post, and never hit go, so I'll get on the other box and do that now. I wanna use your app today/tomorrow and tune my truck, be proud! :-)
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Dave's unofficial TODO list from his favorite nitpicker

Post by Fred »

OK, tonight we tried to use MTX to adjust the box in my truck, and had some luck, and some hassles. You probably know about some of it, but I'll list here anyway. Firstly, though, thanks for all your awesome work getting us this far, brilliant! :-)

The first thing to come to mind is that fetch from ECU doesn't seem to work, and burn to device doesnt seem to work, for the VE table. This could have been OK, but the export and restore table buttons also don't work. So I left the key on and just stalled it to kill the engine, not a big deal. We took screen shots to "save" the tune. I'll add it to the firmware directly. The save/restore thing is kinda important right now with such frequent firmware loads, but i can get buy with code edits to make it sweet if i have to :-)

Second thing is that changes in 3d and 2d don't appear to update each other, certainly if you update in 3d it doesnt show in 2d.

Third thing is, the "I'm here" dot is in totally the wrong place in the 3d view, but I think you're aware of that. Also no cell highlight in 2d view.

Also, any chance of hard coded ign timing table same as ve but cells are raw/1024 = deg btdc and lamda, cells same as var returned? Not critical, but currently tuning via code edits and reload. Yes, I know, xml xml xml, but it should be easyish to replicate the same table stuff you already did, right? only thing to change is locID and var scaling for cells? if i'm wrong (i often am with mtx) then shoot me down in flames, i guess.

There might have been more stuff, but I forget now. Oh yeah, some popup that appears and vanishes so fast that you cant read it, bigger than normal nag windows, and on ubuntu in 3d view if that helps. not sure what it was, maybe it was mops bumping a key combo? is there something like that he could hvae caused?

Legend!
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
dandruczyk
LQFP112 - Up with the play
Posts: 100
Joined: Sun Apr 06, 2008 6:30 pm

Re: Dave's unofficial TODO list from his favorite nitpicker

Post by dandruczyk »

Fred wrote:OK, tonight we tried to use MTX to adjust the box in my truck, and had some luck, and some hassles. You probably know about some of it, but I'll list here anyway. Firstly, though, thanks for all your awesome work getting us this far, brilliant! :-)

The first thing to come to mind is that fetch from ECU doesn't seem to work, and burn to device doesnt seem to work, for the VE table. This could have been OK, but the export and restore table buttons also don't work. So I left the key on and just stalled it to kill the engine, not a big deal. We took screen shots to "save" the tune. I'll add it to the firmware directly. The save/restore thing is kinda important right now with such frequent firmware loads, but i can get buy with code edits to make it sweet if i have to :-)

Second thing is that changes in 3d and 2d don't appear to update each other, certainly if you update in 3d it doesnt show in 2d.

Third thing is, the "I'm here" dot is in totally the wrong place in the 3d view, but I think you're aware of that. Also no cell highlight in 2d view.

Also, any chance of hard coded ign timing table same as ve but cells are raw/1024 = deg btdc and lamda, cells same as var returned? Not critical, but currently tuning via code edits and reload. Yes, I know, xml xml xml, but it should be easyish to replicate the same table stuff you already did, right? only thing to change is locID and var scaling for cells? if i'm wrong (i often am with mtx) then shoot me down in flames, i guess.

There might have been more stuff, but I forget now. Oh yeah, some popup that appears and vanishes so fast that you cant read it, bigger than normal nag windows, and on ubuntu in 3d view if that helps. not sure what it was, maybe it was mops bumping a key combo? is there something like that he could hvae caused?

Legend!

Need details on the additional table (location ID, offsets for such and such (hopefully they are 16x16). the flashing window is an oddball race condition i never really ironed out, its harmless, and only mildly annoying.
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Dave's unofficial TODO list from his favorite nitpicker

Post by Fred »

Yeah, I set the default in the code to be 16 16 for you a while back, all tables are that now, though in future if a tuning app supports it they could easily all be different and the firmware wouldn't care.

the lambda table is 6
the ignition table is 8

the format, size, structure, offsets, are all the same, only the location id and the cell value/unit transformations are different. details for that copy/paste from above:

"ign timing table same as ve but cells are raw/1024 = deg btdc and lamda, cells same as var returned?"

meaning:
* a lambda cell has /32768
* a ign cell has /1024

What did you mean with "(18:10:56) Dave: number don't change in the gui properly either, but i'll fix that tomorrow maybe" ? I guess I'll find out soon :-)

Thanks Dave! :-)

Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
Post Reply