Tx Resolution/frame rate insigniifcant!

Need some advice? Trying out a new idea? Fancy a beer?
Join us for some general banter and good times.
Post Reply
User avatar
kaos
Posts: 3247
Joined: Wed Dec 28, 2011 1:15 am
Country: United States

Tx Resolution/frame rate insigniifcant!

Post by kaos »

some time ago, there is brief discussion about the Tx resolution. 1024 /2048 .... whether that will affect the control of the rC model. some insisted it will have better/more precise control. and I have seen that was mentioned in just about every name brand Tx as ad.
I have used 512, 1024, 2048 resolution Tx. I don't feel there is any difference there. I believe the resolution in my fingers override everything.

I think I found proof that higher resolution for RC Tx is really insignificant.
This is from wikipedia:
"Simple reaction time is the motion required for an observer to respond to the presence of a stimulus. For example, a subject might be asked to press a button as soon as a light or sound appears. Mean RT for college-age individuals is about 160 milliseconds to detect an auditory stimulus, and approximately 190 milliseconds to detect visual stimulus.[2] The mean reaction times for sprinters at the Beijing Olympics were 166 ms for males and 189 ms for females, but in one out of 1,000 starts they can achieve 109 ms and 121 ms, respectively."

Now with that info, even a resolution at 512 is far faster than the world's best atheletes can do. I don't think even the world's best RC flyer would be any faster than those Olympians.
I think we can put the debate about we need higher resolution to sleep. ;)

what you think?

User avatar
Kilrah
Posts: 11109
Joined: Sat Feb 18, 2012 6:56 pm
Country: Switzerland

Re: Tx Resolution/frame rate insigniifcant!

Post by Kilrah »

No, because the 2 values you're comparing here (time and resolution) are like apples and oranges, they have no relation whatsoever between them ;)

Resolution in this case is the number of different steps the radio will output over the standard servo travel. Nothing to do with response time :)

But yes, most servos won't resolve more than 200-500 steps anyway, so having 2048 doesn't bring much. There is one advantage in the radio's internal calculations, as more steps means less rounding error.
User avatar
kaos
Posts: 3247
Joined: Wed Dec 28, 2011 1:15 am
Country: United States

Re: Tx Resolution/frame rate insigniifcant!

Post by kaos »

They are related. you control the sticks, it doesn't matter what the steps the higher resolution will give , by the time you see and by the time you move the stick, it is way behind the the resolution the Tx gives out.
say from total still, you see the wing tilt 2 degree, you move the stick to correct it, yes the higher tx will respond faster or more precise for your input to correct that 2 degree, but by the time you move the input the wing is not 2 degree tilt any more may be more, may be less, so the 2 degree from the tx does not matter. unless your response time is faster than your Tx resolution/steps.;)
Ok from another angle to look at this. say the resolution is the steps you can move the servo. can you move that stick 1/200 of the whole travel precisely? let alone 1/500. ;)
User avatar
jhsa
Posts: 19480
Joined: Tue Dec 27, 2011 5:13 pm
Country: Germany

Re: Tx Resolution/frame rate insigniifcant!

Post by jhsa »

I think you're talking about latency, not resolution.. the less resolution (steps), the more the servos will seem to be jumping.. That's how I understand it.
Last edited by jhsa on Tue Oct 23, 2012 12:24 am, edited 1 time in total.
My er9x/Ersky9x/eepskye Video Tutorials
https://www.youtube.com/playlist?list=PL5uJhoD7sAKidZmkhMpYpp_qcuIqJXhb9

Donate to Er9x/Ersky9x:
https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=YHX43JR3J7XGW
User avatar
cre8tiveleo
Posts: 1434
Joined: Tue Dec 27, 2011 6:13 pm
Country: -
Location: Ontario,(GTA North)
Contact:

Re: Tx Resolution/frame rate insigniifcant!

Post by cre8tiveleo »

If you use Hobby King Servos, I don't think our transmitters will do a resolution of 64... :D

User avatar
kaos
Posts: 3247
Joined: Wed Dec 28, 2011 1:15 am
Country: United States

Re: Tx Resolution/frame rate insigniifcant!

Post by kaos »

Hobby king has servos? Turnigy?
All my servo are bought from HK, but mostly Corona.

Any way, I think my finger resolution is far below 512 for sure. ;) since i can't tell the difference from 512 to 1024 to 2024.
I think latency, resolution, frame rate all played together, if one is lagging behind, it does not matter. The worst one is going to determine what out come is and that one will be the fingers. ;)

