commit | 61bdc608f02249c16394be9fcdb091f1d7c2b8c3 | [log] [tgz] |
---|---|---|
author | Austin Schuh <austin.linux@gmail.com> | Sun Dec 04 19:10:10 2016 -0800 |
committer | Austin Schuh <austin.linux@gmail.com> | Fri Dec 23 18:33:21 2016 -0800 |
tree | b050cd4104f515de5439e799f7c29c631c085162 | |
parent | 3970080eb24f8853556d4f05360a1cf33fc0f1d5 [diff] |
control loop timeout code now uses robot_state->outputs_enabled The outputs_enabled flag falls low as soon as the robot disables the outputs. They will stay at the last value that was commanded before it disables for 100 ms, but we can conservatively tell the robot that they are disabled at that point (since they practically are). Change-Id: I47f883591dbe2e3696d3958a0ce4281232a5f1e1
This is FRC Team 971's main code repository. There are README*
files throughout the source tree documenting specifics for their respective folders.
The main central location for our code is our Gerrit server at https://robotics.mvla.net/gerrit. To get a copy of the code on your computer to work with, follow these steps:
clone with commit-msg hook
command will save you trouble later.To learn more about git, see git(1) (man git
or git(1) (especially the NOTES section).
We want all code to at least have a second person look over it before it gets merged into the master
branch. Gerrit has extensive documentation on starting reviews. TL;DR: git push origin HEAD:refs/for/master
and then click on the link to add reviewers. If you just upload a change without adding any reviewers, it might sit around for a long time before anybody else notices it. git-review can make the upload process simpler.
The currently supported operating system for building the code is amd64 Debian Jessie. It is likely to work on any x86_64 GNU/Linux system, but that's not at all well-tested.
We use Bazel to build the code. Bazel has extensive docs and does a nice job with fast, correct increment rebuilds.
Steps to set up a computer to build the code: 0. Set up the required APT repositories: Download frc971.list and llvm.org.list and put them in /etc/apt/sources.list.d/
.
apt-get install python libpython-dev bazel ruby clang-format-3.5 clang-3.6 gfortran libblas-dev liblapack-dev python-scipy python-matplotlib
doc/frc971.conf
.Some useful Bazel commands:
bazel test //... -- $(cat NO_BUILD_AMD64) bazel build --cpu=roborio //... -- $(cat NO_BUILD_ROBORIO)
The NO_BUILD_{AMD64,ROBORIO} files contain lists of the targets which are intentionally not built for the various CPUs.
bazel build --cpu=roborio --compilation_mode=opt //y2015/...
bazel run --cpu=roborio --compilation_mode=opt //y2015:download roboRIO-971.local