rowboat1
This is the repository for Brooklyn's Diamond Reef Explorer's autonomous underwater vehicle, Rowboat-1. The project is currently in its planning and design phase. If you'd like help out, no matter what your skills, join our meetup group at http://www.meetup.com/Tech-Tinkerers-NYC.
Dev Setup
Mac/Linux Setup
- Install VirtualBox from https://www.virtualbox.org/wiki/Downloads
- Install Vagrant from https://www.vagrantup.com
vagrant plugin install vagrant-vbguest
- Install Git from https://git-scm.com
- Checkout the project with Git
- Go to src directory
vagrant up
(this might take a few)vagrant ssh
/vagrant/base-install.sh
source ~/.bashrc
- If you’re new to ROS, follow the tutorials at http://wiki.ros.org/ROS/Tutorials
Windows Setup
- Install VirtualBox from https://www.virtualbox.org/wiki/Downloads
- Download Ubuntu 14.04 Desktop from http://www.ubuntu.com
- Create a new Linux 64-bit VM and follow the steps to install your downloaded Ubuntu image.
sudo apt-get install git
git clone https://github.com/Seanmatthews/rowboat1.git
- From the rowboat1/src/install directory, run
./base-install.sh
source ~/.bashrc
- The ROS tutorials: http://wiki.ros.org/ROS/Tutorials
Docker Image Automation
This project contains files relevent to the automated building of armhf (armv7) compatible Docker images. These images can be used for dev, build, test, and deploy to ensure a consistent user experience.
This solution combines:
- Host kernel support for binfmt misc
- qemu-arm-static
- Docker armhf images
Configure Host
NOTE: Assumes you have Docker up and running already.
apt-get update && apt-get install -y --no-install-recommends \
qemu-user-static \
binfmt-support
update-binfmts --enable qemu-arm
update-binfmts --display qemu-arm
Check this blog post for more detailed info about this.
Test Host Config
docker run --rm -it ubergarm/armhf-ubuntu:trusty uname -a
Build armhf Docker Image
From top level project directory.
docker build -t ubergarm/rowboat1 .
Run armhf Docker Image
docker run --rm -it ubergarm/rowboat1 /bin/bash
Update ubergarm base image
Pull the latest base image and add the qemu-arm-static binary.
docker pull ioft/armhf-ubuntu:trusty
CID=$(docker create --name trusty ioft/armhf-ubuntu:trusty)
docker cp /usr/bin/qemu-arm-static $CID:/usr/bin/qemu-arm-static
docker commit $CID ubergarm/armhf-ubuntu:trusty
docker push ubergarm/armhf-ubuntu:trusty
Contributing
Check us out at Diamond Reef Explorers