Jak zbudować aplikację do sterowania kotłem gazowym, do której klienci wracają sami

Case study APP Smart Control dla KG Elektronik: 8 tygodni wdrożenia, około 12 tysięcy podłączonych urządzeń, 1000+ pobrań w Google Play. Stack: AWS + Nest.js + Flutter + MQTT.

Case study APP Smart Control dla KG Elektronik – aplikacja do sterowania kotłem gazowym, którą zbudowaliśmy w 8 tygodni. Dziś podłączonych jest około 12 tysięcy urządzeń, liczba rośnie miesiąc do miesiąca, a klienci końcowi wracają do sklepu pytając wprost o sterownik z WiFi.

W skrócie

  • Czas wdrożenia: 8 tygodni od briefu do publikacji w sklepach
  • Podłączone urządzenia: około 12 tys. (stan 2026-04-13, rośnie miesiąc do miesiąca)
  • Pobrania w Google Play: 1 000+
  • Stack: AWS + Nest.js + Flutter + MQTT
  • Branża: producent sterowników i kotłów gazowych (B2B + B2C)

TL;DR

  • Co zrobiliśmy: aplikacja mobilna iOS + Android do zdalnego zarządzania sterownikami kotłów gazowych KG Elektronik
  • Dla kogo: klienci końcowi KG Elektronik – użytkownicy sterowników z modułem WiFi
  • Wynik biznesowy dla klienta: sterowniki kosztują tyle samo, ale w sklepie klienci wracają wołając ten z WiFi
  • Czas: 8 tygodni MVP, dalej rozwój iteracyjny
  • Stack: Flutter (mobile), NestJS + PostgreSQL + Redis + MQTT + Firebase (backend), Next.js (admin OTA panel), AWS EC2 + RDS + S3

Kim jest klient

KG Elektronik to polski producent sterowników i kotłów gazowych z 25-letnim doświadczeniem na rynku. W portfolio kilkadziesiąt typów sterowników do kotłów zasypowych i z podajnikiem (od SP-05 LCD przez CS-23 po SP-35 PID WiFi), regulatory pomp, instalacji, akcesoria. Sprzedaż prowadzą przez sieć dystrybutorów i sklep własny.

Dotychczasowy produkt KG był sterowany z fizycznego panelu w kotłowni. Klient końcowy musiał zejść do piwnicy, żeby cokolwiek zmienić. Firma z ćwierćwieczem doświadczenia w hardwarze potrzebowała warstwy cyfrowej – cel, który zespół KG nazwał wprost „przejściem od prostych sterowników do pełnego systemu Smart Home”.

Wyzwanie: hardware z 25-letnim stażem w świecie, który chce sterować wszystkim z telefonu

KG ma na rynku ćwierćwiecze. Sterowniki, które produkują, od lat po prostu działają. Problem nie leżał w hardware. Problem leżał w warstwie, której hardware nie miał.

Dotychczasowy sterownik był obsługiwany z fizycznego panelu w kotłowni. Żeby zmienić temperaturę, ustawić harmonogram, sprawdzić dlaczego piec zgasł – trzeba było zejść do piwnicy. O awarii klient końcowy dowiadywał się w najlepszym przypadku z termometru na ścianie, gdy temperatura już spadła. W najgorszym – rano, gdy robiło się zimno.

Z perspektywy KG był drugi problem, którego klient końcowy nie widzi. Aktualizacja firmware sterownika wymagała fizycznej obecności przy urządzeniu. Przy jednym kotle to drobna niedogodność. Przy dwunastu tysiącach zainstalowanych sterowników, z których każdy potencjalnie potrzebuje update’u, to jest liczba wyjazdów, których nie da się zrobić. Każda nowa wersja oprogramowania = koszt dotarcia do każdego urządzenia.

Cel projektu nie był więc „zrobić apkę”. Cel, jak później ujął to zespół KG w publikacji na LinkedIn, to było przejście „od prostych sterowników do pełnego systemu Smart Home”. Czyli: warstwa cyfrowa, która sprawia, że sterownik z 2010 może konkurować w 2026.

