Go to Post John Abele certainly deserves much more recognition than he gets. - Richard Wallace [more]
Home
Go Back   Chief Delphi > Technical > Programming
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Reply
 
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 29-01-2017, 01:20
Oblarg Oblarg is offline
Registered User
AKA: Eli Barnett
FRC #0449 (The Blair Robot Project)
Team Role: Mentor
 
Join Date: Mar 2009
Rookie Year: 2008
Location: Philadelphia, PA
Posts: 1,116
Oblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond repute
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...
__________________
"Mmmmm, chain grease and aluminum shavings..."
"The breakfast of champions!"

Member, FRC Team 449: 2007-2010
Drive Mechanics Lead, FRC Team 449: 2009-2010
Alumnus/Technical Mentor, FRC Team 449: 2010-Present
Lead Technical Mentor, FRC Team 4464: 2012-2015
Technical Mentor, FRC Team 5830: 2015-2016
Reply With Quote
  #2   Spotlight this post!  
Unread 29-01-2017, 01:23
Jaci's Avatar
Jaci Jaci is offline
Registered User
AKA: Jaci R Brunning
FRC #5333 (Can't C# | OpenRIO)
Team Role: Mentor
 
Join Date: Jan 2015
Rookie Year: 2015
Location: Perth, Western Australia
Posts: 266
Jaci has a reputation beyond reputeJaci has a reputation beyond reputeJaci has a reputation beyond reputeJaci has a reputation beyond reputeJaci has a reputation beyond reputeJaci has a reputation beyond reputeJaci has a reputation beyond reputeJaci has a reputation beyond reputeJaci has a reputation beyond reputeJaci has a reputation beyond reputeJaci has a reputation beyond repute
Re: Is it required to use 2017 control system?

Quote:
Originally Posted by Oblarg View Post
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.
__________________
Jacinta R

Curtin FRC (5333+5663) : Mentor
5333 : Former [Captain | Programmer | Driver], Now Mentor
OpenRIO : Owner

Website | Twitter | Github
jaci.brunning@gmail.com
Reply With Quote
  #3   Spotlight this post!  
Unread 30-01-2017, 01:36
rich2202 rich2202 is offline
Registered User
FRC #2202 (BEAST Robotics)
Team Role: Mentor
 
Join Date: Jan 2012
Rookie Year: 2012
Location: Wisconsin
Posts: 1,279
rich2202 has a reputation beyond reputerich2202 has a reputation beyond reputerich2202 has a reputation beyond reputerich2202 has a reputation beyond reputerich2202 has a reputation beyond reputerich2202 has a reputation beyond reputerich2202 has a reputation beyond reputerich2202 has a reputation beyond reputerich2202 has a reputation beyond reputerich2202 has a reputation beyond reputerich2202 has a reputation beyond repute
Re: Is it required to use 2017 control system?

Quote:
Originally Posted by Oblarg View Post
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.
__________________

Reply With Quote
  #4   Spotlight this post!  
Unread 30-01-2017, 01:57
Oblarg Oblarg is offline
Registered User
AKA: Eli Barnett
FRC #0449 (The Blair Robot Project)
Team Role: Mentor
 
Join Date: Mar 2009
Rookie Year: 2008
Location: Philadelphia, PA
Posts: 1,116
Oblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond repute
Re: Is it required to use 2017 control system?

Quote:
Originally Posted by rich2202 View Post
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.
__________________
"Mmmmm, chain grease and aluminum shavings..."
"The breakfast of champions!"

Member, FRC Team 449: 2007-2010
Drive Mechanics Lead, FRC Team 449: 2009-2010
Alumnus/Technical Mentor, FRC Team 449: 2010-Present
Lead Technical Mentor, FRC Team 4464: 2012-2015
Technical Mentor, FRC Team 5830: 2015-2016
Reply With Quote
  #5   Spotlight this post!  
Unread 30-01-2017, 02:59
ollien ollien is online now
Registered User
FRC #5202
 
Join Date: Feb 2015
Location: United States
Posts: 343
ollien is just really niceollien is just really niceollien is just really niceollien is just really nice
Re: Is it required to use 2017 control system?

Quote:
Originally Posted by Oblarg View Post
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.
Reply With Quote
  #6   Spotlight this post!  
Unread 30-01-2017, 11:19
KPSch KPSch is offline
Registered User
AKA: Ken Schenke
FRC #1987 (Broncobots)
Team Role: Mentor
 
Join Date: Mar 2013
Rookie Year: 2013
Location: Lee's Summit, MO USA
Posts: 41
KPSch is a name known to allKPSch is a name known to allKPSch is a name known to allKPSch is a name known to allKPSch is a name known to allKPSch is a name known to all
Re: Is it required to use 2017 control system?

Quote:
Originally Posted by ollien View Post
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.
Reply With Quote
  #7   Spotlight this post!  
Unread 30-01-2017, 11:29
euhlmann's Avatar
euhlmann euhlmann is offline
CTO, Programmer
AKA: Erik Uhlmann
FRC #2877 (LigerBots)
Team Role: Leadership
 
