Wszystkie realizacje
IoT — app + firmware MQTT + BLE dual-transport OTA updates

Mobilna aplikacja IoT do sterowania podnośnikami mebli

Klient: Startup produkujący elektryczne podnośniki mebli oparte na niestandardowym urządzeniu. Producent zgłosił się z gotowym sprzętem i potrzebą aplikacji mobilnej, która zamieni go w kompletny produkt IoT.

iOS + Android
Jedna baza kodu
React Native — natywna wydajność na obu platformach
MQTT + BLE
Dual-transport
Automatyczny fallback między siecią a Bluetoothem
100%
Pełen stack
Aplikacja mobilna, firmware i automatyzacja OTA

Mieć działający hardware to jedno — żeby produkt IoT trafił do klientów, potrzebuje aplikacji, która jest prosta w obsłudze, niezawodna w komunikacji i działa na każdym smartfonie. LegsGO zlecił mi zaprojektowanie i zbudowanie całego ekosystemu: aplikacji mobilnej na iOS i Android, firmware dla płytki oraz automatyzacji aktualizacji OTA.

Wyzwanie biznesowe

Producent miał gotowe urządzenia, ale zero warstwy software. Bez aplikacji mobilnej sprzęt nie mógł trafić do klientów końcowych. Wyzwania techniczne były poważne: komunikacja przez WiFi (MQTT) i Bluetooth musiała działać niezawodnie i wzajemnie się uzupełniać, pierwsze parowanie urządzenia przez klienta musiało być tak proste, że nie wymagało instrukcji, a aktualizacje firmware na wdrożonych urządzeniach musiały odbywać się bez fizycznego dostępu do sprzętu.

Rozwiązanie

Zaprojektowałem i wdrożyłem cały stack: aplikację mobilną React Native na iOS i Android z dualnym transportem komend (MQTT over WebSocket + BLE z automatycznym fallbackiem), wieloetapowy wizard provisioning przez Bluetooth, system OTA do zdalnej aktualizacji firmware, a także napisałem sam firmware dla płytki. Całość spinana przez Supabase (auth, baza danych, realtime).

//Efekty biznesowe

Kompletny produkt IoT z jednego źródła

Aplikacja mobilna, firmware i backend — zaprojektowane razem jako spójny ekosystem, nie sklejone z oddzielnych części. Producent otrzymał gotowy produkt, nie zestaw komponentów do integracji.

Niezawodna komunikacja — MQTT + BLE z auto-fallbackiem

Komendy wysyłane są przez MQTT (WiFi), a gdy urządzenie jest offline — aplikacja automatycznie przełącza się na Bluetooth. Użytkownik nigdy nie widzi błędu połączenia, sterowanie działa zawsze.

Provisioning w kilka minut bez instrukcji

Wieloetapowy wizard przez BLE prowadzi użytkownika przez pierwsze parowanie: skan urządzeń, wybór sieci WiFi, wpisanie hasła i rejestracja — wszystko w jednym ekranie. Jeśli rejestracja nie powiedzie się z powodu braku internetu, config jest zapisany i retry wykonywany automatycznie po powrocie łączności.

OTA — aktualizacje firmware bez fizycznego dostępu

Przez MQTT aplikacja wysyła URL binarki i SHA256 do urządzenia — sam pobiera i wgrywa aktualizację. Wersja firmware i historia aktualizacji zarządzana centralnie w baziedanych.

Harmonogramy i automatyzacje

Użytkownicy mogą ustawić automatyczne sekwencje podnoszenia/opuszczania (np. biurko w górę o 8:00, w dół o 17:00) — automatyczne logowanie każdej komendy w bazie danych z potwierdzeniem ACK od urządzenia.

Jednorazowy wkład — dożywotni efekt na flocie urządzeń

Dzięki OTA każda poprawa firmware trafia na wszystkie wdrożone urządzenia automatycznie. Startup może rozwijać produkt po sprzedaży — bez serwisu, bez fizycznego dostępu, bez kosztów wymiany sprzętu.

Kompletny produkt IoT — aplikację mobilną, firmware i infrastrukturę — gotowy do wdrożenia bez żadnych brakujących elementów.

Zainteresowany?

Masz gotowy hardware i potrzebujesz aplikacji mobilnej lub firmware? Porozmawiajmy — zbuduję kompletny ekosystem IoT.

Wolisz porozmawiać?

//Kluczowe funkcje

  • Aplikacja iOS + Android
  • Dual-transport: MQTT over WebSocket (podstawowa ścieżka) + BLE (fallback), automatyczne przełączanie.
  • 3 przyciski sterowania z animacjami i haptic feedback.
  • Wieloetapowy provisioning wizard przez BLE — skan, wybór WiFi, rejestracja w bazie danych
  • OTA firmware update przez MQTT: URL + SHA256, płytka pobiera binkę samodzielnie.
  • Harmonogramy automatyzacji — CRUD z logowaniem komend i ACK od urządzenia.
  • Audit trail: każda komenda z flagą processed, timestampem i statusem.
  • Custom toast stack — animowany system powiadomień ze stackowaniem.
  • Tryb jasny/ciemny/systemowy, interfejs PL/EN.
  • Firmware płytki — napisany przeze mnie, obsługa MQTT, BLE, WiFi provisioning, OTA.

//Przed i po

ObszarPrzedPo
Sterowanie podnośnikiemBrak — sprzęt bez warstwy softwareAplikacja iOS + Android z 3 przyciskami i animacjami
Pierwsze uruchomienieBrak możliwości konfiguracji przez klientaProvisioning wizard przez BLE w kilka minut
Aktualizacje firmwareWymagałyby fizycznego dostępu do każdego urządzeniaOTA przez MQTT — automatycznie na całą flotę
Niezawodność połączeniaBrak — jedno zerwane WiFi = brak sterowaniaAuto-fallback na BLE gdy MQTT offline
Historia i monitoringBrak — brak wglądu w użycie urządzeńAudit trail komend, heartbeaty, logi w bazie

LegsGO to projekt, który pokazuje, że dobry produkt IoT to nie tylko hardware. Aplikacja mobilna, firmware i infrastruktura muszą być zaprojektowane razem — żeby parowanie było proste, komunikacja niezawodna, a aktualizacje firmware trafiały na urządzenia w terenie bez żadnego wysiłku. Całość zbudowana przeze mnie od zera: kod aplikacji, kod na płytkę i pipeline OTA.

Zainteresowany?

Masz gotowy hardware i potrzebujesz aplikacji mobilnej lub firmware? Porozmawiajmy — zbuduję kompletny ekosystem IoT.

Wolisz porozmawiać?