+++
brief = "Pins should be grouped by function"
+++

Where possible, pins should be grouped by similar function, rather than by their physical location on the associated footprint. This provides cleaner schematic routing and symbols are easier to understand in the schematic.

. Pins with *similar functions* should be grouped together:
  * `SPI_MISO`, `SPI_MOSI`, `SPI_CS`, `SPI_CLK`
  * `UART_TX`, `UART_RX`
. *Ports* should be ordered from top to bottom
. *Positive power* pins should be placed at the _top_ of a symbol
  * `Vcc`, `Vdd`, `Vin`, `V+`, etc.
. *Negative power* and *ground* pins should be placed at the _bottom_ of a symbol
  * `GND`, `Vss`, `V-`, etc.
. *Input/Control/Logic* pins should be placed on the _left_ of a symbol
  * `UART Tx/Rx`
. *Output/Controlled/Driver* pins should be placed on the _right_ of a symbol
  * `RS232 Tx/Rx`

{{< klcimg src="S4.2a" title="Pin grouping" >}}
