ChapFCS - Field Control System
The ChapFCS is a table-top device (the "console")
based upon the Raspberry PI single-board computer. It is designed to be
the center-piece in a robotics competition field control system, driving both an external monitor and external amplified
speaker (specifically for FIRST FTC competitions). Match set-up and control are done through a combination of push-buttons and the integrated touch
screen, which is independent of the external monitor. The operator has start/stop control of the robots and
match at all times.
It preserves all of the benefits of the new FTC control system, while adding back in the safety, fairness, and team
performance features that were lost when the field control system was changed by FIRST.
labelOriginal Proposal
labelCode Base On Github
My Role and Responsibilities
Along with my team-mate, we were responsible for all aspects of the device.
We designed the system using the Raspberry PI, touch screen, and a bluebooth module.
We also designed the Android application that ran on the FTC robot controller.
Personally, I concentrated on the graphical user interface (GUI) for the device.
Although I contribued to the design of the android app as well.
Technologies
In this project I used the following technologies:
- Python
- Pygame
- Emacs
- Github
- Working with a partner
- Working with coding libraries
- Creating a state machine
- Designing and implementing a protocol with bluetooth
Console
Software
The Software for the console is written in python, and it employs the use of pygame libraries. The graphical interface uses many buttons and screens without the need for robustness so the use of python and pygame was appropriate. The most notable parts of the software are the screen class, the button class, and the match screen. The match screen is interesting because this is where the console empolys a large amount of its bluetooth capabilities, a wellcontructed and efficient user interface, and a state machine to control the match.
Hardware
The Hardware of the console includes the following:
- Raspberry PI Single Board Computer
- Buttons (chnage specifications later on the following)
- Touch screen
- Bluetooth Module


