Hi,
I have Mateksys F405-std and crossfire nano RX connected to RX4, TX5 on Matek board. SERIAL2_PROTOCOL = 23.
Unfortunately, when I set CRSF TX and RX on outputs 1 and 2 on the receiver I get no signal on radio channels in arducopter. When I set n.in.sbus (non inverted sbus) on output 1 protocol is recognized and I have radio input working. Is there anything I am missing here? I have 4.1 firmware.
The only uart on that board with DMA is UART1 - you should use that for CRSF. You could also use the bdshot build which switches the DMA-enable uart to UART3
I wrote the CRSF support so I know that DMA is required. bdshot build is support for bi-directional dshot - its a separate firmware option that mission planner should give you. If you don’t use bi-directional dshot its still fine to use the firmware and this may be a more convenient way of getting a different uart with DMA than lots of rewiring.
Comparing with betaflight is like comparing a banana to a tomato.
Ok, but I understand f405 board can handle only one dma uart? I know betaflight is different software, but in case of hardware limitations bf I think doesn’t require dma for crsf? So dma requirement comes from the approach You used in your code? I am just curious about it.
Ok. Good to know. And in Matek H743-wing which uart can be used for crsf? How can i know that? I am building an electric glider right now and for sure I want ardupilot inside.
I tried connecting it to uart6, uart3 and uart1
I also tried to connect to uart 2 with the BRD_ALT_Config = 1 option,
this also does not work ((
serialX_ protocol=23
serialX_boud=57/115/230 (tested all)
If I connect to uart1 and exhibition. in the receiver settings, not inverted sbus, then everything works
This is very irytating, you can’t check if it will work until you waste time for testing. Only developers know how to make something to work. It is not writen in wiki that crsf is introduced in ardu 4.1.
The good thing is that this forum is always helpfull. If not this I think not many people would be using ardu.