- Posts: 4
- Forum
- News, Announcements and Feedback
- Feedback & Questions
- deviation s-fhss has narrow servo range.
deviation s-fhss has narrow servo range.
- saydals
-
Topic Author
- Offline
Less
More
22 Aug 2016 14:59 #53007
by saydals
deviation s-fhss has narrow servo range. was created by saydals
deviation sfhss has narrow servo range .
I have futaba t6j , xk controller and devo 8s cc2500 mod.
when i bind to xk receiver or original futaba receiver with deviation sfhss ( devo8s ) protocol , servo range is too narrower than other controller ( t6j or xk )
and i can control servo with full range with delta 8 multi receiver by frsky protocol.. but sfhss is not.
what can i do ?
I have futaba t6j , xk controller and devo 8s cc2500 mod.
when i bind to xk receiver or original futaba receiver with deviation sfhss ( devo8s ) protocol , servo range is too narrower than other controller ( t6j or xk )
and i can control servo with full range with delta 8 multi receiver by frsky protocol.. but sfhss is not.
what can i do ?
- Thomas.Heiss
-
- Offline
Less
More
- Posts: 698
22 Aug 2016 15:32 #53008
by Thomas.Heiss
Replied by Thomas.Heiss on topic deviation s-fhss has narrow servo range.
AFAIK S-FHSS protocol implementation (for XK110/XK120 heli) was never tested with S-FHSS Futaba receivers before.
Reason: Lack of sponsored equipment.
So congratulations - you seem to be the first one to actually test the S-FHSS protocol implementation to Futaba genuine receivers.
What you can do? Wait for developer feedback
You guys might find a way to additionally customize the S-FHSS implementation either be it for Futaba receivers or just S-FHSS built in heli receivers. Maybe a popup dialog just like DSM-telemetry on/off or B2/A1 bind option?
Reason: Lack of sponsored equipment.
So congratulations - you seem to be the first one to actually test the S-FHSS protocol implementation to Futaba genuine receivers.
What you can do? Wait for developer feedback
You guys might find a way to additionally customize the S-FHSS implementation either be it for Futaba receivers or just S-FHSS built in heli receivers. Maybe a popup dialog just like DSM-telemetry on/off or B2/A1 bind option?
- hexfet
-
- Offline
Less
More
- Posts: 1971
23 Aug 2016 22:43 #53052
by hexfet
Replied by hexfet on topic deviation s-fhss has narrow servo range.
You could try increasing the scale in the channel settings. Not familiar with the FHSS implementation so not sure how much affect it might have.
- saydals
-
Topic Author
- Offline
Less
More
- Posts: 4
24 Aug 2016 07:31 #53065
by saydals
Replied by saydals on topic deviation s-fhss has narrow servo range.
max limit and scale does not effect.
' too narrower than' is exaggerative .... I think s-fhss protocol of devi... has about 80% range of real maximum servo range.
I can solve this problem to controll servo arm length.
' too narrower than' is exaggerative .... I think s-fhss protocol of devi... has about 80% range of real maximum servo range.
I can solve this problem to controll servo arm length.
- saydals
-
Topic Author
- Offline
Less
More
- Posts: 4
24 Aug 2016 07:44 #53066
by saydals
Replied by saydals on topic deviation s-fhss has narrow servo range.
Thank you for answer.
I don't understand last sentence for I don't use dms protocol.. or.. may be my poor english.. ^ ^ ;
when i touch sfhss button in set up menu... Popup apears and show me fine and coarse parameter 0 defalt zero. ... but I don,t know what is .
and... Fail safe function of S-FHSS protocol does not work in genuin reciver and others.
I don't understand last sentence for I don't use dms protocol.. or.. may be my poor english.. ^ ^ ;
when i touch sfhss button in set up menu... Popup apears and show me fine and coarse parameter 0 defalt zero. ... but I don,t know what is .
and... Fail safe function of S-FHSS protocol does not work in genuin reciver and others.
- Ryou
-
- Offline
Less
More
- Posts: 65
25 Aug 2016 11:24 #53092
by Ryou
Replied by Ryou on topic deviation s-fhss has narrow servo range.
I'm sorry, my English is not good.
After a review of an oscilloscope, it was the following results.
Devo7E
100% scale = 1.52ms + -410us (also no change is set to more than 100%)
50% scale = 1.52ms + -205us
Futaba T8J
100% scale = 1.52ms + -410us
140% scale = 1.52ms + -570us (Max)
50% scale = 1.52ms + -205us
I changed the source, but could not be only up to 120% scale.
FUTABA is a wonder why can to 140%.
Currently SFHSS is not fail-safe support.
I wish to be supported.
I hope to something of help.
After a review of an oscilloscope, it was the following results.
Devo7E
100% scale = 1.52ms + -410us (also no change is set to more than 100%)
50% scale = 1.52ms + -205us
Futaba T8J
100% scale = 1.52ms + -410us
140% scale = 1.52ms + -570us (Max)
50% scale = 1.52ms + -205us
I changed the source, but could not be only up to 120% scale.
FUTABA is a wonder why can to 140%.
Currently SFHSS is not fail-safe support.
I wish to be supported.
I hope to something of help.
- mwm
-
- Offline
26 Aug 2016 21:02 - 26 Aug 2016 21:03 #53123
by mwm
But you've at least got it, which is probably more than I can say about your native language. And your English better than the languages I haven't used in 3 decades now, so don't worry about it.
You will need to set scale in the channel menu (the one you get when you select the 1-AIL or whatever button) as well as in the mixer in order to get output values past 125%.
Seems like every manufacturer does fail-safe differently, even if they use the same protocol. Some manufacturers even do it differently for different receivers. So the first step is for you to tell us how you set fail-safe using your licensed transmitter. That may tell us all we need in order to implement it (like the DSM protocols), or that we'll need some SPI captures, or even that it isn't possible.
If you're still wondering about the fine and course parameters, those are RF frequency tuning values for the CC2500. Those can be used to tune the CC2500 to improve signal strength, and the proper setting depends on which CC2500 module you have. Best way to tune it is to connect to your Rx, then adjust it up until the connection fails, then down until ditto, and then set it to the value in the middle of those two.
Do not ask me questions via PM. Ask in the forums, where I'll answer if I can.
My remotely piloted vehicle ("drone") is a yacht.
Replied by mwm on topic deviation s-fhss has narrow servo range.
Ryou wrote: I'm sorry, my English is not good.
But you've at least got it, which is probably more than I can say about your native language. And your English better than the languages I haven't used in 3 decades now, so don't worry about it.
I changed the source, but could not be only up to 120% scale.
FUTABA is a wonder why can to 140%.
You will need to set scale in the channel menu (the one you get when you select the 1-AIL or whatever button) as well as in the mixer in order to get output values past 125%.
Currently SFHSS is not fail-safe support.
I wish to be supported.
Seems like every manufacturer does fail-safe differently, even if they use the same protocol. Some manufacturers even do it differently for different receivers. So the first step is for you to tell us how you set fail-safe using your licensed transmitter. That may tell us all we need in order to implement it (like the DSM protocols), or that we'll need some SPI captures, or even that it isn't possible.
If you're still wondering about the fine and course parameters, those are RF frequency tuning values for the CC2500. Those can be used to tune the CC2500 to improve signal strength, and the proper setting depends on which CC2500 module you have. Best way to tune it is to connect to your Rx, then adjust it up until the connection fails, then down until ditto, and then set it to the value in the middle of those two.
Do not ask me questions via PM. Ask in the forums, where I'll answer if I can.
My remotely piloted vehicle ("drone") is a yacht.
Last edit: 26 Aug 2016 21:03 by mwm.
- Ryou
-
- Offline
Less
More
- Posts: 65
27 Aug 2016 01:38 - 27 Aug 2016 01:40 #53127
by Ryou
Replied by Ryou on topic deviation s-fhss has narrow servo range.
Thanks for the message.
That I was confirmed. It was confirmed by changing the program.
1: sacale + - a change measure the PWM signal width of the receiver
· Deviation does not change more than 100%.
· FUTABA can be varied up to 140%.
- Both pulse width of 100% the same.
2: confirm the change program (sfhss_cc2500.c)
static u16 convert_channel (u8 num)
{
s32 ch = Channels [num];
/ *
if (ch <CHAN_MIN_VALUE) {
ch = CHAN_MIN_VALUE;
} Else if (ch> CHAN_MAX_VALUE) {
ch = CHAN_MAX_VALUE;
}
* /
if (ch <-12800) {
ch = -12800;
} Else if (ch> 12096) {
ch = 12096;
}
return (u16) (496 - (ch * 410 / CHAN_MAX_VALUE));
}
Change to limit the CHAN_MIN_VALUE and CHAN_MAX_VALUE.
However, until the value of the return value is not less than or equal to zero.
Became to be set in this change up to about 120%, it can not be changed to up to 140%.
More can not understand me.
2: For fail-safe
We found a fail-safe introduction page of FUTABA T8J.
There are two types of fail-safe of the S-FHSS.
Types that you can set to any at the transmitter (T8J)
Types that have been set only CH3 in the transmission module (TM-FH module)
These fail-safe data appears to have been sent to every 5 seconds position.
SPI capture data is there any thing that was acquired at the receiver side. I wanted to know the TX-ID is the data of short time. Try to take the long data to the next opportunity.
Thanks to the efforts of developing member everyone.
That I was confirmed. It was confirmed by changing the program.
1: sacale + - a change measure the PWM signal width of the receiver
· Deviation does not change more than 100%.
· FUTABA can be varied up to 140%.
- Both pulse width of 100% the same.
2: confirm the change program (sfhss_cc2500.c)
static u16 convert_channel (u8 num)
{
s32 ch = Channels [num];
/ *
if (ch <CHAN_MIN_VALUE) {
ch = CHAN_MIN_VALUE;
} Else if (ch> CHAN_MAX_VALUE) {
ch = CHAN_MAX_VALUE;
}
* /
if (ch <-12800) {
ch = -12800;
} Else if (ch> 12096) {
ch = 12096;
}
return (u16) (496 - (ch * 410 / CHAN_MAX_VALUE));
}
Change to limit the CHAN_MIN_VALUE and CHAN_MAX_VALUE.
However, until the value of the return value is not less than or equal to zero.
Became to be set in this change up to about 120%, it can not be changed to up to 140%.
More can not understand me.
2: For fail-safe
We found a fail-safe introduction page of FUTABA T8J.
There are two types of fail-safe of the S-FHSS.
Types that you can set to any at the transmitter (T8J)
Types that have been set only CH3 in the transmission module (TM-FH module)
These fail-safe data appears to have been sent to every 5 seconds position.
SPI capture data is there any thing that was acquired at the receiver side. I wanted to know the TX-ID is the data of short time. Try to take the long data to the next opportunity.
Thanks to the efforts of developing member everyone.
Last edit: 27 Aug 2016 01:40 by Ryou.
- victzh
-
- Offline
Less
More
- Posts: 1386
07 Sep 2016 20:48 #53602
by victzh
Replied by victzh on topic deviation s-fhss has narrow servo range.
As I mentioned in another thread - I coded it according to actual observed values, while I suspect that actual range is limited by 10-bit value - 0-1023 instead of current 86-906.
The correct way is to modify the expression
return (u16) (496 - (ch * 410 / CHAN_MAX_VALUE));
to
return (u16) (511 - (ch * 511 / CHAN_MAX_VALUE));
The correct way is to modify the expression
return (u16) (496 - (ch * 410 / CHAN_MAX_VALUE));
to
return (u16) (511 - (ch * 511 / CHAN_MAX_VALUE));
- Ryou
-
- Offline
Less
More
- Posts: 65
08 Sep 2016 12:16 #53631
by Ryou
Replied by Ryou on topic deviation s-fhss has narrow servo range.
Not the offset and resolution problems.
The scaling there is a difference.
The scaling there is a difference.
- Ryou
-
- Offline
Less
More
- Posts: 65
08 Sep 2016 12:23 #53632
by Ryou
Replied by Ryou on topic deviation s-fhss has narrow servo range.
Up to 120% with the following modifications were able to be able to change the scale.
Up to 140% of the FUTABA can not understand me.
static u16 convert_channel(u8 num)
{
s32 ch = Channels[num];
/*
if (ch < CHAN_MIN_VALUE) {
ch = CHAN_MIN_VALUE;
} else if (ch > CHAN_MAX_VALUE) {
ch = CHAN_MAX_VALUE;
}
*/
if (ch < -12000) {
ch = -12000;
} else if (ch > 11952) {
ch = 11952;
}
return (u16) (498 - (ch * 500 / 12000));
Up to 140% of the FUTABA can not understand me.
static u16 convert_channel(u8 num)
{
s32 ch = Channels[num];
/*
if (ch < CHAN_MIN_VALUE) {
ch = CHAN_MIN_VALUE;
} else if (ch > CHAN_MAX_VALUE) {
ch = CHAN_MAX_VALUE;
}
*/
if (ch < -12000) {
ch = -12000;
} else if (ch > 11952) {
ch = 11952;
}
return (u16) (498 - (ch * 500 / 12000));
- micro heli club
-
- Offline
Less
More
- Posts: 22
04 Oct 2016 08:35 #54575
by micro heli club
Replied by micro heli club on topic deviation s-fhss has narrow servo range.
Hello.
Can I use if the source change?
Could you tell me how the source change?
Can I use if the source change?
Could you tell me how the source change?
- Ryou
-
- Offline
Less
More
- Posts: 65
01 Feb 2017 12:57 #58610
by Ryou
Replied by Ryou on topic deviation s-fhss has narrow servo range.
I solved this problem.
It is correct to send CH data with 12 BIT.
Specify the pulse width in us for data.
Example 1520us PWM = 1520.
Here is the change part. (Sfhss_cc2500.c)
static u16 convert_channel(u8 num)
{
s32 ch = ((Channels[num] * 10) / 244) + 1520; //10000=>410=>1520+-410 @10000
if (ch < 970) {
ch = 970; //-14000
} else if (ch > 2070) {
ch = 2070; //+14000
}
return (u16) (ch);
}
static void build_data_packet()
{
//#define spacer1 0x02 //0b10
//#define spacer2 (spacer1 << 4)
unsigned ch_offset = state == SFHSS_DATA1 ? 0 : 4;
u16 ch1 = convert_channel(ch_offset+0);
u16 ch2 = convert_channel(ch_offset+1);
u16 ch3 = convert_channel(ch_offset+2);
u16 ch4 = convert_channel(ch_offset+3);
packet[0] = 0x81; // can be 80, 81, 81 for Orange, only 81 for XK
packet[1] = tx_id[0];
packet[2] = tx_id[1];
packet[3] = 0;
packet[4] = 0;
packet[5] = (rf_chan << 3) | ((ch1 >> 9) & 0x07 );
packet[6] = (ch1 >> 1);
packet[7] = (ch1 << 7) | ((ch2 >> 5) & 0x7F );
packet[8] = (ch2 << 3) | ((ch3 >> 9) & 0x07 );
packet[9] = (ch3 >> 1);
packet[10] = (ch3 << 7) | ((ch4 >> 5) & 0x7F );
packet[11] = (ch4 << 3) | ((fhss_code >> 2) & 0x07 );
packet[12] = (fhss_code << 6) | state;
}
It is correct to send CH data with 12 BIT.
Specify the pulse width in us for data.
Example 1520us PWM = 1520.
Here is the change part. (Sfhss_cc2500.c)
static u16 convert_channel(u8 num)
{
s32 ch = ((Channels[num] * 10) / 244) + 1520; //10000=>410=>1520+-410 @10000
if (ch < 970) {
ch = 970; //-14000
} else if (ch > 2070) {
ch = 2070; //+14000
}
return (u16) (ch);
}
static void build_data_packet()
{
//#define spacer1 0x02 //0b10
//#define spacer2 (spacer1 << 4)
unsigned ch_offset = state == SFHSS_DATA1 ? 0 : 4;
u16 ch1 = convert_channel(ch_offset+0);
u16 ch2 = convert_channel(ch_offset+1);
u16 ch3 = convert_channel(ch_offset+2);
u16 ch4 = convert_channel(ch_offset+3);
packet[0] = 0x81; // can be 80, 81, 81 for Orange, only 81 for XK
packet[1] = tx_id[0];
packet[2] = tx_id[1];
packet[3] = 0;
packet[4] = 0;
packet[5] = (rf_chan << 3) | ((ch1 >> 9) & 0x07 );
packet[6] = (ch1 >> 1);
packet[7] = (ch1 << 7) | ((ch2 >> 5) & 0x7F );
packet[8] = (ch2 << 3) | ((ch3 >> 9) & 0x07 );
packet[9] = (ch3 >> 1);
packet[10] = (ch3 << 7) | ((ch4 >> 5) & 0x7F );
packet[11] = (ch4 << 3) | ((fhss_code >> 2) & 0x07 );
packet[12] = (fhss_code << 6) | state;
}
- Poldi
-
- Offline
Less
More
- Posts: 15
12 Nov 2017 07:21 #65761
by Poldi
Replied by Poldi on topic deviation s-fhss has narrow servo range.
Hello Ryou,
you requested feedback on my experience with the narrow range issue.
I installed a fix provided from Vlad
www.deviationtx.com/forum/6-general-disc...vo-throw-issue#65754
I'm not sure how it connects to this thread that seems to address the programming aspects. May be I am now using a piece of your code. Anyway, the preliminary testing resulted in full servo throw and appropriate S-FHSS functionality.
Regards,
Poldi
you requested feedback on my experience with the narrow range issue.
I installed a fix provided from Vlad
www.deviationtx.com/forum/6-general-disc...vo-throw-issue#65754
I'm not sure how it connects to this thread that seems to address the programming aspects. May be I am now using a piece of your code. Anyway, the preliminary testing resulted in full servo throw and appropriate S-FHSS functionality.
Regards,
Poldi
- Goomittle
-
- Offline
Less
More
- Posts: 1
14 Nov 2017 09:21 - 27 Dec 2017 17:28 #65816
by Goomittle
Replied by Goomittle on topic deviation s-fhss has narrow servo range.
Thanks for your tips mate, wish would be here more people like u!! youve really helped me especially now that i have such a hard time concentrating. gotta search for
drug reviews
because i think it is because of those pills i took.
Last edit: 27 Dec 2017 17:28 by Goomittle.
- victzh
-
- Offline
Less
More
- Posts: 1386
14 Nov 2017 15:43 #65823
by victzh
Replied by victzh on topic deviation s-fhss has narrow servo range.
Thanks to all who figured out and fixed the problem. The fix is now merged and should appear in nightly builds. When I initially implemented S-FHSS I did not have a real Futaba radio - they're kind of expensive, but used XK clone. So what I implemented was XK version of the protocol, and I verified it on third party (Orange) RX - it worked. I had no way to compare it with real Futaba TX, so I'm glad this is fixed now.
- Ryou
-
- Offline
Less
More
- Posts: 65
15 Nov 2017 01:44 #65837
by Ryou
Replied by Ryou on topic deviation s-fhss has narrow servo range.
I appreciate your wonderful activities.
I think that it is a mistake to post in this place.
The servo range mistake has continued from the past also to frsky1way_cc2500.c.
error
line 251: s32 value = (s32) Channels * 0x600 / CHAN_MAX_VALUE + 0x8c8;
correct
line 251: s32 value = (s32) Channels * 600 / CHAN_MAX_VALUE + 0x8c8;
Add following from line 349
case PROTOCMD_GETOPTIONS:
return frsky_opts;
Who does not use the Frsky-V8 protocol?
I think that it is a mistake to post in this place.
The servo range mistake has continued from the past also to frsky1way_cc2500.c.
error
line 251: s32 value = (s32) Channels * 0x600 / CHAN_MAX_VALUE + 0x8c8;
correct
line 251: s32 value = (s32) Channels * 600 / CHAN_MAX_VALUE + 0x8c8;
Add following from line 349
case PROTOCMD_GETOPTIONS:
return frsky_opts;
Who does not use the Frsky-V8 protocol?
- vlad_vy
-
- Offline
Less
More
- Posts: 3333
15 Nov 2017 05:26 #65840
by vlad_vy
Replied by vlad_vy on topic deviation s-fhss has narrow servo range.
line 251: s32 value = (s32) Channels * 600 / CHAN_MAX_VALUE + 0x8ca; //400*1.5 = 600, 1500 * 1.5 = 2250 = 0x8CA
Also, enabled frsky_opts[], it was disabled. Placed pull request with changes.
Also, enabled frsky_opts[], it was disabled. Placed pull request with changes.
- Forum
- News, Announcements and Feedback
- Feedback & Questions
- deviation s-fhss has narrow servo range.
Time to create page: 0.179 seconds
-
Home
-
Forum
-
News, Announcements and Feedback
-
Feedback & Questions
- deviation s-fhss has narrow servo range.