- Posts: 3333
USB HID Joystick & PPM-In program
- vlad_vy
- Offline
PhracturedBlue wrote: vlad, when you say 'abssnt channels' you mean the case where the # of selected channels is != 8?
And yes, supporting PPM9 is a bug. There are only 8 supported PPM channels.
Yes, in case 6ch mode there is not any need to assign PPMx to Ch7 and Ch8. In essence, they can be disabled.
Please Log in or Create an account to join the conversation.
- Hexperience
- Offline
- Posts: 588
BitOne wrote: Interesting data from the ER9x implementation.
Extract from the ER9x documentation, page 15 ("PPM In") code.google.com/p/er9x/source/browse/tru...%20Users%20Guide.pdfThis menu allows the PPMin (trainer) inputs to be configured. It enables the RAW PPM inputs to be selected to replace the sticks for training purposes. The student transmitter does not need to have the same model setup as the instructor. All the mixes on the instructors Tx will be applied to the student inputs. If, for example, you have expo on your sticks, this will be applied to the raw trainer inputs when they are selected.
This is how it would work if you used "FPV" mode. (Personally I would just call it PPMin and leave it at that).
I'm not going to get down on PB and everyone for trying to make things as simple as possible, but it almost seems like it's getting a little too easy to use.
PPM in is all you need for training, fpv and anything else. If you take the time to learn how the mixer works, and we have access to all the raw inputs, you can do any magic you want!
Same thing for the model configs... it amazes me that people ask for the same config over and over again... "FBL heli please..." If they take the time to learn how to do it, then I can tell you its faster to make a new config than to download one and copy it over.
SORRY.... rant over...
And really, truly, deviation is amazing. I love it, and I don't expect it to be a clone of er9x. I just want to make sure that we never loose the ability to really be creative with the mixer.
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.
- BitOne
- Offline
- Posts: 40
By providing the link to the Futaba FAQ and the extract from the ER9x documentation, I just wanted to give some hints for the question from PhracturedBlue "How do other transmitter handle that ?".
I wasn't implying that the actual implementation was useless. And I sincerely apologize to PhracturedBlue if my posts sounded like a rant against DeviationTX (and Deviation is the reason why I own a Devo 8s, so thanks PB for it).
Trainer is a new feature in Deviation. So, it's always a good idea to look around to avoid reinventing the wheel and benefits from solutions to common problems that have already been answered.
And some feedback from users who will have an intensive usage of a new feature is always interesting to add meaning to the software.
But the real and final decision will always belongs to the Deviation developers. And that the way it must be, as it's a hobby project.
So please take my inputs as they are: just some feedback on the trainer feature by a soon-to-be user of this feature.
And to finish on the mixer: I agree that it should be well known and used by most pilots using Deviation, as it's crazy powerful.
So if the final solution is to have PPM In that I could link to virtual channel and use it in the mixer, it's fine to me, even if it means having to change all the model I want to fly with a buddy box.
But I could feel that it make this feature less accessible for a lot of people.
I have the feeling that Deviation is beginning to appeal to wider masses, as the new standard GUI for heli pilot proves it in a way, by providing an easier to use, common solutions to common problems, interface. Even if it's less powerful than the mixer.
Please Log in or Create an account to join the conversation.
- Hexperience
- Offline
- Posts: 588
Everyone has a voice in this forum... from new users to micro processor programmers and everyone in between.
I completely understand the need for both types of gui. And to be honest.. I don't even remember now what got me going about it.
When I quoted your post, I was agreeing that I would like to see the trainer mode work the way it does in er9x. I wasn't trying to say anything about your content in the post...
If I had my way the deviation gui would look like this:
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.
- BitOne
- Offline
- Posts: 40
Please Log in or Create an account to join the conversation.
- PhracturedBlue
- Offline
- Posts: 4402
I think that will give sufficient flexibility to everyone, while keeping the effort to configure the trainer as easy as possible.
Right now, the settings are:
Train1 : Map PPM-In to output channels
Train2 : Replace stick inputs with PPM-In
Input : Create new inputs called 'PPMIn' that can be used in the mixers
These names are terrible and need to be changed. If anyone has any ideas for concise names for these modes, let me know.
Please Log in or Create an account to join the conversation.
- BitOne
- Offline
- Posts: 40
Thank you very much PhracturedBlue (when do you sleep guy ?)
For the name, do you have a max length ?
It could be:
- Train1: CHANNELS (or CHAN)
- Train2: STICKS (or STCK)
- Input: MIXER-IN (or MIXIN) <= not very happy with this one (the STICKS input will be sent to the mixer too, and it looks too much like the Futaba MIX mode while being functionally really different). ADDITIONAL INPUTS (or ADD-IN) is maybe more clear about what it is: it creates new inputs for the transmitter.
Please Log in or Create an account to join the conversation.
- rbe2012
- Offline
- So much to do, so little time...
- Posts: 1433
Please Log in or Create an account to join the conversation.
- sbstnp
- Offline
- Posts: 649
Devo 10 + 4in1
FrSky Taranis + TBS Crossfire
Please Log in or Create an account to join the conversation.
- PhracturedBlue
- Offline
- Posts: 4402
I'll change it to 'Channel', 'Stick', and 'Extend'
I think that is a clear enough distinction.
Please Log in or Create an account to join the conversation.
- Hexperience
- Offline
- Posts: 588
PhracturedBlue wrote: I added a 2nd train mode. You can now choose whether to apply the PPMin to mapped outputs, to mapped inputs, or as new inputs.
I think that will give sufficient flexibility to everyone, while keeping the effort to configure the trainer as easy as possible.
Right now, the settings are:
Train1 : Map PPM-In to output channels
Train2 : Replace stick inputs with PPM-In
Input : Create new inputs called 'PPMIn' that can be used in the mixers
These names are terrible and need to be changed. If anyone has any ideas for concise names for these modes, let me know.
Sorry guys... I know I'm missing something here, but if you have #2 and #3 above when would you ever use #1?
My brain keeps telling me there is some overlap here, but I can't put my finger on it.
PPM-in as an input should be available all the time, much like a virtual channel. There's no need to select it on or off?? (Unless it's simply to save CPU cycles somehow, but if it's not listed as an input in one of the mixers, it would never get polled would it?)
Trainer mode input could be configured at the TX level, but applied at the model level. So in the TX pages you set that PPMin1 = ELE channel (stick replacement only) and you are able to center it there. PPMin2 = AIL etc.
Also on this page you set the switch to use for trainer mode.
Then in the model config, you simply say if this model can be a trainer or not, and if it can, then when ever the switch is pulled, those PPMin inputs take over the sticks. If the trainer option is NOT on for a model, then all the PPMin inputs are available to the mixers... This is how it's done in er9x. Basically just 2 modes. Train (replace the sticks) or NOT Train, all PPMin available to the mixer.
Again... just putting thoughts down on "paper"...
Cheers!
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.
- PhracturedBlue
- Offline
- Posts: 4402
The 3rd mode is absolutely capable of implementing the 1st 2 modes. However it would be tedious to program all the mixers for it. Mode 1/2 are basically like templates to make it possible to quickly setup train mode. The alternative would be to actually do just that and create a few templates to make master-trainer mode easy to set up. I think the current solution is easier to use/understand though.
I'm not sure there is much value in having both mode 1 and 2, but the amount of additional code to support both is minimal. Most likely users will just choose one or the other depending on their needs. Once I have some mechanism to transfer models between Deviation transmitters, mode-1 may be more interesting as it would mean the trainee is flying in exactly the same way they would if they were solo.
Please Log in or Create an account to join the conversation.
- vlad_vy
- Offline
- Posts: 3333
Please Log in or Create an account to join the conversation.
- PhracturedBlue
- Offline
- Posts: 4402
Please Log in or Create an account to join the conversation.
- rbe2012
- Offline
- So much to do, so little time...
- Posts: 1433
I use my Devo8 as master and a WK2402 as trainee tx.
For not having "None" as channel in channel mode and the ability to select channels up to Ch49 I filed already an issue at bitbucket.
When I have the 2402 connected and select channel mode or stick mode, the values for ch3 (throttle) differ - from -62 to +92% in stick mode and from -79 to +95% in channel mode. This is reproducible whatever I do - switching the txs in any combination off and on, resetting the model config and starting with a new one. Nothing changes anything.
The other sticks AIL, ELE, RUD deliver correct values from -99 to +100%.
Ch7 is very strange: It shows values between -326 and +326%: when ch3 moves from -79 to 95% it shows -322% at -79%, increases with ch3 until ch3 reaches 74%, then ch7 jumps from -326 to +326%. With further increase of ch3 ch7 decreases until +157%. Ch7 also moves when I move one of the other sticks so in combination of different movements every value between -326% and +326% can be reached.
I compared it to my sim with the WK2402: I can not select the number of channels in ClearView so I can not see what ch7 does. The rest is working. With FMS all seems ok, with easyFly3 RUD is on ch6 and ch4+5 jumping between -100,0,100. (BTW: when I connect my Devo8 with more than 7 channels ELE is not working; the same with easyFly3 and FMS). The values of ch3 are not reaching -100% so the -79%-value I have seen can be a limitation of my tx model.
My questions:
- Is it normal that a 4-channel-tx offers values at ch7?
- How can the read values <-100% resp. >+100%?
- Can the big jump with sign change point to a problem with wrapping around the values?
--DELETED--
I am not sure how much of the behavior I have seen is intended but I think it not not completely ready yet.
Please Log in or Create an account to join the conversation.
- rbe2012
- Offline
- So much to do, so little time...
- Posts: 1433
Also after trimming the DX4e to the 0-point the max/min values are only more or less +/-100% (about 90-115%)
Should we have a way to trim the PPM inputs like we have with the sticks?
The strange movements of ch7 do not happen with a WK2401 as slave.
I can select PPMx as input for mixer in every mode, but this only works in the extended mode (seems to be intended). Vlad has mentioned this too. What happens with those inputs when I switch the PPM in mode from extended to channel or stick? Stay as they are? Replaced with some default ("None")?
PPMx does not work for crosses. How do I ask for the value? I use "ppmChannels[Model.ppm_map[PPM_Channel_Number]]". Correct? Or better without mapping: "ppmChannels[val]"?
EDIT: PPM as input for crosses is working now (without mapping). But is there a point where I can get the values and the conditions for the different modes are checked? Actually I do this in main_page.c what is not the correct place, I believe.
Please Log in or Create an account to join the conversation.
- PhracturedBlue
- Offline
- Posts: 4402
If you see values <-100 or >100, then the PPM configuration is probably wrong. As I mentioned somewhere above, we need to find a way to calibrate the PPMin. Each radio has different center and offsets, and if these are set wrong in the master, you won't get the proper values.
As for using PPM in the crosses, you should never use the ppmChannels variable.
Instead use:
MIXER_GetChannel(1 + NUM_INPUTS + NUM_OUT_CHANNELS + NUM_VIRT_CHANNELS + channel, 0);
We can add a macro so you don't need to do the math.
Please Log in or Create an account to join the conversation.
- rbe2012
- Offline
- So much to do, so little time...
- Posts: 1433
Thank you, PB. I will try this later (working on the save_col-thing...).PhracturedBlue wrote: Instead use:
MIXER_GetChannel(1 + NUM_INPUTS + NUM_OUT_CHANNELS + NUM_VIRT_CHANNELS + channel, 0);
The math is ok if you mean calculating the channel (I do the reverse to calculate the index from the channel), so a macro seems not necessary.
Please Log in or Create an account to join the conversation.
- PhracturedBlue
- Offline
- Posts: 4402
vlad_vy wrote: With any 'PPM In' choice (Channel, Stick, Extend) I can select PPMx as input for channel. Is it correct?
After further consideration, I've decided to leave it the way it is. There would be a bunch of complexity to only allow selecting PPM when it is active. I already have a similar case for the 'Ch' values. You can select up to 'Ch12' on the mixer regardless of how many channels are actually enabled. Maybe some day I'll rework it, but I don't think it is worth it right now.
Note that these values are not actually set (just like any 'Ch' value beyond the configured # of channels) when PPMIn is not in 'Extend' mode. So you can't use Extend and Train together.
Please Log in or Create an account to join the conversation.
- rbe2012
- Offline
- So much to do, so little time...
- Posts: 1433
PB, must we have PPMin profiles? If you think about some kind of calibration for the inputs it will be different for the different tx. And such things as channel directions and allocation can differ too (e.g. WK vs. DX). I would appreciate to save the PPMin configuration separated from the model and include them in different model configs.
Please Log in or Create an account to join the conversation.
- Home
- Forum
- Development
- Development
- USB HID Joystick & PPM-In program