Renaming inputs for Deviation

More
28 Jan 2013 17:56 #5644 by PhracturedBlue
Renaming inputs for Deviation was created by PhracturedBlue
In order to support the Devo12 properly, and to better handle the Devo7e, I am about to rename all of the switches in Deviation. Basically all switches will be handled like the MIX and FMODE 3-way switches:
AIL_DR will become AIL_DR0 and AIL_DR1 (and AIL_DR2 on the Devo12)

This will also make it easier for folks who want to reverse the meaning of switches in Deviation (where 'down' is off)

I thought I had this sorted, but the more I think about it the less convinced I am, so I'd like some feedbck on the following options to enable compatibility across radios:

Should a 2-position switch's "On" position map to the middle position or far position on a radio where that same switch has 3 positions?

Example:
Devo8    <---->   Devo12
(1)
AIL_DR0  <---->   AIL_DR0
AIL_DR1  <---->   AIL_DR1
AIL_DR1  <-----   AIL_DR2

OR
(2)
AIL_DR0  <---->   AIL_DR0
AIL_DR1  <---->   AIL_DR2
AIL_DR1  <-----   AIL_DR1

OR
(3)
AIL_DR0  <---->   AIL_DR0
AIL_DR1  ----->   NOT AIL_DR0
AIL_DR1  <-----   AIL_DR1
AIL_DR1  <-----   AIL_DR2
The arrow directions are important. We need to be able to map both from devo8 to devo12 and from devo12 to devo8. (The same applies to the 6, 7e and 10 of course)

Note that I have a goal of having the same model file work in all radios, so I don't really have a good technical solution to the last option. That is because it probably implies you have a mapping table from each radio to each other radio which is not maintainable. If this option is really the best, I'll probably need to name 2-position and 3-position switches differently in the model.ini file.

If we choose (2) the names in Devo8/10 is there a concern about naming the switches in the Devo8/10 interface 'AIL_DR2' instead of 'AIL_DR1'? That would make coding easier, but maybe confusing to users who may wonder where 'AIL_DR1' went.

Anyhow, I'm open to feedback on this before I go and actually implement the change.

Please Log in or Create an account to join the conversation.

More
28 Jan 2013 18:14 - 28 Jan 2013 18:15 #5646 by sbstnp
Replied by sbstnp on topic Renaming inputs for Deviation
First, great work you are making me want a Devo 12. And I don't need one :)

Second, I think they should map like in you (1) schematic. It's probably the less confusing of them all.

To be honest I don't think there is an easy way to make 100% workable model config across all transmitters. 100% compatible yes, but not identical in functionality.

Devo 10 + 4in1
Spektrum Dx9
FrSky Taranis + TBS Crossfire
Last edit: 28 Jan 2013 18:15 by sbstnp.

Please Log in or Create an account to join the conversation.

More
28 Jan 2013 18:25 #5648 by vlad_vy
Replied by vlad_vy on topic Renaming inputs for Deviation
I agree that (1) is more easy for understanding.

Please Log in or Create an account to join the conversation.

More
28 Jan 2013 18:35 #5649 by Hexperience
Replied by Hexperience on topic Renaming inputs for Deviation
AIL_DR0  <---->   AIL_DR0
AIL_DR1  <---->   AIL_DR1
AIL_DR1  X<----   AIL_DR2

My personal feeling is that AIL_DR2 simply gets dropped. The use of that switch is for rates. So if I have DR2 set and I want to give the config to someone with an 8, I would have to set DR1 to an appropriate value.

The 12 has so many more inputs, what will happen to those? For example, the 12 has a throttle hold switch which I will be using for sure. My models won't use the RUD_DR for hold anymore. I don't think there really is anyway to translate that backwards.

I really applaud your dedication to the idea of one model config for all, but I don't see how it's possible to go backwards here.

There are 10 types of people in this world. Those that understand binary and those that don't.

Please Log in or Create an account to join the conversation.

  • rbe2012
  • rbe2012's Avatar
  • Offline
  • So much to do, so little time...
More
28 Jan 2013 18:57 #5653 by rbe2012
Replied by rbe2012 on topic Renaming inputs for Deviation
From my point of view (2) seems to be the best.
If I have a model config with a three-way-switch I would prefer loosing the middle one if I step down to a Devo8 - it is in most cases a compromise between 0 and 2.
(1) may be less confusing but makes me loose one of my endpoints.
But I agree: naming it DR2 may confuse many people but would be neccessary to go back from 8 to 12 (the model file must contain all three values, but only 2 of them will be active). We have to make a change now and I think, whatever the new way is: if it is described clearly in the manual everyone can understand it.
Some more thoughts:
Maybe the not available inputs could be visible (but grayed out/not selectable) in Devo8... so people get used to them? Or is skipping these input uncomfortable?
What about reversing inputs? Now they are marked with an "!". Will this go on in the future? Or will we find only non-inverted inputs, dr0 and dr1 instead of dr0 and !dr0?
What will be (Devo12)!DR1 in Devo8? DR0 and DR2? Or will it be ignored?

