{
  "spec_version": 1,
  "slug": "yaskawa-v1000",
  "manufacturer": "Yaskawa",
  "model": "V1000 (CIMR-VU), MEMOBUS/Modbus",
  "category": "VFD",
  "supplier_url": "https://www.yaskawa.com/v1000",
  "default_configuration": {
    "protocol": "modbus_tcp",
    "port": 502,
    "unit_id": 31,
    "addressing": "zero_based",
    "byte_order": "BigEndian",
    "word_order": "HighFirst",
    "native_interface": "rs485",
    "serial": {
      "parity": "None",
      "baud_rate": 9600,
      "data_bits": 8,
      "stop_bits": 1
    }
  },
  "coils": [],
  "discrete_inputs": [],
  "input_registers": [],
  "holding_registers": [
    {
      "address": 1,
      "count": 1,
      "name": "Operation signals and multi-function inputs",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW",
      "description": "H5-12 = 0 (default): bit 0 = forward run, bit 1 = reverse run. H5-12 = 1: bit 0 = run, bit 1 = forward/reverse. bit 2 = external fault (EF0), bit 3 = fault reset, bits 4-9 = multi-function inputs 1-6 (ComRef/ComCtrl when H1-01 = 40 and H1-02 = 41), bit A = multi-function input 7. Unused bits must be 0."
    },
    {
      "address": 2,
      "count": 1,
      "name": "Frequency reference",
      "data_type": "UInt16",
      "units": "Hz",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "RW",
      "description": "Frequency reference command. Resolution and units are set by o1-03, whose default 0 means 0.01 Hz units (3000 = 30.00 Hz)."
    },
    {
      "address": 3,
      "count": 1,
      "name": "Output voltage gain",
      "data_type": "UInt16",
      "units": "%",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "RW",
      "description": "Output voltage gain in units of 0.1%, setting range 20-2000 (2.0-200.0%); power-up initial value 1000 (100.0%)."
    },
    {
      "address": 6,
      "count": 1,
      "name": "PID target",
      "data_type": "Int16",
      "units": "%",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "RW",
      "description": "PID target value in signed 0.01% units."
    },
    {
      "address": 7,
      "count": 1,
      "name": "Analog output terminal AM setting",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.0025,
      "offset": 0,
      "access": "RW",
      "description": "Value of the analog monitor output at terminal AM: 4000 (decimal) corresponds to 10 V."
    },
    {
      "address": 9,
      "count": 1,
      "name": "Settings for multi-function digital outputs",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW",
      "description": "bit 0 = contact output (MA/MB-MC), bit 1 = photocoupler output 1 (P1-PC), bit 2 = photocoupler output 2 (P2-PC), bits 3-F reserved."
    },
    {
      "address": 10,
      "count": 1,
      "name": "Pulse output terminal MP setting",
      "data_type": "UInt16",
      "units": "Hz",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW",
      "description": "Pulse output at terminal MP in 1 Hz units, setting range 0-32000."
    },
    {
      "address": 15,
      "count": 1,
      "name": "Control selection setting",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW",
      "description": "bit 1 = PID target input, bit C = enable terminal S5 input for broadcast data, bit D = enable terminal S6 input for broadcast data, bit E = enable terminal S7 input for broadcast data."
    },
    {
      "address": 32,
      "count": 1,
      "name": "Drive status 1",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "R",
      "description": "bit 0 = during run, bit 1 = during reverse, bit 2 = drive ready, bit 3 = fault, bit 4 = data setting error, bit 5 = multi-function contact output (MA/MB-MC), bit 6 = photocoupler output 1 (P1-PC), bit 7 = photocoupler output 2 (P2-PC), bit E = ComRef enabled, bit F = ComCtrl enabled."
    },
    {
      "address": 33,
      "count": 1,
      "name": "Fault contents 1",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "R",
      "description": "bit 0 = overcurrent (oC)/ground fault (GF)/IGBT short circuit or ground fault (SC), bit 1 = overvoltage (ov), bit 2 = drive overload (oL2), bit 3 = overheat 1 (oH1)/drive overheat warning (oH2), bit 4 = dynamic braking transistor fault (rr)/braking resistor overheat (rH), bit 6 = PID feedback loss (FbL/FbH), bit 7 = external fault EF0-EF7, bit 8 = CPFoo hardware fault, bit 9 = motor overload (oL1)/overtorque 1-2 (oL3/oL4)/undertorque 1-2 (UL3/UL4), bit A = PG disconnected (PGo)/overspeed (oS)/excessive speed deviation (dEv), bit B = main circuit undervoltage (Uv), bit C = undervoltage (Uv1)/control power supply undervoltage (Uv2)/soft charge circuit fault (Uv3), bit D = output phase loss (LF)/input phase loss (PF), bit E = MEMOBUS/Modbus communication error (CE)/option communication error (bUS), bit F = operator connection fault (oPr)."
    },
    {
      "address": 34,
      "count": 1,
      "name": "Data link status",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "R",
      "description": "bit 0 = writing data or switching motors, bit 3 = upper or lower limit error, bit 4 = data conformity error, bit 5 = writing to EEPROM."
    },
    {
      "address": 35,
      "count": 1,
      "name": "Frequency reference monitor",
      "data_type": "UInt16",
      "units": "Hz",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "R",
      "description": "Frequency reference as monitored. Units follow o1-03, default 0 = 0.01 Hz (3000 = 30.00 Hz)."
    },
    {
      "address": 36,
      "count": 1,
      "name": "Output frequency",
      "data_type": "UInt16",
      "units": "Hz",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "R",
      "description": "Output frequency. Units follow o1-03, default 0 = 0.01 Hz (3000 = 30.00 Hz)."
    },
    {
      "address": 37,
      "count": 1,
      "name": "Output voltage reference",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R",
      "description": "Output voltage reference in 0.1 V units; H5-10 (default 0) selects 0.1 V units, setting H5-10 = 1 gives 1 V units."
    },
    {
      "address": 43,
      "count": 1,
      "name": "Input terminal status",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "R",
      "description": "bit 0-6 = terminals S1-S7 closed."
    },
    {
      "address": 44,
      "count": 1,
      "name": "Drive status 2",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "R",
      "description": "bit 0 = during run, bit 1 = zero speed, bit 2 = speed agree, bit 3 = user speed agree, bit 4 = frequency detection 1, bit 5 = frequency detection 2, bit 6 = drive ready, bit 7 = during undervoltage, bit 8 = during baseblock, bit 9 = frequency reference from operator keypad, bit A = run command from operator keypad, bit B = over/undertorque 1-2, bit C = frequency reference loss, bit D = during fault restart, bit E = fault, bit F = communication timeout."
    },
    {
      "address": 45,
      "count": 1,
      "name": "Output terminal status",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "R",
      "description": "bit 0 = contact output (MA/MB-MC), bit 1 = photocoupler output 1 (P1-PC), bit 2 = photocoupler output 2 (P2-PC)."
    },
    {
      "address": 47,
      "count": 1,
      "name": "Frequency reference bias (Up/Down 2)",
      "data_type": "Int16",
      "units": "%",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R",
      "description": "Frequency reference bias from the Up/Down 2 function in 0.1% units."
    },
    {
      "address": 49,
      "count": 1,
      "name": "DC bus voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 1,
      "offset": 0,
      "access": "R",
      "description": "Main circuit DC bus voltage in 1 V units."
    },
    {
      "address": 50,
      "count": 1,
      "name": "Torque monitor",
      "data_type": "Int16",
      "units": "%",
      "scale_factor": 1,
      "offset": 0,
      "access": "R",
      "description": "Torque monitor in 1% units."
    },
    {
      "address": 52,
      "count": 1,
      "name": "Product code 1 (product type)",
      "data_type": "Ascii",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "R",
      "description": "ASCII product code, first register; V0 for a V1000."
    },
    {
      "address": 53,
      "count": 1,
      "name": "Product code 2 (region code)",
      "data_type": "Ascii",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 56,
      "count": 1,
      "name": "PID feedback",
      "data_type": "UInt16",
      "units": "%",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R",
      "description": "PID feedback in 0.1% units, unsigned, 100% = maximum output frequency."
    },
    {
      "address": 57,
      "count": 1,
      "name": "PID input",
      "data_type": "Int16",
      "units": "%",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R",
      "description": "PID input in 0.1% units, signed, 100% = maximum output frequency."
    },
    {
      "address": 58,
      "count": 1,
      "name": "PID output",
      "data_type": "Int16",
      "units": "%",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R",
      "description": "PID output in 0.1% units, signed, 100% = maximum output frequency."
    },
    {
      "address": 61,
      "count": 1,
      "name": "Communications error log",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "R",
      "description": "bit 0 = CRC error, bit 1 = data length error, bit 3 = parity error, bit 4 = overrun error, bit 5 = framing error, bit 6 = timeout. Cleared when the fault is reset."
    },
    {
      "address": 62,
      "count": 1,
      "name": "Output frequency (motor speed units)",
      "data_type": "UInt16",
      "units": "rpm",
      "scale_factor": 1,
      "offset": 0,
      "access": "R",
      "description": "Output frequency scaled to r/min using the motor pole count (E2-04, E4-04, E5-04)."
    }
  ],
  "combined_registers": [],
  "notes": "RS-485 device: reach it through a Modbus RTU-to-TCP gateway using the factory serial settings above. MEMOBUS/Modbus defaults from the technical manual: H5-01 slave address 1FH (31), H5-02 = 3 (9600 bps), H5-03 = 0 (no parity), 8 data bits, 1 stop bit; H5-11 = 1 and H5-12 = 0. Register addresses are the manual's hexadecimal MEMOBUS register numbers (zero-based wire addresses). Source: Yaskawa V1000 Technical Manual SIEP C710606 18F, section C.10 'MEMOBUS/Modbus Data Table' and section C.5 for the H5 defaults. Register 0026H (output current) and 0027H (output power) are left out on purpose: the manual states the current unit depends on the drive model (0.01 A or 0.1 A) and gives no unit for output power, so a single scale factor would be wrong for some models."
}
