FRC team 5584. Est. 2014

 

 

Follow Our Progress

Keep updated with the team by following our social media channels. For exciting highlights videos and robot reveals, be sure to subscribe to our YouTube channel!

Read more

 

Robocamps

Come and join us at one of our Robo Camp workshops! Held at three locations across the Eastern suburbs of Melbourne. Register on our website now!

Read more

 

Our Sponsors

The companies that support our team to run each season and are helping us promote a bright future for STEM in Australia. 

Read more

 

We will update notes during the season as we add more software components.

All changes to these notes need to be communicated to all members of the software team.

Notes are based on the instructions at wpiscreensteps, KauiLabs and CTRE, specifically:

  • https://wpilib.screenstepslive.com/s/currentCS/m/cpp/l/1027500-installing-c-and-java-development-tools-for-frc
  • https://wpilib.screenstepslive.com/s/currentCS/m/cpp/l/1027499-installing-the-frc-update-suite-all-languages
  • https://phoenix-documentation.readthedocs.io/en/latest/ch05_PrepWorkstation.html#what-to-download-and-why
  • https://phoenix-documentation.readthedocs.io/en/latest/ch05a_CppJava.html
  • https://pdocs.kauailabs.com/navx-mxp/software/roborio-libraries/c/

There are some different ways to work through these notes ...

  • If you want to just get VSCODE based IDE up and running then work through sections A + B + C + D
  • If you want to get VSCODE based IDE up and running and get an existing project working with third party libraries then work through sections A + B + E + F
  • If you have the time then work through sections A + B + C + D + E + F to build your confidence in the new VSCODE based IDE
  • If you want to install the FRC Update Suite see section G
  • If you need to add vendor library refer to section H
  • If you need to determine existing versions installed refer to section I or J
  • If you need to upgrade an existing instance then refer to section K

When you are ready to deploy and/or use the FRC Driver Station then you will need to install the FRC Updates from National Instruments - see section G to do this.

If you want to make use of KauiLabs libraries then refer to section H

NOTE: I recommend that you discard the code changes that we make here rather than commit them as they are just to verify the correct operation of the environment.

NOTE: I uninstalled all previous versions of National Instruments (NI), Cross the Road Electronics (CTRE), eclipse and Microsoft VSCode as well as MinGW, FRC Radio Config and WinPCAP tools before starting. Some of this was via the control panel and some via the command line. Depending on how many seasons and how you previously installed products on your PC this clean up may take some time. As well as the Windows "Add/Remove Programs" control panel, additional places to look for legacy files are:

  • C:\Users\<username>\wpilib
  • C:\Users\<username>\navx
  • C:\Users\<username>\ctre
  • C:\FRC
  • C:\Users\<username>\.eclipse
  • C:\Program Files\Eclipse
  • C:\ProgramData\chocolatey\lib
  • C:\ProgramData\chocolatey\lib-bad

NOTE: "elevated command prompt" is mentioned below, this means: (i) select windows icon at bottom left of screen; (ii) type "cmd"; (iii) right-click on "Command Prompt" and select "Run as administrator"; (iv) select "Yes" or provide credentials as requested. 

A: INSTALL VSCODE AND ASSOCIATED UTILS

1: Download WPILibInstaller_Windows64-2019.4.1.zip from https://github.com/wpilibsuite/allwpilib/releases

2: Save to local drive (e.g. C:\Temp) and unzip there

3: Check internet connection - new packages are downloaded as part of this process

4: In elevated command prompt . . . 

     cd C:\Temp

     WPILibInstaller_Windows64-2019.4.1.exe

5: Wait for a minute or two for a new window to pop up (yes, it takes ages on my PC)

6: Select "Select/Download VS Code"

