Hi all, I have just started using Home Assistant and ESP Home and so far am hugely impressed with what can be done.
What I would like to achieve now is to setup a user account for Home Assistant running on a Pi with a simple touchscreen interface that allows a user to control the output of a playlist/setup of a Pi running info-beamer.
For example a scenario where there’s a playlist of several tutorial videos that play from the Pi running info-beamer to one or more displays and the user has a simple touchscreen interface which would allow them to select or skip to another video.
Has anyone done this? I’m guessing that it should be possible to control the GPIO pins of the Pi running Home Assistant to provide a signal to the Pi running info-beamer.
This uses the RESTful Command integration to call info-beamer’s API. In that case it uses the Update device API to assign setup 230348 to device 28887. Be sure to replace xxxxxx with an info-beamer API key. I highly recommend creating a limited API key using the permission system, so Home Assistent is limited to changing assigned setups and cannot delete devices or otherwise wreck havoc in your info-beamer account.
You can then trigger this service on an Home Assistant dashboard by adding a button and setting the configuration to values like this. Note the setup_1 service which was given to the above yaml configuration:
I was thinking more of physically triggering the GPIO pin on the info-beamer pi from either the Pi running Home Assitant or an Arduino linked to the Home Assistant via ESP Home.
For example I have currently created a simple setup for testing Home Assistant and an ESP32 board and can trigger an output on the ESP32 board from Home Assistant ( devices on the same local network ).
So I was thinking about running a lead from the ESP32 output to the info-beamer pi GPIO pin as a trigger.
Your suggestion is probably better and software based compared to my clumsy approach!
I need to give this some thought, and should probably researched this more before making a post, but great to get help with this.
Actually, if I were run info-beamer on a pi4 and configure it to run dual 1080p outputs, is it possible to create a playlist that runs the videos on one monitor and have the second monitor as a touchscreen display which when touched can trigger the input and switch the playlist?
I’ve just been playing around with the Touch Screen Player and this may actually work for what I need.
Is there any way to reposition the touch areas after they have been dragged/dropped initially?
I was thinking that for the index page I could create an image that would have icons that would act as ‘buttons’ and I could postion the touch area`over these icons to aid with navigation for the user, and all subsequent pages could have a full screen touch area to take the user back to the index page.
It may be possible to just initially drag out a touch area ‘over’ these button icons, but could be frustrating if not done accurately as there’s currently no way to reposition that I can see.
It should. Although it assumes that your display’s output is set to FullHD (1920x1080) resolution. So clicking the top left results in a touch event at 0, 0, while clicking the bottom right would be 1920,1080. If your Pi uses any other resolution, the results will be off.
Hi, yes I’ve set it to 1920x1080 output in the device settings, maybe I’ve not created the touch screen setup correctly, but clicking where the ‘button’ should be doesn’t have any effect.
It looks really promising, could I run this from any Pi, even a Pi Zero W and use an HDMI splitter to duplicate the output into multiple outputs, and send one to a small touchscreen 1920x1080 display that can be used to actually control the touchscreen package?
Maybe even use HDMI to ethernet transmitters/receivers if the displays are too far for an HDMI cable run?
From what I understand the touchscreen display will have a USB connection that would need to be plugged into the Pi ( so maybe need a USB to Micro USB adapter if using a Pi Zero )
That’s at least how the touchscreen work that I’ve seen. They present themselves as basically USB input devices. Hopefully there are none that instead decide that inventing their own crappy USB protocol is a better idea. In that case they will not work.
I’ve added a timeout to the main index screen so that it plays a ‘screensaver’ video if there’s no touch activity or other pages playing.
However it would be great if there was a way to set in a custom timeout time, as I’d probably want it around 10mins or more rather than just hte max of 60 seconds as it currently has.
Also, I need an option for what happens once the current page has finished playing, and so an option to play the current page x number of times and then return to index would be fantastic.
So I guess the only thing that would be nice to have would be the ability to set a custom time to switch between pages, as at the moment there’s only a limited choice of durations, so being able to set a custom delay in seconds or minutes would be great.