Skip to content

MC Protocol Serial Supported Registers

This page lists the current device-family support surface for MELSEC serial MC Protocol targets.

Profile-specific device-number ranges still depend on the PLC model, serial module parameters, route, and user program. The example addresses below show parser syntax; they are not range limits.

Common Rules

Rule Behavior
Plain device strings The high-level parser accepts plain device strings such as D100, M100, X10, W100, and LZ0.
Standalone G / HG Not plain devices for any profile. Use qualified forms such as Un\G or Un\HG only when the selected profile supports that route.
S device Not supported by this serial MC library.
Link-direct devices Use dedicated Jn\... link-direct APIs when the selected profile supports them.
Qualified unit access Use native-qualified Un\G / Un\HG APIs when the selected profile supports that route. The 0601/1601 helper route is profile/target-specific and must not be used as a fallback.

Profile Support Summary

melsec:iq-r

Support class Device families
Plain bit read/write X, Y, M, L, SM, F, V, B, TS, TC, STS, STC, CS, CC, SB, DX, DY
Plain word read/write D, SD, W, TN, STN, CN, SW, Z, R, RD, ZR
Long-state helper LTS, LTC, LSTS, LSTC, LCS, LCC
Native random double-word read/write LTN, LSTN, LCN, LZ
Link-direct read/write Jn\X, Jn\Y, Jn\B, Jn\W, Jn\SB, Jn\SW
Native-qualified read/write Un\G, Un\HG
Not supported S

melsec:iq-l

Support class Device families
Plain bit read/write X, Y, M, L, SM, F, V, B, TS, TC, STS, STC, CS, CC, SB, DX, DY
Plain word read/write D, SD, W, TN, STN, CN, SW, Z, R, ZR
Native-qualified read/write Un\G
Not supported S, LTS, LTC, LSTS, LSTC, LCS, LCC, LTN, LSTN, LCN, LZ, RD, Un\HG
Not confirmed Jn\X, Jn\Y, Jn\B, Jn\W, Jn\SB, Jn\SW

melsec:iq-f

Support class Device families
Plain bit read/write X, Y, M, L, SM, F, B, TS, TC, STS, STC, CS, CC, SB
Plain word read/write D, SD, W, TN, STN, CN, SW, Z, R
Long counter state read/write LCS, LCC; reads use the long-state helper
Native random double-word read/write LCN, LZ
Native-qualified read/write Un\G
Not supported S, V, ZR, DX, DY, LTS, LTC, LTN, LSTS, LSTC, LSTN, Un\HG, Jn\..., monitor, host-buffer, and module-buffer helper routes

melsec:qcpu

Support class Device families
Plain bit read/write X, Y, M, L, SM, F, V, B, TS, TC, STS, STC, CS, CC, SB, DX, DY
Plain word read/write D, SD, W, TN, STN, CN, SW, Z, R, ZR
Link-direct read/write Jn\X, Jn\Y, Jn\B, Jn\W
Link-direct read-only Jn\SB, Jn\SW
Native-qualified read/write Un\G
Not supported S, LTS, LTC, LSTS, LSTC, LCS, LCC, LTN, LSTN, LCN, LZ, RD, Un\HG

Native random read on tested Q targets can be narrower than batch access for some timer/counter status families. Treat random-read rejection as a command route limitation, not as a batch-read exclusion.

melsec:lcpu

Support class Device families
Plain bit read/write X, Y, M, L, SM, F, V, B, TS, TC, STS, STC, CS, CC, SB, DX, DY
Plain word read/write D, SD, W, TN, STN, CN, SW, Z, R, ZR
Native-qualified read/write Un\G
Expected but not locally confirmed Jn\X, Jn\Y, Jn\B, Jn\W, Jn\SB, Jn\SW
Not supported S, LTS, LTC, LSTS, LSTC, LCS, LCC, LTN, LSTN, LCN, LZ, RD, Un\HG

Native random read on tested L targets can be narrower than batch access for some timer/counter status families. Treat random-read rejection as a command route limitation, not as a batch-read exclusion.

melsec:qna, melsec:ana-anu, and melsec:a

These profiles select older command families and are maintained by manual-derived inference and codec-level tests until matching hardware is available. Do not promote a device inventory for these profiles without target evidence.

melsec:a is required for A-series extended file-register ER/EW paths. melsec:qna or melsec:ana-anu is required for QnA/AnA/AnU command-family paths such as direct extended file-register access.

Bit Device Families

Family Kind Example address Notes
X Input relay X10 Hexadecimal address.
Y Output relay Y10 Hexadecimal address.
M Internal relay M100 Decimal address.
L Latch relay L100 Decimal address.
SM Special relay SM100 Decimal address.
F Annunciator F100 Decimal address.
V Edge relay V100 Decimal address.
B Link relay B100 Hexadecimal address.
TS, TC Timer contact / coil TS0 Decimal address.
STS, STC Retentive timer contact / coil STS0 Decimal address.
CS, CC Counter contact / coil CS0 Decimal address.
SB Link special relay SB100 Hexadecimal address.
S Step relay S100 Not supported by this serial MC library.
DX, DY Direct access input/output DX10 Hexadecimal address.
LTS, LTC Long timer contact / coil LTS0 Decimal address; profile-specific helper route.
LSTS, LSTC Long retentive timer contact / coil LSTS0 Decimal address; profile-specific helper route.
LCS, LCC Long counter contact / coil LCS0 Decimal address; profile-specific helper route.

Word Device Families

Family Kind Example address Notes
D Data register D100 Decimal address.
SD Special register SD100 Decimal address.
W Link register W100 Hexadecimal address.
TN Timer current value TN0 Decimal address.
STN Retentive timer current value STN0 Decimal address.
CN Counter current value CN0 Decimal address.
SW Link special register SW100 Hexadecimal address.
LTN Long timer current value LTN0 Decimal address; double-word in native random helpers.
LSTN Long retentive timer current value LSTN0 Decimal address; double-word in native random helpers.
LCN Long counter current value LCN0 Decimal address; double-word in native random helpers.
LZ Long index register LZ0 Decimal address; double-word in native random helpers.
Z Index register Z0 Decimal address.
R File register R0 Decimal address.
RD Module access register RD0 Decimal address.
ZR File register ZR0 Decimal address.

Addressing Notes

Topic Current behavior
Plain device string Supported for profile-allowed plain devices.
Hexadecimal address families X, Y, B, W, SB, SW, DX, and DY parse their numeric part as hexadecimal.
:D / :F suffix Not supported by the current high-level parser. Use typed C++ fields such as double_word where available.
.n bit-in-word suffix Not supported by the current high-level parser.
Long timer/counter state reads Use read_long_state_bits() for supported long-state families.
Link-direct access Use read_link_direct_*() / write_link_direct_*() helpers for supported Jn\... families.
Qualified unit access Use read_native_qualified_words() / write_native_qualified_words() for supported Un\G / Un\HG families.
Trace logging Set MCPROTOCOL_SERIAL_TRACE=1 with the synchronous host client to log MC TX/RX frame bytes.