Browse free open source Raspberry Pi software and projects below. Use the toggles on the left to filter open source Raspberry Pi software by OS, license, language, programming language, and project status.

  • Gemini 3 and 200+ AI Models on One Platform Icon
    Gemini 3 and 200+ AI Models on One Platform

    Access Google's best plus Claude, Llama, and Gemma. Fine-tune and deploy from one console.

    Build generative AI apps with Vertex AI. Switch between models without switching platforms.
    Start Free
  • $300 in Free Credit Towards Top Cloud Services Icon
    $300 in Free Credit Towards Top Cloud Services

    Build VMs, containers, AI, databases, storage—all in once place.

    Start your project in minutes. After credits run out, 20+ products include free monthly usage. Only pay when you're ready to scale.
    Get Started
  • 1
    whisper.cpp

    whisper.cpp

    Port of OpenAI's Whisper model in C/C++

    whisper.cpp is a lightweight, C/C++ reimplementation of OpenAI’s Whisper automatic speech recognition (ASR) model—designed for efficient, standalone transcription without external dependencies. The entire high-level implementation of the model is contained in whisper.h and whisper.cpp. The rest of the code is part of the ggml machine learning library. The command downloads the base.en model converted to custom ggml format and runs the inference on all .wav samples in the folder samples. whisper.cpp supports integer quantization of the Whisper ggml models. Quantized models require less memory and disk space and depending on the hardware can be processed more efficiently.
    Downloads: 392 This Week
    Last Update:
    See Project
  • 2
    RtspSimpleServer

    RtspSimpleServer

    ready-to-use RTSP / RTMP / LL-HLS / WebRTC server and proxy

    rtsp-simple-server is a ready-to-use and zero-dependency server and proxy that allows users to publish, read and proxy live video and audio streams. Publish live streams to the server Read live streams from the server. Proxy streams from other servers or cameras, always or on-demand. Streams are automatically converted from a protocol to another. For instance, it's possible to publish a stream with RTSP and read it with HLS. Serve multiple streams at once in separate paths Authenticate users; use internal or external authentication. Redirect readers to other RTSP servers (load balancing) Query and control the server through an HTTP API. Reload the configuration without disconnecting existing clients (hot reloading) Read Prometheus-compatible metrics. Run external commands when clients connect, disconnect, read or publish streams. Natively compatible with the Raspberry Pi Camera. Compatible with Linux, Windows and macOS, does not require any dependency or interpreter.
    Downloads: 95 This Week
    Last Update:
    See Project
  • 3
    CNCjs

    CNCjs

    A web-based interface for CNC milling controller running Grbl, Marlin,

    A web-based interface for CNC milling controller running Grbl, Smoothieware, or TinyG. It runs on a Raspberry Pi or a laptop computer that you have Node.js installed, connecting to the Arduino over a serial connection using a USB serial port, a Bluetooth serial module, or a Serial-to-WiFi module like XBee or USR-WIFI232-T.
    Downloads: 71 This Week
    Last Update:
    See Project
  • 4
    snakeware

    snakeware

    A free Linux distro with a Python-based userspace

    snakeware is a free Linux distro with a Python userspace inspired by the Commodore 64. You are booted directly into a Python interpreter, which you can use to do whatever you want with your computer.
    Downloads: 54 This Week
    Last Update:
    See Project
  • MongoDB Atlas runs apps anywhere Icon
    MongoDB Atlas runs apps anywhere

    Deploy in 115+ regions with the modern database for every enterprise.

    MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
    Start Free
  • 5
    Raspberry Pi Imager

    Raspberry Pi Imager

    Tool for creating bootable media for Raspberry Pi devices

    Raspberry Pi Imager is an official utility designed to simplify the process of creating bootable storage media for Raspberry Pi devices. It provides a user-friendly graphical interface that allows users to select an operating system, download it if necessary, and write it directly to an SD card or USB drive. The tool supports Windows, macOS, and Linux, making it accessible to a broad range of users from beginners to advanced developers. It also includes customization options such as preconfiguring Wi-Fi credentials, hostnames, and SSH access before first boot. Advanced users can point the application to custom image repositories, enabling automated provisioning workflows and specialized deployments. Overall, Raspberry Pi Imager streamlines device setup and reduces friction when preparing new Raspberry Pi systems for development, education, or production use.
    Downloads: 53 This Week
    Last Update:
    See Project
  • 6
    Udp2raw-tunnel

    Udp2raw-tunnel

    Turns UDP traffic into encrypted UDP/fakeTCP/ICMP traffic

    A tunnel which turns UDP traffic into encrypted fakeTCP/UDP/ICMP traffic by using Raw Socket, helps you bypass UDP FireWalls(or unstable UDP environment). When used alone, Udp2raw tunnels only UDP traffic. Nevertheless, if you used udp2raw + any UDP-based VPN together, you can tunnel any traffic(include TCP/UDP/ICMP), currently, OpenVPN/L2TP/ShadowVPN and tinyfecVPN are confirmed to be supported. Linux host (including desktop Linux,Android phone/tablet,OpenWRT router,or Raspberry PI) with root account or cap_net_raw capability. ICMP/FakeTCP headers help you bypass UDP blocking, UDP QOS or improper UDP NAT behavior on some ISPs. In ICMP header mode,udp2raw works like an ICMP tunnel. UDP headers are also supported. In UDP header mode, it behaves just like a normal UDP tunnel, and you can just make use of the other features (such as encryption, anti-replay, or connection stalization).
    Downloads: 29 This Week
    Last Update:
    See Project
  • 7
    Penguins' eggs

    Penguins' eggs

    On the road of Remastersys, Refracta, Systemback and father Knoppix!

    penguins-eggs is a console tool, under continuous development, that allows you to remaster your system and redistribute it as live images on usb sticks or via PXE, work on amd64, i386 and ARM64.
    Leader badge
    Downloads: 135 This Week
    Last Update:
    See Project
  • 8
    Binance Trading Bot

    Binance Trading Bot

    Automated Binance trading bot, trade multiple cryptocurrencies

    Automated Binance trading bot. Trade multiple cryptocurrencies. Buy low/sell high with Grid Trading. Integrated with TradingView technical analysis. This bot is using the concept of trailing buy/sell order which allows following the price fall/rise. Trailing Stop Orders About Trailing Stop Orders Concept you can find at Binance Official document. Place orders at a fixed value or percentage when the price changes. Using this feature you can buy at the lowest possible price when buying down and sell at the highest possible price when selling up. The bot supports multiple buy/sell orders based on the configuration. The bot is using MongoDB to provide a persistence database. However, it does not use the latest MongoDB to support Raspberry Pi 32bit. Used MongoDB version is 3.2.20, which is provided by apcheamitru. The bot is tested/working with Linux and Raspberry Pi 4 32bit. Other platforms are not tested.
    Downloads: 23 This Week
    Last Update:
    See Project
  • 9
    OnnxStream

    OnnxStream

    Lightweight inference library for ONNX files, written in C++

    The challenge is to run Stable Diffusion 1.5, which includes a large transformer model with almost 1 billion parameters, on a Raspberry Pi Zero 2, which is a microcomputer with 512MB of RAM, without adding more swap space and without offloading intermediate results on disk. The recommended minimum RAM/VRAM for Stable Diffusion 1.5 is typically 8GB. Generally, major machine learning frameworks and libraries are focused on minimizing inference latency and/or maximizing throughput, all of which at the cost of RAM usage. So I decided to write a super small and hackable inference library specifically focused on minimizing memory consumption: OnnxStream. OnnxStream is based on the idea of decoupling the inference engine from the component responsible for providing the model weights, which is a class derived from WeightsProvider. A WeightsProvider specialization can implement any type of loading, caching, and prefetching of the model parameters.
    Downloads: 12 This Week
    Last Update:
    See Project
  • Host LLMs in Production With On-Demand GPUs Icon
    Host LLMs in Production With On-Demand GPUs

    NVIDIA L4 GPUs. 5-second cold starts. Scale to zero when idle.

    Deploy your model, get an endpoint, pay only for compute time. No GPU provisioning or infrastructure management required.
    Try Free
  • 10
    Blynk C++ Library

    Blynk C++ Library

    Blynk library for embedded hardware

    Blynk is the most popular Internet of Things platform for connecting any hardware to the cloud, designing apps to control them, and managing your deployed products at scale. With Blynk Library you can connect over 400 hardware models (including ESP8266, ESP32, NodeMCU, all Arduinos, Raspberry Pi, Particle, Texas Instruments, etc.)to the Blynk Cloud. With Blynk apps for iOS and Android apps you can easily drag-n-drop graphic interfaces for any DIY or commercial project. It's a pure WYSIWG experience, no coding on iOS or Android required. Hardware can connect to Blynk Cloud (open-source server) over the Internet using hardware connectivity available on your board (like ESP32), or with the use of various shields (Ethernet, WiFi, GSM, LTE, etc). Blynk Cloud is available for every user of Blynk for free. Direct connection over Bluetooth is also possible. Check the included examples on how to use different types of connections (transports) and explore Blynk features.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 11

    Face Recognition

    World's simplest facial recognition api for Python & the command line

    Face Recognition is the world's simplest face recognition library. It allows you to recognize and manipulate faces from Python or from the command line using dlib's (a C++ toolkit containing machine learning algorithms and tools) state-of-the-art face recognition built with deep learning. Face Recognition is highly accurate and is able to do a number of things. It can find faces in pictures, manipulate facial features in pictures, identify faces in pictures, and do face recognition on a folder of images from the command line. It could even do real-time face recognition and blur faces on videos when used with other Python libraries.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 12
    Mirrorcast

    Mirrorcast

    Open Source Alternative to Chromecast, Mirror Desktop and Play media r

    The idea is to replicate what Chromecast can do in regards to screen mirroring and streaming media to a remote display. Google chromes screen mirroring feature works well when used with a receiver such as Chromecast but this is a proprietary solution and audio does not work for desktop mirroring on some operating systems. At the moment, there is only a client for Debian/Ubuntu Operating systems and a server/receiver application for Raspberry pi. Mirrorcast aims to be a low latency screen mirroring solution with high-quality video and audio at 25-30fps, the later is why we will not use something like VNC. Mirrorcast uses up about the same amount of system resources as google chromes cast feature. The delay is less than 1 second on most networks. To achieve this we will use existing FOSS software such as ffmpeg, mpv, and omxplayer.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 13
    Gogs

    Gogs

    A painless self-hosted Git service

    Gogs is a simple, stable, self-hosted Git service that is easy to install and setup. All you have to do is run the binary on any platform that Go supports: Linux, macOS and Windows. You may also install from source, from packages, or ship with Docker or Vagrant. Gogs is very lightweight with minimal hardware requirements, running on Raspberry Pi and even on NAS devices. Gogs offers plenty of great features, including various access repositories, repository and organization webhooks, repository Git hooks, repository management and so much more. It also offers software, service and product support for various areas such as project management (Kanboard, Taiga), DevOps (Fabric8) and team communication (BearyChat).
    Downloads: 5 This Week
    Last Update:
    See Project
  • 14
    Phoniebox

    Phoniebox

    A Raspberry Pi jukebox, playing local music, podcasts, web radio

    Phoniebox is a contactless jukebox for the Raspberry Pi, that plays audio files, playlists, podcasts, web streams, and Spotify triggered by RFID cards. All plug and play via USB, no soldering iron needed. It also features GPIO button control support.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 15
    TFT_eSPI

    TFT_eSPI

    Arduino and PlatformIO IDE compatible TFT library

    An Arduino IDE compatible graphics and fonts library for 32-bit processors. The library is targeted at 32-bit processors, it has been performance-optimized for STM32, ESP8266 and ESP32 types. The library can be loaded using the Arduino IDE's Library Manager. Direct Memory Access (DMA) can be used with the ESP32, RP2040, and STM32 processors to improve rendering performance. "Four wire" SPI and 8 bit parallel interfaces are supported. Due to the lack of GPIO pins, the 8-bit parallel interface is NOT supported on the ESP8266. 8 bit parallel interface TFTs (e.g. UNO format mcufriend shields) can use with the STM32 Nucleo 64/144 range or the UNO format ESP32. ILI9341 and ST7796 SPI-based displays are recommended as starting points for experimenting with this library. The library supports some TFT displays designed for the Raspberry Pi (RPi) that are based on a ILI9486 or ST7796 driver chip with a 480 x 320-pixel screen.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 16
    hyperion-project

    hyperion-project

    An open source ambient light for many systems

    Hyperion is an open source ambient light implementation controlled primarily by an Raspberry Pi. The main features of Hyperion are: 1. Low CPU load. For a led string of 50 leds the CPU usage will typically be below 2% on a non-overclocked Pi. 2. Json interface which allows easy integration into scripts. 3. A command line utility allows easy testing and configuration of the color transforms (Transformation settings are not preserved over a restart at the moment...). 4. Priority channels are not coupled to a specific led data provider which means that a provider can post led data and leave without the need to maintain a connection to Hyperion. This is ideal for a remote application (like our Android app). 5. HyperCon. A tool which helps generate a Hyperion configuration file. The tool will also remember your settings from the previous run. 6 Android remote control to set a static color. 7.Kodi-checker which checks the playing and screensaver status of Kodi
    Downloads: 54 This Week
    Last Update:
    See Project
  • 17
    Home Assistant Frontend

    Home Assistant Frontend

    Frontend for Home Assistant

    Open source home automation that puts local control and privacy first. Powered by a worldwide community of tinkerers and DIY enthusiasts. Perfect to run on a Raspberry Pi or a local server. Frontend for Home Assistant. This is the repository for the official Home Assistant frontend. Once you have integrated all your devices at home, you can unleash Home Assistant’s advanced automation engine to make your home work for you. Home Assistant integrates with over a thousand different devices and services. Once started, Home Assistant will automatically scan your network for known devices and allow you to easily set them up. Home Assistant is not just limited to Home Assistant. Easily install other applications that will help you manage your home. Home Assistant keeps your data local, no need for a cloud. Home Assistant communicates with your devices locally, and will fallback to pulling in data from the cloud if there is no other option.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 18
    PyBoy

    PyBoy

    Game Boy emulator written in Python

    It is highly recommended to read the report to get a light introduction to Game Boy emulation. But do be aware, that the Python implementation has changed a lot. The report is relevant, even though you want to contribute to another emulator or create your own. If you are looking to make a bot or AI, you can find all the external components in the PyBoy Documentation. There is also a short example on our Wiki page Scripts, AI and Bots as well as in the examples directory. If more features are needed, or if you find a bug, don't hesitate to make an issue here on GitHub, or write on our Discord channel. If you need more details, or if you need to compile from source, check out the detailed installation instructions. We support: macOS, Raspberry Pi (Raspbian), Linux (Ubuntu), and Windows 10.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 19
    nCine

    nCine

    A cross-platform 2D game engine

    nCine is a cross-platform 2D game engine that runs on PC (Linux, Windows, macOS), Android, Raspberry Pi, and the web (Emscripten). The project has been in active development since June 2011. Source code is released under the MIT license and is available on GitHub. Visit the donate page to discover different ways to support and sponsor the project. Join the Discord server and meet the community of developers, users and players. Indent with tabs (4 spaces) but use spaces for continuation line alignment. Pascal case for classes, enumerations, typedefs and constants. Put Doxygen brief descriptions in header files and additional documentation in implementation ones. Use Qt style for Doxygen detailed descriptions (/*! */) and end them with a period.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 20
    imgFlasher

    imgFlasher

    Flash OS images to sdcards and usb drives

    imgFlasher has been built specifically for Embedded and IoT developers in order to flash OS images on SD cards and USB drives. Made primarily for Raspbian, Ubuntu, Debian, Yocto-based images but works with any kind of Linux distribution. imgFlasher is a portable software that doesn't require any installation. The process of flashing OS with imgFlasher is super simple and requires just 3 steps. (1) Choose img/zip file. (2) Choose drive to flash on. (3) Click on Flash. Recommended using for Raspberry Pi, Banana Pi, Odroid, BeagleBone, Nvidia Jetson, Tinkerboard, etc.
    Downloads: 27 This Week
    Last Update:
    See Project
  • 21
    FarmBot OS

    FarmBot OS

    The operating system and all related software

    The operating system and all related software that runs on FarmBot's Raspberry Pi. The FarmBot OS release page has moved to my.farm.bot/os. Old versions of FarmBot OS can still be found. Get configured over WiFi, mitigating the need to plug in a mouse, keyboard, or screen. Communicate with the web application over WiFi or ethernet so that it can synchronize (download) sequences, regimens, farm designs, events, and more; upload logs and sensor data; and accept real-time commands. Communicate with the Farmduino to send G and F commands and receive sensor and encoder data. Take photos with a USB or Raspberry Pi camera, and upload the photos to the web application. You must use a .img writing tool to write FarmBot OS onto the microSD card. We recommend downloading and installing balenaEtcher for this purpose.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 22
    Kubernetes on Raspbian

    Kubernetes on Raspbian

    Kubernetes on Raspbian (Raspberry Pi)

    This repository holds the "original tutorial" for "Kubernetes on Raspbian" by Alex Ellis using kubeadm. It also has a list of reader clusters for your inspiration and Alex's newest work with k3s.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 23
    gopsutil

    gopsutil

    psutil for golang

    gopsutil tag policy is almost same as Semantic Versioning but automatically increases like Ubuntu versioning. gopsutil aims to keep backward compatibility until a major version change. Tagged at the end of the month, but if there are only a few commits, it can be skipped. All works are implemented without cgo by porting C structs to golang structs.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 24
    k3sup

    k3sup

    bootstrap K3s over SSH in < 60s

    k3sup is a lightweight utility to get from zero to KUBECONFIG with k3s on any local or remote VM. All you need is ssh access and the k3sup binary to get kubectl access immediately. The tool is written in Go and is cross-compiled for Linux, Windows, MacOS and even on Raspberry Pi. This tool uses ssh to install k3s to a remote Linux host. You can also use it to join existing Linux hosts into a k3s cluster as agents. First, k3s is installed using the utility script from Rancher, along with a flag for your host's public IP so that TLS works properly. The kubeconfig file on the server is then fetched and updated so that you can connect from your laptop using kubectl. k3sup was developed to automate what can be a very manual and confusing process for many developers, who are already short on time. Once you've provisioned a VM with your favorite tooling, k3sup means you are only 60 seconds away from running kubectl get pods on your own computer.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 25
    Metal detector based on  RP2040

    Metal detector based on RP2040

    Pulse induction metal detector using Raspberry Pi Pico board ( RP2040)

    Based on Raspberry Pi Pico board, this metal detector is included in pulse induction metal detectors category, with well known advantages and disadvantages. RPi Pico generate 3,3v amplitude pulses at one of GPIO pins. This pulses are amplified and applied to a MOSFET device that had the searching coil in series with drain. The pulse will produce a magnetic field generated by the searching coil, and becose of eddy currents, the target will produce a very low corresponding voltage at the coil terminals. The mode this signal decay depends of target characteristics ( form, type, material ) and the distance. This is the signal we need to analyze, so it is supressed by two antiparallel diodes and passed to an operational amplifier . After amplification, the analog signal is read by one of analog input of Raspberry Pi Pico board and is analized by the software. This poccess is repeatedly for many times per second.
    Downloads: 9 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • Next
MongoDB Logo MongoDB