Python Overview

Python is a programming language that lets you write code quickly and effectively. With a design philosophy that focuses on code readability, Python is easy to learn and use. Thanks to the advances in single board computers and powerful microcontrollers, Python can now be used to control hardware.

Getting Started

Let's dive in and learn how to write your own programs with Python to blink lights, respond to button pushes, read sensors, and log data on the Raspberry Pi.

Python Programming Tutorial: Getting Started with the Raspberry Pi

June 27, 2018

This guide will show you how to write programs on your Raspberry Pi using Python to control hardware.


Let's take it a step further now and get into some peripherals of using python including graphing, charting and GUI design.

MicroPython Programming Tutorial: Getting Started with the ESP32 Thing

September 26, 2018

MicroPython is an implementation and subset of the Python 3 programming language that can be used on microcontrollers. This guide will walk you through writing MicroPython programs for the ESP32 Thing development board.

How to Run a Raspberry Pi Program on Startup

September 18, 2018

In this tutorial, we look at various methods for running a script or program automatically whenever your Raspberry Pi (or other Linux computer) boots up.

How to Load MicroPython on a Microcontroller Board

September 4, 2018

This tutorial will show you how to load the MicroPython interpreter onto a variety of development boards.

Raspberry gPIo

October 29, 2015

How to use either Python or C++ to drive the I/O lines on a Raspberry Pi.

Raspberry Pi SPI and I2C Tutorial

October 29, 2015

Learn how to use serial I2C and SPI buses on your Raspberry Pi using the wiringPi I/O library for C/C++ and spidev/smbus for Python.

Graph Sensor Data with Python and Matplotlib

July 23, 2018

Use matplotlib to create a real-time plot of temperature data collected from a TMP102 sensor connected to a Raspberry Pi.

Python GUI Guide: Introduction to Tkinter

August 13, 2018

Tkinter is the standard graphical user interface package that comes with Python. This tutorial will show you how to create basic windowed applications as well as complete full-screen dashboard examples complete with live graph updates from matplotlib.

Computer Vision and Projection Mapping in Python

February 6, 2019

Use computer vision to detect faces and project images on top of them.


You can use Python from any computer, but the Raspberry Pi is a good place to start learning how to control hardware with the language. A few goodies on your workspace will become necessary the more you dive into this language. Here’s a list of recommended products that are helpful as you become an expert in Python.

Raspberry Pi 3 B+

Raspberry Pi 3 B+

Raspberry Pi Zero W

Raspberry Pi Zero W

Raspberry Pi LCD - 7" Touchscreen

Raspberry Pi LCD - 7" Touchscreen

SmartiPi Touch

SmartiPi Touch

Multimedia Wireless Keyboard

Multimedia Wireless Keyboard

SparkFun Pi Wedge

SparkFun Pi Wedge

microSD Card with Adapter - 16GB (Class 10)

microSD Card with Adapter - 16GB (Class 10)

Wall Adapter Power Supply - 5.1V DC 2.5A (USB Micro-B)

Wall Adapter Power Supply - 5.1V DC 2.5A (USB Micro-B)


Additional Resources

Below is a list of extra resources that will help you get your Raspberry Pi set up for writing Python.

Raspberry Pi 3 Starter Kit Hookup Guide

April 11, 2016

Guide for getting going with the Raspberry Pi 3 Model B and Raspberry Pi 3 Model B+ starter kit.

Getting Started with the Raspberry Pi Zero Wireless

July 13, 2017

Learn how to setup, configure and use the smallest Raspberry Pi yet, the Raspberry Pi Zero - Wireless.

Headless Raspberry Pi Setup

April 23, 2018

Configure a Raspberry Pi without a keyboard, mouse, or monitor.

Setting up a Raspberry Pi 3 as an Access Point

April 23, 2018

This guide will show you how to configure a Raspberry Pi as an access point and connect it to your local Ethernet network to share Internet to other WiFi devices.

How to Use Remote Desktop on the Raspberry Pi with VNC

July 9, 2018

Use RealVNC to connect to your Raspberry Pi to control the graphical desktop remotely across the network.


Need some inspiration for your next Python project? Here are some project ideas to get you started.

Raspberry Pi Stand-Alone Programmer

March 8, 2018

This tutorial will show you how to use a headless Raspberry Pi to flash hex files onto AVR microcontrollers as a stand-alone programmer. It also tells the story about production programming challenges, how SparkFun came to this solution, and all the lessons learned along the way.

IoT Weight Logging Scale

May 9, 2018

This tutorial will show you how to make a scale that logs your weight to a custom website on the Internet. The principles can be extrapolated to any type of data.

Raspberry Pi Zero Helmet Impact Force Monitor

March 8, 2018

How much impact can the human body handle? This tutorial will teach you how to build your very own impact force monitor using a helmet, Raspberry Pi Zero, and accelerometer!

Using Flask to Send Data to a Raspberry Pi

November 9, 2017

In this tutorial, we'll show you how to use the Flask framework for Python to send data from ESP8266 WiFi nodes to a Raspberry Pi over an internal WiFi network.

Bark Back Interactive Pet Monitor

March 8, 2017

Monitor and interact with pets through this dog bark detector project based on the Raspberry Pi!