Posts: 6 Threads: 1 Likes Received: 0 in 0 posts Likes Given: 0 Joined: Jan 2024 Reputation: 0 25-Jan-2024, 12:59 AM (This post was last modified: 25-Jan-2024, 01:21 AM by federicoriv.) Hello Everyone, I have a Xilo F4 Flight Controller with my drone using Betaflight, I´m using O3 and Crossfire, but now I want to add a GPS, The issue is, I think I run out of UARTs and I don´t know where to connect the GPS, As of now I have Crossfire connected to RX/TX 4 (Where the GPS should go), and DJI O3 to RX/TX 3, I tried changing SBUS and DSM RX via soft serial function, but didn´t work. Can I use SCL and SDA as TX/RX? Do you guys have any sugestión in order to make this work? I think a possibility is using crossfire via SBUS, but I guess it will have latency issues that way? Any help would be appreciated • Posts: 6 Threads: 1 Likes Received: 0 in 0 posts Likes Given: 0 Joined: Jan 2024 Reputation: 0 • Posts: 41 Threads: 1 Likes Received: 11 in 11 posts Likes Given: 1 Joined: Sep 2023 Reputation: 1 your FC advertises to have 6 UART's.. don't you have any free left? you can't use SCL & SDA as Rx/Tx. they are being used if your GPS has a compass/baro. do you use smart audio or telemetry? • Posts: 1,737 Threads: 60 Likes Received: 1,011 in 732 posts Likes Given: 96 Joined: Jan 2023 Reputation: 52 Although your FC has many UARTS, it only has the TX pads for UARTS 2, 5, 6. You could find the correct RX pin on the MCU and solder there, but that is a pain. Your UART1 is mapped to the SBUS (inverted RX1) and DSM (TX1) pads, so you can potentially move your CRSF RX there. I believe you can configure the crossfire RX to use an inverted RX pin (TX on the receiver side) just using the LUA script? I don't believe there is any performance penalty for this. That would free RX4/TX4 for your GPS. • Posts: 21,212 Threads: 583 Likes Received: 8,944 in 6,619 posts Likes Given: 1,425 Joined: Jun 2018 Reputation: 786 25-Jan-2024, 07:42 PM (This post was last modified: 25-Jan-2024, 07:46 PM by SnowLeopardFPV. Edit Reason: Additional info added. ) Unfortunately you can't use Crossfire to use an inverted SBUS pad like you can with ExpressLRS. Crossfire has no option to invert the signal for the CRSF protocol. The SBUS pad on the Xilo F4 FC uses an inline hardware inverter which isn't switchable via configuration like it is on some FCs, so you are out of luck with that. So your only options would be one of the following: - Configure Crossfire to use SBUS, but latency would be worse and you would lose FC telemetry because SBUS is only a one-way communication.
- Remap some of the spare UART pads to SoftSerial resources for the GPS module, although it's not recommended using SoftSerial for GPS communications due to the baud rate limitation that is only 9600 on a SoftSerial port which isn't generally considered to be fast enough for reliable GPS navigation.
- Solder directly to UART pins (legs) on the MCU.
• Posts: 12,099 Threads: 125 Likes Received: 3,739 in 2,836 posts Likes Given: 99 Joined: Feb 2017 Reputation: 388 Instead of soldering straight to UART, it is probably easier to solder onto the inverter IC. • Posts: 6 Threads: 1 Likes Received: 0 in 0 posts Likes Given: 0 Joined: Jan 2024 Reputation: 0 28-Jan-2024, 12:12 AM (This post was last modified: 28-Jan-2024, 12:15 AM by federicoriv.) (25-Jan-2024, 05:37 PM)StuweFPV Wrote: your FC advertises to have 6 UART's.. don't you have any free left? you can't use SCL & SDA as Rx/Tx. they are being used if your GPS has a compass/baro. do you use smart audio or telemetry? Actually i'm not planning to use the compass as I have read its not that important in betaflight. I think it would be a nice solution, if its possible, to connect RX/TX in the SCL and SDA (but I dont know how to make it work), also im not using a baro, nor smart audio or telemetry. Thanks! • Posts: 6 Threads: 1 Likes Received: 0 in 0 posts Likes Given: 0 Joined: Jan 2024 Reputation: 0 (25-Jan-2024, 07:10 PM)mstc Wrote: Although your FC has many UARTS, it only has the TX pads for UARTS 2, 5, 6. You could find the correct RX pin on the MCU and solder there, but that is a pain. Your UART1 is mapped to the SBUS (inverted RX1) and DSM (TX1) pads, so you can potentially move your CRSF RX there. I believe you can configure the crossfire RX to use an inverted RX pin (TX on the receiver side) just using the LUA script? I don't believe there is any performance penalty for this. That would free RX4/TX4 for your GPS. In that case, if the crossfire can be inverted, should I use soft serials? or just remap DSM and SBUS? What would the procedure in the betaflight side would be? Thanks • Posts: 6 Threads: 1 Likes Received: 0 in 0 posts Likes Given: 0 Joined: Jan 2024 Reputation: 0 28-Jan-2024, 12:19 AM (This post was last modified: 28-Jan-2024, 12:21 AM by federicoriv.) (25-Jan-2024, 07:42 PM)SnowLeopardFPV Wrote: Unfortunately you can't use Crossfire to use an inverted SBUS pad like you can with ExpressLRS. Crossfire has no option to invert the signal for the CRSF protocol. The SBUS pad on the Xilo F4 FC uses an inline hardware inverter which isn't switchable via configuration like it is on some FCs, so you are out of luck with that. So your only options would be one of the following: - Configure Crossfire to use SBUS, but latency would be worse and you would lose FC telemetry because SBUS is only a one-way communication.
- Remap some of the spare UART pads to SoftSerial resources for the GPS module, although it's not recommended using SoftSerial for GPS communications due to the baud rate limitation that is only 9600 on a SoftSerial port which isn't generally considered to be fast enough for reliable GPS navigation.
- Solder directly to UART pins (legs) on the MCU.
Well Im not using telemetry through my radio, only on my goggles, but im worried about latency due to the Freestyle I like to fly, I tried Remaping using softserials with DSM and SBUS with no luck, maybe a bad procedure? Im only looking to use GPS as a failsafe if I have signal lose. I think the MCU option could be nice, but actually I dont know what you mean with that could you please explain, Thanks for your help • Posts: 6 Threads: 1 Likes Received: 0 in 0 posts Likes Given: 0 Joined: Jan 2024 Reputation: 0 (26-Jan-2024, 03:30 AM)voodoo614 Wrote: Instead of soldering straight to UART, it is probably easier to solder onto the inverter IC. Could be worth a try, could you please explain what you mean or how should I do it? Thanks for the help • Posts: 12,099 Threads: 125 Likes Received: 3,739 in 2,836 posts Likes Given: 99 Joined: Feb 2017 Reputation: 388 (28-Jan-2024, 12:20 AM)federicoriv Wrote: Could be worth a try, could you please explain what you mean or how should I do it? Thanks for the help On an F4, signal inversion is done using an IC chip. Example SBUS pad. Locate the pin on the MCU that the FC uses for SBUS. That should trace to an IC with 5-6 pins. The leg on that IC is easier to solder to than the pin on the MCU. • |