dotnet add package Melfa.Robot --version
NuGet\Install-Package Melfa.Robot -Version
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="Melfa.Robot" Version="" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Melfa.Robot --version
#r "nuget: Melfa.Robot,"
#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.
// Install Melfa.Robot as a Cake Addin
#addin nuget:?package=Melfa.Robot&version=

// Install Melfa.Robot as a Cake Tool
#tool nuget:?package=Melfa.Robot&version=


This is a implementation of Mitsubishi Electronics Factory Automation (MELFA) robot R-protocol client in C#.

The R-protocol is described in BFP-A4288, the version this project consult is BFP-A4288-V (2018/11/15).

Configure the robot controller

Go to "Parameter → Communication Parameterr → Ethernet", Check the "Device & Line" tab.

Make sure one of OPT11 ~ OPT19 is configured as Server. For example:

  • Mode (NETMODE): 1 - Server
  • Port (NETPORT): 12345 # This is the port used to connect to the controller
  • Protocol (OPCE11): 0 - No-procedure # This is probably irrelevant
  • Exit Code (NETTERM): 0 - No-included
  • Packet Type (CTERME): 0 - CR


Create the robot object

var robot = new MelfaRobot("localhost", 10001, 1); // use the port configured above
var info = robot.Open("ClientName");

Do something with the robot

robot.OperationEnabled = true; // CTRLON
robot.ServoOn = true; // SRVON
robot.Override = 10; // OVRD=10
robot.Execute("MOV P1");

Load a program and run





  • Finish implement of all functionalities
  • Add more error log items (which is tedious...)


The author of this software is not affiliated with Mitsubishi Electronics Factory Automation (MELFA) in any way. All trademarks and registered trademarks are property of their respective owners, and company, product and service names mentioned in this readme or appearing in source code or other artifacts in this repository are used for identification purposes only.

Use of these names does not imply endorsement by either Mitsubishi Electronics Factory Automation (MELFA).

Product Compatible and additional computed target framework versions.
.NET net5.0 is compatible.  net5.0-windows was computed.  net6.0 is compatible.  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. 
.NET Framework net481 is compatible. 
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 99 2/12/2024 92 2/10/2024 74 2/9/2024 68 2/9/2024 76 2/9/2024
0.1.22 67 2/9/2024