EssyBusBLDCMotorController 1.0.1
See the version list below for details.
dotnet add package EssyBusBLDCMotorController --version 1.0.1
NuGet\Install-Package EssyBusBLDCMotorController -Version 1.0.1
<PackageReference Include="EssyBusBLDCMotorController" Version="1.0.1" />
<PackageVersion Include="EssyBusBLDCMotorController" Version="1.0.1" />
<PackageReference Include="EssyBusBLDCMotorController" />
paket add EssyBusBLDCMotorController --version 1.0.1
#r "nuget: EssyBusBLDCMotorController, 1.0.1"
#:package EssyBusBLDCMotorController@1.0.1
#addin nuget:?package=EssyBusBLDCMotorController&version=1.0.1
#tool nuget:?package=EssyBusBLDCMotorController&version=1.0.1
EssyBusBLDCMotorController NuGet Package
Description
EssyBusBLDCMotorController is a .NET library for controlling brushless DC (BLDC) motors via the EssyBus protocol. It exposes a high‑level C# API for movement, stops, interrupts, and configuration of motor parameters such as PID gains, acceleration, speed, and safety features like over‑temperature and over‑current shutdown.
Features
- Initialize and power motors on/off
- Move clockwise/counter‑clockwise with configurable acceleration, speed, and deceleration
- Move to absolute positions (blocking and non‑blocking)
- Temporary overrides: early arrival delta, stop channels
- Built‑in interrupt handling and stall protection
- PID tuning (P, I, D, Jerk) with smart caching to minimize bus traffic
- Read motor temperature and configure safety shutdown thresholds
- Events for motor stalled and movement completion
Installation
Install via the .NET CLI:
dotnet add package EssyBusBLDCMotorController
Or via the Package Manager Console:
Install-Package EssyBusBLDCMotorController
Quick Start
using System;
using Essy.EssyBusBLDCMotorController;
class Program
{
static void Main()
{
// Create and power on controller
var controller = new EssyBusBLDCMotorController();
controller.Powered = true;
// Configure PID gains
controller.P = 500;
controller.I = 10;
controller.D = 50;
controller.Jerk = 1.5f;
// Move to position 1000 steps at speed 800 steps/sec
controller.MoveToPosition(1000, acceleration: 200, speed: 800, deceleration: 200);
// Read final position and power off
Console.WriteLine($"Stopped at: {controller.Position}");
controller.Powered = false;
}
}
API Reference
EssyBusBLDCMotorController
Properties
bool Powered { set; }– Enable/disable H‑bridge.int Position { get; set; }– Read or set current motor position.float Jerk { get; set; }– Jerk parameter (with smart caching).int P, PIdle, I, D { set; }– PID gains (cached updates).float MotorTemperature { get; }– Read current motor temperature (°C).bool EnableOverTemperatureShutdown { set; }bool EnableOverCurrentShutdown { set; }byte OverTemperatureTripPoint { set; }
Methods
MoveClockWise(int acceleration, ushort speed)MoveCounterClockWise(int acceleration, ushort speed)MoveToPosition(int position, int acceleration, ushort speed, int deceleration)MoveToPositionWithCapture(...)– capture actual stop positionMoveClockWiseUntilStopChannel(...),MoveCounterClockWiseUntilStopChannel(...)Stop(int deceleration)ResetDevice(),ApplySettings()
Events
event EventHandler MotorStalledAndStopped– Raised when stall protection stops the motor.
Enums
InterruptReason– none, DestinationReached, StopChannel1Happened, … Stall.StopChannelPullupState– NoPullUps, ChannelOnePullUp, ChannelTwoPullUp, BothChannelsPullUp.
License
This project is licensed under the MIT License - see the LICENSE file for details.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. 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 is compatible. 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. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 is compatible. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETFramework 4.8
- Essy.EssyBus (>= 1.3.0.10)
- MotionControlBase (>= 1.3.0)
-
.NETStandard 2.0
- Essy.EssyBus (>= 1.3.0.10)
- MotionControlBase (>= 1.3.0)
-
net8.0
- Essy.EssyBus (>= 1.3.0.10)
- MotionControlBase (>= 1.3.0)
-
net9.0
- Essy.EssyBus (>= 1.3.0.10)
- MotionControlBase (>= 1.3.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
fixed repo url