// Yaskawa MEMOBUS / Modbus RTU

Yaskawa MEMOBUS
Modbus registers

Your read works, your write comes back as an error, and the address looks right. On a Yaskawa drive that usually means the function code, not the address: MEMOBUS supports 03H, 08H and 10H, and function code 06 is not among them. Here are the three addresses that do most of the work, and the order of operations that tells you which problem you actually have.

Download Pro trial — free 14 days Jump to the verification steps

Windows 10/11 · RS-485 adapter · No PLC needed to test

// what surprises people first

Yaskawa drives do not answer function code 06

Most Modbus devices accept a single-register write with function code 06, so that is what most people try first. On a Yaskawa drive it fails, and the failure is easy to misread as an addressing problem.

The MEMOBUS/Modbus implementation supports a deliberately narrow set: 03H to read, 08H for loopback test, and 10H — function code 16 — to write. Sending anything else produces an error. So writes go out as “write multiple registers” with a quantity of one, not as function code 06.

The second thing worth knowing before you start: the drive keeps monitor registers and parameter registers in separate parts of the map. Reading a parameter with a monitor address gives you a plausible-looking number from somewhere else entirely.

Two rules that save an afternoon

Write with FC16, never FC06. And keep monitor addresses and parameter addresses in separate mental columns — they are separate maps.

Also on this site
// the control and monitor registers

Three addresses do most of the work

These come from Yaskawa’s own MEMOBUS/Modbus documentation and are consistent across the 1000-series and GA500 families. Parameter addresses differ by drive and firmware and belong in your own drive’s technical manual.

AddressWhat it isNotes
0001HOperation commandBit-packed. On V1000, bit 0 is forward run (1 = run, 0 = stop) and bit 1 is reverse run. On GA500, bit 0 is run/stop and bit 1 selects direction. Check which convention your drive uses before writing.
0002HFrequency referenceWritten together with the command word in a single FC16 transaction in Yaskawa’s own examples
0020HDrive statusStart of the monitor block; Yaskawa’s read examples cover 0020H to 0023H in one request
Note the bit 1 difference: on the V1000 family bit 1 is a reverse run command, while on GA500 bit 1 selects direction for a single run bit. The same value written to the same address therefore behaves differently between drive families — which is exactly the kind of thing worth confirming by watching the drive rather than by reading a table.
// proving it on the drive

Read before you write, always

Yaskawa drives reject writes in several legitimate situations — during an undervoltage fault, or to parameters that cannot change while running. Reading first tells you which of those you are in.

1
Step 1
Match the serial settings
Set your master to the drive’s communication parameters. On 1000-series drives the baud rate lives in the H5 group; read the values off the keypad rather than assuming defaults, because a previous commissioning may have changed them. Addressing is zero-based, so no offset juggling is needed.
2
Step 2
Read the monitor block
With FC03, read four registers starting at 0020H. A healthy idle drive returns a stable status word; operating the drive from the keypad changes bits. Viewing the register in binary makes the mapping obvious without decoding tables, and it proves the link end to end.
3
Step 3
Read the command word back
Read 0001H and 0002H. They reflect what the drive currently holds, which is a useful reference point before you change anything — and it confirms that the two addresses you are about to write are the ones you think they are.
4
Step 4
Write with FC16, one register at a time
Write the frequency reference to 0002H using function code 16 with a quantity of one. If your tool insists on function code 06, the drive will reject it — that is expected behaviour, not a fault. Confirm the resulting output frequency on the keypad and calculate the scaling from what the drive actually did.
5
Step 5
Only then command a run
With the status word readable and the reference confirmed, write the operation command. Keep the motor uncoupled or the drive in a safe state for this step. If the write is rejected, the likely causes are a narrow set: undervoltage, a parameter that cannot be written while running, or a value outside the allowed range.
ModbusManager sends single-register writes as FC06 or FC16 by choice, shows every register in decimal, hex and binary at once, and logs the exact request and response — so a rejected write shows you the exception code instead of just failing quietly.
// frequently asked questions

FAQ

Why does my write to a Yaskawa drive fail?+
Most likely because it was sent as function code 06. The MEMOBUS implementation supports function codes 03H for reading, 08H for a loopback test and 10H for writing, and rejects others. Send the write as function code 16 with a quantity of one register and the same address will accept it.
Where are the run command and frequency reference?+
The operation command is at 0001H and the frequency reference at 0002H. Yaskawa's own documentation shows both written together in one write-multiple transaction, which is the usual way to command a drive in a single message.
Which register holds the drive status?+
The monitor block starts at 0020H, and Yaskawa's read examples cover 0020H through 0023H in a single request. Monitor registers are a separate map from parameter registers, so a parameter cannot be read with a monitor address or the other way round.
Is bit 1 reverse run or direction?+
It depends on the drive family. On V1000 drives bit 1 is a reverse run command alongside bit 0 for forward run, while on GA500 bit 0 is run or stop and bit 1 selects the direction. Confirm which convention your drive follows by watching it respond rather than assuming.
My write is rejected even with the right function code.+
Yaskawa drives legitimately refuse some writes: during an undervoltage fault, to parameters that cannot be changed while the drive is running, to read-only data, or when the value is outside the allowed range. The exception code in the response tells you which case you are in, so log the raw response rather than only the failure.
How many registers can I read in one request?+
Up to sixteen consecutive registers, and the parameters have to be consecutive in the drive's map. Non-consecutive values need separate requests, which is worth planning around when a PLC polls many values on a slow serial line.

Confirm the command word on your own drive

Read the status block, watch the bits move, write with the function code the drive actually accepts. Free for 14 days, no credit card.

Download Pro trial Or the Standard edition

Windows 10/11 · Modbus RTU, ASCII and TCP · One-time license