GithubHelp home page GithubHelp logo

media-scheduler's Introduction

Project logo

Media Scheduler

Status


Media Scheduler

πŸ“ Table of Contents

🧐 About

This repo contains

  • Firmware
  • Circuit
  • Detailed instructions

for Media Scheduler.

Getting Started

These instructions will get you a copy of the project up and running on your system. The flowchart of the system is given below:

Prerequisites

Things you need to install the FW.

- 1x Raspberry Pi 3B or 4

Installation

A step by step series that tell you how to get the Firmware and Backend running

Raspberry Pi Zero W Configuration

  1. Download and install Raspberry Pi Imager from here https://www.raspberrypi.com/software/
  2. Donwload "Raspberry Pi OS with desktop and recommended software" from here https://www.raspberrypi.com/software/operating-systems/
  3. Then extract the dowloaded image file using any extraction software like 7-zip https://www.7-zip.org/
  4. Put a 16 GB SD Card in your Laptop/PC.
  5. Open the Raspberry Pi imager, Click on "Choose OS" button and scroll down to select "Use Custom" as shown below Board
  6. Then select the extracted image file.
  7. In the next step select your SD Card and then click on "Write" button to start the writing process.
  8. That’s it. It should be flashed within a few minutes.
  9. Download this repository and open the configFiles folder of the repository and open wpa_supplicant.conf file and add your WiFi credentials in it.

Firmware Configuration

  1. Once done, remove the SD Card and re-insert it into your PC/Laptop and then open the "boot" volume. Copy the files of "configFiles" folder here in the "boot" volume. Also create an empty file named "ssh" in the "boot" volume if not already present.
  2. Do the same steps for 2nd SD Card as well.
  3. Then put the SD Card in the first Raspberry Pi Zero and power it on.
  4. Then SSH into the Raspberry Pi which you can using the command ssh [email protected]
  5. Once you are logged in, execute the following command

Auto Firmware Installer

To install and Run Media Scheduler Automatically just run the following command on your Raspberry Pi terminal

  • curl -sSL https://raw.githubusercontent.com/Nauman3S/Media-Scheduler/main/installer.sh | bash

After the installer completes the process restart your raspberry pi.

Running the Firmware

  • DISPLAY=:0 /home/pi/Media-Scheduler/Firmware/starter.sh

Disabling Raspberry Pi Boot Messages

  1. Execute the following command
  • sudo nano /boot/cmdline.txt
  1. Change the console from tty1 to

    console=tty3

  2. Add this to the end of the line. loglevel=0 removes most of the messages from the boot and put the following line at the end

quiet splash loglevel=0 logo.nologo vt.global_cursor_default=0

  1. Press CTRL+O and CTRL+X to save and exit.
  2. sudo nano /etc/rc.local
  3. Add this before 'exit 0':
  4. Press CTRL+O and CTRL+X to save and exit.
  • dmesg --console-off
  1. Execute the following command
  • sudo update-rc.d motd remove
  1. sudo nano /boot/config.txt
  2. Add the following line at the end of the file
  • disable_splash=1
  1. Press CTRL+O and CTRL+X to save and exit.
  2. sudo nano /boot/cmdline.txt
  3. Add below line to end of file
  • logo.nologo
  1. Press CTRL+O and CTRL+X to save and exit.
  2. sudo reboot

Following these 14 steps will remove all unwanted boot logs messages and raspberry pi logo/splash screens.

Circuit

Raspberry Pi Pinout

Follow the pinout diagram below to connect the components to the Raspberry Pi. Circuit

Complete Circuit

Circuit

Components Pin Connection Details

Components pin connection details

Console Button

Console Button to open or close console

Button Pins Raspberry Pi
PIN 1 GND
PIN 2 23

WebApp

dash Dashboard can be accessed using the credentials given below

Dashboard Features

  • Upload Pictures and set their display time and display duration.
  • Upload videos and set their display time.
  • Upload default picture which will be displayed when nothing else is running.(uploading a picture with name default.png will make it a default picture)

Backend Link: https://mediascheduler-backend.production.rehanshakir.com/api/fields

Usage

  1. Upload the code to your Raspberry Pi as mentioned in the Installlation section above.
  2. Now connect the circuit components as mentioned in Circuit section above.
  3. Power on your raspberry pi.
  4. Use the webapp dashboard to upload new videos/pictures.
  5. To set a default picture, upload a image file named default.png and it will be automatically used as a default image.
  6. Press the push button to open the terminal.

List of Components

Following components are used to make this project

  1. Raspberry Pi 4 Kit Raspberry Pi 4 Kit
  2. Generic Push buttons

⛏️ Built Using

  • Python - Programming Language
  • NodeJS - JavaScript Framework for WebApp Backend
  • ReactJS - JavaScript Framework for WebApp FrontEnd
  • MongoDB - NoSQL Database for WebApp

πŸ“Ή Demo Video

Media Scheduler Demo - Media Scheduler Demo Video

✍️ Authors

media-scheduler's People

Contributors

nauman3s avatar rehanshakir avatar

Watchers

James Cloos avatar  avatar

Forkers

rehanshakir

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.