KalebKE / ME7Tuner

ME7Tuner is software that provides tools to help calibrate the MAF, primary fueling and torque/load requests
Apache License 2.0
51 stars 14 forks source link

Unable to load map definitions. #18

Closed allyouaskfor closed 2 years ago

allyouaskfor commented 2 years ago

Using Windows 10 I am not able to load each individual map definition. I successfully load the binary and matching XDF file and clicking the "select definition" button for each map it shows that it is able to locate them within the binary but after clicking "set", the definition remains undefined. Capture

Edit: I am having the same issue on my 2015 Macbook Air running Big Sur.

KalebKE commented 2 years ago

@allyouaskfor

Can you kindly provide your XDF file and binary? I will take a look.

allyouaskfor commented 2 years ago

Here is a zip containing the binary along with XDF. allyouaskfor-ME7Tuner.zip

KalebKE commented 2 years ago

@allyouaskfor

Thank you. I should have time to look at it this week.

run4x commented 2 years ago

Could this be related to regional settings? Dot vs comma as decimal separator.

I tried v1.0.3 on MBP (Monterey) and on Win10, both with non-US region and had similar issue as @allyouaskfor Then did a quick check on Win11 with US region and was able to set the maps in configuration.

With v1.0.4 I can select and set maps from xdf, but cannot open most of the tabs.

KalebKE commented 2 years ago

@run4x

Thanks for that information. I'll take a look. I may not be setting a default local XML parser.

KalebKE commented 2 years ago

@allyouaskfor

I see the issue. I haven't implemented functionality for the 'scalar link'. Your XDF is the first I have seen where this is used.

The tag for scalar link will embed in an tag... something like:

<embedinfo type="3" linkobjid="0x314C" />

However, some of your tags are also embedded with the pure internal axis tag which looks like:

<EMBEDDEDDATA mmedtypeflags="0x02" mmedaddress="0x139AA" mmedelementsizebits="16" mmedcolcount="12" mmedmajorstridebits="16" mmedminorstridebits="0" />

The tag ends up pointing to what is effectively another table definition that I need to parse to eventually get to the desired axis.

It seems like the expected behavior here is that if the exists it overrides the pure internal axis? e.g, if you have a scalar link defined you expect it to defer to that address and ignore the pure internal address? It appears that tuner pro works this way.

KalebKE commented 2 years ago

@allyouaskfor

There seems to be some junk conversions in the XDF file as well: where '0.114843.375' is not a number.

<XDFCONSTANT uniqueid="0x2348">
    <title>Minimum Possible AFR Request</title>
    <CATEGORYMEM index="0" category="12" />
    <CATEGORYMEM index="1" category="56" />
    <EMBEDDEDDATA mmedtypeflags="0x02" mmedaddress="0x19156" mmedelementsizebits="8" mmedmajorstridebits="0" mmedminorstridebits="0" />
    <datatype>28</datatype>
    <unittype>0</unittype>
    <DALINK index="0" />
    <MATH equation="0.114843.375 * X">
      <VAR id="X" />
    </MATH>
  </XDFCONSTANT>
allyouaskfor commented 2 years ago

I appreciate that information. Thanks for looking over it. The XDF is not one that I created myself but seeing that the issue is within the XDF, I will create a new one containing only the variables required to use ME7Tuner. I'll test that out on my Macbook as soon as i can. Is there anything else I can do to help?

KalebKE commented 2 years ago

@allyouaskfor

I do think I have the linking working, but I am having a hard time testing it due to the bad data in some of the unrelated tables. If you could get me a cleaned up (and potentially narrower) version of the XDF if would be helpful.

run4x commented 2 years ago

@KalebKE could you test the decimal separator (regional settings) issue with stock 551K bin and this short xdf attached? 551K-me7tuner.zip Can you open all tabs and use the functionality as expected? I can set the configuration, but cannot use the app at all.

KalebKE commented 2 years ago

@run4x

I have defaulted the locale to English in https://github.com/KalebKE/ME7Tuner/issues/19.

I did test your bin and XDF and it does work with the English locale and does not work with the German locale. I expect this will resolve your issues. Please re-open https://github.com/KalebKE/ME7Tuner/issues/19 if you continue to have issues.

Release: https://github.com/KalebKE/ME7Tuner/releases/tag/v1.0.5

KalebKE commented 2 years ago

@allyouaskfor

I am still working on your issue. I have to reverse engineer some bit fields from tuner pro to handle the matrix transformations correctly and I haven't found the time yet, but hopefully this weekend I will get a chance to work on it.

allyouaskfor commented 2 years ago

I appreciate all the work you're putting into this. Sorry that I haven't gotten you a slimmer XDF yet. I've been busy with work but I do still have the intention on getting that done. Thank you.