- Posts: 277
New FrSkyX protocol
- Wene001
- Offline
www.deviationtx.com/forum/3-feedback-que...o-7e-blown-regulator
Please Log in or Create an account to join the conversation.
- bampi2k
- Offline
- Posts: 20
I changed the hexfet with a random mosfet and it worked!
Well not exactly. I had an old PCB scavenged off the streets! I could trace that the circuit was using a ~1V - 5V logic to trigger other power electronic components.
Side-effect: The R(DS-ON) is definitely higher than the original IRLML6401. so the V-sense is off. But thats okay. I run a 2S lipo as power source.
Anyways, I shall order some of the IRLML6401 and replace. only worry MOQ is 10!
Now back to the actual topic:
With the new 3.3V Linear LDO in place, the module works perfect! Absolutely no twitching on Channel monitor. On Betaflight. its clean.
Thanks to all here for getting this sorted!
Please Log in or Create an account to join the conversation.
- sfersystem
- Offline
- Posts: 124
High quality pigtail to sma
Please Log in or Create an account to join the conversation.
- Fernandez
- Offline
- Posts: 983
for RX antenna and longer coax could make difference.
Please Log in or Create an account to join the conversation.
- petsmith
- Offline
- Posts: 63
Please Log in or Create an account to join the conversation.
- sfersystem
- Offline
- Posts: 124
petsmith wrote: Is there any way to get Frsky XSR rssi value to be displayed on Betaflight OSD using Deviation? On Taranis, you can mix the rssi as a channel and send back to the receiver. Then, it can be used by Betaflight OSD. If it's not currently being supported by Deviation, maybe we add this feature.
I think i've tried some solutions, but nothing, it doesn't work for the moment with XSR.
Please Log in or Create an account to join the conversation.
- hexfet
- Offline
- Posts: 1868
For short term a protocol option would be simple but frskyx already uses the max of 4 options.
Here's a one-liner you can add to put RSSI onto channel 12 (not the cleanest way to implement, but it's one line):
diff --git a/src/protocol/frskyx_cc2500.c b/src/protocol/frskyx_cc2500.c
index 5cfd12e..8aa8bf5 100644
--- a/src/protocol/frskyx_cc2500.c
+++ b/src/protocol/frskyx_cc2500.c
@@ -219,6 +219,8 @@ static u16 scaleForPXX(u8 chan, u8 failsafe)
chan_val = chan_val * STICK_SCALE / CHAN_MAX_VALUE + 1024;
+ if (chan == 11 && !failsafe) chan_val = Telemetry.value[TELEM_FRSKY_RSSI];
+
if (chan_val > 2046) chan_val = 2046;
else if (chan_val < 1) chan_val = 1;
Please Log in or Create an account to join the conversation.
- petsmith
- Offline
- Posts: 63
hexfet wrote: Here's a one-liner you can add to put RSSI onto channel 12 (not the cleanest way to implement, but it's one line):
Thanks! I'll take a look later and may try to implement something simple.
Please Log in or Create an account to join the conversation.
- petsmith
- Offline
- Posts: 63
Hexfet, here is the modification that I made. I don't know if you're willing to merge it. Feel free to do whatever you want.
diff --git a/src/config/model.h b/src/config/model.h
index a227ba7..3a75cde 100644
--- a/src/config/model.h
+++ b/src/config/model.h
@@ -21,7 +21,7 @@ const char *MODEL_TEMPLATE;
#define UNKNOWN_ICON ("media/noicon" IMG_EXT)
//This cannot be computed, and must be manually updated
-#define NUM_PROTO_OPTS 4
+#define NUM_PROTO_OPTS 5
#define VIRT_NAME_LEN 10
struct Model {
diff --git a/src/protocol/frskyx_cc2500.c b/src/protocol/frskyx_cc2500.c
index 5cfd12e..b02ae73 100644
--- a/src/protocol/frskyx_cc2500.c
+++ b/src/protocol/frskyx_cc2500.c
@@ -42,6 +42,7 @@ static const char * const frskyx_opts[] = {
_tr_noop("AD2GAIN"), "0", "2000", "655361", NULL, // big step 10, little step 1
_tr_noop("Freq-Fine"), "-127", "127", NULL,
_tr_noop("Format"), "FCC", "EU", NULL,
+ _tr_noop("RSSIChan"), "None", "LastChan", NULL,
NULL
};
enum {
@@ -49,6 +50,7 @@ enum {
PROTO_OPTS_AD2GAIN,
PROTO_OPTS_FREQFINE,
PROTO_OPTS_FORMAT,
+ PROTO_OPTS_RSSICHAN,
LAST_PROTO_OPT,
};
ctassert(LAST_PROTO_OPT <= NUM_PROTO_OPTS, too_many_protocol_opts);
@@ -217,7 +219,10 @@ static u16 scaleForPXX(u8 chan, u8 failsafe)
else
chan_val = Channels[chan];
- chan_val = chan_val * STICK_SCALE / CHAN_MAX_VALUE + 1024;
+ if (Model.proto_opts[PROTO_OPTS_RSSICHAN] && (chan == Model.num_channels - 1) && !failsafe)
+ chan_val = Telemetry.value[TELEM_FRSKY_RSSI] * 21; // Max RSSI value seems to be 99, scale it to around 2000
+ else
+ chan_val = chan_val * STICK_SCALE / CHAN_MAX_VALUE + 1024;
if (chan_val > 2046) chan_val = 2046;
else if (chan_val < 1) chan_val = 1;
Please Log in or Create an account to join the conversation.
- sfersystem
- Offline
- Posts: 124
Please Log in or Create an account to join the conversation.
- FDR
- Offline
In general I like the idea of using the telemetry values as inputs. But sending them back?!
Please Log in or Create an account to join the conversation.
- petsmith
- Offline
- Posts: 63
FDR wrote: What I don't understand here, shouldn't it be a receiver feature?
In general I like the idea of using the telemetry values as inputs. But sending them back?!
I totally agreed! This should have been a feature on the receiver. Unfortunately, the popular XSR & X4R-SB receivers can't send RSSI to the FC via a RC channel. Only the newest Frksy receivers XM & XM+ support this feature. Unless we rewrite the receiver firmware, there isn't much we can do on the receiver side. The OpenTX firmware also provide the ability to send back the RSSI telemetry value to the receiver via a dedicated RC channel. I'm just borrowing the idea and brought it to the devo, so that we can have the RSSI value available for the FC.
Please Log in or Create an account to join the conversation.
- FDR
- Offline
EDIT: Of course the range still would be limited, and you would like to see that on your FPV screen...
Please Log in or Create an account to join the conversation.
- sfersystem
- Offline
- Posts: 124
Please Log in or Create an account to join the conversation.
- petsmith
- Offline
- Posts: 63
sfersystem wrote: Just awesome, Thanks a lot, works very well for me.
Glad to hear it works well. Thanks for taking the time to test.
Please Log in or Create an account to join the conversation.
- hexfet
- Offline
- Posts: 1868
Please Log in or Create an account to join the conversation.
- petsmith
- Offline
- Posts: 63
Please Log in or Create an account to join the conversation.
- magic_marty
- Offline
- Posts: 706
Please Log in or Create an account to join the conversation.
- magic_marty
- Offline
- Posts: 706
Please Log in or Create an account to join the conversation.
- aMax
- Offline
- Posts: 776
Do you mean the DIY receiver FD802 or F802? They are different to handle.
Edit: Deviation " frsky" is D8. ..."frskyx" is D16.
Devo7e, TaranisQ X7, R9M , 4in1 MM, Futaba FC18plusV3.2 & DFT/FLD-02
Please Log in or Create an account to join the conversation.
- Home
- Forum
- Development
- Protocol Development
- New FrSkyX protocol