where have you been lately Adrian?
did you get your multi wii with GPS from HK? Never in stock for me. :(
User avatar
cre8tiveleo
Posts: 1434
Joined: Tue Dec 27, 2011 6:13 pm
Country: -
Location: Ontario,(GTA North)
Contact:

Re: Tx Resolution/frame rate insigniifcant!

Post by cre8tiveleo »

User avatar
Kilrah
Posts: 11109
Joined: Sat Feb 18, 2012 6:56 pm
Country: Switzerland

Re: Tx Resolution/frame rate insigniifcant!

Post by Kilrah »

kaos wrote:Ok from another angle to look at this. say the resolution is the steps you can move the servo. can you move that stick 1/200 of the whole travel precisely? let alone 1/500. ;)
Yes absolutely, watch the little video I'll post later.

But most importantly there aren't only sticks, on modern radios there are many things that alter the stick -> output relation. The resolution, as meant in radios, means the total number of steps the servo signal will have in its standard 1000-2000us range. So basically a 512 step system will have a 2us resolution, a 1024 step system will have a 1us resolution, a 2048 step system 0.5us resolution. So this number of steps is valid IF you use the entire range. So for example once you start using limits and D/R's to reduce movement, you'll reduce that number of steps. Let's say you have a 50% D/R. You lose half of the steps, BUT that smaller number of steps is still mapped to the same amount of stick travel. So if you had a 1024 step radio, and set 50% D/R, the stick->servo response is now that of a 512 step radio.
Then when you fly your aircraft, you rarely use full throw, the most important part is the center, and if you hold level flight you'll do little corrections in only a small range of the stick, maybe 10%, but those have to be precise. To help with that, you have expo. As you can't indeed be infinitely precise with your finger, but the model needs precise adjustments on the controls around the center, you use expo to reduce sensitivity close to the center, and precisely be able to make use of that increased resolution. Those 10% of stick movement will now result for example in only 5% of servo movement.
And of course trim. A small number of available steps means that each step is big, and you can't do any fine adjustment. You'll see in the video that with a cr*ppy receiver that had bad firmware resulting in low resolution it was simply not possible to trim the plane, FPV makes it MUCH more obvious as you're a LOT more aware about what happens up there and thus more precise on the controls than in normal flight. As the servo steps were big, the ailerons would either be half a click to the left, or half a click to the right, impossible to fly straight. Same as servo horns, with their big teeth they are never where you want them when you install a servo in a model, but on one of the sides.

http://www.youtube.com/watch?v=PY0WiKeM-uQ

As you can see at the beginning with the good receiver how by moving the stick slowly I will move over every us on the output. That's 1024 steps being useable already, and with 100% end points and no expo.

And again, the resolution has no relation to the response time. Let's say you're in flight, and want to stop your plane perfectly level. You don't have to find the exact right step instantly, but can do it over as much as several seconds. It's "automatic" so you're not conscious of it, but you will progressively correct and move your stick more and more, and probably trim too, until you find just that good step. It doesn't matter how long it takes, but the resolution allows you to reach that position. If you don't have the resolution, that position simply won't exist, and even if you could try for 2 days you would never get your plane to fly straight.
User avatar
gohsthb
Posts: 1412
Joined: Wed Dec 28, 2011 2:32 pm
Country: -
Location: Naperville, IL

Re: Tx Resolution/frame rate insigniifcant!

Post by gohsthb »

Talking about response time. Take one of the top heli pilots for example, who is used to using a Futaba Tx with high speed ppm. If you put them on a normal speed radio they will notice the slow response time. This is not the same as your example above where a person is reacting to a random event. You brain learns to predict what is going to happen, and when it is going to happen. So their stick movements are programmed into their brain, so as they move the sticks they are watching what the heli is doing. If that is delayed by extra latency, they will notice.
For more info check this link
-Gohst
User avatar
kaos
Posts: 3247
Joined: Wed Dec 28, 2011 1:15 am
Country: United States

Re: Tx Resolution/frame rate insigniifcant!

Post by kaos »

woo, this is interesting. I believe this is the 1st time I see some detailed explanation like this. well let me study this a little more (at work now) and come back with more questions. Glad I brought this up. Time to get this part of RC cleared up in my head. ;)
User avatar
kaos
Posts: 3247
Joined: Wed Dec 28, 2011 1:15 am
Country: United States

