DIY Tree Talker | Software
Authors: Tug F. O’Flaherty, Xinyue Xu, Gerard Roma, Georgios Xenakis, Anna Xambó
Screenshot of the sensor data using Chart.js with temperature (red), humidity (blue), soil moisture (green) and displacement (yellow).
Backend
We created a a customised web server using Express.js. The server allows sharing the data produced by the tree talkers with the general public. The server is developed as a RESTful API, providing different functionalities through REST end points, corresponding to HTTP URLs. Each tree talker posts a JSON file at regular times to a dedicated end point that the web server catches and stores in the server’s file system [1].
Frontend
For each individual tree talker unit several REST end points provide data management functionality, such as checking the latest JSON file sent by the unit; listing all the generated JSON files; and verifying all the files as they are sent. This is useful to confirm that the unit works and that the values sent are correct. The JSON file data structure looks like this:
{
``timestamp": ``2025-06-12 19:40:22",
``temperature": 17.89,
``humidity": 54.60,
``soilmoisture": 60.03,
``displacement in micrometer": 18.59
}
Each unit has a public
end point which allows visualisation and sonification of the sensor data. Visualisations were developed using Chart.js library. For the data sonification, we are exploring different mappings ranging from simple to complex.
🔥 We are currently running a participatory design user study. We will share the software code of the web server and weather-to-sound data soon on our GitHub project webpage.
[1] We will release the code soon. At present it can be tested here, which serves the latest JSON file from one of the units: http://159.65.116.195:3000/stf/northern_2/