From 1511Wookiee
Jump to navigationJump to search

Overall Concept


Design Info


  • The Laptop: 6.12 lbs.
  • The Metal Base with Controls: 5.09 lbs. x2
  • The Controller (as PS5 or Xbox): 0.5 lbs. x2
  • The Suitcase: 7.3 lbs.
  • Everything will sum up to about 17.3 lbs. (if you add plus one more metal base and one more controller)

Part Information

Measurements for switches

Arduino Pinout

LED lights ideas

  • The question marks mean that the driver or the team would decide what they would want.
  • Note for combo 3, black isn't possible without turning an led off
Combo 1
Combo 2
Combo 3
LED Flowchart (2 Dials)
LED Flowchart (2 Dials)

Broken switches controls layout (CAD)

Leds revised
Leds revised

alt=|none|thumb File:Controls v6.5 layout alternate.ipt

Controls Assignments






To Do

Hot List for Championships

  • Fix zipper
  • Come up with a better way to close/secure the controls
  • Come up with a better storage method for the controllers so that the cables don't break
  • Test USB extension cables, replace them if they are faulty
  • Determine if we need a new/better USB hub
  • Make sure all items (power supply, USB hub) are secured and cables are retained properly
  • Make sure laptop doesn't reboot after resume from sleep
  • Determine if better laptop ventilation is required to prevent overheating
  • Fix any broken wires

Not Started

  • Figure out the power connector for the display, where does it connect into.
  • Replace controller cables with the 6' ones that were ordered.
  • Put dial covers back on.
  • Fix pocket on the laptop side.
  • Add LED lights.
  • Determine whether zipping is easy or not and improve if required.
  • Choose LED patterns
  • Servo patterns?

In Process

  • Wire Arduino Board
    • Display
    • Servos
    • Big buttons
      • Need to determine wiring for the LEDs on these buttons.
    • Potentiometers
    • Big switch
    • Button LED power
    • LED lighting
  • Coding for Bling


  • (Noah) Understand how Arduino will work
    • Come up with pinout
    • How to talk to the display
  • Make longer ribbon cable for display.
  • Finish dial graphics, send to Eric to print and laminate.
  • Add a channel/hole for routing wires from the laptop to aux controls side of the suitcase.
  • Mount power supply for laptop
  • Mount USB hub.
  • Improve case closing and zipper.
  • Figure out holding method for controllers.
  • Come up with color scheme for the case as well as the aux and laptop panels
  • Make clear covers for the dials
  • Split the suitcase and modify so that the halves lay side by side
  • Figure out how the suitcase will be closed if we remove the existing hinge. Will we be able to modify the zipper, will we need to add latches, etc. Need to brainstorm/think about this. We may need to add a cable/chain to keep the two halves together so strain is not placed on the wires that will need to run between the two halves.
  • We have an idea, split the suitcase where the "expanding" section is. If we can find a zipper insertion pin and zipper end we can add these so that the zipper can be zippered back up.
  • (Colin) Create models for flight instruments, these models should be submitted for 3D printing when they are complete.
  • Create models for dials (may be updating existing model). Note that the two dials have different shaft sizes so we may need two different models even if the basic design is the same. These should have official part numbers.
  • Finish the models of the computer/aux controls
    • Update CAD for new servos (Hitec)
    • Add holes in both laptop and aux brackets (4 in a rectangle roughly 5" x 3") for standoffs to hold boards for electronics. Same size standoffs as the servos.
      • Arduino is ~ 3.2" x 2.2"; there is a simple CAD of the size, not including any perf board; looks like it would fit between the pots (shortest path to pots)
      • UDB board is ~1.5" x 3.5"; have an old perf board that is 3.5" x 6.75"; there is a simple CAD of that size; looks like it would fit between servos (shortest path for button wires).
    • Figure out mounting for display. May just have to make the rectangular cutout a little smaller and mount the display on the top. See if we can find detailed dimensions of the holes or download 3D model if possible.
    • Create shop drawings for the two pieces.
  • Put the LED dot-matrix on the shopping list
  • How to control the servos - the current one did work with Arduino, will need to use Hitec
  • How to control the programmable LEDs
  • Add holes for the servo standoffs
  • Need to order longer USB cables for PS4/PS5 controller (Amazon.com: 2 Pack 10FT PS5 USB C Cord)
  • Need to order PS4/PS5 controller (PS4 controller)
  • At diner prepare to present the model and explain everything to the people. Answer peoples questions if they have any. take in notes on comments or what they think we should add.
  • Using PS4/PS5 (or Xbox if PS not possible) for primary driver [was confirmed with Isaac on 1/15/22]
  • PS4/PS5 control works with Windows 10 (PS4 to PC; PS5 to PC)
  • If you haven't before check out the controls in the closet.
  • Brainstorm themes/concepts, be ready Saturday to share.
  • Research joysticks.
  • If we are going to do a swerve drive we need to understand how it will be controlled.
  • Keep finding switches we are going to use look over what we have in the shop put them in a separate box so we know we have to use them, such as collecting data sheets and measurements. Put them in the wiki.
  • After we present(didn't present yet), we should give the suitcase back to Niccole, and put the pieces inside back in place.
  • Updated sheet metal to 0.092" thickness on both models.

Useful Links

PSoC Creator IDE

Toolkits and Board Driver Install

  • Get controls2019 from SVN
  • Run: vcredist_x86.exe
  • Run: USBSerialSDKSetup.exe (do Typical install; at end run Updater and maek sure you have the latest stuff)
  • Run: CY8CKIT04942xxSetupOnlyPackage_revSA.exe (do Typical install; at end run Updater and make sure you have the latest stuff)
  • While you press and hold the SW1 Prog button on the cypress board, plug in the USB cable to the PC (it will take a while for it to install 5 drivers).


  • Open PSoC Creator (Start -> Programs -> Cypress -> PSoC Creator -> PSoC Creator)
  • Open project: File -> Open -> Project/Workspace; then browse to Desktop/FRC2020/trunk/controls/SCB_Bootloader/SCB_Bootloader.cywrk)
  • Build project: Build -> Build All Projects
  • While you press and hold the SW1 Prog button on the cypress board, plug in the USB cable to the PC
  • Download Boot Loader:
  • open programmer: Tools -> Bootloader Host
  • set 'File' to C:\Users\Robotics\Desktop\FRC2020\trunk\controls\SCB_Bootloader\Bootloadable Blinking LED.cydsn\CortexM0\ARM_GCC_541\Debug\Bootloadable Blinking LED.cyacd
  • select the com port for the cypress board
  • set Baud to 115200; Data Bits 8; Stop Bits 1; Parity None
  • download program: Actions -> Program

