Module pyModbusTCP.server

This module provide the ModbusServer and DataBank class.

class pyModbusTCP.server.ModbusServer

class pyModbusTCP.server.ModbusServer(host='localhost', port=502, no_block=False, ipv6=False)

Modbus TCP server

is_run

Return True if server running.

start()

Start the server.

Do nothing if server is already running. This function will block if no_block is not set to True.

stop()

Stop the server.

Do nothing if server is already not running.

class pyModbusTCP.server.DataBank

class pyModbusTCP.server.DataBank

Data class for thread safe access to bits and words space

classmethod get_bits(address, number=1)

Read data on server bits space

Parameters:
  • address (int) – start address
  • number (int) – number of bits (optional)
Returns:

list of bool or None if error

Return type:

list or None

classmethod get_words(address, number=1)

Read data on server words space

Parameters:
  • address (int) – start address
  • number (int) – number of words (optional)
Returns:

list of int or None if error

Return type:

list or None

classmethod set_bits(address, bit_list)

Write data to server bits space

Parameters:
  • address (int) – start address
  • bit_list (list) – a list of bool to write
Returns:

True if success or None if error

Return type:

bool or None

Raises:

ValueError – if bit_list members cannot be convert to bool

classmethod set_words(address, word_list)

Write data to server words space

Parameters:
  • address (int) – start address
  • word_list (list) – a list of word to write
Returns:

True if success or None if error

Return type:

bool or None

Raises:

ValueError – if word_list members cannot be convert to int