Prościej: sterownik bez aplikacji żyje w piwnicy. Sterownik z aplikacją żyje w kieszeni klienta. Pierwszy jest narzędziem. Drugi jest produktem.

„Klienci i konkurencja zostali zaskoczeni tak prostą i fajną apką”

„Ogólnie to klienci i konkurencja zostali zaskoczeni tak prostą i fajną apką. Oraz że sterowniki nic nie podrożały a mają takie bajery. Dopiero w tym miesiącu zaczynamy czuć, że klient w końcu wraca do sklepu wołając nasz sterownik z WiFi. Miłe zaskoczenie, ale na to liczyłem.”

– Grzegorz, KG Elektronik

To jest cytat z rozmowy w kwietniu 2026. Sześć miesięcy po starcie aplikacji w sklepach. Wracamy do tego pod koniec.

Co zbudowaliśmy: cały ekosystem, nie tylko aplikacja do sterowania kotłem gazowym

APP Smart Control to z punktu widzenia klienta końcowego aplikacja mobilna iOS + Android do zdalnego zarządzania sterownikami KG. Pod spodem zbudowaliśmy trzy współpracujące komponenty, każdy z innym celem:

1. Aplikacja mobilna (Flutter, iOS + Android). Dla właścicieli domów, zarządców biur i obiektów publicznych. Zobacz temperaturę, ustaw harmonogram, dostań powiadomienie gdy coś odbiega od normy. Flutter wybraliśmy nad React Native i natywem, bo to jeden zespół, jeden budżet i równoległy release na iOS i Android — plus identyczny wygląd na każdym telefonie (iPhone, Samsung, Huawei w organizacji klienta publicznego).

2. Backend IoT (NestJS na AWS EC2). Serce systemu. Łączy się ze sterownikami w kotłowniach przez MQTT, przechowuje dane w PostgreSQL (AWS RDS), obsługuje alarmy i wysyła push notifications przez Firebase Cloud Messaging. Kolejka zadań w Redis + BullMQ (dla spokoju, gdy 12 tysięcy sterowników wysyła telemetrię naraz). Całość w Dockerze, za Nginxem jako reverse proxy.

3. Panel admina dla KG Elektronik (Next.js 15 + React 19 + Tailwind). Tego nie widzi klient końcowy, ale to on robi robotę. KG wgrywa przez niego nowe wersje firmware sterowników (pliki .bin, .hex, .fw) do AWS S3, aktywuje wersje, pobiera logi. Dzięki temu aktualizacja 12 tysięcy urządzeń nie wymaga wysłania technika do każdej kotłowni — wersja firmware leci do sterownika przez MQTT, OTA (over-the-air).

Gdyby któregoś z tych trzech brakowało, reszta by nie działała. Sam mobile bez backendu to „pilot bez baterii”. Sam backend bez dashboardu to „baza danych bez panelu, żeby cokolwiek zmienić”. Dashboard bez mobile to „panel administratora bez użytkowników, do których się adresuje”.

Dwie decyzje techniczne, które kształtowały projekt

MQTT direct zamiast AWS IoT Core. W pierwszym tygodniu rozważaliśmy AWS IoT Core (managed MQTT broker) vs własny broker MQTT na EC2. Managed to wygoda, ale koszt rośnie liniowo z liczbą urządzeń — przy 12 tys. sterowników (i rosnącej bazie) rachunek AWS robi się poważny. Wybraliśmy direct MQTT w aplikacji NestJS, z Redis jako backing store dla kolejki (BullMQ) i PostgreSQL do persystencji. Kompromis: więcej własnej infrastruktury do utrzymania, ale przewidywalne koszty i pełna kontrola nad routing logic alarmów.

