Giter VIP home page Giter VIP logo

pipod's Introduction

PiPod

A bunch of scripts and configs that allows streaming audio via bluetooth to a fake ipod device.

Useful if your car only supports Apple devices for some reason (why Fiat and Alfa, why).

Tested on:

  • Raspberry Pi Zero W (Raspbian Stretch Lite 2018-11-13)

Assumptions

  • You have a device (e.g. a car) that supports playing music from an iPhone/iPod etc. over USB. You want to play music from something else (e.g. an Android phone) over bluetooth.
  • OS: Raspbian Stretch Lite

Build and Install

  1. cd install_files
  2. GOOS=linux GOARCH=arm GOARM=6 go build github.com/oandrew/ipod/cmd/ipod
  3. add dtoverlay=dwc2 to the end of /boot/config.txt to enable USB gadget mode
  4. compile the kernel modules (ipod-gadget directory) and put the .ko files in install_files
  5. copy the pipod directory to the Pi
  6. run sudo ./install.sh
  7. enable auto login so that Pulseaudio can start automatically
  8. edit the file a2dp-autoconnect. Replace the NAME variable with your bluetooth device's MAC address. Also make sure that if you run pactl list sources short, the value of $PA_SINK shows up in the output.
  9. Pair and trust your bluetooth device
  10. Reboot, connect everything (USB to car; manually connect phone via bluetooth) and test!

TODO:

  • Figure out how to get the Pi to automatically connect to the bluetooth device (currently you have to manually connect from the device)
  • Use DKMS to auto-build and install kernel modules
  • Investigate Pulseaudio 11 which can maybe bypass resampling

pipod's People

Contributors

geniass avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.