Re: Tx Resolution/frame rate insigniifcant!

Post by kaos »

OK, did some reading here. Facinating. Still a few things like to clear up.
The 'resolution' definition is how many steps, the Tx can out put? right? what is the definition of 'frame rate'?

in Kilrah's vid, with the same Tx (I assume it is a good Tx, by the way, what is ti with a big screen?), the Rx played a major role how the steps are 'interpreted' and loose resolution on it. so, Tx has one resolution, the RX has another resolution and needs to be matched. Use a 1024 Tx won't help with 512 rx and vise versa?
what is the resolution of stock T9X rx? orange rx? compared to Frysky Rx, genuine DSM2 and DSMX Rx?

then there is servo rsolution. I will get into that after some one help me to get the above cleared up. ;)
User avatar
Kilrah
Posts: 11109
Joined: Sat Feb 18, 2012 6:56 pm
Country: Switzerland

Re: Tx Resolution/frame rate insigniifcant!

Post by Kilrah »

Frame rate is how often a new servo value is computed, sent and output to the servo.
There's another thing not yet discussed which is latency. Frame rate is one thing, but now that we have mixed analog/digital technologies even if the radio computes a new value and generates a new PPM frame for example every 25ms, the time for the TX module to encode it and send it, and for the receiver to decode it and send it to the servo can be considerable. So the servo might be receiving an order the radio computed several frames ago. This is latency, for example the time between flipping a switch and the servo receiving the new position command.

Of course the RX's resolution has an impact - but this should just not happen. That particular receiver was just a POS only worth being sent right in the trash...
With old analog FM receivers, resolution was infinite. There was a transition period where manufacturers started adding a microcontroller fo offer things like failsafe and filtering, and that's where some 3rd-parties who don't know how to program could mess everything up like Corona did.
Now with 2.4, as manufacturers create their matching TX/RX pairs there would be no reason to have a different resolution on both ends. Would be interesting to check 3rd-party "compatible" receivers though, nothing's guaranteed there.
ReSt
Posts: 1581
Joined: Tue Dec 27, 2011 11:34 pm
Country: -

Re: Tx Resolution/frame rate insigniifcant!

Post by ReSt »

What has been forgotten up to now is the resolution and the latency of the transmitter module.It is fed with the ppm stream and first must digitalize the pulses before the digital data can be transmitted to the receiver. (btw analog converters sometimes need to convert several samples before they approach to the final value, especially for fast changing input signal).

Reinhard
User avatar
Kilrah
Posts: 11109
Joined: Sat Feb 18, 2012 6:56 pm
Country: Switzerland

Re: Tx Resolution/frame rate insigniifcant!

Post by Kilrah »

I think I did mention it ;)
the time for the TX module to encode it and send it, and for the receiver to decode it and send it to the servo can be considerable. So the servo might be receiving an order the radio computed several frames ago. This is latency, for example the time between flipping a switch and the servo receiving the new position command.
User avatar
kaos
Posts: 3247
Joined: Wed Dec 28, 2011 1:15 am
Country: United States

Re: Tx Resolution/frame rate insigniifcant!

Post by kaos »

