A platform dedicated to the energy performance

The World’s premier Open Source
Building Energy Management Platform

an open source solution

BEMServer is an open source initiative to gather all developers and software experts of building-oriented services around one project to ease the deployment of their solutions.

The concept of building as a platform of services is becoming more and more popular. Making building data available is the initial and mandatory step to do so. But just like for smartphones or computers, we do not believe the added value is brought by the tool itself; the additional value is brought by services delivered to the clients.

This is the reason why BEMServer is fully open source as a live and constantly updatable solution to the integration of services for a monitored building.

The aim of BEMServer

is to offer the community of third-party services a solution to use:


To develop collaborative solutions: Companies A and B can develop two different services for a single client, and those services can be fully interactive.


To easily deploy smart building solutions; we believe people should focus on their domain of expertise. An AI or energy simulation expert should focus on developing the most advanced AI/simulation solutions, but should not care about how to connect to the building and to get the data.

Build your Building Operating System on top of BEMServer

Our developments are fully in line with the concept of Building Operating System (BOS). Additionally, we make use of the most advanced and standards technologies of the world wide-web so that non-building experts can still develop their own services:

  • REST APIs which are also fully documented
  • Linked data to store building information, and to make BEMServer BIM-compatible.

In a building context, the data to be managed are heterogeneous by nature:

  • sensors and meters send time series (i.e. list of pairs timestamps/values);
  • incidents or information regarding the building in exploitation (such as a temperature threshold reached, an abnormal energy consumption...) which we call events;
  • and what we call the metadata which are descriptive elements of the building that allow contextualization of both timeseries and events.

Consider first a sensor measuring both the CO2 rate, temperature, and humidity. The metadata will be used to know in which zone this sensor is installed, what are the units used, the frequency of the data captured, and any other additional elements of relevance.


Similarly, an event regarding an abnormally high temperature in a boiler will be informed according to a category, a criticality, the assets impacted, the time at which the incident was first detected...

BEMServer is structured according to three main layers

A storage solution making use of 3 different technologies, one for each of the different data categories handled :

  • SQLLite to store events
  • HDF5 to store time series
  • Apache Jena to store the metadata

The preprocessing layer so that all the data can be preprocessed before being stored, or before being presented to the third-party services. Current preprocessings are:

  • Unit conversion, that ensures a uniform and comparable presentation of the data;
  • Time series resampling, so that data coming from different and unsynchronized data sources can be compared;
  • Time series operation: finding the maximal/minimal value captured by a sensor between two dates, computing the mean value, or sum value;
  • Data cleansing: sensors and meters are subject to errors, and raw value obtained are not always reliable. Some data may be missing, some others may have derived from the initial calibration of the sensor… This data cleansing layer offers basic tools to detect such missing and outlier values, and to interpolate values based on their history.


The presentation layer is basically made of standard REST APIs to ease the integration of services. The complexity of the solution is fully hidden behind standards APIs. Additionally, BEMServer APIs are secured using a Role Based Access Control, which enables one to deploy a single instance of BEMServer for different sites and clients while ensuring no data could go to the wrong client.


BEMServer Schema


As an open source solution, everybody can contribute to the consolidation and the development of additional functionalities to BEMServer. In a fast-moving digital world, we believe open solution is the answer to bring the best solutions to our final clients.


About BEMServer License


To get in touch, please complete the form below.

    * Required

    Your information will allow us to contact you. If you did not subscribe to our newsletters, your contact details will not be kept after this contact.


    Stay up to date by signing in to our e-newsletters.

    We're committed to your privacy. By subscribing, you consent that we use your e-mail address to send you our newsletters. You may unsubscribe from these communications at any time.

    In accordance with our privacy policy, you have the right to withdraw your consent at any time and you have the right to access, update or delete your personal data, as well as the right to define the guidelines relating to their management after your death. You can exercise these rights by email. For more information, check out our privacy policy.