OTA firmware przez osobny panel admina. Moglibyśmy zrobić „monolit” — wgrywanie firmware z aplikacji mobilnej albo z backendu programistycznie. Ale aktualizacja firmware sterownika to nie jest feature dla end usera — to jest proces operacyjny KG. Dlatego zbudowaliśmy osobny dashboard (Next.js 15) tylko dla zespołu KG: upload .bin/.hex/.fw do S3, wybór której wersji aktywować na którym modelu, rollback jeśli coś pójdzie nie tak. Separation of concerns: mobile dla użytkowników końcowych, dashboard dla operatorów, backend jako most między sterownikami a jednym i drugim.

APP Smart Control w sklepach: 1 000+ pobrań i tylko jedna aplikacja zamiast trzech

Aplikację publikujemy w Google Play i App Store. W Google Play: ponad tysiąc pobrań, oceny w sklepie pochodzą od realnych użytkowników (właścicieli domów, zarządców obiektów). Konkretnych metryk z App Store nie ujawniamy w tym case study (KG jest właścicielem statystyk).

APP Smart Control w Google Play →

Ważniejszy od liczby pobrań jest wzorzec, który zaczął się powtarzać: w sklepie KG klient końcowy pyta wprost o sterownik z WiFi. Nie o „najtańszy”, nie o „polecany przez Pana”. O ten z aplikacją. To jest dokładnie ten moment, kiedy sterownik przestaje żyć w piwnicy i zaczyna żyć w kieszeni klienta – a hardware przestaje być commodity i zaczyna być produktem premium.

Dziś: około 12 tysięcy podłączonych urządzeń, liczba rośnie miesiąc do miesiąca

Stan na 13 kwietnia 2026: około 12 000 urządzeń podłączonych do platformy. Liczba rośnie z miesiąca na miesiąc, bo każdy nowy sterownik z modułem WiFi, który schodzi z linii produkcyjnej KG, trafia do bazy.

To są realne obiekty – od domów jednorodzinnych po hale produkcyjne. Każde urządzenie wysyła telemetrię przez MQTT do naszego backendu (NestJS na AWS EC2), dane trafiają do PostgreSQL, a aplikacja mobilna odczytuje aktualny stan przez API. Każde urządzenie może być sterowane z aplikacji w telefonie zarządcy lub właściciela.

Co to oznacza biznesowo dla KG, mówi sam Grzegorz w cytacie wyżej: klienci i konkurencja zaskoczeni, sterowniki w tej samej cenie, klient wraca do sklepu po model z WiFi. To są trzy efekty, których nie kupisz inaczej niż produktem, który po prostu działa.

Wizyta u klienta po wdrożeniu: rozmowa z CEO KG Elektronik

Sześć miesięcy po starcie aplikacji pojechaliśmy do siedziby KG Elektronik, żeby przegadać case study wspólnie z zarządem. Krótki film (1:17) z tej wizyty – autentyczna rozmowa o tym, co się zmieniło po wdrożeniu: klient nie ma już „pilota do ogrzewania”, ma system, który aktywnie pilnuje bezpieczeństwa w obiektach.

Zobacz post na LinkedIn → (1:17)

Stack, konkretnie — bez mądrych brandów dla samego brzmienia

Mobile (APP Smart Control): Flutter (Dart). Jeden codebase, dwa sklepy (iOS App Store i Google Play), jeden zespół.

Backend IoT: NestJS 11 (TypeScript), PostgreSQL jako baza danych (AWS RDS), Redis 7 + BullMQ jako kolejka zadań (obsługa push notifications i jobów asynchronicznych), MQTT do komunikacji ze sterownikami, Socket.IO + WebSocket do real-time w dashboardzie, Firebase Admin SDK do push notyfikacji (Firebase Cloud Messaging) i autoryzacji. Wszystko w Dockerze, Nginx jako reverse proxy, deploy na AWS EC2.

Panel admina KG: Next.js 15 + React 19 + Tailwind CSS + Firebase (auth). Hostowany osobno na AWS.

Storage firmware: AWS S3. Każda wersja firmware jako osobny obiekt, wersjonowanie, presigned URLs do pobrania przez sterowniki.

Co celowo pominęliśmy: AWS IoT Core (droższy niż bezpośredni MQTT przy bazie 12 tys.+ urządzeń), Lambda + API Gateway (nie potrzebny tu serverless — konsystentny ruch, nie spikes), DynamoDB (relacyjne dane — urządzenia, użytkownicy, konfiguracje — pasują lepiej do Postgres).

