Headroom left on Volumio

I’m in the process of replacing my Raspify’s with Volumio’s and while I’m at it, why not upgrade/integrate a bit further. I’d like to run X on Volumio with matchbox as WM for a kiosk type of application, running
A) Midori or Iceweasel full screen accessing pages and PDFs served by Volumio’s web server, or if that would be too much,
B) running Remmina full screen and run the webbrowsing and serving in a VM on my NAS and show that on Pi using VNC or NX.

Before launching myself I was wondering if it would be hard to install that on top of Volumio, as I don’t know how stripped down it is, and whether anyone thinks it won’t work anyway because it would be too much for the Pi to handle when already doing playback.

The end goal is to have this set up in the kitchen, with a touch screen. The PDFs aforementioned would be recipes :slight_smile:.

OK so I moved on a bit with this. So far I’ve installed Midori browser, running fullscreen on Matchbox WM, displaying Volumio’s GUI.

I have a 15" touchscreen with eGalax controller for which support was already present in the Volumio kernel. If I’m not mistaken it’s the same controller as used in the Raspberry Pi 7" touch screen kits that are on eBay, in case anyone is considering one of those. The only niggle was that it needed calibrating.
For that I had to install the gcc toolchain to build xinput_calibrator following a guide found on another blog and it works like a charm, basically a touch screen controlled self contained Volumio player.

Next step is to hook into another webserver to add more functionality.

If anyone’s interested I can post the exact steps I followed. It’s pretty easy.

I’m interested! I was thinking to add a display for more powerful platforms than pi… Especially UDOO, with it’s LVDS could be a great solution…

Okay! Here goes. I started with a base installation of Volumio 1.2 beta and installed X, the Matchbox WM and Midori on top of that.

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install xserver-xorg xserver-xorg-core xfonts-base xinit xserver-xorg-input-evdev
sudo apt-get install matchbox
sudo apt-get install midori

Then added an .xsession in the home of the default user “pi” and symlinked it to .xinitrc just to be sure (The symlink may not be required. I’m far from an expert in Linux and am not familiar with Raspbian at all).
Using nano to enter the following into .xsession:

sudo nano .xsession

Enter the lines below and use CTRL-X to save and exit.

 #!/bin/sh
midori -e fullscreen -a localhost & matchbox-window-manager -use_titlebar no

Then the symlink and starting X, you should now see a fullscreen browser with Volumio’s GUI.

ln -s .xsession .xinitrc
startx

That will get you where you want to be if you only want to add a display to Volumio. Note that it won’t start on boot at this point, you’ll need to change that still if that’s what you want.

To get the 15" touch screen going I had to modify config.txt to adapt to its native resolution

hdmi_drive=2
hdmi_group=2
hdmi_mode=16
hdmi_force_hotplug=1
disable_overscan=0 

Touch will work out of the box but not exactly hitting the right spot. To build and run the calibration tool I ran the following:

sudo apt-get install gcc build-essential 
sudo apt-get install libx11-dev libxext-dev libxi-dev x11proto-input-dev 
wget http://github.com/downloads/tias/xinput_calibrator/xinput_calibrator-0.7.5.tar.gz  
tar xvzf xinput_calibrator-0.7.5.tar.gz 
cd xinput_calibrator-0.7.5/
./configure  
make  
sudo make install 

Then you can run xinput_calibrator in X to properly calibrate the touch screen.

Now, for my project, I’m figuring out how to configure Matchbox with a nice matchbox-panel in the bottom for navigation to other things (Google Calendar, recipes, etc) and how to get matchbox-keyboard, the virtual on screen keyboard, to play nicely (autohide when not needed for example). Might have to try a few different keyboards for that, I also installed onboard and florence to have a look.

Hi and thanks a lot for sharing! It sounds awesome what you’re doing there !
Unfortunately I am completely stupid on Linux/raspbian etc. thus, I can hardly follow exactly what you are doing. But the possibility to install a touchdisplay which allows interacting with the WebUI would be incredibly cool!

I would be very grateful if you could, at one point, extend your post into a “how-to” in simple manual style, explaining step by step what to do and what type of display one should buy according to your experience to avoid a hastle with the drivers (obviously without any guarantee). Your post seems to be almost there, but I (and potentially some other dumb users out there) would still wonder how a number of things should be done in details. Take this as an example:

:question:

Is it just done by entering the code you gave there through an SSH shell or do you have to do that before adding the code? (By the way, I had to look up “SSH” as well… :blush: )

Anyway, having a touch display as a quick and easy to use interface would dramatically increase the WAF of the volumio system. So thanks a lot and please continue posting !

Best,
Nikolas

(P.S.: to give you an idea, I once wrote the explanation how to install more webradios:
adding-webradio-fixed-t161.html
yes, I know it is super trivial, but I thought that at least I could contribute something and indeed it helped some other user. It would be great to have more of this kind of “how-to manuals” for volumio in the forum which, at one point, could be collected in a subforum for reference.)

Hi, thanks and I do apologize for the terribly late reply. I had to put this project on hold as I needed to tackle some pressing issues. I’ll likely be picking this up again end of June, my kitchen is still without music :open_mouth:

I’ll be happy to do a more detailed write-up, though it’s more or less all there. As for your specific question, the home directory for user “pi” is where you’ll find yourself after logging in through SSH as pi. You only need to follow the steps listed, i.e. use nano to create the .xsession sudo nano .xsession and then paste the two lines into the .xsession script. If you’re using a PuTTY, a Windows SSH client, right-click in the PuTTY window will paste text from the clipboard. The symlink is taken care of by the ln command in the next step.

It’s still very much a WIP - it needs a panel for shortcuts/navigation as an example. Again, I do plan to move forward with this and when I do I’ll update this post.

Sounds Great!
Now it’s me who is answering horribly late. By co-incidence, I am also super busy until end of June, but I a really keen on reading more on this. Might be my first DIY project to be tackled in late summer.
So thanks again!

Hi,

Thanks for sharing ! I use a volumio in my hifi system for some weeks now and i’m very happy with it.
That is exactly what i was looking for :exclamation:

I’m setting up a volumio for a friend. It will be integrated on a wall of his bathroom with a 7" touch screen to directly control volumio.

I just get his raspberry pi, installed and configured an edimax 7811un wifi adapter and now following your post to enable display on a pc screen (I’m still waiting for the touch screen).

I would also be very interested for your progress with virtual keyboard integration :unamused:

Thanks again, I’ll share my build log as soon as my project really goes forward :wink: