Code Monkey home page Code Monkey logo

stop_at_end_of_vhs's Introduction

Automatically Stop VirtualDub and VCR at the end of the VHS tape

This project uses an ESP32 to automatically start and stop VDub and a VCR at the same time by emulating a keyboard and remote control. It automatically stops when the tape finishes. The motiviation for this it to prevent VDub from recording unnecessarily long and reducing the wear and tear from rewinding.

I've only tested it on my JVC SR-VS30 VCR. It has a dedicated "playing" light on the front of the VCR which can be read by a photoresistor sensor. Other types of sensors maybe be need for VCRs that indicate it is playing in some other way.

In the demo video below the tape plays for 30 seconds before reaching the end of the tape and automatically stopping.

sample_video.mp4

Part list

Overview

This devices works as follows:

  1. Press "BOOT" button on ESP32. LED turns blue.
  2. F5 is sent on the emulated keyboard to start VDub recording and IR LED sends code for "Play".
  3. Wait for "play" light to come on. When on, the LED turn green.
  4. Wait for "play" light to turn off. When light is off, send "ESC" to VDub and send IR code for "Stop". The LED turns red.

Software

The needed libraries are already in the "libraries" folder. Open "stop_at_end/stop_at_end.ino" in the Arduino IDE (https://www.arduino.cc/en/software).

You may need to calibrate the LIGHT_THRESHOLD for your device. You may need to change the IR codes kJVCPlay and kJVCStop for your device as well.

Flash the firmware to the device using the Arduino IDE.

Hardware

I don't have time at the moment to do a proper schematic, but pictures below should be sufficient to get you most of the way there. First, the image below is the final product. The images are high resolution so opening them in another tab may help.

Connect Photo Resistor

The photo resistor needs an enclosure as to not be affected by outside light. Some kind of putty/clay may work as well.

One end of the photoresistor connects to the ESP32 pin A3. I used clear double-sided tape to keep it over the VCR's "play" LED. I connected the 220 ohm resistor to the A3 pin and to ground.

Connect IR LED

The IR LED is powered by the 5v from the board. The transitor middle pin connects to the ESP32 pin A3 though the 100 ohm resistor.

stop_at_end_of_vhs's People

Contributors

cwig avatar

Watchers

 avatar

Forkers

cowmix

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.