4#ifndef SRC_SUPLA_MODBUS_MODBUS_CONFIGURATOR_H_
5#define SRC_SUPLA_MODBUS_MODBUS_CONFIGURATOR_H_
7#include <supla/element.h>
13enum class Role : uint8_t {
14 NotSet = MODBUS_ROLE_NOT_SET,
15 Master = MODBUS_ROLE_MASTER,
16 Slave = MODBUS_ROLE_SLAVE
19enum class ModeSerial : uint8_t {
20 Disabled = MODBUS_SERIAL_MODE_DISABLED,
21 Rtu = MODBUS_SERIAL_MODE_RTU,
22 Ascii = MODBUS_SERIAL_MODE_ASCII
25enum class ModeNetwork : uint8_t {
26 Disabled = MODBUS_NETWORK_MODE_DISABLED,
27 Tcp = MODBUS_NETWORK_MODE_TCP,
28 Udp = MODBUS_NETWORK_MODE_UDP
31enum class SerialStopBits : uint8_t {
32 One = MODBUS_SERIAL_STOP_BITS_ONE,
33 OneAndHalf = MODBUS_SERIAL_STOP_BITS_ONE_AND_HALF,
34 Two = MODBUS_SERIAL_STOP_BITS_TWO
39 ModeSerial mode = ModeSerial::Disabled;
41 SerialStopBits stopBits = SerialStopBits::One;
45 ModeNetwork mode = ModeNetwork::Disabled;
68 uint8_t oneAndHalf: 1;
80 Role role = Role::NotSet;
81 uint8_t modbusAddress = 1;
82 uint16_t slaveTimeoutMs = 0;
86 bool operator==(
const Config &other)
const;
87 bool operator!=(
const Config &other)
const;
102 bool isNetworkModeEnabled()
const;
103 bool isSerialModeEnabled()
const;
104 bool isModbusDisabled()
const;
105 bool isMaster()
const;
106 bool isSlave()
const;
107 bool isRtuMode()
const;
108 bool isAsciiMode()
const;
111 void storeConfig(
bool local =
false)
const;
112 void printConfig()
const;
118 bool configChanged =
false;
119 bool initDone =
false;
Definition SuplaDevice.h:167
Base class for all elements of SuplaDevice.
Definition element.h:27
Definition modbus_configurator.h:94
void onInit() override
Third method called on element in SuplaDevice.begin()
Definition modbus_configurator.cpp:183
void onDeviceConfigChange(uint64_t fieldBit) override
Method called when device config is changed.
Definition modbus_configurator.cpp:216
void onLoadConfig(SuplaDeviceClass *) override
First method called on element in SuplaDevice.begin().
Definition modbus_configurator.cpp:188
Definition modbus_configurator.h:49
Definition modbus_configurator.h:79
Definition modbus_configurator.h:44
Definition modbus_configurator.h:38