Raspberry PI Qt Information Kiosk

Qt information kiosk using a Raspberry PI and official touch display. This application demonstrates how to write a full screen Qt Creator C++ application for the Raspberry PI. A simple shopping mall touchscreen information kiosk is built in Qt Creator for this example project.

The image below shows the Raspberry PI Qt information kiosk application running on a touch display.

Qt Information Kiosk

Qt Information Kiosk

When one of the information buttons is touched, the corresponding information screen is displayed with a back button for returning to the main screen. An example of one of the information screens is shown below.

Raspberry PI Kiosk Screen

Raspberry PI Kiosk Screen

Although the 7 inch touch display is rather small for a shopping mall kiosk, the application is a starting point for similar projects. It also serves as a nice demonstration that is not too bulky to carry around.

Raspberry PI Qt Application Development

The application was developed on a Raspberry PI 3 using a normal computer LCD screen. Using a big screen makes layout of the application windows in Qt Creator easier. The application was then tested on a Raspberry PI 2 connected to an official Raspberry PI touch display.

All the necessary software development tools are available for installation on Raspbian Linux. A C++ compiler, Qt Creator and Qt libraries must be installed in order to start Qt development.

Creating the Raspberry PI Qt Information Kiosk Application

All the steps needed to create this project are explained on the Raspberry PI Qt Information Kiosk project page on the Starting Electronics website. Here you will be able to download all the source code for the project and see how to create the project from scratch.

Although this project is just a demo of how to write a full screen touch application for the Raspberry PI, it can be used as a starting point for many other applications. Use the source code and project instructions to build your own Qt C++ applications – enjoy!

 

Raspberry PI Touchscreen Kiosk

A Raspberry PI touchscreen kiosk project GUI application using GTK+ 3 and Glade. A full-screen information kiosk application written in C for the Raspberry PI.

Raspberry PI Touchscreen Kiosk

Raspberry PI Touchscreen Kiosk

Raspberry PI Touchscreen Kiosk Details

This Raspberry PI touchscreen kiosk project is a demo application that shows a simple mall with four shops. An official Raspberry PI touchscreen is used as an information kiosk. When any button on the screen is touched, information for the corresponding page is displayed.

An example of one of the information screens for a shop is shown in the image below.

Raspberry Pi Kiosk Info Screen

Raspberry Pi Kiosk Info Screen

GTK+ 3 and Glade 3 Raspberry Pi Project

GTK is a toolkit that is used to create windows and widgets such as buttons, images and text boxes. Glade is a user interface design application that allows windows to be designed and laid out graphically. It is used to design the GUI of the application.

The Application is written in the C programming language. GTK functions are called in the C code to draw the windows and widgets designed in Glade and to attach callback functions to window events such as button presses.

Application Details and Code

The project is built from a set of GTK template files that make it easy to start a new GTK / Glade GUI application. Full code and project details can be found in the Raspberry PI Information Kiosk project on the Starting Electronics website.

The code and example project can help you to start your own Raspberry PI GUI application development if you are building an information kiosk or similar application.

Go to the Raspberry PI Kiosk Page →

Raspberry PI Security Camera

How to build a Raspberry PI security camera using a Raspberry PI camera and a USB camera. I built these two cameras using older Raspberry PI B and B+ boards (not the version 2 or 3) using motionEyeOS for the operating system.

The camera live video, recorded video, recorded images and settings are accessed by connecting to the camera with a web browser. Cameras are connected to the network by either wired Ethernet or WiFi from the Raspberry PI boards. The camera can be set to start recording as soon as motion is detected.

RPI Camera Raspberry PI Security Camera and WiFi

The first camera uses a Raspberry PI camera and Raspberry PI model B+ board. Connection to the network is via WiFi. The image below shows the Raspberry PI board set up with the RPI camera, USB WiFi dongle and micro SD card.

Raspberry PI Security Camera with WiFi Connection

Raspberry PI Security Camera with WiFi Connection

USB Camera and Wired Ethernet

The second camera uses a Raspberry PI model B board, full sized SD card and an external USB camera as shown in the following image.

Raspberry PI Board with USB Camera and Wired Ethernet

Raspberry PI Board with USB Camera and Wired Ethernet

A cheap USB camera is attached to the board via the black USB connector in the above image.

Cheap USB Camera

Cheap USB Camera

Installing and Setting up the motionEyeOS Software

Details on setting up the Raspberry PI camera and motionEyeOS software can be found on the Starting Electronics website. The article shows how to set up the Raspberry PI camera and wired Ethernet connection.

Security Camera Video Image in Web Browser

Security Camera Video Image in Web Browser

The motionEyeOS software is a complete operating system and camera motion detection software all in one. A SD card image is simply installed onto the SD card to install all the software. The Raspberry PI board and camera can then be accessed from a web browser.

Even if WiFi is to be used, the board must first be connected to a network using wired Ethernet so that the board can be accessed from a web browser and settings changed to use WiFi.

Further details and settings can be found on the motionEyeOS wiki pages.

Raspberry PI Security Camera Performance and Issues

Recording Reliability

I have found that the camera, whether USB or RPI, does not reliably trigger and start recording every time that motion occurs in front of the camera. This problem occurs even with a fairly modest frame rate and fast SD card. I suspect that it is due to the performance of the Raspberry PI board. Performance should improve with a model 2 or 3 board.

Triggering on Unwanted Motion

If there is a tree or anything that moves when there is wind, this is a problem. Because of this, the camera will detect unwanted motion and start recording. On a windy day this is a big problem as the SD card will start to fill with unwanted recordings.

How to Connect a Raspberry PI Touchscreen Display

The new official Raspberry PI touchscreen 7 inch display is now available and connects directly to a Raspberry PI board using a flat ribbon cable and power wires that are supplied with the display.

Raspberry PI Touchscreen Display Running Raspbian

Raspberry PI Touchscreen Display Running Raspbian

 

 

 

 

 

 

 

 

Touchscreen Power

The screen operates from a 5V supply and can be powered from the Raspberry PI header pins using the supplied wires. The screen can also be powered from its own external 5V power supply and has a micro USB connector identical to the one used to supply power to Raspberry PI boards. If a separate power supply is used to power the screen, it must be rated at 500mA or more.

Mounting a Raspberry PI Board on the Touchscreen

Terminal posts are provided at the back of the touchscreen that hold the touchscreen circuit board in place. A raspberry PI board can be mounted on the back of the touchscreen by attaching it with the four screws that are supplied with the screen to the terminal posts.

The image below shows a Raspberry PI 2 model B attached to the back of a Raspberry PI touchscreen.

Raspberry PI Board Mounted on Raspberry PI Touchscreen

Raspberry PI Board Mounted on the Back of the Touchscreen

Connecting a Raspberry PI to the Raspberry PI Touchscreen

It is important to make the connections between the Raspberry PI board and touchscreen correctly, especially the power to the screen when it is tapped from the header of the Raspberry PI board.

A flat ribbon cable is supplied with the screen for making a data connection between the raspberry PI board and screen. Jumper wires are supplied with the board for connecting 5V and GND from the Raspberry PI header pins to the touchscreen to supply power to the screen.

Full connection details including photos and a video can be found in the article on how to connect the official 7″ LCD Raspberry PI touchscreen to a Raspberry PI board.

Raspberry PI Touchscreen Connections

Raspberry PI Touchscreen Connections