🎛

Payloads & Interfacing with External Boards

How to connect to external payloads, ADCS boards, etc...

Overview


Whether soldering a board onto the SMT slots or using an SMT header, the payload pinouts provide access to 3.3V, UART, I2C, SPI, and VBATT (via PYLD VDD).

Payload Headers


The inner pads of the "payload slots" can accommodate standard 0.1" surface-mount headers. 2 row, 18 pos. surface mount headers (male or female) work best.

Header soldered to mainboardv01

Example P/Ns:

Header Pinouts

Any of the pin names pictured above can be accessed in CircuitPython using the board object.

For example:

  • Using a pin as GPIO
    from pycubed import cubesat
    import board
    import digitalio
    
    gpio = digitalio.DigitalInOut(board.PB16)
    gpio.switch_to_output()
    gpio.value = True  # set GPIO high
    gpio.value = False # set GPIO low
  • Using I2C (SD2/SCL2)
    from pycubed import cubesat
    import board
    import busio
    
    i2c2 = busio.I2C(board.SDA2,board.SCL2)
  • Using UART (TX2/RX2)
    from pycubed import cubesat
    import board
    import busio
    
    uart2 = busio.UART(board.TX2,board.RX2)
    
    # you can also swap the pins
    # uart2 = busio.UART(board.RX2,board.TX2)

See 🎹Pin Muxing for more details on what pins can do what functions

Payload Board SMT Slots


Similar to the radio modules' surface mount mezzanine style, the payload board slots can accept custom PCBs soldered directly to the board. You can even span across two payload spots to accommodate larger payload designs.

Payload boards on the KickSat-2 mission
Payload board on the V-R3x mission

Full design schematics and layout for the ADC payload board pictured above:

We've even seen groups make payload boards that span both slots, like this →

Payload baord spanning both slots.
📢
Have you made a cool payload board? Wish the pinout was different?

Let us know on the 💬 PyCubed forums