Skip to content

bhyde/bbb

Repository files navigation

Intro

The scripts found here are intended to be run on a BeagleBone Black.

Feedback is welcome.

The scripts worked for me, at least once. But then I rewrote them.

What’s here so far…

  • How to power and hook up the network, since I use it headless
  • Suggestions on configuring your ssh
  • Installing: ntp (i.e. network time)
  • Installing: tmux, so you can disconnect and leave things running.
  • Installing: emacs (an editor). This is very slow.
  • Installing: ccl (a common lisp).

The git installed will not work with github. I haven’t addressed that issue yet. So, rather than clone these tools, get them as so:

curl --location --insecure https://github.com/bhyde/bbb/archive/master.zip | unzip -
cd bbb-master

Then you can run the scripts one as time.

bash -v install-ntp
bash -v install-tmux
bash -v install-git
bash -v install-emacs
bash -v install-ccl

The git install takes a while.

The linux on the board is Angstrom and it’s package manager is opkg. The default repository is very lean, so utils.sh has a bash function to add a better one. This is done prior to installing ccl or emacs.

Power, Network, and SSH

I use the board headless via ssh.

Power

Plug a micro USB cable into the board (below the internet connector), and into some USB power source. This will power up the board.

Network

Plug an Ethernet cable from the board into your LAN. Assuming your lan has DHCP the board will grab an IP.

Then puzzle out what the <ip> is. My LAN’s router has a web UI which will enumerate all connected devices. The beagle board identifies it’s self.

Aside: The doc suggets that you can use the USB cable for networking. but I wasn’t able to get that to happen for me. At least not on my Mac.

SSH

Use ssh to connect to the board: ssh root@<ip>, the password is ”, i.e. it’s blank. Create a .ssh/authorized_keys file on that board and place your usual ssh public key there.

On you laptop add this to ~/.ssh/config

host bbb
     hostname <ip-addr>
     user root

A this point you ought to be able to do: ssh bbb

The Install scripts

install-ntp, the network time daemon

This section is based on this post!

You really need to do this, since otherwise make won’t work.

install-tmux

tmux is a software terminal multiplexer, like screen, it’s useful when you want to have a long running process. Like building emacs from source.

install-git

The git found on the board is incompatible with github, so this script compiles one from scratch.

This also helps with the board’s confusion around certificate authorities. For example it tells curl where to find these certs.

It will copy default-gitconfig into ~root/.gitconfig, but you will have to adjust the user info in there. The config will also address the problem with certs.

install-emacs - an editor

This script pulls emacs from the added opkg repository.

install-ccl - a lisp

This section is based on this post!

This script needs svn, which it will fetch and install if necessary. It get’s it from the added opkg repository.

It takes about 30 minutes. It will:

  • recompile the ccl kernel for the ARM processor on the board, and
  • it will then rebuild the lisp side of things.
  • Into /usr/local/bin it installs armcl, and an alias lisp
  • Then it installs quicklisp, the slime helper, and modifies root’s .emacs.d/init.el

When that’s all done you should be able to do M-x slime in the emacs you build earlier.

Some Useful Links

About

Scripts for BeagleBone Black

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages