Skip to content

Turn your old Raspi-Hardware into a remote-controlled picture frame for your elderly family members and friends! Or simply for yourself!

Notifications You must be signed in to change notification settings

holterdipolter/teleframe

Repository files navigation

teleframe

Teleframe

Turn your old Raspi-Hardware into a remote-controlled picture frame for your elderly family members and friends!
Or simply for yourself!

Latest Comit

!!! Important !!!

This Project is currently not actively maintained and there are some issues in the installation process as well as with dependencies which are broken. If you don't want to tinker around, please be patient and wait for the next update!

Table Of Contents

About

Teleframe is a Node-Red based open source app that turns your Raspberry Pi or Linux computer connected to a touchscreen display into a digital picture frame. Using the Messenger App Telegram, you can send pictures, videos and messages to Teleframe while it ensures that all messages and media are displayed in an automatic slideshow on screen.

Teleframe is designed primarily for elderly people or people with disabilities who can't or don't want to use computers/mobiles/tablets. Once set up, Teleframe works completely autonomously but can also be operated via touchscreen or webinterface in the browser or as progressive web app. This enables externals, e.g. family members to manage and control the device remotely.

teleframe

Hardware prerequisites

ARM-SoCs: All Raspberry Pi boards from Raspi 1B+ upwards, as well as Raspi Zero W are supported. Older models and other Linux computer may work, but have not been tested and may require software adjustments.

Displays: Basically, all touchscreens supported by Raspberry Pi boards can be used. Tested and recommended are Touchscreens from Waveshare or the official Raspberry Pi 7 inch Touchscreen.

Wifi: For Raspberry Pi 1B+ an additional Wifi dongle is required. Tested and recommended are cheap Realtek rtl8188eu chips. Other chips might also work but must support AP mode. Please note that additional drivers for rtl8188eu are needed, as the Raspbian default kernel driver doesn't support AP-Mode.

Loudspeaker: In order to watch videos with audio or you want to use sound notifications, a loudspeaker must be connected. There are no special limitations other than a standard 3.5mm headphone jack is needed (not supported by raspi zero w!).

Software architecture and prerequisites

teleframe

To enhance the level of security and to provide SSL support, the web server nginx configured as reverse proxy handles network traffic over https between Teleframe device and its clients using the webinterface.

Kodi is used to present videos and pictures as a slideshow and enables smooth transitions also on low power devices. Kodi is actually a popular, very powerful media centre application, which at first glance seem too extensive for the simple task of showing media on a display. However, compared to appropriate libraries providing gpu support, it makes optimal use of GPU acceleration also on older Raspberry Pi boards, which is important to enable smooth transitions. Teleframe therefore does not handle the rendering itself but controls Kodi via JSON-RPC API.

Installation

Automatic installation

A script for automatic installation will be provided soon.

Manual installation

Only Raspbian is supported so far. Other distros might work.

  1. Download newest version of Raspbian Lite

  2. Copy Raspbian Image to SD-Card. Etcher is highly recommended

  3. Boot Raspbian and set up wifi using raspi config by enter raspi-config in terminal

  4. Update and install prerequisites/dependencies:

    sudo apt update && sudo apt upgrade
    sudo apt install kodi nginx ffmpeg

    optional: Install OpenVPN for VPN access

    sudo apt install openvpn
  5. Start and enable kodi and nginx on system boot

    sudo systemctl enable kodi nginx
    sudo systemctl start kodi nginx
  6. Install Node.js and Node-red

    bash <(curl -sL https://raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered)
  7. Open Node-Red Editor under http://<raspi-ip>:1880 and enable git support

  8. Create new Node-Red Project using "Clone project" and add Teleframe git url

  9. When project is loaded, Teleframe WebUI is available under https://<raspi-ip>:1243

Usage and configuration

Touchscreen

Teleframe supports just a few simple touchscreen gestures to reduce usage complexity. However, most important commands are supported:

Gesture Command
One finger tap Play / pause slideshow
Swipe left / right Previous / next image
One finger long press Turn on display + jump to newest message or image
Two finger long press Turn off display

Webinterface

While touchcontrol is limited, Teleframe is highly configurable and controllable using the build in WebUI. Open https://<raspi-ip>:1243 in your browser, login with username and password and check out navigation panel behind hamburger menu button at the top left.

IMAGES

images

Navigation: You can watch and control the image slideshow actually displayed on the device. Use navigation buttons to control the slideshow, use the stick button for preventing images from being automatically deleted or delete images using the trash button manually.

Note: If a message was attached to an image, you are able to delete only the message without deleting the image at the same time. Just click on the trash button and you are being asked whether you want to delete only text or both, image and text.

General Settings: Set up showtime, as well as max. images in the loop and trash.

Note: Teleframe was intended to be able to operate completely autonomously and without additional intervention. To consider storage limitations, images as well as videos are stored in a loop with a predefined maximum size. The loop is working according to the first in, last out principle, therefore old images are moved to trash automatically when new images are arriving and the loop size has reached a predefined maximum.

Galerie: Overview of all active images stored in the slideshow loop. You can delete or stick image or start the slideshow from a certain position.

Trash: Overview of all images in the trash. Images can be restored or finally deleted.

Textoverlay: Adjust message text related format settings like size, font, colour etc. as well as size and position of the sender's name.

If new images arrive…: Set several options to notify the Teleframe user about new messages, either by sound or onscreen info.

VIDEOS

videos

Navigation: All received Videos are shown up in the video gallery at the bottom of the navigation section. Click on a video for previewing within the browser. Use Navigation Buttons to start the video remotely on the Teleframe screen.

Settings: Set max. number of videos are being stored until old videos will be deleted. If you have issues playing videos on the Teleframe, try using the option convert incoming videos. Use it only if really needed, as transcoding is usually painfully slow especially on old Raspis.

TELEGRAM

telegram

Add, rename and delete users to/from the list of users allowed to send messages and media.

You add new users using the following procedure:

  1. Activate allow new user button
  2. Send a message with random content to the telegram bot
  3. The Telegram users unique Chat-ID will appear instantly. Add a username and click on + button. The new user with Chat-ID will be entered in the user list and is now allowed to send messages to the Teleframe bot
  4. Deactivate allow new user button (will automatically turn off after 10 min.)

SYSTEM

system

Screen: Turn on or off the screen manually or set timers for switching the screen on and off automatically.

Power: Power off or restart the device.

Wifi: Enter your Wifi credentials to connect to your Wifi.

FreeDNS: Free Dynamic DNS service used to access Teleframe from outside your local network. Please visit FreeDNS Homepage, create an account and follow instructions on how to create your own subdomain. Having a new subdomain created, copy its direct URL (under Dynamic DNS section) and paste it to Update-URL in the FreeDNS section of the Teleframe-WebUI. Add the related subdomain and click on update.

Note: You must set up a port forwarding rule in your local router to enable remote access. Choose Port 1243 as internal port and map it to the Teleframe ip address.

ADMIN

admin

For experienced users only!!! Several options for debugging, restoring Nginx and Node-Red default setting, resetting the whole system or specific internal procedures, and other stuff usually not needed if everything runs trouble free.

About

Turn your old Raspi-Hardware into a remote-controlled picture frame for your elderly family members and friends! Or simply for yourself!

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published