Kit software.
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
DevOps Pipeline fixes (#630) Oct 13, 2018
ansible-protos [RUNTIME] Shepherd Integration (#508) Feb 10, 2018
dawn Change "Runtime Error" to "General Error" (#656) Nov 15, 2018
docs Pipeline (#625) Oct 8, 2018
runtime Shepherd/sheet update (#653) Nov 10, 2018
shepherd Shepherd/sheet update (#653) Nov 10, 2018
.editorconfig editorconfig: Merge individual files (#376) Aug 2, 2017
.gitattributes Fixing Language Stats Breakdown (#488) Jan 25, 2018
.gitignore Shepherd/reduction (#626) Oct 19, 2018
.gitmodules Asynchronous Hibike (#633) Oct 14, 2018
.nvmrc Shepherd/sheet update (#653) Nov 10, 2018
.travis.yml Shepherd/sheet update (#653) Nov 10, 2018
Dockerfile Frankfurter Docker image (#606) Jul 21, 2018
LICENSE Pipeline (#625) Oct 8, 2018
makerelease Asynchronous Hibike (#633) Oct 14, 2018

Welcome to the PiE Central Repo!

PiE Logo

Build Status

What is the Central Repo?

PieCentral is the central repository that hosts all kit software projects:

  • Hibike: our lightweight communications protocol designed for passing sensor data with the PiE robotics kit.
  • Dawn: our cross-platform frontend for the PiE robotics control system.
  • Runtime: the code that handles communication, state, and student code execution.
  • DevOps: oversees the deployment pipeline from GitHub to Travis CI to Beaglebone boards.
  • Shepherd: our full-stack field control software used during the competition.

If you want to learn more about these projects, check out their directories!

Contributing to PieCentral

Note: You don't have to fork! Instead, make your own branch in the central repo once you join the organization.

Setting up PieCentral

$ cd "<directory of your choice>"
$ git clone
$ cd PieCentral

Creating a Branch

Follow the naming convention <project>/<feature>. Without the <project> name, your branch will not be built by Travis. Feel free to name the <feature> anything or use more slashes.

Examples: dawn/UDPintegration, runtime/andy/UDPintegration

$ git checkout master  # Switch to default `master` branch
$ git checkout -b "<project>/<feature>"  # Create and switch to feature branch
$ git push -u origin "<project>/<feature>"

Adding new code to master

Make sure any local changes to your code is pushed to your branch.

$ git add "<file1>" "<file2>"
$ git commit -m "<description>"
$ git push  # Pushes to `origin/<project>/<feature>` because of `-u` flag earlier

Open a pull request to master. Code will be reviewed by PMs.

Code will be rebased onto master. (Choose "Squash and Merge" instead of "Create a merge commit".) Make sure when merging your pull request you include a useful commit header and message.