Skip to content

Cantilevered-Creatures/lflmonitor

Repository files navigation

Little Free Library Monitor

This is a Python Flask project I'm creating to monitor activity in my Little Free Library using a solar powered Raspberry Pi Zero.

Little Free Library is a trademark of the non-profit Little Free Library and is used under permission of being a steward.

Features

  • Door trigger for light and camera controls
  • Image gallery
  • Update script for automatic pulls from Git
  • Graph voltage history for battery and panel
    • Uses Highcharts under the CC Attribution-NonCommercial 3.0 licenses. Please see Highcharts website to license for commercial use.

Technologies:

  • Flask
  • GPIO
  • PICamera
  • Blinkt
  • Bootstrap v4

Solar Configuration

Panel Overview{:height="50%" width="50%"}

  1. Battery Pack
    1. This is a 4P3S pack of 18650 batteries with 11.1v nominal and 12.6v peak.
    2. Samsung 18650 30Q 3000mAh
      1. These batteries have enough power to run everything for about a week, but (to be fair to the batteries) that week had highs of about -10F. They hardly got any charge due to it being either snowing or overcast.
    3. Battery holder
      1. This battery holder worked well by breaking the insulation along a solid piece of stranded wire, putting the tab through the middle of the wire, and soldering it in place.
    4. Heat Shrink tubing
  2. PowMR 20A Solar Controller
    1. This is a cheap PWM controller that has enough battery settings to safely charge Lithium Ion batteries, but not necessarily very optimally.
  3. ADS1115 Analog to digital converter
  4. 0-25v voltage reducer
  5. Fused cable
    1. I replaced the included fuses with 5A fuses, as there should never be that much current
  6. Raspberry Pi Stack
    1. Raspberry Pi Zero W
    2. Makerspot case
    3. Makerspot breadboard
    4. Stacking Header
      1. I soldered on the breadboard and mounted the Blinktd module on top.
    5. Blinkt!
    6. Magentic Switch (not pictured)
      1. It is important to use a normally-closed (NC) switch, as you want the curcuit to be open when the door is closed. Whenever the curcuit is closed, it does use a small ammount of power through the on-board resistor.
      2. Be causious of buying magnetic switches on Amazon, as many have NC and NO definitions backward.
  7. Raspberry PI Camera
    1. Any camera compatible with the camera interface should work fine, choose one based on your needs.
  8. Solar Panel (not pictured)
    1. 25 watt panel
    2. Mounting kit

TODO

  • Document solar power configuration
  • Figure out unit tests
  • Figure out an isolation circuit for monitoring solar panel volage (this may not be posible (but feel free to submit an issue if you know of a curcuit design I could use))
  • Install in Little Free Library