@page designChoices Design Choices

# JTAG Interface

When connecting the MCU to the programmer via the JTAG interface, it is possible for a local power supply connected to the MCU to be used or for power from the debugging/programming adapter to be used. Since having power supplied to the MCU from the debugging/programming adapter can be useful for use outside of the Sunseeker vehicle, we chose to use that.



# Microcontroller Peripheral Connections

Universal Serial Communication Interfaces (USCIs):

- A - Supporting up to four total of UART and/or SPI
  - A0 [SPI]:
    - CANbus Controller 0 (Microchip Technology MCP2515T-I/SO)
    - CANbus Controller 1 (Microchip Technology MCP2515T-I/SO)
  - A1:
  - A2 [UART]:
    - RS-232 Transceiver (STMicroelectronics ST232CDR)
  - A3 [UART]:
    - USB to UART Bridge (Future Technology Devices International FT230XS-R)
- B - Supporting up to four total of I2C and/or SPI
  - B0 [SPI]:
    - SD Card
    - GPS Receiver (Maxim Integrated ‎MAX2771ETI+T)
  - B1 [SPI]:
    - Bluetooth/Wi-Fi (Espressif Systems ESP32-WROVER-IE (8MB))
  - B2 [I2C]:
    - Inertial Measurement Unit (TDK InvenSense ICM-20600)
    - Real-Time Clock/Calendar (Microchip Technology ‎MCP7940MT-I/SN)



The thinking behind this so far, is to try and balance the load between the modules with SPI protocol being used in more high data-rate peripherals and I2C used with lower or less-used peripherals.