getting more and more interesting. now with all above said and understood. (I hope ;) )
let's get to the servo resolution, it was mentioned above the servo on market only has 200-500 steps. well, I am not using any hundred dollar servo for sure. say for a average cheap servo like HXT900 which is widely used, and my digital cheap servo corona DS919,929. I guess it has only 2-300 steps, lets assume it is 200 steps. which means I can only control 60/200 degree as the smallest change of servo arm. right?
now, even I have a 1024 resolution Tx, my stick has 1024 steps, but my servo only has 200 steps. so 4/5 of the stick movement is doing nothing, right? It is in between the servo resolution.
but when the stick is moving across, for the 1024 res stick , the Tx has to do 1024 frame calculation, and transmit all 1024 frame (from end to end of stick). If I use a 200 resolution Tx (with same processing power cpu as the 1024 tx, then it only needs to calculate 200 frame which is what the servo resolution can take any way. Won't that make the response time faster while still has the same resolution on the servo? so with the best servo of 500 step, a 512 resolution Tx will have better response than 1024/2048 Tx, cause the Tx does not need to put out the unnecessary/ignored/needless frame calculation, conversion, latency...
What is wrong with my thinking?

The other resolution would be ESC throttle resolution. that would also be around 500 steps or less. I remember I talked with an Align people, he was telling me the Align RCE esc has better resolution because it has 200 some steps while other brand only has 2/3 or 1/2 of that, hence the Align ESC has a smoother throttle response.
and ESC resolution is not any better than the servo resolution.
User avatar
Kilrah
Posts: 11109
Joined: Sat Feb 18, 2012 6:56 pm
Country: Switzerland

Re: Tx Resolution/frame rate insigniifcant!

Post by Kilrah »

kaos wrote:but when the stick is moving across, for the 1024 res stick , the Tx has to do 1024 frame calculation, and transmit all 1024 frame (from end to end of stick). If I use a 200 resolution Tx (with same processing power cpu as the 1024 tx, then it only needs to calculate 200 frame which is what the servo resolution can take any way. Won't that make the response time faster while still has the same resolution on the servo? so with the best servo of 500 step, a 512 resolution Tx will have better response than 1024/2048 Tx, cause the Tx does not need to put out the unnecessary/ignored/needless frame calculation, conversion, latency...
What is wrong with my thinking?
What's wrong is that the radio does not rerun calculations and transmit everytime you pass on a "step" with the stick. The entire process is instead based on the framerate. So if your 9x is set to output PPM and 22.5ms framerate (the default), then every 22.5ms it will read the stick position once, run calculations, generate a PPM signal and send it to the TX module. Then it goes idle and waits for start of the next 22.5ms period, so everything you might do inbetween with the stick simply goes unnoticed.
pmackenzie
Posts: 236
Joined: Tue Dec 27, 2011 11:19 pm
Country: -
Location: Don Mills, Ontario

Re: Tx Resolution/frame rate insigniifcant!

Post by pmackenzie »

This is not exactly correct. :)
ER9X (and the others I assume) runs the encoder calculations as fast as possible and it is not synced at all with the frame rate.
You can see the time it takes to read the sticks and calculate new pulse widths by looking at "Tmain" on the STAT2 screen.
It is on the order of 5 msec for typical models, much faster than the frame rate.

System latency can be affected by when in the frame the calculated values are locked in.
Older versions of 9X locked them in at the end of all the pulses, but newer ones lock them in right at the end of the frame.
(At least i think it does. The change to the code was subtle, but it looks like it is still in there)
This simple change can make quite a difference in the observed latency.

Best of all might be to only lock in the length of each pulse as it is required, but this gets complicated.

Pat MacKenzie
bertrand35
9x Developer
Posts: 2764
Joined: Fri Dec 30, 2011 11:11 pm
Country: -

Re: Tx Resolution/frame rate insigniifcant!

Post by bertrand35 »

pmackenzie wrote:This is not exactly correct. :)
ER9X (and the others I assume) runs the encoder calculations as fast as possible and it is not synced at all with the frame rate.
You can see the time it takes to read the sticks and calculate new pulse widths by looking at "Tmain" on the STAT2 screen.
It is on the order of 5 msec for typical models, much faster than the frame rate.

System latency can be affected by when in the frame the calculated values are locked in.
Older versions of 9X locked them in at the end of all the pulses, but newer ones lock them in right at the end of the frame.
(At least i think it does. The change to the code was subtle, but it looks like it is still in there)
This simple change can make quite a difference in the observed latency.

Best of all might be to only lock in the length of each pulse as it is required, but this gets complicated.

Pat MacKenzie
Tmain shows the max time of the "main", I am afraid that you will only see there the biggest duration measured (which includes mixer, menus, lcd refresh, not only the mixer)

Bertrand.

