Go to Post This slow-motion intro... Canada is rubbing their match cycle efficiency in our faces :( - PayneTrain [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

 
Closed Thread
Thread Tools Rating: Thread Rating: 2 votes, 5.00 average. Display Modes
  #1   Spotlight this post!  
Unread 04-01-2014, 15:41
Kristofer Rye's Avatar
Kristofer Rye Kristofer Rye is offline
Registered User
FRC #2503 (Brainerd Warrior Robotics)
Team Role: Programmer
 
Join Date: Jan 2014
Rookie Year: 2008
Location: Baxter, Minnesota
Posts: 2
Kristofer Rye is an unknown quantity at this point
Question Using C (and Linux!) for Programming (and interfacing with FMS, etc.)

This year is the first year that I'll be programming a FRC robot (one from a previous season, and for experimental purposes). The main problem with our existing system is that we use Windows for programming our robot. That works fine, and I think for the next season or so we'll keep using it, but we'd like to transition to a more "free" alternative. Rather than paying money for LabVIEW, we'd like to be able to program our robot using C (and any command-line tools), a text editor, and Linux. We've heard of the WPI library, but there doesn't seem to be a C version (or, at least, I haven't heard of it working in C).

I'm sure we'd be fine with using the Driver Station software that is provided, but beyond that we'd like to shy away from graphical utilities and use text editors and command-line compilers.

Does anyone have any level of experience with this kind of stuff in competition? Is it possible that we could get everything interfacing nicely with the FMS and the Driver Station? Do you have any helpful tips or examples? Thanks a bunch.
  #2   Spotlight this post!  
Unread 04-01-2014, 16:51
Ginto8's Avatar
Ginto8 Ginto8 is offline
Programming Lead
AKA: Joe Doyle
FRC #2729 (Storm)
Team Role: Programmer
 
Join Date: Oct 2010
Rookie Year: 2010
Location: Marlton, NJ
Posts: 174
Ginto8 is a glorious beacon of lightGinto8 is a glorious beacon of lightGinto8 is a glorious beacon of lightGinto8 is a glorious beacon of lightGinto8 is a glorious beacon of light
Re: Using C (and Linux!) for Programming (and interfacing with FMS, etc.)

If you decide to use Java, all the build tools (ie. netbeans with ant integrated) are free and cross-platform, and you should be able to build & deploy on the command line with ant once you create the project and the corresponding build.xml with netbeans. I would certainly like to be able to use Linux (and vim especially), but trying to get the Driver Station working on any OS but Windows is more effort than I'm willing to apply, for little actual gain.
__________________
I code stuff.
  #3   Spotlight this post!  
Unread 04-01-2014, 17:14
aryker's Avatar
aryker aryker is offline
Registered User
FRC #0868 (TechHOUNDS)
Team Role: Mentor
 
Join Date: Jan 2013
Rookie Year: 2008
Location: United States
Posts: 80
aryker will become famous soon enougharyker will become famous soon enough
Re: Using C (and Linux!) for Programming (and interfacing with FMS, etc.)

We use Java on Linux every year to program our robot, and it works perfectly fine. I doubt that you would be able to get C to play nice without some fairly in-depth changes, and I'm not sure those would be legal anyway. If you are looking to move towards free and open-source options, Java on Linux is a good choice.
  #4   Spotlight this post!  
Unread 04-01-2014, 18:58
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: Using C (and Linux!) for Programming (and interfacing with FMS, etc.)

Using the standard toolchain increases the number of people who can help you if you have problems, particularly if you need programming help at a regional. Netbeans on Linux would likely be familiar enough that you'd be able to get help.

I think it's cumbersome to need two computer to test robot code, but that's a personal decision.

Don't expect any support for running the driver station on anything but Win7 or Win8/8.1.
__________________
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
  #5   Spotlight this post!  
Unread 04-01-2014, 19:04
cgmv123's Avatar
cgmv123 cgmv123 is offline
FRC RI/FLL Field Manager
AKA: Max Vrany
FRC #1306 (BadgerBOTS)
Team Role: College Student
 
Join Date: Jan 2011
Rookie Year: 2011
Location: Madison, WI
Posts: 2,089
cgmv123 has a reputation beyond reputecgmv123 has a reputation beyond reputecgmv123 has a reputation beyond reputecgmv123 has a reputation beyond reputecgmv123 has a reputation beyond reputecgmv123 has a reputation beyond reputecgmv123 has a reputation beyond reputecgmv123 has a reputation beyond reputecgmv123 has a reputation beyond reputecgmv123 has a reputation beyond reputecgmv123 has a reputation beyond repute
Re: Using C (and Linux!) for Programming (and interfacing with FMS, etc.)

Quote:
Originally Posted by stevep001 View Post
Don't expect any support for running the driver station on anything but Win7 or Win8/8.1.
You get Windows 7 in the Classmate image, but it only works on the Classmate.
__________________
BadgerBOTS Robotics|@team1306|Facebook: BadgerBOTS
2016 FIRST Championship Tesla Division | 2016 Wisconsin Regional Engineering Inspiration Award

2015 FIRST Championship Carson Division | 2015 Wisconsin Regional Chairman's Award

2013 FIRST Championship Curie Division | 2013 Wisconsin Regional Chairman's Award

2012 FIRST Championship Archimedes Division | 2012 Wisconsin Regional Engineering Inspiration Award, Woodie Flowers Finalist Award (Lead Mentor Ben Senson)

  #6   Spotlight this post!  
Unread 04-01-2014, 20:22
nyaculak nyaculak is offline
Registered User
FRC #0053 (Area 53)
Team Role: Programmer
 
Join Date: Oct 2011
Rookie Year: 2011
Location: Maryland
Posts: 28
nyaculak will become famous soon enough
Re: Using C (and Linux!) for Programming (and interfacing with FMS, etc.)

Have you checked out ucpp before? I've never used it, but I've heard of teams using it in the past. It's supposed to let you compile and deploy from a linux command line in C++. Here's the Github Repo.
__________________
2013 MUC DC 3rd Place, FRC DC Regional, FRC Chesapeake Regional
2012 FRC DC Regional, FRC Chesapeake Regional
ERHS Robotics Club
- FRC Team 53 "Area 53"
www.erhsroboticsclub.org
  #7   Spotlight this post!  
Unread 04-01-2014, 20:33
virtuald's Avatar
virtuald virtuald is offline
RobotPy Guy
AKA: Dustin Spicuzza
FRC #1418 (), FRC #1973, FRC #4796, FRC #6367 ()
Team Role: Mentor
 
Join Date: Dec 2008
Rookie Year: 2003
Location: Boston, MA
Posts: 1,102
virtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant future
Re: Using C (and Linux!) for Programming (and interfacing with FMS, etc.)

GCC 4.8 has been ported to vxWorks and there's a cross compiler for linux, and you can build C++ programs for the cRio using that toolchain. Check out this thread, or this site.

I created a linux-based VM that you can build to build stuff using this toolchain on: https://github.com/virtuald/frc-gcc-vm
__________________
Maintainer of RobotPy - Python for FRC
Creator of pyfrc (Robot Simulator + utilities for Python) and pynetworktables/pynetworktables2js (NetworkTables for Python & Javascript)

2017 Season: Teams #1973, #4796, #6369
Team #1418 (remote mentor): Newton Quarterfinalists, 2016 Chesapeake District Champion, 2x Innovation in Control award, 2x district event winner
Team #1418: 2015 DC Regional Innovation In Control Award, #2 seed; 2014 VA Industrial Design Award; 2014 Finalists in DC & VA
Team #2423: 2012 & 2013 Boston Regional Innovation in Control Award


Resources: FIRSTWiki (relaunched!) | My Software Stuff
  #8   Spotlight this post!  
Unread 07-01-2014, 09:12
Alan Anderson's Avatar
Alan Anderson Alan Anderson is offline
Software Architect
FRC #0045 (TechnoKats)
Team Role: Mentor
 
Join Date: Feb 2004
Rookie Year: 2004
Location: Kokomo, Indiana
Posts: 9,113
Alan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond repute
Re: Using C (and Linux!) for Programming (and interfacing with FMS, etc.)

Quote:
Originally Posted by Kristofer Rye View Post
Rather than paying money for LabVIEW, we'd like to be able to program our robot using C (and any command-line tools), a text editor, and Linux. We've heard of the WPI library, but there doesn't seem to be a C version (or, at least, I haven't heard of it working in C).
You don't have to pay anything for LabVIEW (besides what you already did in order to participate in FRC). You receive both LabVIEW and the WindRiver C programming environment in the Kit of Parts. The WPI library is provided with interfaces for LabVIEW, C/C++, and Java.

Many of the important programs you will need are available only as Windows executable files. It take extreme effort to avoid Windows in FRC, and it is literally against the rules not to use it during a match. Since money for LabVIEW isn't an issue, what is your real reason for wanting to dump Windows (which you admit is working fine for you)?
Closed Thread


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 03:35.

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