FRC NetworkTables for .NET
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.vscode
gradle/wrapper
src
test
.gitattributes
.gitignore
.travis.yml
LICENSE.txt
NetworkTables.sln
Readme.md
appveyor.yml
build.cake
build.gradle
build.ps1
build.sh
gradlew
gradlew.bat

Readme.md

Build Status

Windows Linux/Mac Code Coverage NuGet NuGet (Core) NuGet (Core DesktopLibraries)
Build status Build Status codecov NuGet NuGet NuGet

NetworkTables is a DotNet implementation of the NetworkTables protocol commonly used in FRC. Currently implements v3 of the NetworkTables spec.

This repository contains two seperate release projects.

The first is NetworkTables, which is a complete port of the ntcore library from C++ to DotNet. This library is recommended for any clients that you wish to create, as the dependancies are very low, and supported by most platforms.

The second project is NetworkTables.Core. This is a wrapper around the official ntcore library. This means that the networking code has been tested more by the community, and is recommended for running on an FRC robot as the server.

Supported Platforms - NetworkTables

  • All systems that support the frameworks listed below
  • .NET 4.6 or higher
  • .NET Standard 1.3 or higher:
    • System.Net.NameResolution
    • System.ComponentModel.EventBasedAsync

Supported Platforms - NetworkTables.Core

  • .NET 4.5 or higher
  • .NET Standard 1.5
  • Since this uses a native library, only the platforms listed below are supported
    • Windows x86 and amd64
    • Linux x86 and amd64
    • Mac OS x86 and x86-64
    • RoboRio (Soft Float Arm v7) Note to be used on Desktop, you must install the FRC.NetworkTables.Core.DesktopLibraries package as well.

Installation

When you create a WPILib robot project using our VisualStudio extension, NetworkTables.Core will automatically be installed.

For new installs, see the badges at the top for NuGet packages.

Note that Xamarin requires 4.1.2 minimum in order to work directly from NuGet. If you require support for older versions, you need to download and manually use the .NET 4.6 library, as Xamarin by default will attempt to use the Net Standard build and then error on build. Note that only Android has been tested, but iOS should work without issue.

Building

License

See LICENSE.txt

Contributors

Thad House (@thadhouse)

ntcore

Peter Johnson (@peterjohnson) wrote the original ntcore library, which was heavily used to port to native