RoveComm 1.0.16

dotnet add package RoveComm --version 1.0.16
                    
NuGet\Install-Package RoveComm -Version 1.0.16
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="RoveComm" Version="1.0.16" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="RoveComm" Version="1.0.16" />
                    
Directory.Packages.props
<PackageReference Include="RoveComm" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add RoveComm --version 1.0.16
                    
#r "nuget: RoveComm, 1.0.16"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package RoveComm@1.0.16
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=RoveComm&version=1.0.16
                    
Install as a Cake Addin
#tool nuget:?package=RoveComm&version=1.0.16
                    
Install as a Cake Tool

RoveComm C#

RoveComm is the communication protocol used by the Mars Rover Design Team (MRDT) at Missouri University of Science and Technology (Missouri S&T). Several implementations exist for RoveComm. This implementation was made to be used with the new BaseStation written in Blazor, though it will work with any .NET app.

Installation

To install through Visual Studio:

In Visual Studio, make sure you have your project selected in Solution Explorer, then navigate to Project > Manage NuGet Packages.... Go to Browse and search for "RoveComm". Click the down arrow next to the package version number. Click Apply.

To install with the dotnet CLI:

Open terminal and cd into your project directory. Run the following command to install the latest version:

dotnet add package RoveComm

If we need to migrate off the NuGet registry, we can also use GitHub Packages

Adding RoveComm to your Blazor App

In Program.cs, add the following:

using RoveComm;
builder.Services.AddRoveComm();

You can inject RoveComm into your razor pages and use it like so:

@inject RoveCommService _RoveComm
@using RoveComm

<h1>My Super Cool Application</h1>
<p>@_driveSpeeds</p>

@code
{
    private string _driveSpeeds = "";

    // Subscribe to packets containing floats with DataID 3100
    _RoveComm.On<float>(
            "Core",
            "DriveSpeeds",
            async (packet) => {
                _driveSpeeds = _string.Join(", ", packet.Data);
                await InvokeAsync(StateHasChanged);
            }
        );
}

Documentation

For further documentation of available methods, see TODO: set up Doxygen for RoveComm_CSharp.

You can see the list of boards and DataIDs in the RoveComm_Base Repo. If you need a new packet added for any reason, contact a software lead.

Using With GitHub Packages

To access the GitHub package registry, you will need Personal Access Token. Follow the instructions below to create a PAT:

  1. Navigate to github.com
  2. Click on your profile picture in the upper corner.
  3. Go to Settings.
  4. On the side bar, click Developer settings.
  5. On the side bar, expand Personal access tokens and select Tokens (classic).
  6. Click Generate new token > Generate new token (classic).
    1. Find and check the box next to read:packages.
    2. Put whatever you want in notes and expiration date.
    3. You can ignore the other settings.
  7. Scroll to the bottom and click Generate token.
  8. Copy the token and save it somewhere! Otherwise you will need to generate a new one!

Because this package is hosted on GitHub instead of on nuget.org, you must add an additional package source. This is most easily done with the dotnet CLI.

Add GitHub as a source and name it "mrdt" (only do this once):

dotnet nuget add source --username <USERNAME> --password <TOKEN> --store-password-in-clear-text --name mrdt "https://nuget.pkg.github.com/MissouriMRDT/index.json"

If you are using Visual Studio, you can manage your sources in Tools > NuGet Package Manager > Package Manager Settings > Package Sources.

For more information about GitHub NuGet packages, see the official documentation.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.16 201 4/23/2025
1.0.15 360 4/17/2025
1.0.14 216 4/13/2025
1.0.13 230 4/2/2025
1.0.11 199 4/2/2025
1.0.10 173 2/23/2025
1.0.9 147 2/21/2025
1.0.8 132 2/21/2025
1.0.7 167 2/16/2025
1.0.6 143 2/7/2025
1.0.5 141 2/6/2025
1.0.4 143 2/2/2025
1.0.3 140 1/30/2025
1.0.2 203 1/8/2025
1.0.1 96 1/8/2025
1.0.0 94 1/8/2025