Android + RaspberryPi: P2P between Android and RPi
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
.idea updated app settings Aug 27, 2017
gradle/wrapper updated app settings Aug 27, 2017
server rename to Mar 21, 2016
wifi_direct updated folder structure and Jan 21, 2016
.gitignore Initial PiDroid code Dec 31, 2015
build.gradle Initial PiDroid code Dec 31, 2015
gradlew Initial PiDroid code Dec 31, 2015
gradlew.bat Initial PiDroid code Dec 31, 2015
settings.gradle Initial PiDroid code Dec 31, 2015


PiDroid A Simple Application that allows a Raspberry Pi (raspberian) to communicate with an Android device (4.0+). PiDroid will be used to take pictures or video and store it on a RaspberryPi and in turn stream Pictures and Video onto a Raspberry Pi. This will be part of a Museum Piece where participants will record video and pictures on how "skin" has affected their worldview.

This project is an extension of Public Payphone [] which currently can record and play audio and upload pictures to Twitter. The Pi currently listens to dialpad presses and uses these to trigger the above activities. Part of the GPIO dialpad code is at []

This project can utilize two different types of WiFi connection methods: Infrastructure and WifiDirect. Infrastructure is the traditional WiFi access point. WiFi direct connects without using an AccessPoint.

User Stories

  • Infrastructure
  • Raspberry Pi (Pi) creates 'infrastructure' Access Point and broadcasts Access Point
  • Pi creates a Web Server (Flask in this case) and serves media to connected devices (mobile/desktop)
  • Pi saves user content in SQLite DB
  • Wifi Direct
  • Raspberry Pi (Pi) advertises itself as P2P enabled and specifically requests to be a Group Owner upon connection.
  • Android app detects nearby Pi displays connection name on Screen
  • Android triggers connection by a Click event, pbc (PBC). This ensures no specific key code is needed
  • Android takes pictures and stores them on Pi
  • Android can stream pictures and video from raspberry pi


  • Android can stream video (Miracast) to nearby WiFi enabled devices



Copyright [2015] [Sabelo Mhlambi]

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
See the License for the specific language governing permissions and
limitations under the License.