Skip to content

Latest commit

 

History

History
54 lines (44 loc) · 4.35 KB

README.md

File metadata and controls

54 lines (44 loc) · 4.35 KB

TOM Observes Mice (single pi)

this is fair use right?

While stable and functional, TOM is still a bit clunky so please report an issues. Note that it may be difficult to run further processes on the RasPi while recording and would only recommend live video analysis if you modify the AV data to be streamed as opposed to locally saved.

TOM Observes Mice (TOM) is a simple and relatively cheap tool for scientists interested in peeping on mice in their natural habit. Their home cage. With a second raspberry pi, you can also record ultrasonic audio that will be syncronized with video. Once setup, this tool is simple to use and written in Python so that other researchers can modify it as necessary.

Required Hardware

  • raspberry pi 5
  • 5V/5A power adapter
  • solid state drive and an SSD hat
    • note that gen4 SSDs are not compaitble with current SSD mounts. The highest you can go is gen3
    • with default settings you should be able to record for a minimum of a month before the SSD is full.
  • raspberry pi camera with IR filter removed
  • camera lens
    • tested with arducam 120 degree wide angle lens
  • Dodotronic ultramic UM250K microphone
    • Requires separate USB A-to-mini-B cable

Recommended Hardware

  • Some sort of case. .dxf file include in the repository can be used to cut a frame out of 2.75mm acrylic, but this frame is flimsy and provides little protection. The pi(s) and camera are held in place using 12 m2.5 screws and nuts with the laser cut washers acting as spacers.
  • Cooling. While heatsinks were sufficient in testing, I recommend active cooling with a fan.
  • A router and potentially network switches to setup a LAN for communication between pis and a long term storage.

Build

Instructions with pictures to come when more general casing is designed.

Installation

  1. Install Raspberry Pi OS (lite recommended) onto your SSD with custom settings. In the custom settings select username, a unique hostname, setup wifi, and most importantly enable SSH.
    • Be sure to enter a hostname unique to other devices on network.
  2. Before progressing, the pi will need to be on and connected to the internet.
  3. It's good practice on first boot to run sudo apt-get update and sudo apt-get upgrade
  4. enter curl -O https://raw.githubusercontent.com/rgough5/tom/main/install_tom.sh to download the installer
  5. Run the install file bash install_tom.sh.
  6. Optional: Currently, files are transfered to another computer over ssh. You will need to setup passwordless connections if you want to use this.

Usage

  1. If you would like to run the raspi headless (recommendeded).
    1. Connect the controlling computer to the same network as the pi.
    2. Connect to the raspi with ssh -XC user@ip.
  2. If you would like to automatically setup
  3. Run the python script with python recAV.py
    1. You will prompted to enter the file prefix, recording length, whether to record audio, and whether to transfer files after recordings

Issues

  • Adjusting settings is difficult and typically results in worse image.
  • When recording with audio, video quality must be limitted to 10fps and 480p. Great for file size and good enough for most longitudinal use cases.

In progress

  • Working on GUI

Contact Rhys at [email protected] for any questions, requests, etc.