How to Setup a Headless Raspberry Pi

Forex stock trading

Operate Raspberry Pi Wirelessly through your Linux System.

Photo by Harrison Broadbent on Unsplash

How to Setup a Headless Raspberry Pi

Operate Raspberry Pi Wirelessly through your Linux System.

Want to operate your Raspberry Pi without buying extra keyboard, mouse, monitor, etc ? Then this guide is for you.

Below methods are successfully tested on Raspberry Pi 3B and Raspberry Pi Zero W, using Arch Linux as Host OS. Moreover, this tutorial can be used for Microsoft Windows too as Windows supports Linux terminal. Use the terminal and follow steps.

If you find this blog helpful, please click the 👏 button and share to help others find it!

So, Let’s Start

Step 1 : Fulfill Requirements

You will need following resources:

  • Raspberry Pi and its power adapter
  • Micro SD Card (8 GB or more)
  • Wireless Router (You can even use the Hot-Spot of your smartphone)
  • A Linux System.
  • Active Internet.

Step 2 : Download Raspbian

To go to official download page, click here.

Download “Raspbian Stretch with desktop and recommended software”. This ISO contains ssh server, vnc server and other required tools.

Step 3 : Burn the ISO to Micro SD Card

First of all, connect the Micro SD Card to your Linux System.

Use Balena Etcher to burn the Raspbian to SD Card. Etcher is an open source, very handy and easy to use, tool for burning Linux Images. (Raspbian is also Linux based). Download it from here.

Run it.

Select the path to Raspbian ISO, then select your SD Card to be burned and click Flash!. It will ask for authentication.

Enter your Password. It will take some time, till then have your coffee break. :).

Step 4 : Enable SSH

Open the boot partition of your SD Card in your File Explorer. Now run the terminal in same working directory and create an empty file with name SSH . This has to be done only for the first-time-boot, this will enable SSH sever on your Pi, hence it can be controlled via network.

Run the following command:

$ touch SSH

Step 5 : Feed Wifi password in your Pi

The WiFi connection can be provided either by a wireless-router or a Smartphone-HotSpot.

This is necessary as we are setting up a headless Pi, we need it to connect to a network as soon as it boots. Connect it to the same network with which your Linux System is connected. This will create a local area network.

Again it has to be done only for the first-time-boot.

Open rootfs partition of your SD Card in your File Explorer. Now run the terminal in same working directory.

Now move to the etc/wpa_supplicant directory and edit wpa_supplicant.conf file.

Screenshot of my Terminal.

Now modify it with the following content.

country=IN is for your country. Here in my code, IN stands for India.

Your wpa_supplicant.conf file will look like this.

Screenshot of my Terminal

Step 6 : Find IP of your Raspberry Pi and access it using SSH.

(Note: We can skip this troublesome if we use static IP. But it will make this tutorial very tricky.)

If your router supports MDNS, (All smartphones with Andoird < 9 support MDNS through their HotSpot), simply login into your pi using command ssh pi@raspberrypi or ssh pi@raspberrypi.local . It asks for password, which by default is raspberry .

We are going to operate Pi with our Host Linux System. And to establish a communication between two systems we need IP addresses. This is why we connected our System and Pi to the same router/smartphone-hotspot, so as to create a local network.

We are using router/smartphone-hotspot just as a 3rd party device to provide our system and Raspberry Pi with their IP addresses.

So let’s find the IP address of our Pi. To do this first we need to find IP address of our system. You can run any of the following command:

  • ifconfig
  • ip addr
  • ip address show
Screenshot of my Terminal

As you can see , from the line inet 192.168.1.7/24 , its obvious that my IP address is 192.168.1.7 .

And as my Linux system and Raspberry Pi are connected to same network, my Raspberry Pi is going to have an IP address of form 192.168.1.xx where xx is any whole number between 1 to 255.

We need nmap . Install it on your system.

As my IP is 192.168.1.7 , I will run the following command (modify the command according to your IP):

$ nmap -sn 192.168.1.0/24

Screenshot of my terminal.

Now all the IP addresses you can see in the screenshot of my terminal, are of the devices connected to my Wifi Router.

Check which one is of your Pi.

Run the command with the IP addresses you got:

$ ssh pi@

Screenshot of my Terminal

Hence found, 192.168.1.8 is the IP address of my Pi.

The default password for your Raspberry Pi is raspberry .

Screenshot of my Terminal

Hurray! Congratulations. You have setup your Headless Pi.

Access the desktop of your Headless Pi

Step 1 : Enable VNC on Pi

Access your Pi ussing SSH and run the following command:

$ sudo raspi-config

Screenshot of my Terminal

Using arrow keys, go to the option for Interfacing Options. Press Enter.

Screenshot of my Terminal

Using arrow keys, go to the option for VNC. Press Enter. Follow all options to enable it.

Screenshot of my Terminal

Finally Finish it.

Screenshot of my Terminal

Step 2 : Download VNC Viewer

We will need VNC Viewer for this. Download it from here.

Unzip the File, if you have downloaded the Standalone version. Right-click on it and check the box for “Allow executing file as program”.

Step 3 : Access desktop of Pi using VNC Viewer

Run VNC Viewer and enter the IP address of your Pi. It will ask for confirmation. Click Continue.

Now enter username and password.

Username is : pi

Password is : raspberry

Click OK.

Hurray! Congratulations. You have accessed the desktop of your Headless Pi.

About me

Hello, my name is Vaibhav Gupta. An OS/Kernel Enthusiast | GSoC ’19 (RTEMS Project) | Developer | Mentor | Blogger | Sketch Artist | Archer.

  • For my other projects, my GitHub Link- https://github.com/VARoDeK

Let’s get connected

For any queries, ping me on LinkedIn or Facebook. Follow me on:

  • My LinkedIn Profile- https://www.linkedin.com/in/varodek/
  • My Facebook Profile- https://www.facebook.com/vaibhav.gupta.1004837
  • My Twitter account- https://twitter.com/varodek
  • My Medium account- https://medium.com/@varodek

If you find this blog helpful, please click the 👏 button and share to help others find it! Feel free to leave a comment 💬 below :).


How to Setup a Headless Raspberry Pi was originally published in Hacker Noon on Medium, where people are continuing the conversation by highlighting and responding to this story.

Read about withdrawable no deposit bonus and make profit trading now