missed-moment

Status

Inactive

The main functionality works. I’ve had a raspberry Pi running it almost constantly for 2 years now with rarely any issues.

What is it

A “privacy by design” IoT camera designed to capture all the precious moments in life. For when you wish you had just caught something on camera.
Detailed setup instructions can be found on github

Current Capability

  • Immediately starts recording when powered on
  • Upon button press, the last ~1 min of video is written to temporary storage
  • Plug a USB device in. Any saved videos will automatically be written and the USB device ejected.
  • As nothing is written until button press, video kept in memory is lost after a few minutes

Challenges

Audio support has been the biggest rabbit hole. There are ways to create a circular buffer of audio, but syncing the audio and video is difficult. This is a work in progress.

Abandoned Ideas

Dropbox and Slack support have both been added and work, but are unofficially supported.
The reason being:
- Mo features, mo bugs
- One of the main goals of this project is to be “privacy first”. So being able to work fully without access to the internet is important for this ~internet~ of thing.

Inspiration

I had a dropcam for a while and realized that there was no local viewing of the stream. Anything it recorded HAD to be sent to the dropcam servers. To view the live stream on your phone meant streaming that same (now highly delayed) feed from their servers. Insane, Insecure, etc. etc.

In addition, there were so many times when something funny would happen when I was out of the room (cats and newborn). Never seemed like I could get to the feed in time, even with the network lag.

So I build missed-moment.

Research

Raspberry Pi Init Script

Python SSDP

Another Python SSDP

Recording Raspberry Pi Video

More RPi Video Recording

Converting RPi Video Formats

Working with USB in RPi

Ejecting USB Devices

Audio and Video in RPi

Edward Romano Written by:

I dabble in, and occasionally obsess over, technology and problems that bug me