/teslausb

Steps and scripts for turning a Raspberry Pi into a useful USB drive for a Tesla

Primary LanguageShellMIT LicenseMIT

teslausb

Intro

A Raspberry Pi Zero W, Raspberry Pi Zero 2 W or Raspberry Pi 4 can emulate a USB drive, so can act as a drive for your Tesla to write dashcam footage to. Because the Raspberry Pi has full access to the emulated drive, it can:

  • automatically copy the recordings to an archive server when you get home
  • hold both dashcam recordings and music files
  • automatically repair filesystem corruption produced by the Tesla's current failure to properly dismount the USB drives before cutting power to the USB ports
  • serve up a web UI to view or download the recordings
  • retain more than one hour of RecentClips (assuming large enough storage)

This video (not mine) has a nice overview of teslausb and how to install it:

teslausb intro and installation

Prerequisites

Assumptions

  • You park in range of your wireless network.
  • Your wireless network is configured with WPA2 PSK access.

Hardware

Required:

  • Raspberry Pi Zero W (Adafruit or Amazon)
    or Raspberry Pi Zero 2 W (Adafruit or Amazon)
    or Raspberry Pi 4 (Adafruit or Amazon)
    Note: Of the many varieties of Raspberry Pi available only the Raspberry Pi Zero W, Zero 2 W, and 4 will work with TeslaUSB.

  • A Micro SD card, at least 64 GB in size, and an adapter (if necessary) to connect the card to your computer.

  • A mechanism to connect the Pi to the Tesla: a USB A/Micro B cable for the Pi Zero W, or a USB A/Micro C cable for Pi 4

Optional:

  • A case for the Pi Zero. The "Official" case: Adafruit or Amazon. There are many others to choose from.
  • A cooler for the Pi 4. The Raspberry Pi 4 uses much more power than the Pi Zero W, and as a result can get quite hot. The "armor case" (available with or without fans) appears to do a good job of protecting the Pi while keeping it cool.
  • USB Splitter if you don't want to lose a front USB port. The Onvian Splitter has been reported working by multiple people on reddit.

Installing

To install teslausb, please use the prebuilt image and one step setup instructions.

Contributing

You're welcome to contribute to this repo by submitting pull requests and creating issues. For pull requests, please split complex changes into multiple pull requests when feasible, and follow the existing code style.

Meta

This repo contains steps and scripts originally from this thread on Reddit

Many people in that thread suggested that the scripts be hosted on GitHub but the author didn't seem interested in making that happen, so GitHub user "cimryan" hosted the scripts on GitHub with the Reddit user's permission.