Hi! It is Group 6 - PERCCOM Cohort 3

Group Members

  • Victor ARAUJO
  • Chandara CHEA
  • Thi Yen Nhi VO
  • Thi Thu Giang TRAN
  • Henrique SARMENTO


We all have bad habits in using electricity or consuming energy in home/office environment. For example, people usually leave their house without turning off the lamps and computer/laptop, or open the windows while the heating is still turned on. In addition, the heating system in our apartments usually running 24/7. There are several reasons for that, such as (1) People are lazy to turn off/on these electrical devices whenever they go out. (2) These systems are centralized controlled, so they are always kept running. (3) People are not aware of energy waste, sustainability. (4) People are usually forgetful though they know that they should turn devices off.

These bad habits lead to more energy waste and higher costs for the electricity bills. Based on some researches, HVAC (heating, ventilation and air conditioning) costs the largest amount of electricity consumption in a house, accounting for 60% in Europe. However, if we control the HVAC system based on users’ occupancy, we can save up to 30% this amount of energy consumption.


  • Save energy used by HVAC system in home environment
  • Maintain the comfort environment for users automatically
  • Foster good behaviour by using data collected from home automation system

Big Idea

We present a smart home system that can automatically control the radiators and ventilation based on users' occupancy status in the room in order to ensure the comfort level in the room and save energy. This scenario is designed to apply on home/apartment environment.

  • If users are inside the room (motion detected), in the daytime (6am to 12pm), and the windows are closed (door sensor in closed status), then keep the heating at normal level (comfort level based on temperature and humidity).
  • During the night (12am to 6am), level down the heating in a certain level to keep warm enough and save energy; level up again at 6am
  • During the night (12am to 6am), if users stay working late for example, then keep the heating at normal level for 15 minutes whenever there is motion detection.
  • If users are outside of the apartment, (no motion detection in 5 mins after the door opened and closed), then turn off the radiator.
  • If users are inside the room (motion detected), but the windows are opened (door sensor in opened status), level down the heating.

Additionally, we use machine learning to improve the efficiency of our solution. In this case, the home automation system learns the human behavior from the schedule. FHEM is used to feed a datastore accessible through an API for machine learning or creating other services on top of it. A neural network was trained to attempt to learn a fictional schedule.

  • It can learn to lower the temperature when owners are away during their working hours.
  • User experience can be improved by eliminating the need to manually program thermostats.
  • The machine learning algorithms can be trained with other sources of information to improve context detection. For example, Google calendar data might be accessed with the consent of the user to predict the needs of the user in advance.


  • Raspberry Pi
  • Movement Sensor
  • Door Sensor
  • Heating Controller
  • Wireless Status Monitor
  • Humidity sensor, indoor



FHEM is a home automation management software with different front-ends and Web interface integrated. It is used to automate several tasks in household such as controlling heating, switching lights on/off, logging events (temperature, humidity, door opening). FHEM can integrate with a large amount of home automation technologies like FS20, HomeMatic, KNX, ZWave, EnOcean, X10.

We installed FHEM on Raspberry PI with a perl interpreter and a HomeMatic Wireless Adapter LAN to access the sensors such as motion sensor, door/window sensor, temperature and humidity sensor. Our server uses fhem.cfg file to store configuration.

For more information about FHEM, read more here: http://fhem.de/fhem.html


HomeMatic is a proprietary system for home automation system from the company eQ. 3. It uses wireless protocol (Bidirectional Communication System) BidCos which special feature of this protocol is that the recipient of a message has to acknowledge (ACK). Moreover, HM supports authentication (AES) and encryption (only XOR operation). HomeMatic system can be basically divided into the following classes of devices:

  • Unordered List ItemCentral and gateways (CCU, USB and LAN adapters for configuration)
  • Transmitters and controllers (buttons, remote)
  • Sensors (thermostats, motion detectors)
  • Actuators (heating controller)
  • Wired (roller shutter)

In our project, we use a CCU and LAN configuration adapter for configuring direct links between transmitters and actuators. Indeed, the adapter allows to interact with sensors as it transmits messages in both directions.

Set up Topology

In our solution, Raspberry Pi plays role of a hardware for FHEM server. The Raspberry Pi and LAN adapter have been connected to a switch for getting an access to the same network. Due to this, sensors can communicate with the server sending messages through the adapter. Figure 1 illustrates the topology of our system and figure 2 is how the sensors will be implemented in the room.

Data Flow Diagram


  • Controling the heating system based on users' occupancy status (demo in our presentation session)
  • Adjust the heating system based on temperature to maintain comfort level (demo in our presentation session)
  • A demo for both the machine learning and the API can be accessed here:


The protocol to present



Links to our project