Saturday, April 30, 2016

Turning Raspberry Pi 3 into an All-in-One PC with an LCD Monitor

Someone gave me a Raspberry Pi 3 and an LCD monitor, so I took the easy route and decided to turn them into an all-in-one touchscreen PC.
Check on Amazon Check on Amazon

Raspberry Pi setup


I'd prefer to do the setup with the LCD connected, but it won't display anything without the driver installed first.
Also, while the Raspberry Pi 3 has a built-in Wi-Fi chip, it doesn't just connect automatically.
So for now, I'll connect via wired LAN and work over SSH.

Creating the Raspbian SD card and getting it booted is the same as in the Raspberry Pi as a file server post.

One gotcha: the current version of Raspbian Jessie ships with a 4GB root partition, and running rpi-update will overflow it.

So before running rpi-update, expand the partition with raspi-config:
pi@raspberrypi ~ $ sudo raspi-config

Select "1 Expand Filesystem" from the menu, then reboot to apply.
pi@raspberrypi ~ $ sudo reboot


After rebooting, update Raspbian:
pi@raspberrypi ~ $ sudo rpi-update
pi@raspberrypi ~ $ sudo apt-get update
pi@raspberrypi ~ $ sudo apt-get upgrade
pi@raspberrypi ~ $ sudo reboot


At this point, it's a working Linux system.

Setting up Wi-Fi




Confirm the Wi-Fi chip is recognized as wlan0:
pi@raspberrypi:~ $ /sbin/ifconfig
eth0      Link encap:Ethernet  HWaddr b8:27:eb:e9:06:07
inet addr:192.168.xxx.xxx  Bcast:192.168.xxx.xxx  Mask:255.255.255.0
lo        Link encap:Local Loopback
inet addr:127.0.0.1  Mask:255.0.0.0
wlan0     Link encap:Ethernet  HWaddr b8:27:eb:bc:53:52


My environment uses WEP128, so I configured it like this.
Replace {SSID} and {PASSPHRASE} with your own values:
pi@raspberrypi ~ $ sudo -s
root@raspberrypi:/home/pi# vi /etc/wpa_supplicant/wpa_supplicant.conf
root@raspberrypi:/home/pi# cat /etc/wpa_supplicant/wpa_supplicant.conf
country=GB
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="{SSID}"
key_mgmt=NONE
wep_key0={PASSPHRASE}
wep_tx_keyidx=0
}


Test the connection. If it says "Successfully initialized" you should be good.
Reboot and the Pi should get an IP address via DHCP:
root@raspberrypi:/home/pi# wpa_supplicant -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf
Successfully initialized wpa_supplicant
root@raspberrypi:/home/pi# reboot


Setting up the LCD monitor


Shut down Raspbian and unplug the power:
root@raspberrypi:/home/pi# poweroff


I was given a Raspberry Pi 3 with a case, but it turned out the cocopar LCD monitor's pin socket isn't long enough to reach when the case is on — the LCD is apparently designed to sit flush against a bare board.

Reluctantly, I removed the case and plugged the LCD directly onto the board.
No manual included, but it seems you just plug it into the outermost end of the GPIO header.

Here's what it looks like from the back:
Raspberry Pi 3 with LCD attached, viewed from the back

Power it on and install the driver.
…but no manual was included, and there's no information anywhere about where to find the driver.

The Amazon product listing had a URL, but it turned out to be a link to Raspbian itself. Thanks for nothing.

After some digging, it looks like following the instructions from a manufacturer called Waveshare should do the trick:
pi@raspberrypi:~ $ sudo -s
root@raspberrypi:/home/pi# wget http://www.waveshare.net/w/upload/7/73/LCD-show.tar.gz


…and then the server turned out to be incredibly slow, showing a 70-minute download estimate. So I'll pick this up next time.

Coming up next:
 • Getting the LCD display working
 • Setting up a Bluetooth keyboard

No comments:

Post a Comment