# Multi-channel data transmission system for Pixhawk autopilot

I hope to connect multiple Pixhawk autopilots to one PC, to establish a simulation system. In case you are unfamiliar with Pixhawk autopilot, here is a brief introduction:

Pixhawk autopilot is an STM32F4 based controller for unmanned aerial vehicles. It is equipped with interfaces including UART, CAN, SPI, I²C, et al.

Now I have up to 50 Pixhawks, and I want to connect them with one PC. The data transmission between Pixhawk and PC needs to satisfy:

• Each Pixhawk sending data @6.4 kbit/s and receiving data @25.6 kbit/s, at least.
• The PC needs to distinguish who the sender is, i.e. to distinguish which Pixhawk sent a certain datagram.

Since the add-on development of Pixhawk is hard, I am not going to use the CAN or I²C interface of the Pixhawk. My plan is, to add another chip or board between a Pixhawk and PC, just like:

So, my question is:

• What chip should I choose to finish this task?
• Is the UART communication between Pixhawk and the chip okay?
• What kind of bus should I choose?
• You mention "aerial vehicles". Is any of this data going to be wireless? The data transfer reliability and thus protocol is greatly affected by that. – Oldfart Jun 4 '18 at 9:47
• @Oldfart This is just a simulation system. If required by reliability, I can tolerate any wireless part of this system being replaced by a wired solution. – Alexander Zhang Jun 4 '18 at 11:15
• Why is this question tagged with i2c and can if you don't intend to use either of them? – Peter Mortensen Jun 5 '18 at 6:33
• Unless it is a mission-critical system, Ethernet might be the best choice. Depending on how much and how often you send data, CAN may or may not be able to handle the necessary bandwidth. – Lundin Jun 7 '18 at 10:27
• "Is the UART communication between Pixhawk and the chip okay?" What kind of question is that? It is your design, you tell us. Nobody knows what "chip" is. – Lundin Jun 7 '18 at 10:30