In this tutorial we will learn more about automation functions in EasyIoT server.
Basics terminology
Before we start programming we should describe some basics terminology in EasyIoT server
Driver
Driver is used to communicate with hardware sensors. It can be Raspberry Pi GPIO port, MySensors modules, Virtual modules or ESP8266 modules. Currently supported drivers are:
- MySensors - Domains.MYSENSORS
- RPiGPIO - Domains.RPIGPIO
- Esp8266 - Domains.ESP8266
- Virtual - Domains.VIRTUAL
This driver names are used when addressing module. Modules are added in EasyIoT server in diver configuration.
Modules
Module or sensor node is sensor displayed in EasyIoT server WEB UI. When you add sensor in EasyIoT server it gets instance of module with unique address. This address can be visible in WEB display and later used in programming. Each module has its sensor type. Current sensor types are:
- S_GENERIC - AI, DI
- S_DIGITAL_INPUT - DI
- S_DIGITAL_OUTPUT - DO
- S_DOOR - DI
- S_ANALOG_INPUT - AI
- S_TEMP - AI
- S_HUM - AI
- S_LEAK - DI
- S_BARO - AI
- S_ANALOG_OUTPUT - AO
- S_DIMMER - AO, DO
- S_TEMP_AO - AO
- S_HUM_AO - AO
- S_LIGHT_LEVEL - AI
- S_DISTANCE - AI
- S_DUST - AI
- S_POWER - AI
- S_WATER - AI
- S_UV - AI
- S_MOTION - DI
There may be more sensor types in new releases.
Module driver and address is visible in WEB interface. Use this driver and address to use module in automation program.
Parameters
Each module has one or may parameters or properties. Parameter can be sensor value or internal variable. Some parameters are used to display value in WEB display of module. For example module type S_TEMP can show parameter Sensor.Temperature.
Current supported parameters are:
- Sensor.DigitalValue
- Sensor.DoorWindow
- Sensor.Leak
- Sensor.Motion
- Sensor.AnalogValue
- Sensor.Humidity
- Sensor.Temperature
- Sensor.Pressure
- Sensor.LightLevel
- Sensor.Distance
- Sensor.DustLevel
- Sensor.Power
- Sensor.PowerPerTime
- Sensor.WaterFlow
- Sensor.WaterVolume
- Sensor.UVIndex
- Sensor.DigitalOutput
- Sensor.DimmerLevel
- Status.Battery
- Status.Connection
- Sensor.Forecast
- Settings.MinValue
- Settings.MaxValue
- Settings.ValueStep
You can always add your own custom parameters.
Events
When some value in driver is changed it triggers event. Event update database value, value of sensor property and UI (WEB or mobile app.). Event can also be used to trigger automation program execution. In fact it's recommended to use events to trigger automation programs not scheduler whenever is possible.
Interface
Interface is used to interact with end user. In most cases it's WEB interface or mobile app interface, but it can be also SMS interface.
Helper function
Helper functions are used to access EasyIoT components. Helper functions can help to catch events, trigger events, read and write properties of modules, send SMS, send email...
In next tutorial we will go in details with helper functions and show some program examples.
See also:
EasyIoT server automation - part I
EasyIoT server automation - part III
See more tutorials at http://iot-playground.com/build
Buying guide
To support this site and EasyIoT framework development please buy in our store.
Comments
SevenSegNumFontPlus.h
SevenSeg_XXXL_Num.h
arial_normal.h
In the end I just deleted these three lines and it compiled without a problem. I do not know why this works but it does. Using Arduino 1.6.7
Yes it will
I ordered my first R.Pi. I hope I can have Mysensor network and ESP8266 network working simultaneous.
MQTT Gateway not serial, but is clear that it is not work, still..........
Yes, windows version only works on ESP8266. MySensors serial gateway is not supported.
Windows. IoT It suppose that it is supported by MQTT Gateway of Mysensors but, I cannot see Mysensor driver in "Configure", so I can't configure mi network
RSS feed for comments to this post