Getting a taste of the Pi

Around a week ago I reached a point where I was looking for a new project to work on. I remembered a friend of mine talking about the Raspberry Pi and the potential it had for mini projects. What I was looking for was a very small mobile computer with a full Linux installation on it and that's what I decided to make. This article was made to describe the process I followed to make an Rpi3 with a small touch screen and the ability to play retro games and multimedia as well as access to useful command line tools.

The hardware I used was the following:

·        Raspberry  Pi 3 Model B (1.2 Ghz Quad CPU and 1 GB RAM)

·        3.5 Inch Touch Screen Waveshare Spotpear 320x480

·        16 GB Mini SD class 10

·        USB to Mini USB cable

·        A cheap Rpi case I modified to meet my needs

·        A power bank for mobile use (I had one with ability for solar charging as well)

·        A USB wireless mouse and a USB wireless keyboard

·        A 128GB USB memory stick for extra storage


Preparing the SD card

I downloaded the latest Raspbian installation and burned it to the SD card as described on the official Raspberry Pi website (https://www.raspberrypi.org /). I used SD Formatter as recommended to make it fat32 and then copied the files over.

Assembling the hardware

The Pi was fitted in the bottom of the case with minimum effort and then the micro SD card was inserted. The top of the case Snapped on easily and then I attached the screen only to realise that the case was too wide and it wouldn't allow the pins of the Pi to make full contact with the screen.

Luckily the plastic of the top of the case was soft enough to be cut and modified with my wire cutters and the screen was attached successfully. The Pi is 3.5 inches as well, same as the screen which made the screen a perfect fit.

I then attached the USB keyboard, mouse and flash memory stick to the Pi and by connecting the mini USB cable to my power source and the HDMI cable to a spare monitor I booted it up.

The first Boot

The Pi booted Immediately and from the Raspbian installation window popped up.

Here I first tried to connect to my wireless network but realised that it had no option for connecting to a hidden network. I connected to my router and made the 2G wireless network visible so I could connect to it from the Pi. I then proceeded to connect the Pi on my network (The specific Pi version comes with built in wifi so no need for wifi adapter). After that, I selected the Rasbian option and followed the steps to finish the installation.

After the installation finished:

sudo apt-get update && sudo apt-get upgrade

for good practice.

Setting up the touch screen

The Desktop was only displayed on my monitor as I hadn't installed any drivers for the touch screen yet. The touch screen was powered but it wasn't displaying anything.

I followed the directions on the official waveshare website to install the monitor drivers as found here: http://www.waveshare.com/wiki/3.5inch_RPi_LCD_(A) but when the driver was trying to reboot I was getting Kernel Panic and the boot would stop. After several hours of looking for alternatives I found out in the official Pi forums that if you boot into recovery mode and edit the /boot/config file from:

 dwc_otg.lpm_enable=0 root=/dev/mmcblk0p6 rootfstype=ext4 noatime quiet rootwait loglevel=1 persistent-logs zram.num_devices=2

 to:

dwc_otg.lpm_enable=0 root=/dev/mmcblk0p7 rootfstype=ext4 noatime quiet rootwait loglevel=1 persistent-logs zram.num_devices=2

it boots up successfully with the desktop displayed on the touch screen. Both the display and touch functions worked fined without calibration. But I still did the calibration as recommended on the website.

I found that due to the size of the screen some system windows like changing wallpaper, don't show fully and thus it's really hard to press ok to commit a change. This was not an issue though as In most of the cases like changing wallpaper in Linux you don't need to press ok to commit the new wallpaper and in other cases pressing Enter is enough as Save is already pre-selected or can be selected with TAB.

Sound

I connected the Pi to a speaker using the audio jack but sound did not work immediately. To make it work I had to go to /boot/config.txt and add dtparam=audio=on and reboot.

Games

I played Minecraft Pi on the main monitor but on the Touch screen displays a black screen and haven't managed to sort that out yet.

I installed Doom and was pretty good but with a bit of lag. I plan to install emulators and other games on it, you can find a list here:

https://www.raspberrypi.org/forums/viewtopic.php?t=51794

Not all of them where compatible with the touch screen so it's a bit trial and error until you make a list of games that work nicely for that size screen.

Conclusion

Awesome project for doing something in my spare time with loads of uses and alternatives. The battery I used lasts for up to 12 hours depending on use. Videos display fine, sound is good, YouTube videos can be played full screen on it as well as any movies I tried. 

You can find Images of the project on my facebook page:

https://www.facebook.com/panoslykosconsulting