Chapter 2. API Reference
• ESP_ERR_INVALID_STATE Initialization failure
Parameters
• [out] handler: handler(pointer) to master data structure
• [in] port_type: type of stack
void mbc_master_init_iface(void *handler)
Initialize Modbus Master controller interface handle.
Parameters
• [in] handler: - pointer to master data structure
esp_err_t mbc_master_destroy(void)
Destroy Modbus controller and stack.
Return
• ESP_OK Success
• ESP_ERR_INVALID_STATE Parameter error
esp_err_t mbc_master_start(void)
Start Modbus communication stack.
Return
• ESP_OK Success
• ESP_ERR_INVALID_ARG Modbus stack start error
esp_err_t mbc_master_setup(void *comm_info)
Set Modbus communication parameters for the controller.
Return
• ESP_OK Success
• ESP_ERR_INVALID_ARG Incorrect parameter data
Parameters
• comm_info: Communication parameters structure.
esp_err_t mbc_master_set_descriptor(const mb_parameter_descriptor_t *descriptor, const
uint16_t num_elements)
Assign parameter description table for Modbus controller interface.
Return
• esp_err_t ESP_OK - set descriptor successfully
• esp_err_t ESP_ERR_INVALID_ARG - invalid argument in function call
Parameters
• [in] descriptor: pointer to parameter description table
• num_elements: number of elements in the table
esp_err_t mbc_master_send_request(mb_param_request_t *request, void *data_ptr)
Send data request as defined in parameter request, waits response from slave and returns status of command
execution. This function provides standard way for read/write access to Modbus devices in the network.
Return
• esp_err_t ESP_OK - request was successful
• esp_err_t ESP_ERR_INVALID_ARG - invalid argument of function
• esp_err_t ESP_ERR_INVALID_RESPONSE - an invalid response from slave
• esp_err_t ESP_ERR_TIMEOUT - operation timeout or no response from slave
• esp_err_t ESP_ERR_NOT_SUPPORTED - the request command is not supported by slave
• esp_err_t ESP_FAIL - slave returned an exception or other failure
Parameters
• [in] request: pointer to request structure of type mb_param_request_t
• [in] data_ptr: pointer to data buffer to send or received data (dependent of command field in
request)
esp_err_t mbc_master_get_cid_info(uint16_t cid, const mb_parameter_descriptor_t
**param_info)
Get information about supported characteristic defined as cid. Uses parameter description table to get this
Espressif Systems 636
Submit Document Feedback
Release v4.4