Case study - Residential Battery Energy Storage System - Sigma IT
Skip to content

Home Battery Energy Storage System

Energy – Case Study

Advancing Environmental Sustainability and Energy Efficiency


Our client, based in Norway, has a global presence through offices and partners worldwide and is a leading innovator in power conversion and energy storage. Specializing in facilitating the transition towards a more sustainable future, their expertise lies in power conversion between the grid, renewable energy sources, and batteries. Their battery energy storage systems are utilized across various sectors, including EV charging, distribution system operators, and residential and commercial applications, playing a pivotal role in advancing environmental sustainability.  

Project goal

The project aims to create an operational environment for
a battery energy storage system with the option of connecting solar panels. This environment comprises several integral elements: 
·        A module (called ‘SCG’) – positioned alongside the battery, responsible for gathering information from the system and sending commands.
·        Mobile application – designed to retrieve data from the SCG module and the Cloud and empower users with comprehensive energy management functionalities.
·        Cloud environment: A Kubernetes cluster deployed on Google Cloud Platform. The Cloud is tasked with seamlessly collecting data from the SCG module while hosting various other essential system components.


Our Role In the Project

Analysis and Selecting Technology
the most suitable for SDK

IThe key requirement was it should enable full use of native applications. Following extensive investigation,Kotlin Multiplatform emerged as the optimal choice, meeting all specified criteria seamlessly.

Developing a logical layer in Kotlin Multiplatform, supporting two platforms (Android and iOS)

This layer, represented by the SDK library, acts as an intermediary between the application and communication with the ‘SCG’ module, ensuring seamless functionality. Our approach prioritized flexibility, anticipating potential requirements for creating native modules. To achieve this, we implemented the Dependency Injection mechanism along with the Koin library, facilitating efficient and scalable development.

Implementation of  SDK<->SCG communication module

Cloud Development

The cloud environment consists of a Kubernetes cluster deployed on the Google Cloud Platform. Applications are developed in Golang and serve various functions, including mediating communication between SCG module, sending alerts and emails, exposing APIs for mobile applications, and aggregating & analyzing statistical data from battery systems.

Designing an Energy Flow Statistical Data Component

including kWh production by solar panels, energy consumption in the home, battery storage, and potential grid transfers. Our task was to design methods for data collection, processing, and aggregation, followed by API creation for mobile app development.

System Integration Tests


Our Client solution is a comprehensive and compact residential battery energy storage system. It aims to minimize energy expenses and decrease reliance on traditional power grids. Compatible with a wide range of solar panels, the system allows users to store surplus energy for future use.

The application’s enhanced functionalities encompass customizable battery modes such as peak shaving, solar consumption, and manual mode, offering users greater control over their energy consumption. Detailed energy analytics, featuring real-time monitoring and historical data, facilitate the identification of consumption trends and optimization opportunities. With its user-friendly interface, the app ensures instant updates on battery status, ensuring users remain well-informed at all times.

Tech Stack

·        Kotlin Multiplatform
·        Android/iOS toolchain
·        Xcode
·        Kubernetes cluster deployed on Google Cloud Platform
·        Golang
·        Various ready-made solutions, or protocols, such as:

– Redis
– Cassandra
– Zitadel
– CockroachDB
– TimescaleDB
– GitLab
– Prometheus & Grafana

Innovation is a Process

Just tell us about your project needs, and we’ll get back to you as soon as possible.

Never miss a thing With Sigma IT´s newsletter you get all the latest updates on everything we do.

With Sigma IT´s newsletter you get all the latest updates on everything we do.