We’re frequently finding new terms, acronyms, initialisms and more that confuse people trying to figure out the flight software world. Hopefully, this is a resource that will help in some small way. Please let us know if we’ve missed something.
“Half Duplex” means that data can only flow one way. (Yes, it’s kind of weird to say “half twofold” and they could instead say “Simplex” but such is the industry sometimes.) Once data starts streaming, the sender cannot listen for incoming data until it stops sending its own data.
“Full Duplex” means the interface can send and receive data at the same time.
Most interfaces on a spacecraft are full duplex. For instance, RS-232, SpaceWire, and Ethernet are all full-duplex. However, space-to-ground and ground-to-space systems are often half-duplex. E.g. while an antenna is sending information, it is not receiving information. Some antenna and radio combinations can be full-duplex and some systems have channels just for sending and just for receiving so the overall spacecraft is “full duplex”.
This tends to matter when designing your communication strategy. For instance, if you send to the ground on a half-duplex link then you may want to pause after sending a file to make sure the ground “Acknowledges” receiving it correctly. This can chew up time and lower your data throughput.