Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   Programming (http://www.chiefdelphi.com/forums/forumdisplay.php?f=51)
-   -   Is it required to use 2017 control system? (http://www.chiefdelphi.com/forums/showthread.php?t=154409)

RyZeRun 28-01-2017 20:51

Is it required to use 2017 control system?
 
I don't feel like reimaging the RoboRIO, installing other C++ stuff, etc.

DonRotolo 28-01-2017 20:52

Re: Is it required to use 2017 control system?
 
I dunno, take a look at this year's rules.

NShep98 28-01-2017 20:54

Re: Is it required to use 2017 control system?
 
Quote:

Originally Posted by RyZeRun (Post 1637602)
I don't feel like reimaging the RoboRIO, installing other C++ stuff, etc.

You are going to be in for a bad time, my friend.

cad321 28-01-2017 21:41

Re: Is it required to use 2017 control system?
 
Quote:

Originally Posted by RyZeRun (Post 1637602)
I don't feel like reimaging the RoboRIO, installing other C++ stuff, etc.

If re-imaging the roborio and installing some updates is too much work, you're in for a rather rude awakening when you see just how much more work is needed to make a functioning FRC robot in these 6 (now 3) weeks.

SamCarlberg 28-01-2017 22:21

Re: Is it required to use 2017 control system?
 
Quote:

Is it required to use 2017 control system?
Only if you want to compete in 2017.

Retired Starman 28-01-2017 23:06

Re: Is it required to use 2017 control system?
 
Sorry folks, but I can't pass this up. . .

Was this question posted by RyZeRun, or by LazyRun?

MikLast 28-01-2017 23:43

Re: Is it required to use 2017 control system?
 
If you do become interested in updating everything, 4513 is willing to help you guys. Feel free to message me and ill get something set up.

Oblarg 29-01-2017 01:20

Re: Is it required to use 2017 control system?
 
I will remark that it is highly inconvenient that you have to update everything to the 2017 versions during build season. Our team has recently moved to a persistent framework from which we build all our code, and updating all of our legacy code to work with the new versions of all the software is a huge job. It'd be lovely if this stuff could be released a few months earlier...

Jaci 29-01-2017 01:23

Re: Is it required to use 2017 control system?
 
Quote:

Originally Posted by Oblarg (Post 1637697)
I will remark that it is highly inconvenient that you have to update everything to the 2017 versions during build season. Our team has recently moved to a persistent framework from which we build all our code, and updating all of our legacy code to work with the new versions of all the software is a huge job. It'd be lovely if this stuff could be released a few months earlier...

You can access development versions of WPILib from their github page and from their maven.

If you want even more stuff, you can always apply to become a beta testing team.

fsilberberg 29-01-2017 12:13

Quote:

Originally Posted by Jaci (Post 1637698)
You can access development versions of WPILib from their github page and from their maven.

If you want even more stuff, you can always apply to become a beta testing team.

Remember that if you do, you must open source your code before the start of the new season, or it will not be legal to use during competition.

rich2202 30-01-2017 01:36

Re: Is it required to use 2017 control system?
 
Quote:

Originally Posted by Oblarg (Post 1637697)
updating all of our legacy code to work with the new versions of all the software is a huge job.

Hmmm.... I don't recall our team having to do much, if anything. What changed that requires updating legacy code?

I know when we went from crio to roborio, there was a big change. However, I don't recall our programmers complaining about code not running on updated roborios.

Oblarg 30-01-2017 01:57

Re: Is it required to use 2017 control system?
 
Quote:

Originally Posted by rich2202 (Post 1638005)
Hmmm.... I don't recall our team having to do much, if anything. What changed that requires updating legacy code?

I know when we went from crio to roborio, there was a big change. However, I don't recall our programmers complaining about code not running on updated roborios.

That's curious, because 2016 code pretty explicitly does not run on 2017 roborios for us. Lots of dependencies break.

ollien 30-01-2017 02:59

Re: Is it required to use 2017 control system?
 
Quote:

Originally Posted by Oblarg (Post 1638008)
That's curious, because 2016 code pretty explicitly does not run on 2017 roborios for us. Lots of dependencies break.

Should be mostly CANTalon and CameraServer dependencies, no? Those are easily fixed.

KPSch 30-01-2017 11:19

Re: Is it required to use 2017 control system?
 
Quote:

Originally Posted by ollien (Post 1638012)
Should be mostly CANTalon and CameraServer dependencies, no? Those are easily fixed.

For teams that use Command-Based C++, the changes are significant. Our team spent several frustrating hours getting a Command-Based C++ project built and running. The biggest hurdle was the fact that ScreenSteps has not been updated for 2017.

euhlmann 30-01-2017 11:29

Re: Is it required to use 2017 control system?
 
Quote:

Originally Posted by KPSch (Post 1638093)
For teams that use Command-Based C++, the changes are significant. Our team spent several frustrating hours getting a Command-Based C++ project built and running. The biggest hurdle was the fact that ScreenSteps has not been updated for 2017.

It has. http://wpilib.screenstepslive.com/s/4485

KPSch 30-01-2017 12:38

Re: Is it required to use 2017 control system?
 
Quote:

Originally Posted by euhlmann (Post 1638098)

In the section "Command Based Programming", the only page that has been modified in the last 18 months is the one titled "Simple subsystems" and all the code examples on that page are in Java (despite the fact that the page is in the C++ section).

Yes, the sections on installing were updated for 2017. My point is, I don't feel ScreenSteps does enough to explain how Command-Based changed so much with 2017. The core concepts are the same, but the implementation has changed quite a bit.

wesleyac 30-01-2017 12:46

Re: Is it required to use 2017 control system?
 
Quote:

Originally Posted by Oblarg (Post 1637697)
I will remark that it is highly inconvenient that you have to update everything to the 2017 versions during build season. Our team has recently moved to a persistent framework from which we build all our code, and updating all of our legacy code to work with the new versions of all the software is a huge job. It'd be lovely if this stuff could be released a few months earlier...

Quote:

Originally Posted by KPSch (Post 1638093)
For teams that use Command-Based C++, the changes are significant. Our team spent several frustrating hours getting a Command-Based C++ project built and running. The biggest hurdle was the fact that ScreenSteps has not been updated for 2017.

These are some of the (many) reasons that we abstract WPILib away from our code as much as we can. IMO other teams that want to reuse code year to year should probably try to do the same.

Updating WPILib and reflashing everything is still a pain, but it's much less so than if we did things the WPILib way of doing them.

Joe Ross 30-01-2017 13:10

Re: Is it required to use 2017 control system?
 
Quote:

Originally Posted by KPSch (Post 1638093)
For teams that use Command-Based C++, the changes are significant. Our team spent several frustrating hours getting a Command-Based C++ project built and running. The biggest hurdle was the fact that ScreenSteps has not been updated for 2017.

I believe the significant changes occurred prior to the 2016 season, not the 2017 season. Can you explain the changes you found this year that are causing issues?

bobbysq 30-01-2017 13:14

Re: Is it required to use 2017 control system?
 
Quote:

Originally Posted by Joe Ross (Post 1638139)
I believe the significant changes occurred prior to the 2016 season, not the 2017 season. Can you explain the changes you found this year that are causing issues?

Seconding this. We were a beta team and we had our command based code build perfectly, and it all went fine except for a minor non build related bug. (which is good since we couldn't find the beta porting guide :eek: )

MrRoboSteve 30-01-2017 15:56

Re: Is it required to use 2017 control system?
 
Here's the history on key command-based robot header files:

Command.h

CommandGroup.h

The change that would definitely break things at compile time is the namespace change. According to the commit message, it requires a one line change to fix.

Even in a large robot codebase, it's probably a 10 minute job to fix. Easier if you have a shared header file throughout your codebase -- for many teams that would be robotmap.h.

KPSch 30-01-2017 17:35

Re: Is it required to use 2017 control system?
 
Quote:

Originally Posted by Joe Ross (Post 1638139)
I believe the significant changes occurred prior to the 2016 season, not the 2017 season. Can you explain the changes you found this year that are causing issues?

Our team always uses the FRC Eclipse plugins to generate new command-based project as well as create new commands and subsystems. We feel reasonably sure we were careful and installed the 2017 plugins. However, the new project that got created would not even compile (with no changes made). New subsystems and commands don't compile either. It's possible we don't have the plugins installed correctly or are inadvertently using the 2016 versions. It's something we plan to double-check after we get some forward momentum after spending all of Saturday trying to get a simple project to drive the robot.

We finally were able to make some headway by making a quickie project with RobotBuilder. What it generated looks WAY WAY different from past years and from what the project wizard in Eclipse makes. RobotMap was the biggest change. It's no longer a simple header file, but a class with static member variables.

This is our team's fifth (or sixth) year using command based C++, so we certainly have some experience using it. I'm hoping we just accidentally reinstalled the 2016 plugins or something. That would explain a lot.


All times are GMT -5. The time now is 22:35.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi