To stream data from ESP8266 we need first to establish a WebSocket connection between the ESP8266 and a server; data that will be streamed over the WebSocket connection will be the acceleration values for the X, Y and Z axes. ESP8266 will read them from an ADXL345 chip and will send them to a
nodeJS server. From the server, data can be sent to a connected browser on the same server or can be written to a database for further analysis:
The final circuit can also include a time-series database such as InfluxDb, for storing the values transmitted by the ADXL345.
Adding a database can let you collect various data from multiple acceleration sensors, store them in the database, retrieve them on request to compare them with the current values, or draw nice graphs with the current and historical data.
A server can also react to some values and send alerts (email, SMS) and send data to other ESP8266 modules to react, or to other servers.