In modern industrial automation systems, seamlessly integrating frequency converters into the upper computer control network is a key step in achieving intelligent manufacturing. Bonfiglioli provides CM-232 and CM-485 series communication modules for its Active and ACU series frequency converters, enabling devices to access RS232 or RS485 serial networks via Modbus protocol (RTU or ASCII mode).

Chapter 1: Hardware Installation and Bus Networking
Correct hardware installation is the foundation of successful communication. The CM series module is an independent expansion unit that needs to be installed in slot B of the frequency converter.
1.1 Key installation steps
According to Chapter 3 of the manual, the following points must be followed during installation:
Power off operation: The module can only be plugged in and unplugged after the inverter has completely cut off the power and waited for the DC bus capacitor to discharge (at least 3 minutes).
PE spring grounding: Before installing the module, use the accompanying M4 screws to secure the PE spring to the equipment, ensuring that the shielding layer is in good contact with the inverter housing through the spring. This is the key to EMC compliance.
Physical assembly: Insert the module into Slot B until you hear a snap fit sound, then tighten the M2 screw to secure the module.
1.2 RS485 bus topology and terminal resistance
For RS485 networks (CM-485), the bus structure must be a daisy chain linear topology. The key point to note is the configuration of the Bus Termination resistor (Chapter 4.2.3):
Location: Terminal resistors must and can only be activated at the first and last nodes of the physical bus.
Activation method: Set through DIP switch S1 on the module (default OFF).
Consequences of failure: Incorrect terminal resistor configuration will directly lead to bus communication failure.
The manual also provides a reference circuit diagram for active terminals, which is recommended for use in strong interference environments, but it is strictly prohibited to use both internal DIP switches and external active terminals simultaneously.
Chapter 2: Protocol Switching and Serial Port Parameter Configuration
By default, the CM-232/485 module runs under Bonfiglioli's proprietary protocol VABus. To enable Modbus, explicit parameter settings must be made (Sections 5.1 and 6).
2.1 Switching Protocol Types
Switch through parameter Protocol 395:
Set 395=2: Select Modbus RTU mode.
Set 395=3: Select Modbus ASCII mode.
Special note: The parameter modification will take effect immediately. If communication is interrupted due to incorrect settings, communication can only be restored by forcing the switch back to the VABus protocol through the local KP500 control unit.
2.2 Serial port parameter synchronization
The baud rate and checksum of both communication parties (frequency converter and main station) must be strictly consistent.
Baud Rate 10: Due to its level characteristics, CM-232 recommends a maximum line length of 30 meters at 19200bps; CM-485 can reach 1200 meters at 9600bps.
Parity 1375 for Modbus: Supports even parity (EVENT), odd parity (ODD), or no parity (None).
Key operation: After modifying the baud rate or checksum, the frequency converter must undergo a software reset (setting parameter Programming 34=123) or be powered on again for the new parameters to take effect.

Chapter 3: Deep Analysis and Frame Structure of Modbus Protocol
The CM-232/485 module supports the standard Modbus master-slave protocol. Engineers need to understand the unique address mapping and function codes when writing communication programs.
3.1 Parameter Addressing Rules (Dataset Mechanism)
The parameters of Bonfiglioli frequency converter support multiple data sets. The Start Address of Modbus is a 16 bit word, and its encoding rule is:
High 4 digits: represents the dataset number (0-9). 0 represents writing to all datasets, 1-4 represents corresponding datasets.
The lower 12 digits represent the parameter number (0-1599).
For example, read parameter 372 (rated speed) from dataset 2, whose address is hexadecimal 0x2174.
3.2 Detailed explanation of function code support
In addition to the standard Modbus function codes, this module has extended private function codes for 32-bit long integer data such as frequency and cumulative battery values.
Read 16 bit parameters (FC 03): used for reading and writing integer type parameters (such as current and voltage limiting).
Write 16 bit parameter (FC 06): Note that if decimals are required when writing values, they must be amplified by 10, 100, or 1000 times (for example, if 10.00Hz is set, the sent value should be 1000).
Read 32-bit parameters (FC 100, 0x64): Used to read long integer parameters (such as speed, high-frequency reference value).
Write 32-bit parameter (FC 101, 0x65): The usage is the same as FC 06, but the data field is 4 bytes.
Diagnostic Function (FC 08): Supports sub function codes 0x0A (clearing counter) and 0x0B-0x12 (querying bus message count, CRC error count, etc.), and is an important tool for troubleshooting physical layer interference.