Some Essential Tools and Applications with Raspberrypi Pi 2 & Pi 3

Posted by:

Applications with PI

There are many, way too many things you can do with a Rapberry Pi. After all, it is a computer, a full fledged linux computer with GPIOs. Following are some essential tools or applications with this credit-card size computer. There are a lot more, and I will post them later. This is done with Arch Linux, it should be applicable to other systems though.

Setting up VNC [virtual network computing]

Remote desktop comes in very handy with Raspberry Pi. You’d like to have it even when you are local to it, especially if you want to set it up as a headless box. VNC will be the ideal option to do so.

  1. installation

    This packages provides the requisite vncserver, x0vncserver and also vncviewer. Vncserver provides two major remote control abilities:

    1. Virtual (headless) server which is similar to the standard X server, but has a virtual screen rather than a physical one. The virtual server runs completely parallel to the physical X server should one be running. –>vncserver
    2. Direct control of the local X session(s) which do run on the physical monitor. –>x0vncserver

running headless control

  1. retrieve IP address of your PI -your server in this case

  2. access your PI from another issue with your vnc client from another PC, smart phone or Chrome VNCviewer
  3. On the server side -your pi

    input password when asked, or change later with vncpasswd

  4. On the client side

  5. Starting and stopping vncserver at bootup and shutdown via systemd Create /etc/systemd/system/vncserver@:1.service and modify it defining the user to run the server. Use this with systemd to manage it. Here is the file origin [/lib/systemd/system/vncserver@.service]

  6. The screen capture.


  7. In Debian system, follow instruction here.

Running vncserver to directly control the local display

  1. invoke like this

    Note: use passwd to change or set password

  2. Starting and stopping x0vncserver via systemd Note: This unit will only be useful if the user in the unit is currently running a X session. In order to have a VNC Server runnning x0vncserver, which is the easiest way for most users to quickly have remote access to the current desktop, you can create a systemd unit. Create /etc/systemd/system/x0vncserver.service and modify it defining the user to run the server, and the desired options. /etc/systemd/system/x0vncserver.service

webcam with USB webcam

  1. install fswebcam

  2. start server with python3

  3. browse from another website

Network bridging to share a laptop screen and keyboard with Raspberry PI

The preamble

The concept is to share your laptop keyboard and screen with Raspberry PI with xforwarding or VNC via network bridging. All you need is an ethernet cable (crossover is not necessary for most cases). Both systems can share your laptop wireless internet.

setting xforwarding with ssh -X or ssh -Y

This does not belong here, but it is really cool stuff. Mosh is cooler, but does not work with x-forwarding yet.

  1. make changes to /etc/ssh/sshd_config [NOT ssh_config] by un-commenting following lines

    Note make changes to ssh_config will disable sshd connection

  2. restart sshd and checking status

  3. ssh -X from another computer

    and, start any gui application,

  4. Some notes from my side:
    1. only terminal needed from host side
    2. on client side, Xlib RAND and SYNC warning shows up, but works regardless, possible solution here.
    3. use ssh -Y without any warning

set up network bridging

Followed up the instruction here, does not really work. stopped at brctl addif bridgename eth0, did not get a chance to figure out why. what worked for me is using network manager, and set as as following from your linux PC.


Notes: Above worked fine with Rasbian too; VNC and ssh both worked fine with me.

scr_rasbian_VNC.png Procedures:

  1. start up Raspberry Pi and Laptop running Arch Linux
  2. Connect RasPI (server) with PC (client) with an ethernet cable.
  3. Locate the ip for Raspi from PC -client

  4. The No description for this link way

    1. SSH to RasPi and turn on VNC server

    2). vnc or “SSH -X” back to Raspi from laptop

  5. OR, set up rasPI the No description for this link local display way, and vnc or ssh -X to it
  6. Fix for no mouse cursor

If no mouse cursor is visible when using x0vncserver, start vncviewer as follows:

Or put DotWhenNoCursor=1 in the tigervnc configuration file, which is at ~/.vnc/default.tigervnc by default in your client PC, not rasPi.


Add a Comment