In essence I have a desktop PC next to the PandaBoard which I develop on. At the same time I have the PandaBoard connected to:
- a 19" monitor via a DVI/HDMI cable;
- 8GB SD Card;
- a usb hub;
- wired ethernet to my home network;
- 1 TB Hard Drive via USB;
- mouse; and
Both the Desktop and PandaBoard are running Ubuntu operating systems.
The approach I have taken is to use remote connections from my Desktop PC to the PandaBoard and develop mostly at my Desktop PC. I avoid using VNC and instead use ssh and sftp.
My workflow is to have at least two ssh terminals open on my desktop which allows me to run commands as if I was typing into a terminal on the PandaBoard itself. I also have a file browser window open (Nautlius) which is the filesystem of the PandaBoard.
How to set up ssh is covered in:
Once ssh is set up, you can access the filesystem of the Pandaboard/BeagleBoard via sftp (secure ftp) without any further effort on the host side.
The command I run at the terminal on my desktop PC is:
This asks the system to start Nautilus and automatically log into a sftp session using the following details:
Username on the host PandaBoard/BeagleBoarrd: dingo
IP address of the host PandaBoard/BeagleBoard: 192.168.1.74
Port Number of the ssh service: 3434
Location to open in the filesytem: /media/restore/pandaboard/
Once I execute this command I get the following window:
From here I usually use Geany as my IDE to open code files. I then execute 'make' in the already open terminal windows to natively compile the code on the PandaBoard/BeagleBoard. I usually execute 'htop' in the other terminal window to monitor the processes running and load etc.
Once I have an executable to test, I execute it in the terminal and if it spawns a window (X11), that window will spawn on my Desktop PC whilst being run on the PandaBoard/BeagleBoard.
This results in me being able to code, build, search, execute and test all on my Desktop right alongside my normal Desktop applications like web browsers etc whilst building code in a native environment.
I have found this approach to be faster than VNC or interfacing with the PandaBoard via a monitor and keyboard/mouse directly.