ArduPilot / ardupilot

ArduPlane, ArduCopter, ArduRover, ArduSub source
http://ardupilot.org/
GNU General Public License v3.0
10.95k stars 17.48k forks source link

ChibiOS: Feature Request: Support Frsky Smart Port Telemetry on Matek F405-WING, Omnibus F4 Pro Like FC #9267

Closed davidngrc closed 5 years ago

davidngrc commented 6 years ago

I am using OpenTx 2.2.2 in my X9D Plus + R9 Mini SBUS Firmware

On Pixhawk, we could use Frsky Smart Port Telemetry by adding extra hardware like "FrSky Telemetry Cables" or "Teensy Board" (test myself, working) mention here http://ardupilot.org/copter/docs/common-frsky-telemetry.html

But the Matek F405 WING, Omnibus F4 Pro are now supported by ArduPilot. and Matek F405 WING, Omnibus F4 Pro like FC are support SPort Telemetry without extra hardware in iNav, CleanFlight, BetaFlight. So I was hopping the latest firmware 2018-08-23 http://firmware.ardupilot.org/Plane/beta/MatekF405-Wing/
will work, but it does not.

because in here, it said the TX2 (SPort) pin is disabled. https://github.com/ArduPilot/ardupilot/blob/master/libraries/AP_HAL_ChibiOS/hwdef/MatekF405-Wing/hwdef.dat

I try TX1, TX2, TX3, TX5, with serial protocol set to 4=frsky sport or 10=frsky sport passthrough all not working, no new sensor.

I even try get the telemetry from this latest lua script https://github.com/jplopezll/OpenTX_FrSkySPort_passthrough_master same not working, I guest this script need a TTL-Serial inverter adaptor as mention in the readme.

ilya-88 commented 5 years ago

And why in this firmware 7 and 8 channel are not available? And others are the same, there is no autotune. 3.7 firmware is the latest

dnick971 commented 5 years ago

Matek F405 wing , arduplane 3.10-dev, X8R SPORT connected to SERIAL1 i can't get telemetry to work with my frsky radio QX7S with opentx 2.2.3 (yapuu or flightdeck don't receive data). Does the SERIALX_OPTION work with F4 board ?

choyado commented 5 years ago

Did you try serial option 4?

dnick971 commented 5 years ago

Yes but i got a "no telemetry" error message with yapuu, flight deck stay in its "waiting for autopilot" state. The first forum post deals with a kakute F7, but the F405 wing has a STM F4 is this the problem ? Is it necessary to "hack" the craft and theory cable ?

choyado commented 5 years ago

I have an f405 wing also. I am connecting directly to the FC (no craft and theory cable). However, I am using a R9slim plus and the uninverted (inverted according to FRsky) s-port pin. F4 boards can't handle inverted telemetry. There is a way to get the uninverted signal off of a X4R....not sure how to do it on an X8R

rafaroldan commented 5 years ago

I have an f405 wing also. I am connecting directly to the FC (no craft and theory cable). However, I am using a R9slim plus and the uninverted (inverted according to FRsky) s-port pin. F4 boards can't handle inverted telemetry. There is a way to get the uninverted signal off of a X4R....not sure how to do it on an X8R

Hi! Could you please post the parameters for SERIAL1 you are using? And please, confirm that only a single cable from TX1 (on the F405WING) to the receiver S.PORT pin (on the R9slim) is needed. I'cant get it working..... Thanks!

choyado commented 5 years ago

Do you have the slim plus?

SERIAL4_BAUD 57 SERIAL4_OPTIONS 4 SERIAL4_PROTOCOL 10

rafaroldan commented 5 years ago

Thanks! Yes the R9 Slim+

choyado commented 5 years ago

Make sure to use the s.port pin that is labeled inverted.

rafaroldan commented 5 years ago

That was it!!! it's working now! Thanks for your help!! I've one more question... in INAV (yes I admit) you can send S.PORT telemetry with 405 wing using any S.PORT receiver, single wire, without modification? Why this doesn't work with APM?

juichi commented 5 years ago

I have just recently acquired the 405-wing controller to experiment with Ardupilot in this platform. I previously had a repurposed cube (black from solo) with my r-xsr received working for telemetry with the RS-232 chip with diode that is described by the creator of the Yapuu script. I assumed it would be the same thing for the 405-wing but that did not work. I have tried almost all variations of the settings for serial options, uarts, ap 3.10-dev and ap 3.9.6.

My current config is the r-xsr univerted s port to serial 6, baud 57, option 7. Neither frsky options work (4 or 10). I even pulled out the scope and I can see the rx polling on sport but the fc doesn’t want to talk back. I am now considering going back to 3.9.6 and diode bridging the tx and rx on the univerted s sport side.

Have there been any reports of success with the 405-wing and the r-xsr for s port telemetry?

CJ-Davies commented 5 years ago