Meeting Minutes


Attendees: Colin, Sam, Olga, Mr. Byers

Work Completed:

  • confirmed primary controller
  • looked at controls from prior years
  • sketching concepts


Attendees: Colin, Sam, Olga, Noah, Eric.

Work Completed:

  • Found suitcase
  • Found way to make suitcase work
  • confirmed that we are using two controllers ( probably ps5 )
  • Worked out design
  • Got measurements
  • Started CAD work
  • measured buttons


Attendees: Colin, Sam, Eric, Noah, Tanner

Work Completed:

  • Basic design for control plate made in CAD.


Attendees: Tanner, Sam, Colin

Work Completed

  • We found out that we don't actually need to control the shooter speed (we no longer need an analog dial)
  • Since we now have an extra dial space, we are considering using 2 dials to control the lights (ex. one for patterns, one for solid colors)
  • We found out that we should have 5 broker switches and 15 broker buttons
  • Basic design for computer holder panel made.


Attendees: Sam, Olga

Work Completed:

  • Created a "flowchart" of how the LED dials could work
  • Changed the number of broke buttons on the CAD model from 10 to 15


Attendees: Colin, Noah, Sam, Olga, Eric, Byers

Work Completed:

  • Found and modified the Detailed CAD model of the controls (added holes for buttons, servos, and switches)
  • Found a datasheet and link for the rotary switch
  • made a to-buy list
  • Measured Servos (math)


Attendees: Sam, Colin, Olga, Noah

Work Completed:

  • Made CAD models for buttons/switches and tested (in an assembly file) to see if they fit in the detailed CAD model of the control panel
  • Tested some software stuff for the LED dot-matrix


Attendees: Colin, Sam, Olga

Work Completed:

  • Continued to make CAD models for buttons/switches and tested (in an assembly file) to see if they fit in the detailed CAD model of the control panel


Attendees: Sam, Colin

  • Work Completed: Finished detailed CAD models of the square buttons and red switch (they fit in the aux controls)
  • Made a weighted-analysis chart for options for airflow shape
  • Made a CAD model of a background for a servos


Attendees: Sam, Noah, Colin

Work Completed:

  • Tested LEDs
  • Assembled the dial frames in the aux controls assembly
  • Unboxed some parts that came in the mail


Attendees: Sam, Noah, Byers

Work Completed:

  • Programming
  • straightened out controls drawer.
  • tested PS4 controller with Dashboard - it works! No special drivers needed at all.
  • Determined relative sizes for USB and Arduino boards.
  • Created a LED test board for Noah (Noah will borrow bread board, servos, LED test board)


Attendees: Colin, Eric, Noah, Sam

Work Completed:

  • LEDs Programming
  • Made/finished a Shop Drawing of the laptop bracket
  • Edited the Sheetmetal cads to be more accurate
  • Completed finished Shop drawing of AUX Controls
  • Put in all holes for boards.


Attendees: Noah, Sam

Work Completed:

  • Planed out ideas for suitcase
  • received equimpment
  • Arduino pinout talked about