Please Log in or Create an account to join the conversation.

More
28 Jan 2013 18:58 #5654 by vlad_vy
Replied by vlad_vy on topic Renaming inputs for Deviation
At any case config for Devo 12 will be not workable at Devo 8 and will require modification. It's merely question how to translate Devo 12 config in Devo8 and that would be easy to understand and modify.

Please Log in or Create an account to join the conversation.

More
28 Jan 2013 19:12 #5656 by PhracturedBlue
Replied by PhracturedBlue on topic Renaming inputs for Deviation
Agreed that in most cases a devo12 config will not 'just work' in a devo8. but it should preserve as much functionality as possible so that it is easy to get working on that Tx.

Regardless of solution, all switches will work like the 'FMODE' and 'MIX' switches. You can invert any switch. so you can do 'NOT AIL_DR0' which on a devo8 will be identical to 'AIL_DR1' but would mean 'AIL_DR1 or AIL_DR2' on a Devo12

Please Log in or Create an account to join the conversation.

More
28 Jan 2013 19:19 #5658 by sbstnp
Replied by sbstnp on topic Renaming inputs for Deviation

rbe2012 wrote: Maybe the not available inputs could be visible (but grayed out/not selectable) in Devo8... so people get used to them? Or is skipping these input uncomfortable?


Keep in mind there is Devo 10 and 7e as well. You can't have graying out on those.

Devo 10 + 4in1
Spektrum Dx9
FrSky Taranis + TBS Crossfire

Please Log in or Create an account to join the conversation.

More
28 Jan 2013 19:31 - 28 Jan 2013 19:32 #5660 by sbstnp
Replied by sbstnp on topic Renaming inputs for Deviation

PhracturedBlue wrote: Agreed that in most cases a devo12 config will not 'just work' in a devo8. but it should preserve as much functionality as possible so that it is easy to get working on that Tx.

Regardless of solution, all switches will work like the 'FMODE' and 'MIX' switches. You can invert any switch. so you can do 'NOT AIL_DR0' which on a devo8 will be identical to 'AIL_DR1' but would mean 'AIL_DR1 or AIL_DR2' on a Devo12


TBH having assignable and visible 'zero' states makes configuring models even more clear than atm, when you basically have to assume the 'zero' position, visually I mean.

I agree than NOT AIL_DR0 when on a 12 should mean both 1 & 2, but only 1 on the D8 or D10.

When downgrading a config I still think losing the mixer assigned on 2 position is the best solution.

Maybe this isn't the place to state this but. everyone should at least superficially inspect a model config after loading it up. Not doing so can be a recipe for disaster. We should encourage this discipline as much as we can.

If we put up big warnings everywhere that downgrading a model will do 'this' and 'that' to the config, in the end the downgrade path will not matter so much.

Devo 10 + 4in1
Spektrum Dx9
FrSky Taranis + TBS Crossfire
Last edit: 28 Jan 2013 19:32 by sbstnp. Reason: typos

Please Log in or Create an account to join the conversation.

More
28 Jan 2013 19:38 #5661 by PhracturedBlue
Replied by PhracturedBlue on topic Renaming inputs for Deviation
One thing we could do would be to pop up a dialog whenever we detect a model that was not created for the user's Tx. At least it would give a heads up to fix the model after import. The dialog would only appear once per model (as soon as you save the model, it is now 'for your tx'

Please Log in or Create an account to join the conversation.

More
28 Jan 2013 19:45 - 28 Jan 2013 19:46 #5662 by Hexperience
Replied by Hexperience on topic Renaming inputs for Deviation
I'm thinking along the lines of the rates, as this is the intended function of those switches. (I know we can make them do what ever we want).

Lets say on my devo12 a set rates like:
0: 60% (safe, stable, take off and land)
1: 80% (sport flying)
2: 100% (crazy 3d)

I would rather have the highest rate lost when I give the config to someone. If they want to increase it they can.

If the switches are being used for something else, like throttle hold, then really all bets are off because at that point it could be anything.

Even without the 12 in the deviation pool, some people will put TH on the left some on the right. Some put throttle curves in with the pitch curves on the fmode switch some use the mix switch....

PB whatever you find the easiest will be fine with me. As stated, we are all responsible for checking a config before we use it, and for those of us who generally make config files rather than download them, we will have to be aware of the differences.

How's the DOOM port coming by the way... ;) This devo 12 is impressive. I can't see needing another radio for some time to come.

There are 10 types of people in this world. Those that understand binary and those that don't.
Last edit: 28 Jan 2013 19:46 by Hexperience.

Please Log in or Create an account to join the conversation.