Join Date: Dec 2015
Rookie Year: 2015
Location: United States
Posts: 404
euhlmann has much to be proud ofeuhlmann has much to be proud ofeuhlmann has much to be proud ofeuhlmann has much to be proud ofeuhlmann has much to be proud ofeuhlmann has much to be proud ofeuhlmann has much to be proud ofeuhlmann has much to be proud of
Re: Is it required to use 2017 control system?

Quote:
Originally Posted by KPSch View Post
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
__________________
Creator of SmartDashboard.js, an extensible nodejs/webkit replacement for SmartDashboard


https://ligerbots.org
Reply With Quote
  #8   Spotlight this post!  
Unread 30-01-2017, 12:38
KPSch KPSch is offline
Registered User
AKA: Ken Schenke
FRC #1987 (Broncobots)
Team Role: Mentor
 
Join Date: Mar 2013
Rookie Year: 2013
Location: Lee's Summit, MO USA
Posts: 41
KPSch is a name known to allKPSch is a name known to allKPSch is a name known to allKPSch is a name known to allKPSch is a name known to allKPSch is a name known to all
Re: Is it required to use 2017 control system?

Quote:
Originally Posted by euhlmann View Post
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.
Reply With Quote
  #9   Spotlight this post!  
Unread 30-01-2017, 13:10
Joe Ross's Avatar Unsung FIRST Hero
Joe Ross Joe Ross is offline
Registered User
FRC #0330 (Beachbots)
Team Role: Engineer
 
Join Date: Jun 2001
Rookie Year: 1997
Location: Los Angeles, CA
Posts: 8,602
Joe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond repute
Re: Is it required to use 2017 control system?

Quote:
Originally Posted by KPSch View Post
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?
Reply With Quote
  #10   Spotlight this post!  
Unread 30-01-2017, 13:14
bobbysq bobbysq is online now
Registered User
FRC #4646 (Team ASAP)
Team Role: Leadership
 
Join Date: Apr 2016
Rookie Year: 2015
Location: Des Moines, IA
Posts: 333
bobbysq has much to be proud ofbobbysq has much to be proud ofbobbysq has much to be proud ofbobbysq has much to be proud ofbobbysq has much to be proud ofbobbysq has much to be proud ofbobbysq has much to be proud ofbobbysq has much to be proud ofbobbysq has much to be proud ofbobbysq has much to be proud of
Re: Is it required to use 2017 control system?

Quote:
Originally Posted by Joe Ross View Post
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 )
Reply With Quote
  #11   Spotlight this post!  
Unread 30-01-2017, 15:56
MrRoboSteve MrRoboSteve is offline
Mentor
AKA: Steve Peterson
FRC #3081 (Kennedy RoboEagles)
Team Role: Mentor
 
Join Date: Mar 2012
Rookie Year: 2011
Location: Bloomington, MN
Posts: 582
MrRoboSteve has a reputation beyond reputeMrRoboSteve has a reputation beyond reputeMrRoboSteve has a reputation beyond reputeMrRoboSteve has a reputation beyond reputeMrRoboSteve has a reputation beyond reputeMrRoboSteve has a reputation beyond reputeMrRoboSteve has a reputation beyond reputeMrRoboSteve has a reputation beyond reputeMrRoboSteve has a reputation beyond reputeMrRoboSteve has a reputation beyond reputeMrRoboSteve has a reputation beyond repute
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.
__________________
2016-17 events: 10000 Lakes Regional, Northern Lights Regional, FTC Burnsville Qualifying Tournament

2011 - present · FRC 3081 Kennedy RoboEagles mentor
2013 - present · event volunteer at 10000 Lakes Regional, Northern Lights Regional, North Star Regional, Lake Superior Regional, Minnesota State Tournament, PNW District 4 Glacier Peak, MN FTC, CMP
http://twitter.com/MrRoboSteve · www.linkedin.com/in/speterson
Reply With Quote
  #12   Spotlight this post!  
Unread 30-01-2017, 17:35
KPSch KPSch is offline
Registered User
AKA: Ken Schenke
FRC #1987 (Broncobots)
Team Role: Mentor
 
Join Date: Mar 2013
Rookie Year: 2013
Location: Lee's Summit, MO USA
Posts: 41
KPSch is a name known to allKPSch is a name known to allKPSch is a name known to allKPSch is a name known to allKPSch is a name known to allKPSch is a name known to all
Re: Is it required to use 2017 control system?

Quote:
Originally Posted by Joe Ross View Post
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.

Last edited by KPSch : 30-01-2017 at 17:44.
Reply With Quote
  #13   Spotlight this post!  
Unread 30-01-2017, 12:46
wesleyac's Avatar
wesleyac wesleyac is offline
Registered Luser
AKA: Wesley Aptekar-Cassels
FRC #1678 (Citrus Circuits)
Team Role: Programmer
 
Join Date: Jan 2014
Rookie Year: 2013
Location: Davis, CA
Posts: 61
wesleyac is a splendid one to beholdwesleyac is a splendid one to beholdwesleyac is a splendid one to beholdwesleyac is a splendid one to beholdwesleyac is a splendid one to beholdwesleyac is a splendid one to beholdwesleyac is a splendid one to beholdwesleyac is a splendid one to behold
Re: Is it required to use 2017 control system?

Quote:
Originally Posted by Oblarg View Post
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 View Post
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.
__________________
Quote:
Originally Posted by The programming team
Define "works."
Reply With Quote
Reply


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


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

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


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