Libraries/IOControl/include/IO/Modbus/STM8Relay/Device.h
Go to the documentation of this file.
DevNode::ID nodeIdMax() const
Get maximum valid Node ID for this device.
Definition: Libraries/IOControl/include/IO/Device.h:197
A virtual device, represents a modbus slave device.
Definition: Libraries/IOControl/include/IO/Modbus/Device.h:39
Definition: Libraries/IOControl/include/IO/Modbus/STM8Relay/Device.h:53
const FlashString & deviceClass() const override
Return the Device class name, e.g. 'r421a'.
Definition: Libraries/IOControl/include/IO/Modbus/STM8Relay/Device.h:55
Definition: Libraries/IOControl/include/IO/Modbus/STM8Relay/Device.h:50
uint16_t maxNodes() const override
Determine maximum number of nodes supported by the device.
Definition: Libraries/IOControl/include/IO/Modbus/STM8Relay/Device.h:88
const StateMask & getStates() const
Definition: Libraries/IOControl/include/IO/Modbus/STM8Relay/Device.h:78
DevNode::States getNodeStates(DevNode node) const override
Return the current set of states for all nodes controlled by this device.
static const Factory factory
Definition: Libraries/IOControl/include/IO/Modbus/STM8Relay/Device.h:61
void handleEvent(IO::Request *request, Event event) override
Implementations may override this method to customise event handling.
void parseJson(JsonObjectConst json, Config &cfg)
ErrorCode init(const Config &config)
DevNode::ID nodeIdMin() const override
Get minimum valid Node ID for this device.
Definition: Libraries/IOControl/include/IO/Modbus/STM8Relay/Device.h:83
ErrorCode init(JsonObjectConst config) override
bool isValid(DevNode node) const
Definition: Libraries/IOControl/include/IO/Modbus/STM8Relay/Device.h:93
IO::Request * createRequest() override
Create a request object for this device.
Definition: Libraries/IOControl/include/IO/RS485/Device.h:37
Device(Controller &controller, const char *id)
Definition: Libraries/IOControl/include/IO/RS485/Device.h:80
Request represents a single user request/response over a bus.
Definition: IOControl/include/IO/Request.h:80
Json json
Definition: Libraries/IOControl/include/IO/Modbus/STM8Relay/Device.h:36
constexpr uint8_t RELAY_CHANNEL_MIN
Definition: Libraries/IOControl/include/IO/Modbus/STM8Relay/Device.h:46
constexpr uint8_t RELAY_MAX_CHANNELS
Definition: Libraries/IOControl/include/IO/Modbus/STM8Relay/Device.h:47
Inherited classes expand this definition as required.
Definition: Libraries/IOControl/include/IO/Device.h:80
R421A device configuration.
Definition: Libraries/IOControl/include/IO/Modbus/STM8Relay/Device.h:66
Modbus::Device::Config modbus
Basic modbus configuration.
Definition: Libraries/IOControl/include/IO/Modbus/STM8Relay/Device.h:67
uint8_t channels
Number of channels (typically 4 or 8)
Definition: Libraries/IOControl/include/IO/Modbus/STM8Relay/Device.h:68
Tracks state of multiple relays.
Definition: Libraries/IOControl/include/IO/Modbus/STM8Relay/Device.h:40
BitSet32 channelStates
Definition: Libraries/IOControl/include/IO/Modbus/STM8Relay/Device.h:42
BitSet32 channelMask
Identifies valid channels.
Definition: Libraries/IOControl/include/IO/Modbus/STM8Relay/Device.h:41