More
28 Jan 2013 20:29 #5668 by FDR
Replied by FDR on topic Renaming inputs for Deviation
I agree with Hex, that it should be the number (1), but without the DR2 linked back.

Explanation:
The (1) is better then the (2), because if we use scheme (2), then a good working DEVO 8 config would cause an empty mid state on the DEVO 12, which is barely usable. It would be an invalid state, and you have to switch throw that to get to the other valid state. No good.

However in the scheme (1), if you assign both DR1 and DR2 to the same DR1 state, it would be again an invalid config, because there might be two contradictory state both on.

So I think it would be better to drop the DR2 state.
But how?
They should be assigned to a new constant FALSE switch.

Please Log in or Create an account to join the conversation.

More
28 Jan 2013 20:42 - 28 Jan 2013 20:52 #5670 by Hexperience
Replied by Hexperience on topic Renaming inputs for Deviation
The only thing I would suggest is
devo8             devo12
AIL_DR0  <---->   AIL_DR0
AIL_DR1  <---->   AIL_DR1
AIL_DR1  ----->   AIL_DR2
So that DR2 is not empty and if you accidentally go all the way to DR2 you don't drop out of the sky.

Sorry... I see now, that is number 3 above, but minus the DR1 <--- DR2.
Although, I'm not crazy about the use of NOT AIL_DR0 in a conversion. Better to just copy the value to both D1 and D2 during the conversion. Then the user can change DR2 without too much confusion.

There are 10 types of people in this world. Those that understand binary and those that don't.
Last edit: 28 Jan 2013 20:52 by Hexperience.

Please Log in or Create an account to join the conversation.

More
28 Jan 2013 20:58 #5673 by FDR
Replied by FDR on topic Renaming inputs for Deviation
Yep, I would like this way too...

Please Log in or Create an account to join the conversation.

More
28 Jan 2013 21:07 - 28 Jan 2013 21:08 #5675 by RandMental
Replied by RandMental on topic Renaming inputs for Deviation
I agree with Hex's table in the previous post. Seems the most logic and fail safe to me....
Last edit: 28 Jan 2013 21:08 by RandMental.

Please Log in or Create an account to join the conversation.

More
28 Jan 2013 22:10 #5681 by FDR
Replied by FDR on topic Renaming inputs for Deviation
BTW the DEVO 12 is a good example, that the model config compatibility would need some more tricks, like the virtual switch assignments, discussed in an other thread:
www.deviationtx.com/forum/3-feedback-que...es?limitstart=0#4870

That way a model config (and even more a template) could use a "virtual thottle hold switch", which everybody could assign to that real switch he want to use for that function...

Please Log in or Create an account to join the conversation.

More
28 Jan 2013 23:37 #5686 by Hexperience
Replied by Hexperience on topic Renaming inputs for Deviation
Speaking of virtual switches, PB, did you ever consider conditional switches like er9x? I prefer my firmwares as confusing as possible. ;)

There are 10 types of people in this world. Those that understand binary and those that don't.

Please Log in or Create an account to join the conversation.

More
29 Jan 2013 04:13 - 29 Jan 2013 04:36 #5691 by vlad_vy
Replied by vlad_vy on topic Renaming inputs for Deviation
Devo8    <---->   Devo12
(*)
AIL_DR0  <---->   AIL_DR0
AIL_DR1  <---->   AIL_DR1
AIL_DR1  ----->   AIL_DR2

I think what will be with complex mixer (3 pages) after conwersion from Devo 12 to devo8:

Devo 12
AIL_DR0 - AIL_DR1 - AIL_DR2

Devo 8
(*) AIL_DR0 - AIL_DR1 - None???
(1) AIL_DR0 - AIL_DR1 - AIL_DR1
(2) AIL_DR0 - AIL_DR1 - AIL_DR1
(3) AIL_DR0 - AIL_DR1 - None???

I think will be better replace/mark all inconvertible switches with red FALSE and value 0 ('false'). At such case pop up warning dialog in time of loading model file.
Last edit: 29 Jan 2013 04:36 by vlad_vy.

Please Log in or Create an account to join the conversation.

More
29 Jan 2013 05:08 #5694 by Hexperience
Replied by Hexperience on topic Renaming inputs for Deviation
Yes, I'm suggesting the page get dropped. Again for the most part we are talking about the dual rates and not the fact that you could make a mixer page with dr2 as a source, and have it do throttle hold or something else. At some point during the conversion, you simply have to give up trying to figure out what the user was doing with the switch, and just drop it. The Devo12 has 6 additional pots/silders on top of the 3 extra Rate settings (the DR2's) plus a real throttle hold switch and a trainer switch.

That's 11 inputs that don't exist on the devo8... Personally I don't think it's possible to convert that, considering we can assign anything we want to any of those inputs.

There are 10 types of people in this world. Those that understand binary and those that don't.

Please Log in or Create an account to join the conversation.

Time to create page: 0.053 seconds
Powered by Kunena Forum