This is a TODO-page to get megatunix working the genboard v3 during this year. keep your dreams somewhere else, for example MegaTunix/Dreams
- Important tasks
- work on the config tabs, MegaTunix/ToDo/ConfigTabs , Draw them in glade first, and we'll work out a way to autogenerate datamaps later..
- clean this todo up..
- click sequence dependent error - see below
- VE table 3D, correct dot position. The upper byte of the 16bit corr.ve_hp (calculated by ve.c, used by fuelcalc.c), sent by comm.c in the "A" runtime variables offset 18, called vecurr in megatunix. Seems to jump around on screen. Not sure where the problem is. Some logging and investigation needed. The mapkpa and rpm_... values are OK.
- check Enrichments screen
- change EGO (glade too!) for the more advanced ego configuration (incredible EGO correction)
- find out why Engine vitals likes to crash
- MegaTunix/Protocol - documentation task
- make it possible to override interrogation (on the user's responsibility) and set ECU type directly (in config).
- full communication compatibility, with all pages
- rpm and kpa bins mtx => ECM direction seem to be bad.
- injopen and other calculated variables ECM => mtx direction seem to be bad.
- injopen and other calculated variables .. I bet mtx => ECM direction is bad too
- Adding menus for the full genboard config
- Add logging for our extra input channels, EGT, EBP, and so on.
- GUI functions (hehe can you be specific ? :-)
- Ignition tab Glade file and coresponding datamap are now in CVS - The ign_out section still needs to be completed, but the template is there and doesn't cause MTX To crash. If you want to use it, use the new profile committed to CVS. Please report if the main table no longer works. Maybe backout the profile change too.
- A way to nicely set the non-linear settings (The priming pulse and cranking pulsewidth changes slope from 100usec to 500usec at value=200
- Outputchannels are set by dropdowns/spinbuttons, one pair for each channel, "INJFET" and "3"
- h can be set using 8x8 checkboxes, many boxes can be chosen.
- h will be enginephase-TDCarray very soon
- h can also be set using 8 sets of 8 radiobuttons
Strange error - click sequence dependent
I can click through tabs
- Engine vitals
- VE table
- Spark table
- Lamdba table
- Warmup in any order.
However if I select "Engine vitals" or "Enrichments" after visiting the 3D view (that works, eg. the lambda table), than it bombs out, with something like:
tabloader.c: bind_data() binding ENUM "handler","38" to widget "ww_burn_button" tabloader.c: bind_data() binding INT "page","0" to widget "ww_burn_button" tabloader.c: bind_data() binding STRING key:"bind_to_list" value:"burners" to widget "ww_burn_button" tabloader.c: bind_data() All is well, leaving... tabl (megatunix): GLib-CRITICAL **: g_convert: assertion `str != NULL' failed (megatunix): GLib-CRITICAL **: g_convert: assertion `str != NULL' failed (megatunix): GLib-CRITICAL **: g_convert: assertion `str != NULL' failed
Same seems to work in 0.6.10 (but it might still be .datamap issue). Is it valid to copy the whole .MegaTunix directory back under 0.6.10 (should that work?).
use bind_to_list key to cure greyed out 3D buttons
<widget class="GtkButton" id="3d_view_button"> ... <property name="sensitive">False</property>
this tricked us badly (vetable..glade).
Now it is set to True, but the nice solution will be something like
[3d_view_button] keys=page,table_num,x_source,y_source,z_source,tooltip,bind_to_list key_types=_INT_,_INT_,_STRING_,_STRING_,_STRING_,_STRING_,_STRING_ page=0 table_num=0 x_source=raw_rpm y_source=mapkpa z_source=vecurr bind_to_list=3d_buttons tooltip=.....
in the .datamap file. The "bind_to_list=3d_buttons" is used to enabled/disabled it when needed...
Where is the documentation for this that we should read?
From Dave_A's words it seems like there is a super docs for all this (unlike for GenBoard), that we just miss for some reason.
The Help Dave A Help Us Wishlist
- Get datamap and glade files out of VEMS CVS and into MTX CVS! - make zip releases of tried setup (just like we do for firmware) to avoid user's problems with CVS
- MegaSquirt GenboardStimulator kit.
Just order from the WebShop and choose "money order", it will be serviced free of charge (put this into the order note). Don't forget to add 1 or 2 genboardv3 board as well: v3.1 will be shipped from US from the set that was put aside to help table-testing. Also free of charge, of course. Browse through the items to see what else would be helpful, just in case (eg. FBUS cable, etc...). Thanx!
- profile is DONE
- The vetable, lambda table, and ignition table datamaps are DONE
- ability to override the autodetection, as we have Megatune and MSNS compatibility: DONE (offline mode)
- option to view all tables in decimal or hexidecimal format: DONE
- The communication protocol is exactly the same for GenBoard/VerTwo, the same instructions apply.
- Thing is how to get Megatunix reagonize ver2.2 correctly. No compatible modes turned on in my_make it reagonize my board as Standard Bowling & Grippo v2.0-3.01. When MSNS is turned on it is reagonized as MSNS ofcource. This bugs me out.
Sources (main working places):
- sourceforge megasquirtavr CVS
- firmware/bin/ (perl scripts, eg.)
- emu_genboard.pl and
- firmware/comm.c (firmware implementation of MegaTunix/Protocol)
- firmware/menu.c (firmware implementation of OnlineCourse/TextualCommands - also used for "make mtt" style configuration )
- JTune/src/org/vemsgroup/firmware/ multitooth generator in JAVA
- sourceforge megatunix CVS
- MegaTunix sources: PC side implementation of MegaTunix/Protocol and GUI