Just to add feedback of my own successful test;

Seems to work fine so far (just flight controller & receiver connected, not built into an actual copter yet), I can run FlightDeck on my Taranis X9D Plus & get warning messages & watch the artificial horizon move as I move the flight controller.

offpar commented 5 years ago

FrSky passthrough telemetry (protocol 10 with a single wire uninverted smartport feed) also working on the following setup :

Anyway this is truly good news for Ardupilot users since it's a "kiss me goodby" for all those until now necessary additional hardware signal converter proprietary or DIY crutches .

githubtd01 commented 5 years ago

SERIAL1_OPTIONS 4 (= Half-Duplex)

I cannot find this option in Mission Planner and a X2.1 controller. Is that restricted to certain devices?

dnick971 commented 5 years ago

I think that you haven't install the 3.10 dev version of ardupilot.

githubtd01 commented 5 years ago

ok, that is true, I have 3.6.8. Looking forward for those changes, they will help me alot!

dnick971 commented 5 years ago

Matek F405 wing, R9 slim + and qx7 (last opentx version, last firmware on the r9 and the receiver), arduplane 3.10 dev, connecting RX1 pin of the R9 slim + on the TX4 pin of the FC.

The telemetry works with yapuu. But i don't get the imu and compass update (maybe yapuu update those only after arming ?). I don't get neither the mode switch voice alert SERIAL4_BAUD 57 SERIAL4_OPTIONS 4 SERIAL4_PROTOCOL 10

twistedwings commented 5 years ago

I tried this on my Matek F405-CTR. Inverted S.Port (A) of XSR on TX5. image SERIAL4_BAUD 57 SERIAL4_OPTIONS 4 SERIAL4_PROTOCOL 4 No sensors discovered. Also tried TX3 without success.

dnick971 commented 5 years ago

Hi! You should use yapuu lua script (get the script on its github page). And try the protocol 10.

twistedwings commented 5 years ago

I have tried yapuu and protocol 10. All it shows is "no telemetry".

dnick971 commented 5 years ago

If you set the parameters : SERIAL4_BAUD 57 SERIAL4_OPTIONS 4 SERIAL4_PROTOCOL 10 You have to connect the Sport cable on the TX4 pad of the board.

MATEKSYS commented 5 years ago

https://github.com/ArduPilot/ardupilot/issues/9267#issuecomment-463897884

twistedwings commented 5 years ago

Are you sure? http://ardupilot.org/copter/docs/common-matekf405.html says SERIAL0 = console = USB SERIAL1 = Telemetry1 = USART3 SERIAL2 = Telemetry2 = UART4 SERIAL3 = GPS1 = USART1 SERIAL4 = GPS2 = UART5

twistedwings commented 5 years ago

@MATEKSYS Have you tested a F405-CTR?

MATEKSYS commented 5 years ago

@twistedwings We have not tested it on F405-CTR, but the theory is identical SERIALx_BAUD 57 SERIALx_OPTIONS 7 SERIALx_PROTOCOL 4

MATEKF405 target for F405-CTR BATT_AMP_PERVLT 17.9 BATT_CURR_PIN 14 BATT_VOLT_MULT 11.0 BATT_VOLT_PIN 15

twistedwings commented 5 years ago

Would you mind testing it?

FrSky Telemetry works fine on my F405-Wing, so I assume a firmware bug.

twistedwings commented 5 years ago

It works with a diode between Rx and Tx (anode on Tx). So I assume the half duplex option SERIALx_OPTIONS 4 does not work an F405-CTR.

MATEKSYS commented 5 years ago

tested it on F405-CTR, works fine http://firmware.ardupilot.org/Plane/2019-05/2019-05-30-21:05/MatekF405/ MP 1.3.66

http://ardupilot.org/copter/docs/common-matekf405.html#default-uart-order

Frsky X4R non-inverted S.Port signal to TX5 of F405-CTR SERIAL4_BAUD 57 SERIAL4_OPTIONS 7 SERIAL4_PROTOCOL 4

Frsky X4R non-inverted S.Port signal to TX4 of F405-CTR SERIAL2_BAUD 57 SERIAL2_OPTIONS 7 SERIAL2_PROTOCOL 4

twistedwings commented 5 years ago

Thank you very much for testing this!

OXINARF commented 5 years ago

I'm closing this now as it is already supported and this issue turned into a support forum, which is not the intention.

If you are having problems, please post in our forum (http://discuss.ardupilot.org).

@MATEKSYS as you are an ArduPilot partner, if you wish to have a dedicated category in our forum for support (see https://discuss.ardupilot.org/c/hardware-vendors), let us know at partners@ardupilot.org (I have sent an e-mail to all partners about it, but you might have missed it).

manotroll commented 5 years ago

would have a photo demonstrating how to connect the diode on both sides do not hear communication or do you have to use a rs232 on the way?