cupcakesAreDumb
Posts: 5
Joined: Wed Jan 17, 2018 3:40 pm

Configure Raspberry Pi to be used as a single use GUI for commercial product

Wed Jan 17, 2018 4:06 pm

I am exploring using a Raspberry Pi with a touch screen display to run a GUI as a control system for a commercial product. I would like to have the Pi to always start the application on boot and nothing else to make it difficult to mess with and simple for the end-user.

I have read this article that has a lot of good ways to start the program on boot, but I am unsure I am considering all scenarios of when it's running.

https://www.dexterindustries.com/howto/ ... t-startup/

Essentially I am asking if it's actually a good idea to try and configure a Pi running a common OS like Jessie to run a Qt5 or similar based GUI, or is there no way going around creating my own distro and developing with Yocto and BuildRoot that I feel less technically capable with?

User avatar
topguy
Posts: 4616
Joined: Tue Oct 09, 2012 11:46 am
Location: Trondheim, Norway

Re: Configure Raspberry Pi to be used as a single use GUI for commercial product

Wed Jan 17, 2018 6:17 pm

Thanks for the link, the question is asked so often I had thought about writing my own overview.
For your purpose I would not consider the "bashrc" and "crontab" startup methods.

The question does not have a clear answer without knowing more about your application.
- Does it depend on some standard Linux services or is it very selfcontained and "single-purpose" ?
- Will the device need networking or be remotely configured/monitored ?
- It startup-speed an issue ?
- What programming language will the application most likely be written in ?
- How critical is it to lock users out from accessing the operating system ?
- etc.

cupcakesAreDumb
Posts: 5
Joined: Wed Jan 17, 2018 3:40 pm

Re: Configure Raspberry Pi to be used as a single use GUI for commercial product

Wed Jan 17, 2018 6:47 pm

Really? When I tried googling it all I managed to find were ways to disable the desktop GUI and how to handle copyright issues. I was starting to think that since I wasn't finding other people asking these questions that my initial instincts were right and Raspberry Pi still isn't really a good option for commercial product no matter how small the scale.

I suppose it will still rely on a typical Linux file system and several services and it will definitely need to make HTTP requests

Startup speed probably isn't an issue. I don't expect it to be turned on more than once or twice a day.

Still considering the best options for the project, what would you recommend and why in this case?

I suppose not very, some mischievous person is always going to be able to unscrew some panel and replace the SD card if they really want to .

Is the best I can do a distro like Raspian-lite where it just doesn't include the desktop graphics pack? I figured there would be some distro out there specifically for this exact purpose if it was a good idea, but I haven't been able to find anything.

hippy
Posts: 3383
Joined: Fri Sep 09, 2011 10:34 pm
Location: UK

Re: Configure Raspberry Pi to be used as a single use GUI for commercial product

Wed Jan 17, 2018 7:01 pm

cupcakesAreDumb wrote:
Wed Jan 17, 2018 6:47 pm
I was starting to think that since I wasn't finding other people asking these questions that my initial instincts were right and Raspberry Pi still isn't really a good option for commercial product no matter how small the scale.
The Pi is really no different to any other computer system, SBC or microcontroller. It can run Linux, and applications on top of it, and many other commercial products do exactly that.

The main issues are how locked down you need it - Raspbian 'as is' may not be the best option - and the potential issues with using SD Card as the storage media.

Other than that it is probably no worse than any other option you could choose. It's more how you do it than the Pi being suitable or not.

The Raspberry Pi Compute Modules are primarily designed for commercial product and are used as such.

If you want a completely self-contained application with a GUI you could look at ultibo which is one option for fairly easy single application development, though there is no GUI framework currently.

cupcakesAreDumb
Posts: 5
Joined: Wed Jan 17, 2018 3:40 pm

Re: Configure Raspberry Pi to be used as a single use GUI for commercial product

Wed Jan 17, 2018 7:32 pm

Is there any available distro you would recommend as an alternative to Raspbian "as is" ?

Ultibo seems promising, but I am confused about how much wifi capabilities it has now and what is in progress that I will have to look into. Also any software developed using it would be almost impossible to port to other hardware if we decided that we wanted to develop our own board or use some similar product right?

hippy
Posts: 3383
Joined: Fri Sep 09, 2011 10:34 pm
Location: UK

Re: Configure Raspberry Pi to be used as a single use GUI for commercial product

Wed Jan 17, 2018 8:27 pm

I don't believe ultibo supports WiFi at present and I think you are right; it probably isn't that portable. I am guessing you could add an abstraction layer to make it more portable. I have been doing that and auto-translating my Python code which runs on Pi and PC into Pascal to run with ultibo .

I don't really know what other distros to suggest as I'm no Linux expert. Buildroot, DietPi and PiCore seemed the best options ( in that order ) for standalone applications when I was looking at what was out there. NARD SDK is also interesting but ultibo won out as it appeared to be the easiest route to get something working.

Like you I wanted my Pi to run a single application and ultibo is a better match for me than anything on top of Linux; almost instant boot time, no worries about licensing, and, so far, it does everything I need.

On the downside it means coding in Pascal, it has a bit of a learning curve, and it doesn't do everything yet.

Maybe a requirements statement beyond 'App with GUI' would help others better advise on what your alternatives are.

cupcakesAreDumb
Posts: 5
Joined: Wed Jan 17, 2018 3:40 pm

Re: Configure Raspberry Pi to be used as a single use GUI for commercial product

Wed Jan 17, 2018 8:52 pm

Ok thanks so much.

For any future person stumbling upon this thread who is also coming up short on answers I think I am going to be using Buildroot to make my own distro and this tutorial seems very helpful so far.

https://cellux.github.io/articles/diy-l ... ot-part-1/

procount
Posts: 1149
Joined: Thu Jun 27, 2013 12:32 pm
Location: UK

Re: Configure Raspberry Pi to be used as a single use GUI for commercial product

Wed Jan 17, 2018 9:50 pm

If you are familiar with NOOBS, that is a GUI based program using the Qt framework on buildroot. Works with wifi, ethernet and official RPi touchscreen. You could use that as a starting point. It is written in C++ but you could probably add python to it.
PINN - NOOBS with the extras... https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=142574


User avatar
topguy
Posts: 4616
Joined: Tue Oct 09, 2012 11:46 am
Location: Trondheim, Norway

Re: Configure Raspberry Pi to be used as a single use GUI for commercial product

Thu Jan 18, 2018 12:48 am

Really? When I tried googling it all I managed to find were ways to disable the desktop GUI and how to handle copyright issues
It wasnt the question about commercialisation I was thinking about, it was the "How do I start my program at boot ?" question.

I would still consider Raspbian Lite as a potential developing platform for the application itself, you can then figure out which dependencies is actually needed and add that to a builtroot system later if you want.

Return to “Advanced users”

Who is online

Users browsing this forum: Neil_G and 12 guests