Whole project is on raspberry pi, converting raspberry into IOT
Motivation for this project is to develop dynamic ads for existing and upcoming clients and making it completely autonomous.
Two main services we are providing to our clients are:-
a) Playing multiple video in their own(client) screens - scheduled or non-scheduled manner
b) Playing client ads (25 sec dur) in multiple client screens throughout the country - scheduled
To achieve the above goal and to give user friendly experience to user the devices should perform below task
1) We are taking Chromecast as our Ideal case (we do creating an application to control the device)
2) When our device boots up it should show our logo and some booting sequence making sure that device is connected to cloud and app correctly
3) Since we are not giving an option to add input devices to our device, we should give a user-friendly way to connect device wifi, disconnect wifi, change wifi at any time
4) Make sure the device is connected to wifi all the time, otherwise wait for a day and start displaying warning “please connect to internet to continue the service”
5) Once it is connected to wifi It should download all the videos and txt files required to play videos in order.
6) Play the videos in a sequence (explained briefly in below sec)
7) Make a track of playlist in database
8) Imp: - Finding a way to know whether the videos are playing on the TV or not, sometimes user turn-on the pi but switches the input mode, so it is imp to track the user all the time and make sure that he is using our device to play our videos all the time
9) User should be able to pause/play/change the playlist from the app. It’s like when user is not using the app, Device should run per the schedule file but if user request the video to play now, then device should play that video now just like chrome cast with a big change explained in below section.
10) If user unsubscribe the service then the device should stop working, and when he wants to re subscribe device should work again
11) updating the software in all devices form remote location
User point of view we are 2 things mobile application and device goes with application, once user subscribe to scrollermedia, he/she will receive a device in post. User will connect this device to TV and powers it on.
He will see booting screen (our logo with some booting sequence), then at one point screen will ask to pare the device with wifi. At this point user uses the application to set the wifi and password to the device, once wifi connection is established ollaa.
User will upload the videos using app, then plays/controls the videos on screen (one or multiple screen). If user is not paying on time or device is out of signals for more than 1 day then device will get blocked, and gets unblocked if he pays or connected to wifi.
We are taking chromecast as our Ideal case because just like chrome cast we are using app to send videos and control videos on device, device will be connected to Client screens using HDMI or RCA connection
Chromcast uses a) Discover and Launch b) simple service Discovery protocol to establish connection in LAN i.e user cannot control chromecast from remote place. But our app should control the devices from remote places using Amazon IOT because clients owns multiple screens in different venues.
Device will also have a switch for master reset, it will reset wifi, deletes all videos, config files, logs….. Makes device brand new.
This device will automatically updates itself when it identifies a new update
** Please go through the attachment below, It will explain 90% of the job, Its an informal document, once you assure you can handle the job we I will walk you through rest of the details