CharIoT provides an end-user programming interface for the GIoTTO stack. It connects to the BuildingDepot middleware to discover and communicate with sensors and actuators.
CharIoT enables creating virtual sensors which can capture higher-level events (e.g., window opened, meeting ongoing) based on raw data. It provides two ways to create virtual sensors: by programming their conditions or demonstrating them using programming by demonstration.
Rules are created in an IFTTT-inspired interface. They may contain multiple conditions and actions.
- Install NodeJS: https://nodejs.org/en/
- Clone/download this folder and
cdinto it - Run
npm install - Optional: in order to enable the explore tab, install the Eye reasoner
To start the application, execute: npm start
Access the app through your browser on the address: http://localhost:3333/
The app assumes that devices have locations associated with them (e.g., living room, lab). To add a location for a device:
- Click on a device node in the graph
- Type in the location name and click on Add
- Do this for all the devices
Creating a rule requires a virtual sensor - there are two types of virtual sensors:
- Programmed
- added by clicking the "Program an event" button. Contain conditions on a specific sensor value, e.g., temperature
- Virtual
- demonstrated using PbD. Click on "Demonstrate an event" to add it.
To create a rule, go to the "Build" section and follow the IFTTT-like interface.
- Deleting rules and virtual sensors is not supported since the API for deleting sensors is missing in BuildingDepot.








