bug report (?) M1 Build parameters not accessible in Tune

Support forum for users of the M1 Tune

bug report (?) M1 Build parameters not accessible in Tune

Postby Fast_Moto on Sat Mar 18, 2017 8:42 am

I created a new M1 Build that contained four cylinder enable parameters (see picture). In M1 tune, only one of those four can be accessed, although the firmware help shows that all four enable parameters exist. has anyone else encountered this issue?
Attachments
Parameters not visible in M1 Tune.jpg
Parameters not visible in M1 Tune.jpg (360.31 KiB) Viewed 19423 times
Fast_Moto
 
Posts: 111
Joined: Mon Apr 19, 2010 12:49 pm

Re: bug report (?) M1 Build parameters not accessible in Tun

Postby David Ferguson on Sat Mar 18, 2017 9:15 am

Just a thought -- Can you show maybe a screen shot of build with each parameter object selected so we can see the properties? What does the associations show -- are these parameters used by enabled objects?

For example, LTC "Exhaust Lambda Cylinders" don't show up until the Exhaust Lambda Cylinder X CAN bus has selected (i.e. changed from "Not in Use").
David Ferguson
Veracity Racing Data
David Ferguson
Pro User
 
Posts: 1394
Joined: Fri Nov 07, 2008 2:45 am
Location: Paso Robles, California

Re: bug report (?) M1 Build parameters not accessible in Tun

Postby Fast_Moto on Sat Mar 18, 2017 9:40 am

The parameter for each of the four Cylinder [1-4] Enable parameters is a Subsytem enable enumeration. I also tried a custom, project specific, enumeration (with not in use/enabled enumerators) instead, but no different. I attached a picture of the build showing the parameters for one of the cylinder enable parameters.

Here is the relevant code

//Enable LTCs

local ci = Collector.LTC Index.AsInteger();
local ci1 = Cylinder 1.LTC Index.AsInteger();
local ci2 = Cylinder 2.LTC Index.AsInteger();
local ci3 = Cylinder 3.LTC Index.AsInteger();
local ci4 = Cylinder 4.LTC Index.AsInteger();

if(Engine.Run Time > This.Engine Run Time or Engine.Stall Time < Power Save Delay)
{
Collector Enable eq Collector Enable.Enabled ? LTC.Mode (ci, true) : LTC.Mode (ci, false);

expand (n = 1 to Engine.Configuration.Cylinders)
{
Cylinder $(n) Enable eq Cylinder $(n) Enable.Enabled ? LTC.Mode (ci$(n), true) : LTC.Mode (ci$(n),false);
}
}
else
{
LTC.Mode (ci,false);

expand (n = 1 to Engine.Configuration.Maximum Cylinders)
{
LTC.Mode (ci$(n), false);
}
}

P.S. the indents don't appear to show properly.
Attachments
Parameters not visible in M1 tune 2.jpg
Parameters not visible in M1 tune 2.jpg (622.02 KiB) Viewed 19420 times
Fast_Moto
 
Posts: 111
Joined: Mon Apr 19, 2010 12:49 pm

Re: bug report (?) M1 Build parameters not accessible in Tun

Postby David Ferguson on Sat Mar 18, 2017 10:09 am

Since only the last enable in your list appeared to work, I wondered if there is a limit of a single "subsystem mode enable" per level in the hierarchy. Perhaps you need to place the parameters inside the collector and cylinder objects?

I noticed that in the GPA/GPR package this is done with the Channel $(n).Diagnostic neq Cylinder $(n).Diagnostic.Not In Use... So they look inside the Cylinder object to test for the enabled state -- perhaps you should put your parameter there..
David Ferguson
Veracity Racing Data
David Ferguson
Pro User
 
Posts: 1394
Joined: Fri Nov 07, 2008 2:45 am
Location: Paso Robles, California

Re: bug report (?) M1 Build parameters not accessible in Tun

Postby Fast_Moto on Sat Mar 18, 2017 2:44 pm

David -- many thanks and I think you are right. I changed the enumerations for all of the parameters to a custom enumeration and everything worked fine after that.

P.S. actually, even then all channels were hidden unless I enable cylinder 4 enable. Weird, but i will try an alternate approach.
Fast_Moto
 
Posts: 111
Joined: Mon Apr 19, 2010 12:49 pm

Re: bug report (?) M1 Build parameters not accessible in Tun

Postby Fast_Moto on Wed Mar 22, 2017 2:04 pm

Update --
I think I confirmed a bug. As long as I assign any enumeration (custom, regardless of name) that includes as enumerators "not in use" and "enabled", All parameters within the group folder will become invisible if the last parameter is set to "not in use". This also applies to parameters that use other enumerators or floating point numbers.

Notably, this is not limited to using the subsystem enable enumeration. The outcome is the same even if I use a custom enumerator with a different name, as long as it contains the enumerators "not in use" and "enabled". Notably, once I renamed the "not in use" enumerator to "disabled", all parameters were visible, regardless of the configuration.

It would be helpful if Motec could confirm what triggers are used to hide the parameters in a group folder.
Fast_Moto
 
Posts: 111
Joined: Mon Apr 19, 2010 12:49 pm

Re: bug report (?) M1 Build parameters not accessible in Tun

Postby Stephen Dean on Wed Mar 22, 2017 2:31 pm

Yep, it is a feature, not a bug.

As stated in the M1 Development Manual, page 21:(Help | Manuals)

In conjunction with M1 Tune, object hiding rules are applied related to groups. If a group contains a parameter
or an IO Resource Parameter that assumes a value of 'Not in Use', all other objects within this group will not be
displayed in M1 Tune. This can be used to hide objects of control systems or sensors that are not used in the
current application, thus providing the user only with objects in use.
Stephen Dean
MoTeC Research Centre Melbourne, Australia
User avatar
Stephen Dean
Site Admin
 
Posts: 1731
Joined: Tue Dec 02, 2014 10:29 am
Location: Melbourne

Re: bug report (?) M1 Build parameters not accessible in Tun

Postby Fast_Moto on Wed Mar 22, 2017 3:12 pm

Thank you. My apologies for not seeing this part in the handbook.
Fast_Moto
 
Posts: 111
Joined: Mon Apr 19, 2010 12:49 pm


Return to M1 Tune

Who is online

Users browsing this forum: No registered users and 12 guests