1. The board size should comply with the PC/104 standard. There should be mounting holes at all 4 corners of the board.
  2. An operating temperature between -40°C and 85°C should be assumed and every component constituting the OBC should be able to operate within this range
  3. An onboard temperature sensor must be available to keep track of temperature changes onboard the OBC
  4. An external memory/storage device should be made available in order to store code, housekeeping, and telemetry data before transmission to the ground station
  5. Make the board easy-to-use for developers
  6. A debug probe is needed for flashing the MCU
  7. Regulated voltages of 3.3V and 1.2V should be available on the local power bus
  8. Consider how the board will interact with other subsystems
  9. An over-voltage and current protection system should be implemented in order to trip the power and reset the OBC in case of a short circuit or instability in voltage levels. We should have latch-up protection (which involves the other stuff anyway) as well.
  10. Create a fault-tolerant system by practicing redundancy
  11. If OTA software updates are to be done, external memory (MRAM/FRAM) is needed so we can store the original and new code images. Alternatively, we can dual-partition the main FRAM/MRAM
  12. A remove-before-flight (RBF) circuit is needed to ensure that the satellite starts operation only after ejection from the launch vehicle.
  13. An external watchdog is needed to monitor MCU programs to see if they work