Connect Raspberry PI 3 to Laptop Display (VNC)

The reason why I came up with this tutorial was because: one day, me along with my friend were struggling to work on the raspberry pi, since we did not have any HDMI/AV diaplays. Hence, I came up with this tutorial so that others who are also in the same situation as ours would be able to use the display of their laptops as a monitor to the Raspberry Pi 3.
As we know Raspberry Pi is known as the “Pocket Size PC”, but for debugging & project purposes its cumbersome to carry an additional display just for that. Also, many of us wont have access to a HDMI display too. So, we figured out a way to easily connect raspberry pi to laptop display. So sit back and enjoy this simple tutorial

What are the stuff required to do this?

Raspberry Pi 3

Ethernet Cable.

Laptop.

SD Card with Raspbian.

Micro USB Cable.

(Optional) Components required for setting it up the first time:

HDMI/ AV Display.

Keyboard and Mouse.

How does it work?

To connect raspberry pi to laptop display, you can simply use an ethernet cable. The desktop GUI (Graphical User Interface) of the raspberry pi can be viewed through the laptop display using a 100Mbps ethernet connection between the two. There are many softwares available that could establish connection between the raspberry pi and your laptop. We would be using the VNC server software to connect the pi to your laptop.
Installing the VNC server on your pi allows you to see the raspberry pi’s desktop remotely, using the mouse and keyboard as if you were sitting right in front of your pi. It also means that you can put your pi anywhere else in your home, but still control it. Also, internet can be shared from laptop’s WiFi over Ethernet. This also lets you access internet on the pi and connect raspberry pi to laptop display.

Step 1 : Setting up your Raspberry Pi 3

Before moving to connect raspberry pi to laptop display, you need an SD card having the OS preinstalled. You will find lots of blogs and tutorials about preparing an SD card for the Raspberry Pi. But if you are a beginner, you can simply download this free beginner’s guide eBook on pi: Raspberry Pi guide. This will show how to install the OS for the raspberry pi.

After setting up your SD Card, insert it into the raspberry pi. Next, for powering the pi connect your micro USB cable to it. Also connect your raspberry pi to the laptop via an ethernet cable. And connect the keyboard & mouse to it. Now, connect the HDMI display (the HDMI is only required for running the pi for the first time). Now power on your Pi. And follow the next steps to connect raspberry pi to laptop display.

Step 2 : Sharing internet over ethernet

This step explains how you can share your laptop internet with the raspberry pi via Ethernet cable.
In Windows : For sharing internet to multiple users over Ethernet, go to Network and Sharing Center. Then click on the WiFi network:

Click on Properties (shown below), then go to Sharing and click on “Allow other network users to connect”. Make sure that networking connection is changed to “Local Area Connection”:

Note : Doing this will provide a dynamic IP to the Ethernet port of your laptop and other Devices connected to your laptop. Now, for checking the IP assigned to your laptop, click on the new local area connection link created:

As shown above, the IP assigned to my laptop is 192.168.137.1. For checking the IP assigned to the connected ethernet device, do the following. Considering that IP assigned to your Laptop is 192.168.137.1 and subnet mask is 255.255.255.0 :

If you have an HDMI display: Using the connected HDMI display on your pi, you should install VNC server in raspberry pi. Open the LX-Terminal and type the following commands to install VNC:

$ sudo apt-get update
$ sudo apt-get install tightvncserver

If you don’t have an HDMI display: If you do not have a display even for one time setup, then no need to worry. Install Putty as per your windows configuration and via SSH you can connect with your raspberry pi. And, as you get access of your pi terminal, run the same commands as above to install VNC.

Starting VNC Server on Pi :

For starting VNC, enter the following command in SSH terminal:

$ vncserver :1

You will be prompted to enter and confirm a password. This will be asked only once, during first time setup. Enter an 8 digit password. Note that this is the password you will need to use, to connect to the Raspberry Pi remotely. You will also be asked if you want to create a separate “read-only” password – say no (n).

Yippeee :)….The VNC server is now running on your Pi and so we can attempt to connect to it. But first we must switch to the laptop, from which we want to control the pi. Then setup a VNC client to connect to the pi.

Step 4 : Setting up the client side (Laptop)

Download VNC client from here and install it. When you first run VNC viewer, you will see following:

Enter IP address of your raspberry pi given dynamically by your laptop (you got the address from the earlier step). And append with :1 (denoting port number) and press connect. You will get a warning message, press ‘Continue’:

Enter the 8 digit password which was entered in VNC server installation on raspberry pi:

Finally, the raspberry pi desktop itself should appear as a VNC window. You will be able to access the GUI and do everything, as if you were using the pi’s keyboard, mouse and monitor directly. As with SSH, since this is working over your network, your pi could be situated anywhere as long as it is connected to your network.

Raspberry pi desktop on your laptop display

Step 5 : Running VNC server at startup in Raspberry Pi 3

Connecting to your raspberry pi remotely with VNC is fine as long as your pi does not reboot. If it does, then you either have to connect with SSH and restart the VNC Server. Else, arrange for the VNC Server to run automatically after the raspberry pi reboots. To ensure that VNC starts automatically each time on booting up, run the following commands on terminal:

Open “.config” folder from pi’s: user folder (it is a hidden folder).

$ cd /home/pi
$ cd .config

Create folder called “autostart” in it. Also create file called “tightvnc.desktop” in that folder. To create file you can use any known text editor. Here I use gnome-text-editor for this:

Now next time you reboot your Pi, vncserver will start automatically. And seamlessly would connect raspberry pi to laptop display. Good job

So, whenever you want to do something with your pi, just connect it with ethernet cable to your laptop and power it. Then open VNCViewer, mention the IP address of your pi. And you can use the display of your laptop as the raspberry pi’s monitor.

We have not tested it for pi 2 or older version, but it might work, do let us know if it does.