7: Select "Select Existing Download" button and navigate to the downloaded file and then hit "open"

     (if you can't find this then you can select "Download" to reaquire the VSCode pato retrieve the "OfflineVsCodeFiles-1.30.1.zip" file)

     (this is saved in the same folder as the exe that we just ran)

8: The VScode options should now all be visible (i.e. no-longer greyed out)

9: Tick all boxes for the main components . . .  

     VScode

     C++ Compiler

     Gradle

     Java JDK/JRE

10: Tick all boxes for extensions and dependencies . . .

     Tools and Utilities

     WPILib Dependencies

     Visual Studio Code Extensions

11: Select "Execute Install"

12: When it is done, "Finished Use Desktop Icon to Open VS Code", select "OK".

13: Create "FRCCODE2019" shortcut on desktop with ...

     path = C:\Users\Public\frc2019\frccode\frccode2019.cmd

     icon = C:\Users\Public\frc2019\frccode

     run = minimised

 

B: INSTALL PHOENIX FRAMEWORK

1: Download CTRE Phoenix Framework v5.14.0.0.zip from http://www.ctr-electronics.com/downloads/installers

2: Save to local drive (e.g. C:\Temp) and unzip there

3: In elevated command prompt . . . 

     cd C:\Temp

     "CTRE Phoenix Framework v5.14.0.0.exe"

4: Select defaults to complete the install of "Lifeboat", "Phoenix Tuner" and "RoboRIO-FRC" -> "C++/Java"

5: Select "Finish" when completed, release notes will be displayed

     (for future reference, the release notes are installed to: C:\Users\Public\Documents\Cross The Road Electronics\RELEASE_NOTES.txt)

     (firmware is installed to: C:\Users\Public\Documents\FRC\...)

     (versioning available here: C:\Users\Public\Documents\Cross The Road Electronics\VERSION_NOTES)

6: Check for Phoenix.json at C:\Users\Public\frc2019\vendordeps\...

7: Check for phoenix files at C:\Users\Public\frc2019\maven\com\ctre\phoenix\...

 

C: TEST SETUP USING A BRAND NEW ROBOT PROJECT

1: Check internet connection - new packages are downloaded as part of this process

2: Double click on the frccode2019 short cut to open VSCode

3: Close "welcome" tab

4: CTRL+SHIFT+P

5: Select "WPILib: create a new project"

6: Select "Select a project type..." and choose "Template"

7: Select "Select a language" and choose "cpp"

8: Select "Select a project base" and choose "Timed Skeleton (Advanced)"

9: Enter path C:\scm\icrobotics\frc\software\cpp

10: Enter project name (e.g. 2019.Gerbils)

11: Enter team number 5584

12: Make sure "Create new folder is TICKED

13: Make sure "WPILib: Set Desktop Support" is UNTICKED

14: Select "Generate Project"

15: When prompted select "Yes (Current Window)"

16: You should observe "Executing task: gradlew generateVsCodeConfig ..." in the terminal window

17: Wait for "BUILD SUCESSFUL" to be reported there.

18: If there is a popup "Intellisense configurations ..." then select "Yes"

 

D: CHECK THAT WE CAN ADD 3RD PARTY LIBRARY (CTRE) OBJECTS TO THE NEW PROJECT

1: In VSCode, right-Click on “build.gradle” in the project tree, then select “Manage Vendor Libraries”.

2: Select “Install new libraries (offline)”.

3: TICK "CTRE Phoenix ..." then select OK

4: We need to add an object that actually uses it ;)

5: In Robot.cpp add ...

       #include "ctre/phoenix.h"

       TalonSRX srx = {0};

       ... after the #include "Robot.h"

6: In Robot.cpp add the fllowing to the top of the Robot::RobotInit method ...

     srx.Set(ControlMode::PercentOutput, 0);

7: NOTE: If Intellisense is still reporting issues then try : Closing all files in the project; Restarting VS Code; Waiting for ~40s; Reopen source files in VS Code

8: Lets try a build with CTRL+SHIFT+P

9: Select "WPILib: Buld Robot Code"

10: Wait for "BUILD SUCCESSFUL"

 

E: CHECK THAT WE CAN LOAD AND BUILD AN EXISTING PROJECT

1: Clone or pull latest IC code . . .

       cd /c/scm/icrobotics/frc

       git pull

     or . . . 

       cd /c/scm/icrobotics

       git clone https://github.com/icrobotics-team5584/frc.git

2: checkout known good baseline . . . 

     cd /c/scm/icrobotics/frc

     git checkout KURIOSITY_20190316_1713

3: Launch VSCode using "FRCCODE2019"

4: Select "File" > "Open Folder"

5: Navigate to c:\scm\icrobotics\frc\software\cpp\2019.kuiosity then select "Select Folder"

6: Terminal window will execute task "gradlew generateVsCodeConfig ..." and start the Gradle Daemon

7: Wait for "BUILD SUCCESSFUL"to be reported

 

