Skip to content

infinite0007/SmartArt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SmartArt Project: Systemadministration - build your own art.
by Sebastian Jäger & Julian Lingnau

image

In the past decade, digital art has gained enormous attraction and popularity for people whose age group could not be more different.

There are several manufacturers of digital photo frames that all do the same thing: Play back images previously saved on a memory card. To make this product more interesting, as part of a project work for the Systemadministration course, a system is to be created that scales the stored images into a smaller resolution and displays them on a simple LED matrix instead of on a screen. Due to the RGB with approximately 16 million colors, there are interesting possibilities here. We want to use it to make art more digital in order to bring technology-loving people closer to art - and vice versa.

Getting the Hardware

For the project you will need the specific hardware from the following links:
Adafruit Matrix HAT
64x64 RGB LED Matrix
Raspberry Pi 3
Power supply 5V 10A or at least 5V 4A as the matrix consumes a LOT of power.
Make sure you don`t go over 5V though.

To set up the project's basic configuration simply follow the Adafruit tutorial.
Some soldering is needed!

Installation - Get started

Install Node.js on your Raspberry Pi. All versions are listed on the official Node.js page

When the basic stuff is up and running, simply clone the repository to a folder on your Raspberry Pi.
The first thing to do is set the user rights. In the folder "SmartArt/WebApp/public/" run the console command:

sudo chmod -R 777 matrixPictures/

Otherwise the option in menu to delete pictures isn`t possible.

In the WebApp directory: "SmartArt/WebApp/" run the following command:

npm install

To install all dependencies, which are important before running the project.

Also you need to change the Deep Art Effects API Access Key under: "SmartArt/WebApp/src/js/config/apiConstants.js" change the Access-Key to yours under DeepArtEffects:

image

Raspberry

cd into "SmartArt/Logik" and run the following command:

sudo python3 SmartArt.py

The main menu should appear in the console and show options for what is yet possible with the program.

The matrixController module

This module contains the functions for setting the matrix options.
These come from the Python binding of the rpi-rgb-led-matrix-library.
setOptions (): Here you can define the size of the matrix, how many matrices
have been linked, and the hardware mapping.
newestPic (): returns the newest picture and is used for the display modes.
setImage (): Sets the image which should be displayed on the matrix. Used in the display modes.
startDiashow (): starts the slide show on the matrix
startSingleImageView() Starts the single image display on the matrix

The helper module

The auxiliary functions for the program are located in this module.
startUI (): outputs the selection options on the console when the program is started
intCheck () strCheck () and startCheck (): are auxiliary functions for exception handling in the event of incorrect user entries.
deleteAllPics (): Deletes all pictures from the user folder except for the sample images.

The SmartArt module

The SmartArt module serves as the starting point for the program.
It starts with a console output that leads through a small user menu to select the display modes.

Display modes

Two different modes were planned that can be called up.

The single image view mode:

In this mode, only the last uploaded image should be displayed. This was implemented by the program monitoring the folder,
which acts as a common interface, and always setting the image to be displayed to the last changed one during runtime.

The slide show mode

In this mode, all images in the matrixPictures folder are displayed in sequence.
The duration of how long each image is displayed can be specified via a parameter when the program is started.
The slide show can be expanded to include images at runtime.

All the Code for driving the matrix is found in the /Logik folder.
Feel free to use it. It is derived from hzeller's rpi-rgb-led-matrix library found on github, where you can check for further informations.
There are also bindings for C# and C available.
It is also possible to write your program directly in C++ which is recommended
as it provides a way faster execution.

WebApp

Easiest way to run the SmartArt WebApp

To start the SmartArt Webapplication you need to run the following command in directory: "SmartArt/WebApp/"

npm start

Runs the SmartArt-Server plus the WebApp with one command.
Open http://localhost:3000
or
http://RaspberryIP:3000 to view it in the browser.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published