FAQ

Jak aplikacja łączy się ze sterownikiem?

Przez MQTT — lekki protokół pub-sub zaprojektowany do IoT, używany w milionach urządzeń. Sterownik z modułem WiFi łączy się z brokerem MQTT w naszym backendzie, aplikacja mobilna dostaje aktualny stan przez API.

Ile kosztuje aplikacja dla użytkownika końcowego?

Aplikacja jest darmowa. Pobranie z Google Play lub App Store, logowanie przez Firebase Auth. Sterownik z modułem WiFi sprzedawany jest przez KG Elektronik w cenie zbliżonej do wersji bez WiFi.

Czy aplikacja działa z każdym sterownikiem KG?

Z modelami z modułem WiFi, w tym SP-35 PID WiFi i SP-18 Control Smart Multi. Pełna lista kompatybilnych sterowników na stronie kgelektronik.pl.

Jak wygląda aktualizacja firmware sterownika? Czy muszę wysyłać technika?

Nie. KG wgrywa nową wersję firmware przez panel admina (osobny dashboard), a sterowniki pobierają aktualizację OTA przez MQTT. 12 tysięcy urządzeń dostaje update bez wyjazdu technika.

Czy mogę dostać podobną aplikację dla mojego hardware’u?

APP Smart Control to pierwszy projekt IoT w portfolio JSON Crew (firma istnieje od 2024, core to konfiguratory produktowe i automatyzacja sprzedaży). Jeśli planujesz aplikację do swojego sterownika lub urządzenia — porozmawiajmy bez zobowiązań.

Chcesz aplikację do sterowania kotłem gazowym (lub innym hardware), która sprawia, że klienci wracają sami?

Jeśli produkujesz hardware i myślisz o aplikacji jako „dodatku do sprzedaży”, zatrzymaj się. Aplikacja nie jest dodatkiem. Aplikacja jest tym, co przenosi twój produkt z piwnicy do kieszeni klienta. Decyduje, do których segmentów rynku masz dostęp i czy w sklepie ktoś pyta o twój produkt po nazwie, czy o „ten z WiFi obok”.

Drugi wniosek z tego projektu: nie wierz w „zrobimy pierwszą wersję szybko, dokończymy później”. W IoT pierwsza wersja, która działa źle, psuje reputację w segmencie na lata. Lepiej wydać raz dobrze, niż dwa razy tanio.

Porozmawiajmy o twoim projekcie IoT →

Porozmawiajmy o twoim projekcie

Masz w firmie hardware, do którego brakuje warstwy cyfrowej? Czy planujesz zupełnie nową aplikację mobilną dla klientów końcowych? Trzydzieści minut rozmowy zwykle wystarczy, żeby zobaczyć, czy projekt ma sens i jak mógłby wyglądać MVP.

Wyślij briefing → lub zadzwoń: +48 886 864 199, e-mail: [email protected].

Odpowiadamy w 24h w dni robocze.

More knowledge

Jeśli ten wpis pokazał Ci, że problemy w sprzedaży online to nie kwestia technologii, tylko procesów - czas na decyzję. Wdrażamy transformację cyfrowej sprzedaży: od strategii przez procesy po rozwiązania technologiczne.

Every lead has an owner and a deadline

The system automatically assigns, reminds, escalates. Zero leads without an owner.

Manager sees forecast in real time

Not "by feel," but based on data from the system. Full process visibility.

The processes are stored in the system

A new trader knows what to do from Day 1. You don't depend on one person.

Start your digital sales transformation

This is more than a free consultation. It's a concrete conversation about implementing transformation for companies ready to make decisions and take action. Fill out the form and we will prepare an initial analysis and action plan for you.

30-45 minutes. No obligation.

No. It's a qualifying interview to see if we can help.

No. After the interview you will get a recommendation, the decision is yours.

All the better. That's exactly the kind of process we implement - tailored to your business.