New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
UART communication not implemented using DMAs #3022
Comments
ChibiOS has two drivers for UART communication, one with DMA and one without (called SD for SerialDevice if I'm not wrong). At the moment, the PPRZ uart driver is only implementing the second one. It is probably possible to do something to select the an other driver, or to eventually implement a 'uart_dma_arch' if configuration and usage is too different. |
Thanks Gautier for the reply. |
I have never used a Pixhawk board and I have not made the configuration for this board, so I have no idea. If PX4 or Ardupilot are doing it, I guess it is possible, but for sure it is a pain to cross check all DMA stream and channels... |
Hi Gautier! |
I noticed that the UART communication is not implemented using DMA (Holybro Pixhawk 4 with chibiOS).
This makes UART usage extremely processor intensive.
I'm currently running a setup that requires multiple high bitrate UART connections. This saturates the processor computational load to a point where just the UART threads are using 40% of my CPU power.
Does anyone have the knowledge of DMA UART implementation for this flight computer and OS?
Even just one or two DMA UART could make a huge improvement to my setup.
Thanks in advance to anyone that will be willing to help me (and all the future ppz users)! :)
The text was updated successfully, but these errors were encountered: