This project implements the interconnected system of nodes using ESP8266 boards. The basic requirement of the hardware used were:
The controller should be robust to handle frequent disruptions in the network
Wireless communication needs to be enabled, as the physical connection may not be possible in various applications
Components must be cheap and reliable, to increase the scale of the application
Based on these criteria, the following components were selected, and implemented using the circuit discussed in this section.
This is a micro controller compatible with the Arduino environment, which has built-in Wi-Fi connectivity. ESP8266 has been used for several IoT applications, and has proven to be one of the cheapest and reliable controller available in the market. It has three 3.3 V pins which can provide up to 12 mA and has 17 GPIO pins which can be used for various applications.
The breadboard is used to create semi-permanent circuits which can be used for the experimental implementation of circuits. The breadboard can be replaced with permanent circuit boards during final implementation.
Client and Bridge nodes in this proposed architecture are implemented using ESP8266. The client modules detect the sit - in activities using the feedback received from the tactile push button switches, while the bridge node will just send and receive the communication from these client nodes. The bridge node will send the data to the gateway through a serial communication which then will send the data into remote applications using the MQTT protocol. The details of the communication protocols used is available in the Software Design part.
In the client node, one end of the push button switch is connected to the D1 pin of the ESP8266 controller, and the other end is connected to the 3V pin. When the push button is pressed, the circuit is closed and signals are received in the controller. A 10 kΩ resistor is connected with the D1 part of the push button, this resistor will dissipate any residual current left in the circuit when the button is disengaged and will make sure only the right detections are passed to the controller. The D0 pin of the controller is connected with the RST pin, this will be used to implement effective sleep in the circuit design, so as to increase the lifetime of the device. The G pin of the esp is connected with the ground, to complete the interconnections in the circuit. The ESP8266 will be powered via the micro-USB port available on the board. In the final implementation, the power is supplied using a battery which is selected based on the lifetime requirements of the system. During the experimental demonstration, the power is supplied to the client as well as bridge nodes using a USB cable connected to a standalone computer.
The bridge module communicates with the client modules to collect their IDs, and transfers them to the gateway through a serial port. There are no additional components physically associated with this module.
Client module is wired based on the proposed architecture. Client will detect the feeback from the push button switches and will share its ID with the bridge using wireless communication
Multiple clients will communicate with same bridge node, which improves the scalability of the system