Opisany system jest napisany w dwóch językach programowania, Pythonie i PHP, oraz podzielony na moduły. Każdy moduł jest uruchamiany w osobnym skrypcie i na bieżąco monitorowany, co oznacza, że jego działanie jest śledzone i ewentualne problemy są szybko wykrywane i rozwiązywane.
System umożliwia sterowanie poszczególnymi elementami na kilka sposobów. Pierwszym z nich jest panel sterowania, który jest dostępny w ramach samego systemu. Panel ten pozwala na wygodne i intuicyjne sterowanie poszczególnymi modułami i elementami systemu.
Drugim sposobem sterowania jest połączenie systemu z serwerem MQTT.
MQTT (Message Queuing Telemetry Transport) to protokół komunikacyjny dla sieci IoT (Internet of Things), który umożliwia urządzeniom komunikację w czasie rzeczywistym. Dzięki połączeniu systemu z serwerem MQTT możliwe jest sterowanie elementami systemu z poziomu innych urządzeń, takich jak smartfony czy komputery.
Kolejnym sposobem sterowania elementami systemu jest używanie komend w pasku przeglądarki internetowej. Dzięki temu użytkownik może wydawać polecenia bezpośrednio z poziomu przeglądarki, bez potrzeby korzystania z panelu sterowania lub serwera MQTT.
przykład:
http://{IP_maliny}/ihome/index.php?a=write&name={nazwa_pola}&action={akcja}
gdzie akcja to: 1 - włączenie, 0 - wyłączenie, -1 - przełączenie
Warto zaznaczyć, że system jest elastyczny i może być łatwo dostosowany do różnych potrzeb. Dzięki modularnej architekturze, można dodawać nowe moduły i funkcjonalności, a także modyfikować istniejące. Dodatkowo, dzięki możliwości połączenia z serwerem MQTT, system może być integrowany z innymi systemami IoT, co zwiększa jego wartość i potencjał.