Delta Electronics VFD-C2000 Modbus register map
Vector control AC motor drive with a built-in RS-485 Modbus port for ASCII and RTU. The communication address list gives a control command word, a frequency command, fault, status and live monitor registers, and every drive parameter at an address built from its group and number. This file lists the fixed command and status area plus a selection of key parameters; the full parameter list is in the manual.
- Protocol
- Modbus RTU (also Modbus ASCII)
- Defaults
- Per the parameter summary: address 1 (Pr.09-00), 9.6 Kbps (Pr.09-01), format 1 = 7,N,2 ASCII (Pr.09-04), so an RTU master needs Pr.09-04 set to 12 to 17. Pr.00-20 = 1 and Pr.00-21 = 2 hand frequency and run control to RS-485.
- Addresses in the manual
- 0-based protocol addresses, as sent on the wire
- 32 and 64-bit values
- Not stated in the manual
- Registers listed
- 56
- Checked against
- DELTA_IA-MDS_VFD-C2000_UM_EN_20190213 (file name date 2019-02-13), firmware version V2.05. Delta Electronics user manual as hosted by the third party vfds.com; vendor-hosted copy could not be fetched.
Address base. The address list prints hex register addresses and the message examples put them straight into the starting-register field (reading 2102H uses bytes 21 02 and the LRC example sums 21H and 02H), so the printed number is the wire address (pp. 12.1-09-3 to 12.1-09-8). Parameter registers are the group and number in hex, for example Pr.04-10 is 040AH (p. 12.1-09-8). Addresses here are those hex values converted to decimal, and each note repeats the hex value. Pr.09-01 (COM1 transmission speed) is not listed because the manual gives its settings in Kbps without stating the register encoding. Address 0 in the manual is address 0 on the wire.
Word order. Every row is a single 16-bit register. The manual also lists 32-bit pulse counters as separate low word and high word registers (222AH to 222DH); they are not included here.
Modbus Poll and the Modbus protocol itself count from 0. The "Wire address" column is the number to type into Modbus Poll.
Downloads
The register table has every column on this page. The blocks file imports into Modbus Poll. The template JSON holds the same blocks plus unit, scale and access for scripts.
Registers
| Manual | Wire | Register | Type | Regs | Unit | Scale | Access | Area |
|---|---|---|---|---|---|---|---|---|
| 0 | 0 | Pr.00-00 identity code of the AC motor drivePr00_00_IdentityCode · Read only. The manual maps each code to a voltage class and power rating, for example 11 is 460V 3.70kW and 12 is 230V 5.50kW; the full list is on pp. 11-1 and 11-2. Register 0000H. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 2 | 2 | Pr.00-02 parameter resetPr00_02_ParameterReset · 0 no function, 1 parameter write protect, 5 reset kWh display to 0, 6 reset PLC, 7 reset CANopen index (slave), 9 reset all parameters to defaults with base frequency 50 Hz, 10 same with base frequency 60 Hz. Register 0002H. |
uint16 | 1 | 1 | RW | Holding (FC03) | |
| 10 | 10 | Pr.00-10 control modePr00_10_ControlMode · 0 speed mode, 1 point to point position control, 2 torque mode, 3 homing mode. Register 000AH. |
uint16 | 1 | 1 | RW | Holding (FC03) | |
| 11 | 11 | Pr.00-11 speed control modePr00_11_SpeedControlMode · 0 IMVF, 1 IMVFPG, 2 IM/PM SVC, 3 IMFOCPG, 4 PMFOCPG, 5 IMFOC sensorless, 6 PM FOC sensorless, 7 IPM FOC sensorless. Register 000BH. |
uint16 | 1 | 1 | RW | Holding (FC03) | |
| 20 | 20 | Pr.00-20 master frequency command source (AUTO)Pr00_20_MasterFrequencySource · 0 digital keypad, 1 RS-485 communication, 2 external analog input (Pr.03-00), 3 external UP/DOWN terminal, 4 pulse input without direction, 5 pulse input with direction, 6 CANopen communication card, 8 communication card. Set 1 for Modbus frequency control. Register 0014H. |
uint16 | 1 | 1 | RW | Holding (FC03) | |
| 21 | 21 | Pr.00-21 operation command source (AUTO)Pr00_21_OperationCommandSource · 0 digital keypad, 1 external terminals, 2 RS-485 communication, 3 CANopen communication card, 5 communication card. Set 2 for Modbus run control. Register 0015H. |
uint16 | 1 | 1 | RW | Holding (FC03) | |
| 256 | 256 | Pr.01-00 maximum operation frequencyPr01_00_MaxOperationFrequency · Range 0.00 to 599.00 Hz, default 60.00 or 50.00. The two decimal places in the range give the 0.01 Hz scale; the manual's write example sets this register to 6000. Register 0100H. |
uint16 | 1 | Hz | 0.01 | RW | Holding (FC03) |
| 257 | 257 | Pr.01-01 output frequency of motor 1Pr01_01_OutputFrequencyMotor1 · Range 0.00 to 599.00 Hz, default 60.00 or 50.00. Register 0101H. |
uint16 | 1 | Hz | 0.01 | RW | Holding (FC03) |
| 266 | 266 | Pr.01-10 output frequency upper limitPr01_10_OutputFrequencyUpperLimit · Range 0.00 to 599.00 Hz, default 599.00. Register 010AH. |
uint16 | 1 | Hz | 0.01 | RW | Holding (FC03) |
| 267 | 267 | Pr.01-11 output frequency lower limitPr01_11_OutputFrequencyLowerLimit · Range 0.00 to 599.00 Hz, default 0. Register 010BH. |
uint16 | 1 | Hz | 0.01 | RW | Holding (FC03) |
| 268 | 268 | Pr.01-12 acceleration time 1Pr01_12_AccelerationTime1 · Range 0.00 to 600.00 s when Pr.01-45 = 0, or 0.0 to 6000.0 s when Pr.01-45 = 1, so the register scale depends on Pr.01-45 and none is given here. Default 10.00. Register 010CH. |
uint16 | 1 | s | 1 | RW | Holding (FC03) |
| 269 | 269 | Pr.01-13 deceleration time 1Pr01_13_DecelerationTime1 · Range 0.00 to 600.00 s when Pr.01-45 = 0, or 0.0 to 6000.0 s when Pr.01-45 = 1, so the register scale depends on Pr.01-45 and none is given here. Default 10.00. Register 010DH. |
uint16 | 1 | s | 1 | RW | Holding (FC03) |
| 301 | 301 | Pr.01-45 time unit for accel/decel and S curvePr01_45_TimeUnitAccelDecel · 0 unit 0.01 s, 1 unit 0.1 s. Default 0. Register 012DH. |
uint16 | 1 | 1 | RW | Holding (FC03) | |
| 2304 | 2304 | Pr.09-00 communication addressPr09_00_CommunicationAddress · Range 1 to 254, default 1. Register 0900H. |
uint16 | 1 | 1 | RW | Holding (FC03) | |
| 2306 | 2306 | Pr.09-02 COM1 transmission fault treatmentPr09_02_TransmissionFaultTreatment · 0 warn and continue operation, 1 warn and ramp to stop, 2 warn and coast to stop, 3 no warning and continue operation (default). Register 0902H. |
uint16 | 1 | 1 | RW | Holding (FC03) | |
| 2307 | 2307 | Pr.09-03 COM1 time-out detectionPr09_03_TimeoutDetection · Range 0.0 to 100.0 s, default 0.0. The register scale is not stated in the manual, so none is given here. Register 0903H. |
uint16 | 1 | s | 1 | RW | Holding (FC03) |
| 2308 | 2308 | Pr.09-04 COM1 communication protocolPr09_04_CommunicationProtocol · 1 to 11 are ASCII formats (default 1 is 7,N,2). RTU formats: 12 = 8,N,1, 13 = 8,N,2, 14 = 8,E,1, 15 = 8,O,1, 16 = 8,E,2, 17 = 8,O,2. Choose 12 to 17 for Modbus RTU. Register 0904H. |
uint16 | 1 | 1 | RW | Holding (FC03) | |
| 2313 | 2313 | Pr.09-09 communication response delay timePr09_09_ResponseDelayTime · Range 0.0 to 200.0 ms, default 2.0 ms. The register scale is not stated in the manual, so none is given here. Register 0909H. |
uint16 | 1 | ms | 1 | RW | Holding (FC03) |
| 2314 | 2314 | Pr.09-10 communication main frequencyPr09_10_CommunicationMainFrequency · Range 0.00 to 599.00 Hz, default 60.00. Holds the last RS-485 frequency command when Pr.00-20 is 1. Register 090AH. |
uint16 | 1 | Hz | 0.01 | RW | Holding (FC03) |
| 8192 | 8192 | Control command word (run, direction, accel/decel set, step speed)CommandWord · Bits 1-0: 01 stop, 10 run, 11 JOG plus run. Bits 5-4: 01 forward, 10 reverse, 11 change direction. Bits 7-6: 00 to 11 select 1st to 4th acceleration/deceleration. Bits 11-8: 0000 master speed, 0001 to 1111 select 1st to 15th step speed frequency. Bit 12: 1 enables the bit 6 to 11 functions. Bits 3-2 and 15 are reserved. Register 2000H. |
bitfield16 | 1 | 1 | RW | Holding (FC03) | |
| 8193 | 8193 | Frequency commandFrequencyCommand · Printed as XXX.XX Hz. Register 2001H. |
uint16 | 1 | Hz | 0.01 | RW | Holding (FC03) |
| 8194 | 8194 | Control command word 2 (external fault, reset, base block)ControlCommand2 · Bit 0: 1 E.F. ON. Bit 1: 1 reset. Bit 2: 1 base block (B.B) ON. Bits 15-3 reserved. Register 2002H. |
bitfield16 | 1 | 1 | RW | Holding (FC03) | |
| 8448 | 8448 | Warning code (high byte) and error code (low byte)FaultAndWarningCode · High byte is the warn code and low byte is the error code. The code meanings are in the manual's warning code chapter (ch. 13) and fault code chapter (ch. 14). Register 2100H. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 8449 | 8449 | AC motor drive operation statusDriveStatus · Bits 1-0: 00 drive stops, 01 decelerating, 10 standby, 11 operating. Bit 2: JOG command. Bits 4-3: 00 FWD run, 01 from REV run to FWD run, 10 from FWD run to REV run, 11 REV run. Bit 8: master frequency controlled by communication interface. Bit 9: master frequency controlled by analog/external signal. Bit 10: operation command controlled by communication interface. Bit 11: parameter locked. Bit 12: enabled to copy parameters from keypad. Register 2101H. |
bitfield16 | 1 | 1 | R | Holding (FC03) | |
| 8450 | 8450 | Frequency commandFrequencyCommandMonitor · Printed as XXX.XX Hz. Register 2102H. |
uint16 | 1 | Hz | 0.01 | R | Holding (FC03) |
| 8451 | 8451 | Output frequencyOutputFrequency · Printed as XXX.XX Hz. Register 2103H. |
uint16 | 1 | Hz | 0.01 | R | Holding (FC03) |
| 8452 | 8452 | Output currentOutputCurrent · Printed as XX.XX A. When the current is higher than 655.35 A the decimal point shifts to XXX.X A; the high byte of register 211FH gives the decimal position. Register 2104H. |
uint16 | 1 | A | 0.01 | R | Holding (FC03) |
| 8453 | 8453 | DC bus voltageDcBusVoltage · Printed as XXX.X V. Register 2105H. |
uint16 | 1 | V | 0.1 | R | Holding (FC03) |
| 8454 | 8454 | Output voltageOutputVoltage · Printed as XXX.X V. Register 2106H. |
uint16 | 1 | V | 0.1 | R | Holding (FC03) |
| 8455 | 8455 | Current step number of multi-step speed operationMultiStepSpeedStepNumber · Register 2107H. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 8457 | 8457 | Counter valueCounterValue · Register 2109H. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 8458 | 8458 | Power factor anglePowerFactorAngle · Printed as XXX.X; the manual gives no unit. Register 210AH. |
uint16 | 1 | 0.1 | R | Holding (FC03) | |
| 8460 | 8460 | Actual motor speedActualMotorSpeed · Printed as XXXXX rpm. The manual does not say whether reverse speed is signed. Register 210CH. |
uint16 | 1 | rpm | 1 | R | Holding (FC03) |
| 8461 | 8461 | Number of PG feedback pulsesPgFeedbackPulses · Range 0 to 65535. Register 210DH. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 8462 | 8462 | Number of PG2 pulse commandsPg2PulseCommands · Range 0 to 65535. Register 210EH. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 8463 | 8463 | Power outputPowerOutput · Printed as X.XXX kW. Register 210FH. |
uint16 | 1 | kW | 0.001 | R | Holding (FC03) |
| 8470 | 8470 | Multi-function display (Pr.00-04)MultiFunctionDisplay · Shows the value selected by Pr.00-04, so the meaning and scale depend on that setting. Register 2116H. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 8479 | 8479 | High byte: decimal position of the current value displayCurrentDecimalPosition · Only the high byte is described, as the decimal of the current value (display). Register 211FH. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 8707 | 8707 | DC bus voltage (22xx monitor)DcBusVoltageDisplay · Printed as XXX.X V. Register 2203H. |
uint16 | 1 | V | 0.1 | R | Holding (FC03) |
| 8708 | 8708 | Output voltage (22xx monitor)OutputVoltageDisplay · Printed as XXX.X V. Register 2204H. |
uint16 | 1 | V | 0.1 | R | Holding (FC03) |
| 8711 | 8711 | Motor speed estimated by the drive or from encoder feedbackMotorSpeedEstimated · Printed as XXXXX rpm. The manual does not say whether reverse speed is signed. Register 2207H. |
uint16 | 1 | rpm | 1 | R | Holding (FC03) |
| 8712 | 8712 | Output torque, positive or negative, estimated by the driveOutputTorqueSigned · Printed as XXX.X %. The manual describes positive and negative torque, so the value is treated as signed. Register 2208H. |
int16 | 1 | % | 0.1 | R | Holding (FC03) |
| 8714 | 8714 | PID feedback value after enabling the PID functionPidFeedbackValue · Printed as XXX.XX %. Register 220AH. |
uint16 | 1 | % | 0.01 | R | Holding (FC03) |
| 8718 | 8718 | IGBT temperature of the drive power moduleIgbtTemperature · Printed as XXX.X degC. Register 220EH. |
uint16 | 1 | degC | 0.1 | R | Holding (FC03) |
| 8719 | 8719 | Temperature of the capacitanceCapacitorTemperature · Printed as XXX.X degC. Register 220FH. |
uint16 | 1 | degC | 0.1 | R | Holding (FC03) |
| 8738 | 8738 | Fan speed of the driveFanSpeed · Printed as XXX %. Register 2222H. |
uint16 | 1 | % | 1 | R | Holding (FC03) |
| 8739 | 8739 | Control mode of the driveControlModeStatus · 0 speed mode, 1 torque mode. Register 2223H. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 8740 | 8740 | Carrier frequency of the driveCarrierFrequency · Printed as XX kHz. Register 2224H. |
uint16 | 1 | kHz | 1 | R | Holding (FC03) |
| 8742 | 8742 | Drive status (direction, ready, error, output, alarm)DriveStatus2 · Bits 1-0: 00 no direction, 01 forward, 10 reverse. Bits 3-2: 01 drive ready, 10 error. Bit 4: 0 motor drive did not output, 1 motor drive did output. Bit 5: 0 no alarm, 1 alarm. Register 2226H. |
bitfield16 | 1 | 1 | R | Holding (FC03) | |
| 8743 | 8743 | Drive's estimated output torque, positive or negative directionEstimatedOutputTorqueNm · Printed as XXXX Nt-m. The manual describes positive or negative direction, so the value is treated as signed. Register 2227H. |
int16 | 1 | Nt-m | 1 | R | Holding (FC03) |
| 8745 | 8745 | kWh displayKwhDisplay · Printed as XXXX.X. Register 2229H. |
uint16 | 1 | kWh | 0.1 | R | Holding (FC03) |
| 8752 | 8752 | PID output frequencyPidOutputFrequency · Printed as XXX.XX Hz. Register 2230H. |
uint16 | 1 | Hz | 0.01 | R | Holding (FC03) |
| 8753 | 8753 | Hardware IDHardwareId · Register 2231H. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 9729 | 9729 | Remote IO: terminal input contact bits (2601H)RemoteIoInputs1 · Each bit corresponds to a different terminal input contact. Register 2601H. |
bitfield16 | 1 | 1 | R | Holding (FC03) | |
| 9730 | 9730 | Remote IO: terminal input contact bits (2602H)RemoteIoInputs2 · Each bit corresponds to a different terminal input contact. Register 2602H. |
bitfield16 | 1 | 1 | R | Holding (FC03) | |
| 9793 | 9793 | Remote IO: terminal output contact bitsRemoteIoOutputs · Each bit corresponds to a different terminal output contact. Register 2641H. |
bitfield16 | 1 | 1 | RW | Holding (FC03) |
Scale is the number to multiply the raw value by to get the unit.
Open in Modbus Poll
- Download the Modbus Poll blocks file.
- Open Modbus Poll, connect to the device and set its unit ID. The manual does not state the word order for 32-bit values. Check one known value (a voltage or a counter) and switch the setting if it reads wrong.
- In the blocks panel on the right, click Import CSV and pick the file. CSV import is a Pro feature. Without Pro, Modbus Poll polls the first 20 values of your blocks.
- The wire addresses are already in the file, so there is no 0-based or 1-based conversion to do.
Once the values look right, export the tag list to Ignition, Kepware, Node-RED, Home Assistant or Voltrus SCADA.
Source and accuracy
Manufacturer document: Delta Vector Control Drive C2000 Series User Manual (vfds.com)
DELTA_IA-MDS_VFD-C2000_UM_EN_20190213 (file name date 2019-02-13), firmware version V2.05. Delta Electronics user manual as hosted by the third party vfds.com; vendor-hosted copy could not be fetched., ch. 12 Pr.09 Modbus section pp. 12.1-09-1 to 12.1-09-12 (address list pp. 12.1-09-8 to 12.1-09-11); ch. 11 parameter summary pp. 11-1 to 11-42. Read on 2026-10-24.
Addresses, types, units and scale are taken from the document above. Names and descriptions are written by Voltrus. Firmware versions can differ, so confirm a value on your own device before you rely on it.
Found a mistake? Report it by email with the register address and the manual page.
More from Delta Electronics
All Delta Electronics register maps