- Home
- Modbus register maps
- Schneider Electric
- Altivar 212 (embedded Modbus RTU)
Variable frequency drive (HVAC fans and pumps) · Modbus register map
Schneider Electric Altivar 212 (embedded Modbus RTU) Modbus register map
Updated 25 October 2026
Schneider Electric's HVAC variable frequency drive for fans and pumps, with Modbus RTU built in on two RS-485 ports: an RJ45 socket and an open-style screw terminal. Parameters are addressed by their hexadecimal communication numbers (Fd00, FA01, F802...) sent unchanged as the register address, and the drive reads or writes only one register per request. This map covers command word 1 and 2, frequency and speed references, relay and analog output control, the status words, output frequency, current, voltage and power monitors, trip and alarm codes with trip history, I/O states, and the Modbus and control-source settings.
This page lists 55 Modbus registers for the Schneider Electric Altivar 212 (embedded Modbus RTU) — 25 writable — with the table, 0-based wire address, data type, word order, scale, units and access of each, re-typed from Schneider Electric’s own free documentation (linked below) and checked against it.
- Manufacturer
- Schneider Electric
- Model
- Altivar 212 (embedded Modbus RTU)
- Equipment type
- Variable frequency drive (HVAC fans and pumps)
- Registers
- 55 (25 writable)
- Transport
- Modbus RTU
- Default unit ID
- 1
- Default serial
- 19200 baud, 8E1
- Documented addressing
- hexadecimal, 0-based
- Also known as
- ATV212, Altivar 212, ATV212H, ATV212W, ATV212HU15N4, ATV212WD11N4
Integration notes: Schneider Electric Altivar 212 (embedded Modbus RTU)
Give the drive a unique F802 address (factory 1), make sure F807 points at the port you are wired to, then either set CMOd = 2 and FMOd = 4 (drive stopped) or keep them and set bits 15/14 in FA00. Write FA01 in 0.01 Hz and FA00 = 0400h (run forward) or C400h (run forward with command and reference priority). Poll Fd00, Fd01, FE03 and FC90 one register at a time.
Minimum registers to map
Addresses are 0-based wire addresses. Enough to monitor and run the unit; map more as the job needs.
| Register | Name | Type | Why | Access |
|---|---|---|---|---|
| HR 64000 | FA00 - Command word 1 | BITMAP16 | FA00: run/stop/reset and priority bits | Read/write |
| HR 64001 | FA01 - Frequency reference from comm. | UINT16 | FA01: frequency reference, 0.01 Hz | Read/write |
| HR 64768 | Fd00 - Output frequency | UINT16 | Fd00: output frequency, 0.01 Hz | Read |
| HR 64769 | Fd01 - Status word | BITMAP16 | Fd01: status word | Read |
| HR 65027 | FE03 - Output current | UINT16 | FE03: output current, 0.01 % | Read |
| HR 64656 | FC90 - Trip code | UINT16 | FC90: present trip code | Read |
| HR 64657 | FC91 - Alarm code | BITMAP16 | FC91: alarm flags | Read |
| HR 2129 | F851 - Com. fault setting | UINT16 | F851: reaction to comm loss | Read/write |
Enable Modbus control & writes
All communication settings are in [PROGRAMMING MENU] > [COMMUNICATION MENU] COM. F807 chooses which port may command the drive: 0 = RJ45, 1 = open-style terminal (factory). On the open-style port also set F829 = 1 (Modbus RTU, factory). F802 is the address for both ports (0 disables). Full network control: CMOd = 2 (Communication) and FMOd = 4 (Serial com ref.), changed only while stopped. Alternatively leave CMOd/FMOd on terminals and set FA00 bit 15 (commands) and bit 14 (reference) to take priority over the bus; the LOC/REM key and a logic input set to function 48 (Forced local) can still take control back.
Communication loss & watchdog
F803 [Com. time out], 0-100 s, factory 3 s (0 disables). The timer starts at the first valid frame addressed to the drive and is restarted by any request (read, write or identification). F851 lists the reactions 0 ramp stop and hand control back to CMOd/FMOd (LonWorks board only), 1 ignore, 2 ramp stop, 3 freewheel and 4 trip Err5 (RJ45) or Err8 (network port, factory). The programming manual adds that on Modbus only setting 1 is honoured and every other setting trips in Err5/Err8, so on Modbus expect either no reaction (1) or a trip. Detection is active when CMOd = 2 or FMOd = 4.
Byte order & addressing
- Function 03 reads exactly one register per request (quantity 1); asking for 2 at Fd00 returns exception 03. The only multi-register read is the indirect block at 16#1875 (quantity 1-5).
- Function 16 writes exactly one register (or the 2-register indirect block at 16#1870). Supported functions are 03, 06, 16 and 43/14 only - no FC04.
- Addresses are the hex communication numbers sent as-is: Fd00 -> 0xFD00 (64768), F802 -> 0x0802 (2050). Don't add 40001 and don't subtract 1.
- FA00 examples: 0400h run forward, 0600h run reverse when CMOd/FMOd are on serial; C400h / C600h run with communication priority regardless of CMOd/FMOd. Bit 13 resets a fault.
- Frequency values are 0.01 Hz: 6000 = 60.00 Hz, 8000 = 80.00 Hz.
- The drive transmits 2 stop bits and accepts 1 or 2, so masters set to 1 or 2 stop bits both work. Baud and parity changes need a power cycle.
- Read Device Identification (43/14) reports the vendor as 'Télémécanique', the catalog number (e.g. ATV212H075M3X) and the control software version as 4 ASCII digits.
Network setup
- RJ45 port: pin 4 = D1 (B), pin 5 = D0 (A), pin 2 = common, pin 7 = 10 V supply for a converter or the graphic display; pins 1, 3, 6, 8 not connected.
- Open-style terminal: B (+), A (-), GND (common), SCR (shield); two wires per cage are allowed for daisy chaining.
- Set switch SW103 to Term to connect the built-in 120 ohm terminator at a bus end (switch only with power off).
- Set F802 (address), then F800/F801 (RJ45) or F820/F821 (open style) for baud and parity; factory is 19200 bps, even parity. Cycle power so baud/parity take effect.
- Check traffic on the keypad monitor [Mdb com stat], which shows Rx/Tx activity for each port.
Watch out for
- F807 defaults to the open-style port. A master on the RJ45 socket can read but its run commands and reference are ignored until F807 = 0.
- Output current and voltages are percentages, not amps or volts.
- FA00/FA01 are not retained: after a power loss the drive comes back with no communication priority and a zero reference until the master writes them again.
- CMOd and FMOd can only be changed while the drive is stopped; a write while running returns exception 04.
- F803 = 0 or F851 = 1 disables communication-loss protection; use only for commissioning.
Schneider Electric Altivar 212 (embedded Modbus RTU) Modbus registers
Address = 0-based wire address (the documented number is shown under it when it differs) · Order: ABCD = high word first, CDAB = low word first · Scale: engineering value = raw × scale.
| Table | Address | Name | Description | Type | Order | Scale | Units | Access | Values / bits |
|---|---|---|---|---|---|---|---|---|---|
| HR | 3doc 3 (16#3, CMOd) | CMOd - Command mode sel | Run/stop source in remote mode; change only when stopped. | UINT16 | Read/write | 0 = Logic inputs (terminals); 1 = HMI (graphic display option); 2 = Communication (serial) | |||
| HR | 4doc 4 (16#4, FMOd) | FMOd - Frequency mode sel | Speed reference source in remote mode; change only when stopped. | UINT16 | Read/write | 1 = VIA; 2 = VIB; 3 = HMI (graphic display option); 4 = Serial communication; 5 = +/- Speed | |||
| HR | 519doc 519 (16#207, F207) | F207 - Remote spd ref 2 | Secondary reference source, selected by a logic input set to function 38. | UINT16 | Read/write | 1 = VIA; 2 = VIB; 3 = HMI; 4 = Communication; 5 = +/- Speed | |||
| HR | 2048doc 2048 (16#800, F800) | F800 - Mdb RJ45 baud | Baud rate of the RJ45 port; applies after power cycle. | UINT16 | Read/write | 0 = 9600 bps; 1 = 19200 bps | |||
| HR | 2049doc 2049 (16#801, F801) | F801 - Mdb RJ45 parity | Parity of the RJ45 port; applies after power cycle. | UINT16 | Read/write | 0 = None; 1 = Even; 2 = Odd | |||
| HR | 2050doc 2050 (16#802, F802) | F802 - Modbus address | Slave address for both ports, 1-247 (0 = inactive). Factory 1. | UINT16 | Read/write | ||||
| HR | 2051doc 2051 (16#803, F803) | F803 - Com. time out | Comm-loss timeout 1-100 s; 0 disables detection. Factory 3 s. | UINT16 | s | Read/write | |||
| HR | 2055doc 2055 (16#807, F807) | F807 - Com channel choice | Port that may send commands and the reference. | UINT16 | Read/write | 0 = RJ45; 1 = Open style (factory) | |||
| HR | 2080doc 2080 (16#820, F820) | F820 - Mdb network baud | Baud rate of the open-style port; applies after power cycle. | UINT16 | Read/write | 0 = 9600 bps; 1 = 19200 bps | |||
| HR | 2081doc 2081 (16#821, F821) | F821 - Mdb network parity | Parity of the open-style port; applies after power cycle. | UINT16 | Read/write | 0 = None; 1 = Even; 2 = Odd | |||
| HR | 2089doc 2089 (16#829, F829) | F829 - Network protocol | Protocol on the open-style port; applies after power cycle. | UINT16 | Read/write | 1 = Modbus RTU; 2 = Metasys N2; 3 = Apogee P1; 4 = BACnet; 5 = LonWorks | |||
| HR | 2129doc 2129 (16#851, F851) | F851 - Com. fault setting | Reaction to comm loss; on Modbus only 1 differs from a trip. Factory 4. | UINT16 | Read/write | 0 = Ramp stop, control returns to CMOd/FMOd (LonWorks board only); 1 = Not active (keep running); 2 = Ramp stop; 3 = Freewheel; 4 = Trip Err5 / Err8 | |||
| HR | 2160doc 2160 (16#870, F870) | F870 - Block write data 1 | First item of the indirect write block; applies after power cycle. | UINT16 | Read/write | 0 = No selection; 1 = Command word 1 (FA00); 2 = Command word 2 (FA20); 3 = Frequency setpoint (FA01); 4 = Relay command (FA50); 5 = FM analog output command (FA51); 6 = Speed setpoint (FA13) | |||
| HR | 2161doc 2161 (16#871, F871) | F871 - Block write data 2 | Second item of the indirect write block; applies after power cycle. | UINT16 | Read/write | 0 = No selection; 1 = Command word 1 (FA00); 2 = Command word 2 (FA20); 3 = Frequency setpoint (FA01); 4 = Relay command (FA50); 5 = FM analog output command (FA51); 6 = Speed setpoint (FA13) | |||
| HR | 2165doc 2165 (16#875, F875) | F875 - Block read data 1 | Item 1 of the indirect read block; applies after power cycle. | UINT16 | Read/write | 0 = No selection; 1 = Status (Fd01); 2 = Output frequency (Fd00); 3 = Output current (FE03); 4 = Output voltage (FE05); 5 = Alarm info (FC91); 6 = PID feedback; 7 = Input terminal monitor; 8 = Output terminal monitor; 9 = VIA monitor; 10 = VIB monitor; 11 = Motor speed monitor | |||
| HR | 2166doc 2166 (16#876, F876) | F876 - Block read data 2 | Item 2 of the indirect read block; applies after power cycle. | UINT16 | Read/write | 0 = No selection; 1 = Status (Fd01); 2 = Output frequency (Fd00); 3 = Output current (FE03); 4 = Output voltage (FE05); 5 = Alarm info (FC91); 6 = PID feedback; 7 = Input terminal monitor; 8 = Output terminal monitor; 9 = VIA monitor; 10 = VIB monitor; 11 = Motor speed monitor | |||
| HR | 2167doc 2167 (16#877, F877) | F877 - Block read data 3 | Item 3 of the indirect read block; applies after power cycle. | UINT16 | Read/write | 0 = No selection; 1 = Status (Fd01); 2 = Output frequency (Fd00); 3 = Output current (FE03); 4 = Output voltage (FE05); 5 = Alarm info (FC91); 6 = PID feedback; 7 = Input terminal monitor; 8 = Output terminal monitor; 9 = VIA monitor; 10 = VIB monitor; 11 = Motor speed monitor | |||
| HR | 2168doc 2168 (16#878, F878) | F878 - Block read data 4 | Item 4 of the indirect read block; applies after power cycle. | UINT16 | Read/write | 0 = No selection; 1 = Status (Fd01); 2 = Output frequency (Fd00); 3 = Output current (FE03); 4 = Output voltage (FE05); 5 = Alarm info (FC91); 6 = PID feedback; 7 = Input terminal monitor; 8 = Output terminal monitor; 9 = VIA monitor; 10 = VIB monitor; 11 = Motor speed monitor | |||
| HR | 2169doc 2169 (16#879, F879) | F879 - Block read data 5 | Item 5 of the indirect read block; applies after power cycle. | UINT16 | Read/write | 0 = No selection; 1 = Status (Fd01); 2 = Output frequency (Fd00); 3 = Output current (FE03); 4 = Output voltage (FE05); 5 = Alarm info (FC91); 6 = PID feedback; 7 = Input terminal monitor; 8 = Output terminal monitor; 9 = VIA monitor; 10 = VIB monitor; 11 = Motor speed monitor | |||
| HR | 64000doc 64000 (16#FA00, FA00) | FA00 - Command word 1 | Run/stop, direction, reset; bits 14/15 take reference/command priority. | BITMAP16 | Read/write | bit 0 = Preset speed select bit 1; bit 1 = Preset speed select bit 2; bit 2 = Preset speed select bit 3; bit 3 = Reserved (keep 0); bit 4 = Motor 2 / THR2 selection; bit 5 = PI control off; bit 6 = Accel/decel pattern 2 (F500/F501); bit 7 = Forced DC braking; bit 9 = Reverse (0 = forward); bit 10 = Run (0 = stop); bit 11 = Coast stop; bit 12 = Emergency stop (E trip); bit 13 = Fault reset; bit 14 = Setpoint priority to communication (ignores FMOd); bit 15 = Command priority to communication (ignores CMOd) | |||
| HR | 64001doc 64001 (16#FA01, FA01) | FA01 - Frequency reference from comm. | 0 to FH (max frequency). 6000 = 60.00 Hz. | UINT16 | × 0.01 | Hz | Read/write | ||
| HR | 64019doc 64019 (16#FA13, FA13) | FA13 - Speed reference from network | 0-24000 rpm, converted with motor poles F856. | UINT16 | rpm | Read/write | |||
| HR | 64032doc 64032 (16#FA20, FA20) | FA20 - Command word 2 | Energy counter reset and over-current stall level select. | BITMAP16 | Read/write | bit 1 = Reset input/output energy counters (clear it again afterwards); bit 12 = Over-current stall level 2 (F185) instead of 1 (F601) | |||
| HR | 64080doc 64080 (16#FA50, FA50) | FA50 - Terminal output data from comm. | Drives relays assigned to the serial-data functions. | BITMAP16 | Read/write | bit 0 = Relay FL (F132 = 38/39); bit 1 = Relay RY (F130/F137 = 40/41) | |||
| HR | 64081doc 64081 (16#FA51, FA51) | FA51 - Analog output data from comm. | FM output, 0-1023 (10-bit); needs FMSL = 18. | UINT16 | Read/write | ||||
| HR | 64656doc 64656 (16#FC90, FC90) | FC90 - Trip code | Present trip; 0 = none. | UINT16 | Read | 0 = nErr - no error; 1 = OC1 - overcurrent during accel; 2 = OC2 - overcurrent during decel; 3 = OC3 - overcurrent at constant speed; 4 = OCL - overcurrent in load at start; 5 = OCA - arm short circuit; 8 = EPHI - input phase loss; 9 = EPHO - output phase loss; 10 = OP1 - overvoltage during accel; 11 = OP2 - overvoltage during decel; 12 = OP3 - overvoltage at constant speed; 13 = OL1 - drive overload; 14 = OL2 - motor overload; 16 = OH - overheat; 17 = E - emergency stop; 18 = EEP1 - EEPROM write fault; 19 = EEP2 - EEPROM read fault; 20 = EEP3 - EEPROM fault; 21 = Err2 - RAM fault; 22 = Err3 - ROM fault; 23 = Err4 - CPU fault; 24 = Err5 - communication fault; 26 = Err7 - current detector fault; 27 = Err8 - option board / network fault; 28 = Err9 - graphic keypad communication fault; 29 = UC - undercurrent; 30 = UP1 - main circuit undervoltage; 32 = Ot - overtorque; 34 = EF2 - ground fault; 37 = OC1P - element overcurrent during accel; 38 = OC2P - element overcurrent during decel; 39 = OC3P - element overcurrent in run; 41 = EtYP - drive type error; 46 = OH2 - external thermal input; 47 = SOUt - VIA cable break; 50 = E-18 - analog signal cable break; 51 = E-19 - CPU fault; 52 = E-20 - excess torque boost; 53 = E-21 - CPU fault; 72 = Fd1 - damper 1 (closed) fault; 73 = Fd2 - damper 2 fault; 84 = Etn1 - auto-tuning error | |||
| HR | 64657doc 64657 (16#FC91, FC91) | FC91 - Alarm code | Pre-alarm flags. | BITMAP16 | Read | bit 0 = Overcurrent; bit 1 = Drive overload; bit 2 = Motor overload; bit 3 = Overheat; bit 4 = Overvoltage; bit 5 = Main circuit undervoltage; bit 7 = Undercurrent; bit 8 = Over-torque; bit 10 = Run-time hours reached; bit 13 = Main circuit undervoltage (MOFF); bit 14 = Forced decel/stop after momentary power loss (F256); bit 15 = Auto stop after running at low limit (F302) | |||
| HR | 64768doc 64768 (16#FD00, Fd00) | Fd00 - Output frequency | Present output frequency. | UINT16 | × 0.01 | Hz | Read | ||
| HR | 64769doc 64769 (16#FD01, Fd01) | Fd01 - Status word | Present drive status. | BITMAP16 | Read | bit 0 = FL relay active; bit 1 = Tripped (incl. retry / trip retention); bit 2 = Alarm present; bit 3 = MOFF main circuit undervoltage; bit 4 = Motor 2 (THR2) selected; bit 5 = PI control prohibited; bit 6 = Accel/decel pattern 2; bit 7 = Forced DC braking; bit 9 = Reverse; bit 10 = Running; bit 11 = Coast stop (ST off); bit 12 = Emergency stop; bit 13 = Standby with ST and RUN on; bit 14 = Standby (ready); bit 15 = Local (0 = remote) | |||
| HR | 64774doc 64774 (16#FD06, Fd06) | Fd06 - Digital inputs status | Present logic input states. | BITMAP16 | Read | bit 0 = F; bit 1 = R; bit 2 = RES; bit 7 = VIA (only when used as a logic input, F109) | |||
| HR | 64775doc 64775 (16#FD07, Fd07) | Fd07 - Digital outputs status | Present relay states. | BITMAP16 | Read | bit 0 = RY; bit 2 = FL | |||
| HR | 64834doc 64834 (16#FD42, Fd42) | Fd42 - Status word 2 | BITMAP16 | Read | bit 1 = Energy counters being reset; bit 8 = Accel/decel pattern 2; bit 12 = Over-current stall level 2 | ||||
| HR | 64841doc 64841 (16#FD49, Fd49) | Fd49 - Status word 3 | BITMAP16 | Read | bit 0 = RY output hold; bit 12 = RCH (F102) on; bit 13 = RCHF (F101/F102) on | ||||
| HR | 65024doc 65024 (16#FE00, FE00) | FE00 - Output frequency at last trip | UINT16 | × 0.01 | Hz | Read | |||
| HR | 65025doc 65025 (16#FE01, FE01) | FE01 - Status word at last trip | Same bits as Fd01, frozen at the trip. | BITMAP16 | Read | bit 0 = FL relay active; bit 1 = Tripped (incl. retry / trip retention); bit 2 = Alarm present; bit 3 = MOFF main circuit undervoltage; bit 4 = Motor 2 (THR2) selected; bit 5 = PI control prohibited; bit 6 = Accel/decel pattern 2; bit 7 = Forced DC braking; bit 9 = Reverse; bit 10 = Running; bit 11 = Coast stop (ST off); bit 12 = Emergency stop; bit 13 = Standby with ST and RUN on; bit 14 = Standby (ready); bit 15 = Local (0 = remote) | |||
| HR | 65026doc 65026 (16#FE02, FE02) | FE02 - Frequency reference before ramp | Reference before PI and ramp; manual tags it 'value before trip'. | UINT16 | × 0.01 | Hz | Read | ||
| HR | 65027doc 65027 (16#FE03, FE03) | FE03 - Output current | Percent, not amps (see notes on the base). | UINT16 | × 0.01 | % | Read | ||
| HR | 65028doc 65028 (16#FE04, FE04) | FE04 - DC bus voltage | Percent, not volts. | UINT16 | × 0.01 | % | Read | ||
| HR | 65029doc 65029 (16#FE05, FE05) | FE05 - Output voltage | Percent, not volts; manual tags it 'value before trip'. | UINT16 | × 0.01 | % | Read | ||
| HR | 65040doc 65040 (16#FE10, FE10) | FE10 - Latest trip code | Same code list as FC90. | UINT16 | Read | 0 = nErr - no error; 1 = OC1 - overcurrent during accel; 2 = OC2 - overcurrent during decel; 3 = OC3 - overcurrent at constant speed; 4 = OCL - overcurrent in load at start; 5 = OCA - arm short circuit; 8 = EPHI - input phase loss; 9 = EPHO - output phase loss; 10 = OP1 - overvoltage during accel; 11 = OP2 - overvoltage during decel; 12 = OP3 - overvoltage at constant speed; 13 = OL1 - drive overload; 14 = OL2 - motor overload; 16 = OH - overheat; 17 = E - emergency stop; 18 = EEP1 - EEPROM write fault; 19 = EEP2 - EEPROM read fault; 20 = EEP3 - EEPROM fault; 21 = Err2 - RAM fault; 22 = Err3 - ROM fault; 23 = Err4 - CPU fault; 24 = Err5 - communication fault; 26 = Err7 - current detector fault; 27 = Err8 - option board / network fault; 28 = Err9 - graphic keypad communication fault; 29 = UC - undercurrent; 30 = UP1 - main circuit undervoltage; 32 = Ot - overtorque; 34 = EF2 - ground fault; 37 = OC1P - element overcurrent during accel; 38 = OC2P - element overcurrent during decel; 39 = OC3P - element overcurrent in run; 41 = EtYP - drive type error; 46 = OH2 - external thermal input; 47 = SOUt - VIA cable break; 50 = E-18 - analog signal cable break; 51 = E-19 - CPU fault; 52 = E-20 - excess torque boost; 53 = E-21 - CPU fault; 72 = Fd1 - damper 1 (closed) fault; 73 = Fd2 - damper 2 fault; 84 = Etn1 - auto-tuning error | |||
| HR | 65041doc 65041 (16#FE11, FE11) | FE11 - 2nd previous trip code | Same code list as FC90. | UINT16 | Read | 0 = nErr - no error; 1 = OC1 - overcurrent during accel; 2 = OC2 - overcurrent during decel; 3 = OC3 - overcurrent at constant speed; 4 = OCL - overcurrent in load at start; 5 = OCA - arm short circuit; 8 = EPHI - input phase loss; 9 = EPHO - output phase loss; 10 = OP1 - overvoltage during accel; 11 = OP2 - overvoltage during decel; 12 = OP3 - overvoltage at constant speed; 13 = OL1 - drive overload; 14 = OL2 - motor overload; 16 = OH - overheat; 17 = E - emergency stop; 18 = EEP1 - EEPROM write fault; 19 = EEP2 - EEPROM read fault; 20 = EEP3 - EEPROM fault; 21 = Err2 - RAM fault; 22 = Err3 - ROM fault; 23 = Err4 - CPU fault; 24 = Err5 - communication fault; 26 = Err7 - current detector fault; 27 = Err8 - option board / network fault; 28 = Err9 - graphic keypad communication fault; 29 = UC - undercurrent; 30 = UP1 - main circuit undervoltage; 32 = Ot - overtorque; 34 = EF2 - ground fault; 37 = OC1P - element overcurrent during accel; 38 = OC2P - element overcurrent during decel; 39 = OC3P - element overcurrent in run; 41 = EtYP - drive type error; 46 = OH2 - external thermal input; 47 = SOUt - VIA cable break; 50 = E-18 - analog signal cable break; 51 = E-19 - CPU fault; 52 = E-20 - excess torque boost; 53 = E-21 - CPU fault; 72 = Fd1 - damper 1 (closed) fault; 73 = Fd2 - damper 2 fault; 84 = Etn1 - auto-tuning error | |||
| HR | 65042doc 65042 (16#FE12, FE12) | FE12 - 3rd previous trip code | Same code list as FC90. | UINT16 | Read | 0 = nErr - no error; 1 = OC1 - overcurrent during accel; 2 = OC2 - overcurrent during decel; 3 = OC3 - overcurrent at constant speed; 4 = OCL - overcurrent in load at start; 5 = OCA - arm short circuit; 8 = EPHI - input phase loss; 9 = EPHO - output phase loss; 10 = OP1 - overvoltage during accel; 11 = OP2 - overvoltage during decel; 12 = OP3 - overvoltage at constant speed; 13 = OL1 - drive overload; 14 = OL2 - motor overload; 16 = OH - overheat; 17 = E - emergency stop; 18 = EEP1 - EEPROM write fault; 19 = EEP2 - EEPROM read fault; 20 = EEP3 - EEPROM fault; 21 = Err2 - RAM fault; 22 = Err3 - ROM fault; 23 = Err4 - CPU fault; 24 = Err5 - communication fault; 26 = Err7 - current detector fault; 27 = Err8 - option board / network fault; 28 = Err9 - graphic keypad communication fault; 29 = UC - undercurrent; 30 = UP1 - main circuit undervoltage; 32 = Ot - overtorque; 34 = EF2 - ground fault; 37 = OC1P - element overcurrent during accel; 38 = OC2P - element overcurrent during decel; 39 = OC3P - element overcurrent in run; 41 = EtYP - drive type error; 46 = OH2 - external thermal input; 47 = SOUt - VIA cable break; 50 = E-18 - analog signal cable break; 51 = E-19 - CPU fault; 52 = E-20 - excess torque boost; 53 = E-21 - CPU fault; 72 = Fd1 - damper 1 (closed) fault; 73 = Fd2 - damper 2 fault; 84 = Etn1 - auto-tuning error | |||
| HR | 65043doc 65043 (16#FE13, FE13) | FE13 - 4th previous trip code | Same code list as FC90. | UINT16 | Read | 0 = nErr - no error; 1 = OC1 - overcurrent during accel; 2 = OC2 - overcurrent during decel; 3 = OC3 - overcurrent at constant speed; 4 = OCL - overcurrent in load at start; 5 = OCA - arm short circuit; 8 = EPHI - input phase loss; 9 = EPHO - output phase loss; 10 = OP1 - overvoltage during accel; 11 = OP2 - overvoltage during decel; 12 = OP3 - overvoltage at constant speed; 13 = OL1 - drive overload; 14 = OL2 - motor overload; 16 = OH - overheat; 17 = E - emergency stop; 18 = EEP1 - EEPROM write fault; 19 = EEP2 - EEPROM read fault; 20 = EEP3 - EEPROM fault; 21 = Err2 - RAM fault; 22 = Err3 - ROM fault; 23 = Err4 - CPU fault; 24 = Err5 - communication fault; 26 = Err7 - current detector fault; 27 = Err8 - option board / network fault; 28 = Err9 - graphic keypad communication fault; 29 = UC - undercurrent; 30 = UP1 - main circuit undervoltage; 32 = Ot - overtorque; 34 = EF2 - ground fault; 37 = OC1P - element overcurrent during accel; 38 = OC2P - element overcurrent during decel; 39 = OC3P - element overcurrent in run; 41 = EtYP - drive type error; 46 = OH2 - external thermal input; 47 = SOUt - VIA cable break; 50 = E-18 - analog signal cable break; 51 = E-19 - CPU fault; 52 = E-20 - excess torque boost; 53 = E-21 - CPU fault; 72 = Fd1 - damper 1 (closed) fault; 73 = Fd2 - damper 2 fault; 84 = Etn1 - auto-tuning error | |||
| HR | 65045doc 65045 (16#FE15, FE15) | FE15 - Frequency reference after ramp | Manual tags it 'value before trip'. | UINT16 | × 0.01 | Hz | Read | ||
| HR | 65046doc 65046 (16#FE16, FE16) | FE16 - Estimated speed | In Hz; manual tags it 'value before trip'. | UINT16 | × 0.01 | Hz | Read | ||
| HR | 65058doc 65058 (16#FE22, FE22) | FE22 - PID feedback value | Manual tags it 'value before trip'. | UINT16 | × 0.01 | Hz | Read | ||
| HR | 65062doc 65062 (16#FE26, FE26) | FE26 - Motor load | Manual tags it 'value before trip'. | UINT16 | % | Read | |||
| HR | 65063doc 65063 (16#FE27, FE27) | FE27 - Drive load | Manual tags it 'value before trip'. | UINT16 | % | Read | |||
| HR | 65065doc 65065 (16#FE29, FE29) | FE29 - Input power | Manual tags it 'value before trip'. | UINT16 | × 0.01 | kW | Read | ||
| HR | 65077doc 65077 (16#FE35, FE35) | FE35 - Analog input VIA value | Raw 0-1023 (10-bit). | UINT16 | Read | ||||
| HR | 65078doc 65078 (16#FE36, FE36) | FE36 - Analog input VIB value | Raw 0-1023 (10-bit). | UINT16 | Read | ||||
| HR | 65093doc 65093 (16#FE45, FE45) | FE45 - Command mode status | Where run commands come from now. | UINT16 | Read | 0 = Terminal board; 1 = Operation panel; 2 = Serial communication | |||
| HR | 65094doc 65094 (16#FE46, FE46) | FE46 - Setpoint mode status | Where the speed reference comes from now. | UINT16 | Read | 1 = VIA; 2 = VIB; 3 = Operation panel; 4 = Serial communication; 5 = Terminal up/down; 255 = Preset speed operation | |||
| HR | 65145doc 65145 (16#FE79, FE79) | FE79 - Alarm of run time | Lifetime / service alarms. | BITMAP16 | Read | bit 0 = Fan life; bit 1 = Circuit board life; bit 2 = Main circuit capacitor life; bit 3 = User-set run time | |||
| HR | 65168doc 65168 (16#FE90, FE90) | FE90 - Output speed | Motor speed. | UINT16 | rpm | Read |
Notes on this map
- Second source: Altivar 212 Programming Manual S1A53838 rev 04 (06/2025), https://download.schneider-electric.com/files?p_Doc_Ref=S1A53838 - used for the F207 value list (p. 88), parameters that can only be changed while stopped (p. 41), the CMOd/FMOd notes and the F851/F829 remarks (pp. 87, 148-149), and the keypad meaning of the percent monitors (pp. 20-22).
- Every register is one 16-bit word; the map has no 32-bit values. The manual gives no signed/unsigned type and no ranges for the monitors. The ones kept (frequencies, speed, current, voltages, loads, input power) are magnitudes with no negative case in the manual's descriptions (direction is a separate status bit) and are typed UINT16; the writable registers have ranges from 0 upward.
- Output current FE03, DC bus voltage FE04 and output voltage FE05 are in 0.01 % steps, not amps or volts. The Modbus manual does not state the 100 % base. On the keypad, current in % is relative to the drive's rated output current and voltage in % to 200 V (240 V class) or 400 V (480 V class) (programming manual p. 20).
- Monitors marked 'value before trip' in the manual's description column (FE02, FE05, FE15, FE16, FE22, FE26, FE27, FE29) are kept with that wording; Fd00, Fd06 and Fd07 are tagged as current values, and FE03, FE04 and FE90 carry no tag.
- FA00, FA01, FA13, FA20, FA50 and FA51 live in RAM only: they return to 0 at power-off, reset or factory setting, so the priority bits and reference must be rewritten after a power cycle.
- Left out: torque FE18, torque current FE20, exciting current FE21 and output power FE30, because they can plausibly be negative and the manual gives no signedness; input/output energy FE76/FE77 (1 Wh in a 16-bit word while the keypad shows kWh per F749, unclear) and run-time counters FE14/FE80 (manual says 0.01 h, keypad says 0.01 = 1 hour, conflicting).
- Left out: ACC (address 9) because the Modbus manual's worked example gives both 0.1 s and 0.01 s as its unit; other drive parameters (FH, UL, LL, motor data) because the Modbus manual does not print their addresses and the current programming manual has no address column.
- Left out: FE06/FE07 (I/O at last trip; FE07's decimal address is misprinted as 65030), Fd42/Fd49 trip copies FE42/FE49, FA49 damper feedback (address not printed), drive model code F805/FB05 (two different codes printed) and LI selection F112 (long function list).
- Trip codes Err1 (speed reference alarm) and CFI2 (download transfer fault) have no numeric code in the manual and are not in the value list.
- Indirect blocks: after setting F875-F879 (power cycle), one FC03 read at 16#1875 with quantity 1-5 returns those monitors in order; after setting F870/F871, one FC16 write of 2 registers at 16#1870 writes both items. These block addresses only accept those exact request shapes.
Check it against the live device. A register map tells you what the controller can expose; the unit in front of you may differ by firmware or options. Read a few registers and compare them with the unit’s own display; for a 32-bit value the float and byte-order decoder shows all four word orders at once, so a wrong word order or scale is obvious. New to this? Read what a register map is and why addresses are off by one.
Questions about the Schneider Electric Altivar 212 (embedded Modbus RTU)
What Modbus registers does the Schneider Electric Altivar 212 (embedded Modbus RTU) have?
This map lists 55 registers: 55 holding registers. 25 of them can be written. Registers vary with firmware, options and configuration, so confirm against the device.
Are the Schneider Electric Altivar 212 (embedded Modbus RTU) Modbus addresses 0-based or 1-based?
The manufacturer's document numbers registers hexadecimal, 0-based. Every address on this page is the 0-based wire address you put in the request; the documented number is shown under it where it differs. Each parameter's communication number is its register address in hex: Fd00 is 16#FD00 = 64768, FA01 is 16#FA01 = 64001, and F802 is 16#0802 = 2050 (the leading F of Fxxx parameters is not part of the address). The manual prints both forms, and its example frame reads output frequency with starting address FD 00, so the address goes on the wire unchanged, with no 40001 offset and no minus 1.
What are the minimum Modbus registers to integrate the Schneider Electric Altivar 212 (embedded Modbus RTU)?
Start with HR 64000 FA00 - Command word 1 (FA00: run/stop/reset and priority bits); HR 64001 FA01 - Frequency reference from comm. (FA01: frequency reference, 0.01 Hz); HR 64768 Fd00 - Output frequency (Fd00: output frequency, 0.01 Hz); HR 64769 Fd01 - Status word (Fd01: status word); HR 65027 FE03 - Output current (FE03: output current, 0.01 %); HR 64656 FC90 - Trip code (FC90: present trip code); HR 64657 FC91 - Alarm code (FC91: alarm flags); HR 2129 F851 - Com. fault setting (F851: reaction to comm loss).
How do I enable Modbus control of the Schneider Electric Altivar 212 (embedded Modbus RTU)?
All communication settings are in [PROGRAMMING MENU] > [COMMUNICATION MENU] COM. F807 chooses which port may command the drive: 0 = RJ45, 1 = open-style terminal (factory). On the open-style port also set F829 = 1 (Modbus RTU, factory). F802 is the address for both ports (0 disables). Full network control: CMOd = 2 (Communication) and FMOd = 4 (Serial com ref.), changed only while stopped. Alternatively leave CMOd/FMOd on terminals and set FA00 bit 15 (commands) and bit 14 (reference) to take priority over the bus; the LOC/REM key and a logic input set to function 48 (Forced local) can still take control back.
What happens when the Schneider Electric Altivar 212 (embedded Modbus RTU) loses Modbus communication?
F803 [Com. time out], 0-100 s, factory 3 s (0 disables). The timer starts at the first valid frame addressed to the drive and is restarted by any request (read, write or identification). F851 lists the reactions 0 ramp stop and hand control back to CMOd/FMOd (LonWorks board only), 1 ignore, 2 ramp stop, 3 freewheel and 4 trip Err5 (RJ45) or Err8 (network port, factory). The programming manual adds that on Modbus only setting 1 is honoured and every other setting trips in Err5/Err8, so on Modbus expect either no reaction (1) or a trip. Detection is active when CMOd = 2 or FMOd = 4.
Where is the official Schneider Electric Altivar 212 (embedded Modbus RTU) Modbus documentation?
The source is Altivar 212 - Variable speed drives for asynchronous motors - Modbus communication manual (S1A53844 (file revision 02)), revision 2012-09, published free by Schneider Electric at https://download.schneider-electric.com/files?p_Doc_Ref=S1A53844.
More Schneider Electric Modbus register maps
- Variable frequency drive
Schneider Electric Altivar Machine ATV320 (embedded Modbus RTU)
ATV320 Book (ATV320...B) and Compact (ATV320...C) drives on the built-in RJ45 Modbus serial port; register map per Communication Parameters file NVE41316 V3.5.
Also known as: ATV320, Altivar 320, ATV320U, ATV320D, ATV320 Book, ATV320 Compact - Variable frequency drive
Schneider Electric Altivar Process ATV630 / ATV600 family (Modbus serial and Modbus TCP)
Altivar Process ATV600 drives (ATV630, ATV650 and other ATV6x0 models) on the embedded RJ45 Modbus serial port or the embedded Ethernet Modbus TCP server; register map per Communication Parameters file EAV64332 V4.6.
Also known as: ATV600, ATV630, ATV650, ATV660, ATV680, Altivar Process 600, ATV630U, ATV630D - Solar inverter
Schneider Electric Conext CL three-phase PV inverter 18/20/25 kVA
Conext CL (IEC, PVSCL20E/25E) and Conext CL-NA (PVSCL18NA/25NA) three-phase string inverters, map revision 1.5.
Also known as: Conext CL-NA, Conext CL-E, PVSCL18NA, PVSCL20E, PVSCL25E, PVSCL25NA
Source: Altivar 212 - Variable speed drives for asynchronous motors - Modbus communication manual · S1A53844 (file revision 02) · rev. 2012-09. Register numbers, types, scaling and units are reproduced as published; descriptions are our own.