Attendees: Colin

Work Completed:



Work Completed:


Attendees: Noah, Byers

Work Completed:

  • pinout of Arduino
  • Started to think about display ideas
  • created a test broken switches board (so programmers have something while being able to work on controls)
  • created perf board, that goes between servos, for the Arduino; also mounted Arduino



Work Completed:


Attendees: Sam, Noah

Work Completed: obtained the LED-dot matrix


Attendees: Sam, Noah, Colin, Eric

Work Completed:

  • Finalized the Drive, Aux, and Hang Aux (Manual) controller button mapping concepts by meeting with members of other sub-teams
  • Did some programming with the LED-dot matrix.


Attendees: Colin

Work Completed: 3D models made in CAD, 3D printed, and STL files made.


Attendees: Sam, Colin

Work Completed: Metal from Harris came in.

Adjusted AUX metal to fit in case.

spray painted 3D parts and metal.

Wired buttons and board.


Attendees: Colin

Work Completed: Wired buttons

Tested buttons on bottom left of AUX panel: All work except furthest left broken switch.


Attendees: Sam, Noah, Olga, Colin, Tanner

Work Completed: Fixed broken broken switch.

Wired buttons.

Started second Arduino.


Attendees: Sam, Colin, Tanner, Noah

Work Completed: Adjusted AUX board to have side cable slot.

Board was worked on.

Tanner had the idea to put holes along the side of the plastic suitcase and put LEDS inside. Like the 2020 Star Wars controls.

Dimensions for Attitude indicator display found.


Attendees: Sam, Olga

Work Completed:


Attendees: Colin, Sam

Work Completed:



Work Completed:

Controls Rules

9.9 OPERATOR CONSOLE R901 *Use the specified Driver Station Software. The Driver Station Software provided by National Instruments (install instructions found here) is the only application permitted to specify and communicate the operating mode (i.e. AUTO/TELEOP) and operating state (Enable/Disable) to the ROBOT. The Driver Station Software must be version 22.0 or newer.

Teams are permitted to use a portable computing device of their choice (laptop computer, tablet, etc.) to host the Driver Station Software while participating in MATCHES.

R902 *The OPERATOR CONSOLE must have a visible display. The OPERATOR CONSOLE, the set of COMPONENTS and MECHANISMS used by the DRIVERS and/or HUMAN PLAYERS to relay commands to the ROBOT, must include a graphic display to present the Driver Station Software diagnostic information. It must be positioned within the OPERATOR CONSOLE so that the screen display can be clearly seen during inspection and in a MATCH.

R903 *Connect FMS Ethernet directly to the OPERATOR CONSOLE. Devices hosting the Driver Station Software must only interface with the FMS via the Ethernet cable provided at the DRIVER STATION (e.g. not through a switch). Teams may connect the FMS Ethernet cable to the device running the Driver Station Software directly via an Ethernet pigtail, or with a single-port Ethernet converter (e.g. docking station, USB-Ethernet converter, Thunderbolt-Ethernet converter, etc.). The Ethernet port on the OPERATOR CONSOLE must be easily and quickly accessible.

Teams are strongly encouraged to use pigtails on the Ethernet port used to connect to the FMS. Such pigtails will reduce wear and tear on the device’s port and, with proper strain relief employed, will protect the port from accidental damage.

R904 *OPERATOR CONSOLE physical requirements. The OPERATOR CONSOLE must not A. be longer than 5 ft. (~152 cm), B. be deeper than 1 ft. 2 in. (~35 cm) (excluding any items that are held or worn by the DRIVERS during the MATCH), C. extend more than 6 ft. 6 in. (~198 cm) above the floor, or D. attach to the FIELD (except as permitted by G301).

There is a 4 ft. 6 in. (~137 cm) long by 2 in. (nominal) wide strip of hook-and-loop tape (“loop” side) along the center of the DRIVER STATION support shelf that should be used to secure the OPERATOR CONSOLE to the shelf, per G301. See DRIVER STATION for details.

Please note that while there is no hard weight limit, OPERATOR CONSOLES that weigh more than 30 lbs. (~13 kg.) will invite extra scrutiny as they are likely to present unsafe circumstances.

R905 *FIELD wireless only. Other than the system provided by the FIELD, no other form of wireless communications shall be used to communicate to, from, or within the OPERATOR CONSOLE.

Examples of prohibited wireless systems include, but are not limited to, active wireless network cards and Bluetooth devices. For the case of the FIRST Robotics Competition, a motion sensing input device (e.g. Microsoft Kinect) is not considered wireless communication and is allowed.

R906 *No unsafe OPERATOR CONSOLES. OPERATOR CONSOLES shall not be made using hazardous materials, be unsafe, cause an unsafe condition, or interfere with other DRIVE TEAMS or the operation of other ROBOTS.