NModbus is a C# 3.0 implementation of the Modbus protocol.

Provides connectivity to Modbus slave compatible devices and applications. Supports serial ASCII, serial RTU, serial over USB ASCII, serial over USB RTU, TCP, and UDP protocols.

Bugs can be submitted through the project's issue tracker.

Feature requests and usage questions are encouraged and welcome at the NModbus google group. Subscribe to the mailing list to receive updates.

Recent News:

July 2, 2008
Version 1.8 - Improved exception handling for ModbusTransport. NModbus master is now thread safe. Refactored NModbus master decoupling the physical transport (TCP, Serial) from the message structure (IP, RTU, ASCII). Added support to the FtdUsbPort for methods - OpenEx, SetFlowControl, and GetDeviceInfoDetail.
May 19, 2008
Version 1.7 - DataStore is now thread safe when using the NModbus API modify its contents (e.g. ReadCoils). If you need to modify the collections directly you can lock on the DataStore.SyncRoot property. Signed Modbus and FtdAdapter assemblies.
March 10, 2008
Version 1.6 - Added DataStoreReadFrom and DataStoreWrittenTo events to the DataStore class.
Dec 3, 2007
Version 1.5 - Converted source to C# 3.0, added ModbusSlaveRequestReceived event to ModbusSlave. Fixed Issue 21
Sept 14, 2007
Version 1.4 - Added support for custom messages, extend NModbus now!
Aug 12, 2007
Version 1.3 - Added FTDI USB master via the D2XX driver, UDP master, UDP slave, and support for Slave Exception Code 05. Thanks Andreas!