Skip to content
First AUV design + implementation
C++ CMake Shell Ruby
Branch: master
Clone or download
Latest commit 3fbd3bb Nov 28, 2016
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
src initial checkin Nov 28, 2016
.bash_profile Adds .bash_profile Nov 4, 2016
.dockersecret Adds encrypted circle vars Nov 11, 2016
.gitignore hides env variables Nov 11, 2016
.gitmodules Adds vision_opencv submodule Nov 3, 2016
.travis.yml Additional catkin options Nov 11, 2016
LICENSE
README.md Update README.md Nov 11, 2016
circle.yml Working circle CI Nov 12, 2016

README.md

rowboat1 Circle CI

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

  1. Install VirtualBox from https://www.virtualbox.org/wiki/Downloads
  2. Install Vagrant from https://www.vagrantup.com
  3. vagrant plugin install vagrant-vbguest
  4. Install Git from https://git-scm.com
  5. Checkout the project with Git
  6. Go to src directory
  7. vagrant up (this might take a few)
  8. vagrant ssh
  9. /vagrant/base-install.sh
  10. source ~/.bashrc
  11. If you’re new to ROS, follow the tutorials at http://wiki.ros.org/ROS/Tutorials

Windows Setup

  1. Install VirtualBox from https://www.virtualbox.org/wiki/Downloads
  2. Download Ubuntu 14.04 Desktop from http://www.ubuntu.com
  3. Create a new Linux 64-bit VM and follow the steps to install your downloaded Ubuntu image.
  4. sudo apt-get install git
  5. git clone https://github.com/Seanmatthews/rowboat1.git
  6. From the rowboat1/src/install directory, run ./base-install.sh
  7. source ~/.bashrc
  8. 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

You can’t perform that action at this time.