F: CHECK THAT WE CAN ADD 3RD PARTY (CTRE) LIBRARY TO AN EXISTING PROJECT

(search for "TalonSRX" in the project, if it is found then the previous section has already proved that you can build a project with CTRE dependencies so you don't need to complete this section)

1: In VSCode, right-Click on “build.gradle” in the project tree, then select “Manage Vendor Libraries”.

2: Select “Install new libraries (offline)”.

3: TICK "CTRE Phoenix ..." then select OK

4: We need to add an object that actually uses it ;)

5: In Robot.cpp add ...

     #include "ctre/phoenix.h"

     TalonSRX srx = {0};

     ... after the #include "Robot.h"

6: In Robot.cpp add the fllowing to the top of the Robot::RobotInit method ...

     srx.Set(ControlMode::PercentOutput, 0);

7: NOTE: If Intellisense is still reporting issues then try : Closing all files in the project; Restarting VS Code; Waiting for ~40s; Reopen source files in VS Code

8: Lets try a build with CTRL+SHIFT+P

9: Select "WPILib: Build Robot Code"

10: Wait for "BUILD SUCCESSFUL"to be reported

 

G: INSTALLING THE NI FRC UPDATES

This installs the driver station etc

1: Download unencrypted package FRCUpdateSuite_2019.2.0.zip from http://www.ni.com/download/first-robotics-software-2017/7904/en/

2: Save to local drive (e.g. C:\Temp) and unzip there (e.g. right click on FRCUpdateSuite_2019.2.0.zip and select "7-zip" -> "Extract Files")

3: Check internet connection - license needs to be activated as part of this process

4: In elevated command prompt . . . 

     cd C:\Temp\FRCUpdateSuite_2019.2.0

     setup.exe

5: Select Next > Next

6: UNTICK the "Search ..." and select "Next"

7: Enter ...

   Full Name = FIRST ROBOTICS COMPETITION

   Organisation = Team 5584

   Serial Number = (ASK YOUR MENTOR FOR THIS CODE)

   ... and select "Next"

8: Accept license agreement and select "Next"

9: Accept license agreement and select "Next"

10: Wait a while :)

11: If prompted with "WARNING: Windows Firewall Might Be Enabled" select "Next"

12: In the "Installation Summary" window, TICK the "Run License Manager ..." and select "Finish"

13: The license manager window and NI credential popup will appear.

14: Either create an NI account and login (or ask someone who has one to login for you).

15: Select "Activate" then "Next" and "Close"

16: Restart PC

 

H: ADDING NAVX LIBRARIES TO EXISTING PROJECT

1: Download navx-mxp.zip (current version is 3.1.366) from https://pdocs.kauailabs.com/navx-mxp/software/roborio-libraries/c/

2: Save to local drive (e.g. C:\Temp) and unzip there

3: In elevated command prompt . . . 

     cd C:\Temp\navx-mxp

     setup.exe

4: If prompted with "Oracle Java v1.7 or newer ..." then select "Yes"

5: In the navx setup window select "Next" then "Install"

(For future reference: the C++ libraries for FRC are automatically installed into a local “maven” repository located at C:\Users\Public\frc2019\maven)

6: In VSCode, right-Click on “build.gradle” in the project tree, then select “Manage Vendor Libraries”.

7: Select “Install new libraries (offline)”.

8: TICK "KauiLabs_navX_FRC ..." then select OK

9: You can now add code that uses the navX libraries :)

 

I: CHECKING VERSIONS OF SOFTWARE INSTALLED MANUALLY

1: VSCODE VERSION INSTALLED - launch application and select "Help" > "About", check the "version" reported in the popup

2: VSCODE WPILIB EXTENSION VERSION IN USE - launch vscode and select "File" > "Preferences" > "Extensions", check the version listed in the "Enabled" list

3: NAVX LIBRARY VERSION IN USE - launch vscode, navigate to build.gradle file, right click and select "Manage Vendor Libraries" then "Manage Current Libraries" (at top of screen), check the version of library in use

4: NAVX LIBRARY VERSION INSTALLED - see "Control Panel" > "Programs and Features"

5: CTRE LIBRARY VERSION IN USE - launch vscode, navigate to build.gradle file, right click and select "Manage Vendor Libraries" then "Manage Current Libraries" (at top of screen), check the version of library in use

