OCCRA
Go to Post remember kids, never listen to Big Mike.... - Mike Schroeder [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 Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 01-06-2016, 08:54 PM
Thad House Thad House is offline
Volunteer, WPILib Contributor
no team (Waiting for 2021)
Team Role: Mentor
 
Join Date: Feb 2011
Rookie Year: 2010
Location: Thousand Oaks, California
Posts: 1,143
Thad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond repute
Announcing RobotDotNet: DotNet for FRC

Just in time for the 2016 kickoff, we are happy to announce the initial release of RobotDotNet, a port of the FRC libraries to DotNet and C#. This port has been worked on over the past offseason, and has been thoroughly tested. Here's whats working so far.
  • WPILib: A full port of the WPILib to DotNet.
  • NetworkTablesCore: A port of NetworkTables using the new ntcore library from FIRST.
  • FRC Visual Studio Extension: An easy to use Visual Studio extension, including templates for creating new robot projects, and tools for deploying robot code and the runtime.

The WPILib has all the features you know from FIRST, in addition to some cool new features, including:
  • Attributed Command Model: A new way of creating Command-Based robots without all the boilerplate code normally required.
  • Full NavX MXP Support: Full NavX MXP support ported from the newest release from KauaiLabs.
  • Simulator Support: One of the coolest features. The backend of the code has extensive support for hardware simulation. We also provide a MonoGame template to enable you to create your own simulator. Documentation for this can be found on the Tutorials site.

In order to run on the RoboRIO, the newest version of Mono (4.2.1) has been compiled using NI's compilation tools.

Our documentation can be found at our website, which is located here.

Instructions for downloading the extension and the libraries can be found at the tutorials page. The extension is uploaded to the Visual Studio Gallery, and the library has been uploaded to NuGet for easy updating.

It has been an interesting project to take on, and I would like to thank some people:
  • Jeremy Koritzinsky, who helped with much of the porting and created the Attributed Command Model
  • Shockwave 4488, who let me borrow a robot for much of the offseason to test and make sure everything worked, in addition to porting previous robot code.
  • FIRST and WPI, for providing a great set of libraries to start from.
  • RobotPy, which was much of inspiration for the project, and was the starting base for the simulator support. In addition to some direct support from Dustin Spicuzza and Peter Johnson.
  • Microsoft, for creating an awesome language and set of tools, and providing them for free to the community.
  • Resharper, for their great refactoring tools which have helped clean up the codebase immensely.
__________________
All statements made are my own and not the feelings of any of my affiliated teams.
Teams 1510 and 2898 - Student 2010-2012
Team 4488 - Mentor 2013-2016
Co-developer of RobotDotNet, a .NET port of the WPILib.
  #2   Spotlight this post!  
Unread 01-07-2016, 10:08 AM
Vyrotek's Avatar
Vyrotek Vyrotek is offline
Registered User
AKA: Jason
FRC #0498 (Cobra Commanders)
Team Role: Mentor
 
Join Date: Jan 2002
Rookie Year: 2001
Location: Arizona
Posts: 34
Vyrotek is an unknown quantity at this point
Thumbs up Re: Announcing RobotDotNet: DotNet for FRC

Thank You!

I had just started to research if something like this existed. 14 years later I'm volunteering with my old team 498! I'm a C# developer these days so this will make it way more fun.
  #3   Spotlight this post!  
Unread 01-07-2016, 11:30 AM
droswell's Avatar
droswell droswell is offline
Registered User
FRC #2370 (iBots)
Team Role: Mentor
 
Join Date: Mar 2011
Rookie Year: 2009
Location: Rutland, VT
Posts: 95
droswell is a splendid one to beholddroswell is a splendid one to beholddroswell is a splendid one to beholddroswell is a splendid one to beholddroswell is a splendid one to beholddroswell is a splendid one to beholddroswell is a splendid one to behold
Re: Announcing RobotDotNet: DotNet for FRC

Very cool - We look forward to trying this out.

Thanks!
  #4   Spotlight this post!  
Unread 01-07-2016, 01:37 PM
Thad House Thad House is offline
Volunteer, WPILib Contributor
no team (Waiting for 2021)
Team Role: Mentor
 
Join Date: Feb 2011
Rookie Year: 2010
Location: Thousand Oaks, California
Posts: 1,143
Thad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond repute
Re: Announcing RobotDotNet: DotNet for FRC

One thing that I forgot to mention is that in addition to C#, Visual Basic works as well. The templates are not as great in VB, as I really don't know much, but I have done some basic testing as it does work. In addition, any language that runs on the .NET framework should run as well, so if you want to run F# you should be able to. You could also use IronPython, however RobotPy is a much better and supported python for FRC. Note however that languages other then C# and VB have not been tested.
__________________
All statements made are my own and not the feelings of any of my affiliated teams.
Teams 1510 and 2898 - Student 2010-2012
Team 4488 - Mentor 2013-2016
Co-developer of RobotDotNet, a .NET port of the WPILib.
  #5   Spotlight this post!  
Unread 01-14-2016, 11:22 AM
Thad House Thad House is offline
Volunteer, WPILib Contributor
no team (Waiting for 2021)
Team Role: Mentor
 
Join Date: Feb 2011
Rookie Year: 2010
Location: Thousand Oaks, California
Posts: 1,143
Thad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond repute
Re: Announcing RobotDotNet: DotNet for FRC

The first patch for 2016 has been pushed to NuGet. Here's what has changed:
  • Driver Station code has been updated. It uses a little more CPU by default, however uses much less CPU when using multiple joysticks. Also fixes a potential segfault when moving joystick order in the driver station.
  • Updates PIDController locking to make everything is thread safe.
  • Fixes gyro naming for SmartDasboard.
  • Fixes a few bugs in NavX.
You can see all the changes on github. You can also find instruction on how to upgrade your existing project here.
__________________
All statements made are my own and not the feelings of any of my affiliated teams.
Teams 1510 and 2898 - Student 2010-2012
Team 4488 - Mentor 2013-2016
Co-developer of RobotDotNet, a .NET port of the WPILib.
  #6   Spotlight this post!  
Unread 02-08-2016, 12:13 AM
Thad House Thad House is offline
Volunteer, WPILib Contributor
no team (Waiting for 2021)
Team Role: Mentor
 
Join Date: Feb 2011
Rookie Year: 2010
Location: Thousand Oaks, California
Posts: 1,143
Thad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond repute
Re: Announcing RobotDotNet: DotNet for FRC

New patches are available for both WPILib and NetworkTables. Here's whats changed.

WPILib
  • NavX I2C transfer limit removal, which greatly speeds up NavX code.
  • HAL updates, which should fix a bug where only PDP ID 0 would work.
  • Prints a distinctive message on bootup so teams know robot code has started correctly.
  • Fixes a bug in PIDTolerance.

You can see a list of everything that's changed in WPILib here.

NetworkTables
  • Fixes a few race conditions.
  • Does not always prepend a slash to the GetTable method anymore.
  • Better ArmV7 work, although this needs some documentation updates.
  • IRemoteConnectionListener changes, which will allow teams to get descriptive information about connected and disconnected remotes.
  • Native library extration changes which should allow multiple instances of NetworkTables at the same time.

You can see a list of everything that's changed in NetworkTables here.

You can find instructions for upgrading your existing projects here.
__________________
All statements made are my own and not the feelings of any of my affiliated teams.
Teams 1510 and 2898 - Student 2010-2012
Team 4488 - Mentor 2013-2016
Co-developer of RobotDotNet, a .NET port of the WPILib.
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 12:45 PM.

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