CavyIoT system is very easy to understand and with adequate knowledge of basic electronics like sensors, microcontroller, arduino, ESP-8266, Internet and programming language C and C++, developers can build and deploy any challenging IoT project of automation.
The following flow diagram illustrates the complete working of CavyIoT system:
The main components of CavyIoT system are IoT-Device, Control Panel and CavyIoT Server.
IoT-Device: The term IoT-Device in CavyIoT system means is an electronic device, which
For example ESP-8266 development board has all this capabilities and is available in cheap price.
It is a GUI based software accesiable over internet and is capable to monitor live data uploaded to server from the IoT-Device
as well as, is also capable to send control signal for remotely controlling relays of 'IoT-Device'.
On control panel you have canvas gauges and buttons. You can set gauge parameters of your choise for monitoring sensor data, you can set unit, min value, max value,steps, major ticks,minor ticks,highlights color. You can see Demo here.
Similarly all the buttons also can be customized to send the control signal. When you click on the button,
the label of button is send as Control Signal to your device.
(The last control signal issued is displayed below the buttons on Control Panel)
In button setting each button has 3 parameters as,
You can set these parameters meaningfully as per your requirement by selecting 'Edit Buttons' option in 'Settings Menu'.
This is very useful when if your aim is to control electric device like bulb,fan, heater, blower and so on, with the help of external relays.
if the bulb is connected to the relay, and input of relay to the Pin D7 of 'ESP-8266'. In this case you may set subject as 'BULB', and controlling actions for the bulb are 'ON' and 'OFF' so you may set 'Act1' as 'ON' and 'Act2' as 'OFF'.
After the setting done, with the help of this button on control panel. You can send the meaningful control signals 'BULB_ON' and 'BULB_OFF' to your IoT-Device (development board). You can process the received control signals to switch bulb 'ON' and 'OFF' by feeding the HIGH/LOW of your development boards Pin D7, at the related relay drivers input.
CavyIoT Server: Its role is like a mediator between IoT-Device and Control Panel. The 'IoT-Device' send sensor data to the server, for monitoring live data received and also receives Control Signal from the server for controlling its relays from remote location.
CavyIoT service grants subscriber the permission, to access the 'control panel'.
The control panel is for monitoring live data, as well as is for sending 'control signals ' from anywhere anytime, to his IoT-device through the internet .
(Information about Control Panel and settings)
Login first and then Activate IoT service. For activating IoT service Device Name and Service_id is required. Device name in combination with your username work as a key, to validate your 'IoT-Device' on CavyIoT server. It is unique and cannot be changed.
Device name('IoT-Device') is required for programming ESP-8266 so as to communicate with CavyIoT server.
Activate IoT service (Screenshots)-
As per last screenshot the control panel for your named device is ready to interact with your device (eg:ESP-8266).
The objective of 'Remote Control Panel' is to display data received from IoT device,
and if the user clicks button on the control panel then is to send control signal to the IoT device.
The procedure of sending 'sensor data' to server for 'data visualization' in 'Remote control panel', and receiving 'control signal' for the device is possible with a 'few lines of code in (c++)'.
From the step wise screenshot given below, You will be more clear about the setting of the meaningful parameters for buttons,
which are intented to work with an Example code.
An Example code below is for monitoring live temperature, humidity and for controlling Four LED using CavyIoT service via control panel.
Edit Buttons (Screenshots)
(Circuit diagram and example code for ESP-8266)
|Remote Control panel||IoT-device|