-
Notifications
You must be signed in to change notification settings - Fork 0
Hardware and Software
The NI RoboRIO is the "brain" of every FRC robot. Our team ordinarily programs them in Java, though Python and C++ are also possible.
It is possible use off-the-shelf USB webcams to provide a live video feeds to the Driver Station. At the top of the RoboRIO are two USB-A host ports. When a webcam is plugged into these ports, it should be visible using the web interface.
- https://www.reddit.com/r/FRC/comments/5vflu5/usb_camera_not_showing_up_in_the_driver_station/
- https://forums.usfirst.org/forum/general-discussions/first-programs/first-robotics-competition/competition-discussion/programming-aa/labview-ae/15943-usb-camera-is-not-working-on-the-new-2017-firmware
Any software which the ESHS Robotics Club runs on systems other than the three primary laptops must be approved by the El Segundo High School's IT department. The team periodically produces and updates a list of the software it needs so that the IT department is aware of what we install and run.
Because this list of software caters to the needs of the design, building, and programming subteams, it includes a lot of software that can't be found or installed on standard-issue lab machines at the school.
-
Eclipse for Java and C++
- Required integrated development environment (IDE) for FRC programming. Includes a self-updating plugin infrastructure.
-
JDK
- The reference Java programming environment. We generally require a very recent version, if not the latest.
-
GitKraken
- A graphical user interface (GUI) for Git, free for non-commercial use.
- Driver station for FRC
- Official software. Required to interface with the RoboRIO, execute its deployed programs, obtain feedback from the RoboRIO, and to halt its operations.
-
Cygwin
- An open-source Linux-like programming and runtime environment for Windows. Includes a self-updating package manager with access to thousands of open-source programs.
-
FileZilla
- Cross-platform, open-source FTP and SSH file transfer client.
- CTRE library application
- Allows the installation of CTRELib, a library that is, as of 2017, necessary to interface with CANTalon motor controllers.
-
Putty
- An open-source SSH client.
-
RobotC
- Required IDE and software interface for compiling and uploading programs written in Robot C to VEX EDR Cortex microcontrollers.
-
Notepad++
- An open-source text editor for programmers. Includes a self-updating plugin infrastructure.
-
GNU Emacs
- An advanced open-source text editor for programmers which includes a terminal interface, extensive third-party libraries, and a self-updating plugin infrastructure.
-
WinMerge
- An open-source diffing and merging GUI.
-
Cmder
- A multi-tabbed terminal capable of running many simultaneous shells.
The programming team occasionally uses Linux for programming and testing subsets of the robot code. Our preferred Linux distributions vary depending on our needs, but have included in the past:
- ArchLinux
- Mageia
- Kubuntu (an Ubuntu variant)
- Linux Mint (an Ubuntu variant)
- Raspian (a build of Debian for Raspberry Pis)
- Ubuntu (a Debian variant)
Each of these Linux distributions is self-updating and includes a package manager with access to thousands of open-source programs.