Microsoft Azure IoT Suite can be used to build extremely scalable Internet of Things (IoT) solutions. With any IoT solution the cloud platform is only half of what needs to be built. The other half resides on physical IoT hardware devices such as a Raspberry Pi that are connected to some combination of sensors and / or actuators to provide the real-world integration side of the IoT solution. Both the Raspberry Pi 2, 3 and 4 offer a 40 pin GPIO header to allow for many different components to be connected, in addition for the capability of providing both 3.3 volt and 5 volt output to those components. Each component needs to be connected to the correct pins, so a proper reference diagram is always necessary to ensure correct pin locations.
Raspberry Pi GPIO Pinout Reference
The Raspberry Pi 2, 3 and 4 have a 40 pin header that supports UART, I2C, SPI, PCM, and has numerous GPIO pins. It additionally has pins for 5V and 3.3V power along with numerous Ground pins. When connecting sensors and other components it’s very important to connect to the right pins. For this reason it’s important to keep a good Raspberry Pi GPIO Header Reference diagram readily available for easy lookup.
Here’s a really simple diagram with the location and purpose of each pinout labeled along with the color coding for easier reference at a glance.
Another device the this same GPIO header pin layout is the Nvidia Jetson Nano. I have another article that compares the features of the Nvidia Jetson Nano to the Raspberry Pi 4. You should definitely check it out if you’re interested in another board that’s pretty compatible, but still different with GPU and AI support.
Locating Header Pin 1
In case you’re unsure where what the orientation of the above Raspberry Pi GPIO Pin Reference, all you need to do is locate the “J8” marking on the board and match it up with the “J8” in the reference diagram (as shown by the red arrow in the below image.)
The location of Pin 1 and the “J8” marking on the Raspberry Pi board is in the corner of the board next to the header pins opposite of the Ethernet and USB ports. Pin 1 is the pin closest to the “J8” marking towards the inside of the board; not the corner pin on the outside edge of the board.
Attribution: The Raspberry Pi 3 hardware board image above is from the Wikipedia article on Raspberry Pi.
FYI, this article is a cross post and was originally posted to the Opsgility blog on 8/13/2016 at (https://www.opsgility.com/blog/2016/08/13/raspberry-pi-gpio-pin-reference/). Since the Opsgility blog is no longer online, I re-blogged this content here to keep it around for those that find it useful.