6: CTRE LIBRARY VERSION INSTALLED - see "Control Panel" > "Programs and Features"

7: FRC RADIO CONFIG TOOL VERSION INSTALLED - see "Control Panel" > "Programs and Features"

8: NI FRC UPDATE SUITE - this is made up of many parts - for jar files you need to check the content of the manifest.mf file - for exe files you need to check the version reported in the file properties

 

J: CHECKING VERSIONS OF SOFTWARE INSTALLED BY SCRIPT

An alternative to clicking madly around windows as described in the previous section you run the following script in a command prompt . . .

     cd C:\scm\icrobotics\frc\software\perl\utils\softwareinventory

     "c:\Program Files\Git\usr\bin\perl.exe" softwareinventory.pl

. . . this will report version information about the *.jar, *.exe and *.html files currently installed.

This is the output after the currient software baseline . . .

     $ "/c/Program Files/Git/usr/bin/perl.exe" softwareinventory.pl

     INFO: version information extracted from Windoze Software Inventory . . .

       CTRE Phoenix Framework: 5.14.0.0

       FRC Radio Configuration Utility: 19.1.1

       Java: 2.8.201.9

       WinPcap: 4.1.0.2980

       MobaXterm: 10.5.0.3582

     INFO: version information extracted from EXE files . . .

       FRC Driver Station: 19.0.0.49154

       FRC Gamepad Tool: 1.0.0.0

       FRC Dashboard: 19.0.0.49162

       roboRIO Imaging Tool: 19.0.0.49154

       Axis Camera Tool: 19.0.0.1

     INFO: version information extracted from JAR files . . .

       OnlineViewer: 2019.4.1

       PathWeaver: 2019.2.1

       RobotBuilder: 2019.4.1

       Shuffleboard: 2019.4.1

       SmartDashboard: 1.0

       ToolsUpdater: 1.0

     INFO: version information extracted from HTM files . . .

       FRC Documentation: 2019.4.1

 

K: UPGRADING SOFTWARE COMPONENTS

All of the following can be run from an elevated command prompt - search for "Command Prompt" then right click and select "Run As Administrator". In most cases you can install the new version without uninstalling previous version - there are some exceptions ...

1: To upgrade JAVA simply uninstall via "Control Panel" > "Programs and Features" then download new version (e.g. jre-8u201-windows-x64.exe) and run as administrator. This will install to C:\Program Files\Java\jre1.8.0_201.

2: To upgrade the installed CTRE LIBRARY you don't need to uninstall existing version. Simply download the new version (e.g. CTRE.Phoenix.Framework.v5.14.0.0.zip), unzip and run the exe as administrator.

3: You can now select the build.gradle file in the VSCODE project and then select "Manage Vendor Libraries" > "Check for updates (offline)" the new CTRE library version should be listed, tick and select "ok" to apply to the project.

4: To upgrade he installed NAVX LIBRARY you don't need to uninstall existing version. Simply download the new version (e.g. navx-mxp.zip), unzip and run the setup.exe as administrator.

5: You can now select the build.gradle file in the VSCODE project and then select "Manage Vendor Libraries" > "Check for updates (offline)" the new NAVX library version should be listed, tick and select "ok" to apply to the project.

6: To upgrade the VSCODE WPILIB EXTENSION download the WPILIB Installer (e.g. WPILibInstaller_Windows64-2019.4.1.zip) and extract. Run the exe as administrator. Select the "Select / Download VS Code" button then "select exisiting" and navigate to the previously downloaded OfflineVsCodeFiles-1.30.1.zip file then select "Execute Install". The next time you start VSCODE you will be prompted to upgrade the project to the new WPILIB EXTENSION version.

7: To upgrade FRC RADIO CONFIG TOOL version simply uninstall via "Control Panel" > "Programs and Features" then download new version (e.g. FRC_Radio_Configuration_19_1_1.zip), extract and run as administrator. This will install to  "c:\Program Files (x86)\FRC Radio Configuration Utility"

8: To upgrade NI FRC UPDATE SUITE download the package from NI website (e.g. ) and unzip then run the setup.exe as administrator. You will be prompted to search (UNTICK that) and for user details and serial number, use ...

     Full Name = FIRST ROBOTICS COMPETITION

     Organisation = Team 5584

     Serial Number = (ASK YOUR MENTOR FOR THIS CODE)