PS: for information:
open9x / stock does exactly like Pat explained
open9x / gruvin9x evals the mixer at T(start mixer) = T(pulses) - T(last mixer duration) - 500us
open9x / sky9x evals the mixer every 2ms (it's very quick, around 0.3ms)
pmackenzie
Posts: 236
Joined: Tue Dec 27, 2011 11:19 pm
Country: -
Location: Don Mills, Ontario

Re: Tx Resolution/frame rate insigniifcant!

Post by pmackenzie »

You are right, I did not make it quite as clear as I should have.

As you say, Tmain is once through the main program loop.
Each time through the loop it does everything you say, including a complete calculation of pulse widths.

I was going to mention something about the cycle time being affected by which screen you have chosen.

Pat MacKenzie
User avatar
kaos
Posts: 3247
Joined: Wed Dec 28, 2011 1:15 am
Country: United States

Re: Tx Resolution/frame rate insigniifcant!

Post by kaos »

OK, if i understand correctly, then if there is a simple comarison between frames, when the stick movement is less than the servo resolution, then don't calculate and put a 'null' frame out, and rx read 'null' frame will keep all the ch where it was instead of compile a whole frame. This way all the 'useless' frame won't pile up and create all those latency in between frames. Only the stick/ch change > servo resolution then a 'valid' frame is created and sent out and rx will decode that and change servo. And make the frame rate as fast as the cpu can handle.
won't this way will increase the response time much better while resolution is still the same? for best servo with 500 steps, that should be able to save a lot of latency time?
If true, make the resolution at 500 to fit any available servo resolution will increase response time much better.
or in reality, that won't save a whole lot of time?
I guess it also depends on how fast you can move the stick in real.
Any one done a test how fast on hard core flying you move the stick 1/500 of the whole travel for a stick?
Don't know whether this makes any sense to you, just a thought. ;)
User avatar
gohsthb
Posts: 1412
Joined: Wed Dec 28, 2011 2:32 pm
Country: -
Location: Naperville, IL

Re: Tx Resolution/frame rate insigniifcant!

Post by gohsthb »

Don't forget that unless you have digital servos that can handle a higher frame rate. The fastest you can push updates to a servo is 50Hz. Any faster and you risk burning up the servos.
-Gohst

Sent from my LG-P999 using Tapatalk 2
User avatar
Kilrah
Posts: 11109
Joined: Sat Feb 18, 2012 6:56 pm
Country: Switzerland

Re: Tx Resolution/frame rate insigniifcant!

Post by Kilrah »

kaos wrote:OK, if i understand correctly, then if there is a simple comarison between frames, when the stick movement is less than the servo resolution, then don't calculate and put a 'null' frame out, and rx read 'null' frame will keep all the ch where it was instead of compile a whole frame. This way all the 'useless' frame won't pile up and create all those latency in between frames. Only the stick/ch change > servo resolution then a 'valid' frame is created and sent out and rx will decode that and change servo.
No. Everything is computed and sent out everytime.
Nearly every RC system out there works with a fixed framerate, and this is the "main clock" for the RF transmission.

So there for example you have a PPM frame with 22.5ms period (er9x/open9x defaults). As Bertrand explained, the radio will constantly read the sticks, calculate the mixers and store the servo positions in memory, which takes a few ms. Everytime this is done, the previous results in memory are simply overwritten, nothing is piling up (keeping outdated values makes no sense).
When it's time to send a PPM frame, then the current (most recently computed) servo positions are sent out to the RF module. What happens after that depends on the RF module, each manufacturer does things differently.

Think of 2 parallel operations. One is the "read sticks-compute mixers-store result in memory" task, that (on er9x/open9x) runs as fast as it can.
The second is the signal output task, that every 22.5ms reads the menory locations the first task stores its results in, and sends that out to the RF module.
Himilou
Posts: 4
Joined: Tue Oct 09, 2012 6:26 pm
Country: -

Re: Tx Resolution/frame rate insigniifcant!

Post by Himilou »

So with this in mind what is the best frame rate for hobbyking rx units and what is best with frsky units to get the minimum latency possible? The reason I ask is sometimes with both Er9x on a turnigy and on my old flysky the radio feels like its stuttering sometimes. Similar to a video stream over a poor internet connection. The picture freezes or becomes jerky because the updated information hasn't arrived \ been decoded yet for display.

Keeping the above in mind how do fbl controllers figure into this picture? They also need to do a calculation before sending a signal to the servos.
User avatar
Kilrah
Posts: 11109
Joined: Sat Feb 18, 2012 6:56 pm
Country: Switzerland

Re: Tx Resolution/frame rate insigniifcant!

Post by Kilrah »

When using a PPM signal between the radio and module (as is the case there) the allowable frame rate/period depends on the number of channels you're transmitting.
The default (22.5ms) is good for the default 8 channels. You can remove 2.2ms for each channel you leave out (for example if you set the proto as PPM 6CH you can you can go down to 18ms safely). Any lower might not be accepted by the TX module or might be too fast for standard servos (with the HK module, frsky rebuilds a new signal asynchronously anyway).

But in any case you should not feel any stuttering unless you have a link problem, even with 40ms.

Post Reply

Return to “The Pickled Gnu (The Pub)”