This post is just to list some example initial things to do with the BBB, to prepare it for development. Others may have different suggestions to suit various working methods. The official getting started page is here.

Powering up the board for the first time

(Instructions here are Windows based, but the official page has instructions for Linux and MAC too; For Linux, no drivers are needed but they suggest using this script):

  1. Plug in the USB, let it boot up. Some drivers will not install (CDC Serial and RNDIS)
  2. Download BONE_D64.exe for Win 7 64-bit and run it. It will prompt a few times. Now all drivers will be installed.
  3. In a Windows command prompt, ipconfig /all will reveal a "Linux USB Ethernet/RNDIS Gadget" interface has been created on the PC with IP address; the BBB IP address will be
  4. It is now possible to use a web browser to navigate to


Using a serial cable

The J1 row of pins on the BBB allows connection to a PC for serial comms (115200 baud by default).

This is a small hardware mod to use a powered USB-serial adapter:

Solder a red wire from J1 pin 2 to P9 pin 4

The communications pins and direction of data is:

Beagleboard J1 pin 4 <---------------PC
Beagleboard J1 pin 5---------------->PC

J1 pin 1 is 0V.


Information on various serial cables is here. Connecting up a FTDI TTL-232RG-VIP-WE cable (these colors were different to the ones on that page):

Pin on J1    Color

1            Black

2            Red

4            Orange

5            Yellow


Plug in the FTDI cable into the PC. (On Window 7 64-bit; the driver will install automatically after a while - no need to download any driver.

Check the port number in Device Manager).

Start up serial terminal software on your PC, set to 115200 baud, no DTR/DSR/RTS/CTS/XON/XOFF
Power up board and observe it booting up; after around 10 sec it will be at the login prompt
Login as root (there is no password)


Updating the software

The getting started page has this detail and it works well. It requires a microSD card and a way to program it from a PC (e.g. a small SD to MicroSD adapter if your PC has an SD card slot). It takes almost exactly 45 minutes for the flash to be programmed on the board.


Setting the date

Check the date by typing date
Set the date, e.g. date -s "May 21 22:49 UTC 2013" (you may wish view )


Using SSH

From the PC, it may be possible to SSH to (username is root, no password)

If it is not possible on a new board (like my board) then this was the fix:

  1. Connect via the USB-Serial adapter
  2. /etc/init.d/dropbear stop (dropbear is the name of the SSH server software)
  3. cd /etc/dropbear/
  4. There will be a file in this folder
  5. rm dropbear_rsa_host_key
  6. /etc/init.d/dropbear start
  7. The dropbear_rsa_host_key will be recreated, and this time will be a few hundred bytes in size
  8. Now the SSH should work


Powering down the board

At the shell prompt, issue shutdown now to power down the board; otherwise you risk file system corruption.

There is a power button on the board, that  could issue this for an automatic shutdown if someone writes the code (the button is described in  the BBB SRM doc that can be found here).


Some shell and vi changes

To have a better shell:


vi /etc/passwd


edit the first line (the root user line) to say /bin/bash instead of /bin/sh

Then, issue a reboot command.



For me, the vi on the BBB behaved slightly different, but enough to make it uncomfortable for long use. I made these changes to suit personal tastes:

Make tabs equal to 2 columns instead of 8:

  1. Go to /usr/share/vim and edit the vimrc file there
  2. At the end of the file, add a new line with this content (including the colon):


:set ts=2


Disable the incsearch if you want traditional vi search behaviour (Otherwise, get used to pressing enter after a search):

Search for incsearch, and comment it out with a speech-mark at the beginning (i.e. " )

Disable the autoindent:

Search for autoindent and comment it out and comment out the else line above it too

Also, search for filetype plugin indent on and comment that line out too.


Setting the console width:


stty cols 100


Mounting file systems

Unusually the busybox version of mount is needed. Basically, this command worked:


cd mnt

mkdir shared

chmod 777 shared

busybox mount -o port=2049,nolock,proto=tcp -t nfs /mnt/shared


(where /volume1/shared is configured on your storage server and is the address of it). The -o part is necessary to get it to work.