Elrest eDesign Runtime Library Messages Model Instance MODBUS RTU Parity

Parity adds an extra bit to each transmitted byte to help detect errors.

That bit can be set according to different rules: +---------+----------------+--------------------------+------------------------------+ | Parity | Error Detection| Common Use in Modbus RTU | Notes | +---------+----------------+--------------------------+------------------------------+ | none | No | Very common (8N1) | Fast, only CRC protects | | even | Yes | Very common (8E1) | Safest default for industry | | odd | Yes | Sometimes (8O1) | Legacy devices | | mark | No | Rare | Parity bit always 1 | | space | No | Rare | Parity bit always 0 |

Error detection bit in each character. Modbus-RTU devices most often use even or none. Typical: 'even' (8E1) or 'none' (8N1). Match the slave exactly.

Copyright

2025 Elrest AutomationsSysteme GMBH

Enumeration Members

Enumeration Members

even: "even"

'even' (Even Parity) The parity bit is set so the total number of 1 bits (data + parity) is even. Example: Data 10110010 has 5 ones (odd). Add parity = 1 → total 6 (even). More robust than 'none' because it catches single-bit errors.

Very common in industrial Modbus RTU (often 8E1).

mark: "mark"

'mark' (Mark Parity) The parity bit is always 1, regardless of data. Does not provide error detection, but enforces a “high” line level at parity time. Rare; sometimes used for compatibility with legacy teletypes or old serial gear.

none: "none"

'none' (No Parity)

No parity bit is added. Each frame is just start + data bits + stop bits. Fastest, but no error detection at the byte level (only CRC at Modbus level). Often called 8N1 → 8 data bits, None parity, 1 stop bit. Common with modern Modbus devices that rely solely on CRC.

odd: "odd"

'odd' (Odd Parity) The parity bit is set so the total number of 1 bits is odd. Example: Data 10110010 has 5 ones (odd). Add parity = 0 → still 5 (odd). Same error-detection strength as 'even'. Less common, but some older devices insist on 8O1.

space: "space"

'space' (Space Parity)

The parity bit is always 0, regardless of data. Same as 'mark' in that it doesn’t check errors, just forces a “low” line level. Also rare; only seen in very old/quirky devices.