ubunatic.com

Android · Local-first · Open source

Smarthome control your home devices without the cloud.

Pair an Android app with a Go command-line companion to control LG webOS televisions and manage selected AVM FRITZ!Box parental controls on your local network. Credentials stay encrypted on your device; the app includes TV discovery, QR sharing and Wake-on-LAN.

Key facts

12-week commit activity

2026-10-26
View 12-week data table
Week startingCommits
2026-08-030
2026-08-100
2026-08-170
2026-08-240
2026-08-31194
2026-09-070
2026-09-140
2026-09-210
2026-09-280
2026-10-053
2026-10-120
2026-10-190

Key Features

  • Control TV power, volume, playback and apps, and see what's currently playing on LG webOS.
  • Manage FRITZ!Box parental controls by granting extra internet time or blocking access.
  • Find TVs on the local network and share setup between phone and terminal with QR codes or links.
  • Wake the TV over the network, including through supported FRITZ!Box routers.

Verified Engineering Milestones

  • FRITZ!Box internet access controls (#013, 647a770)
  • Go companion command-line tool (#041, 5cc87ea)
  • Wake-on-LAN across interfaces and routers (#057, 58d20b8, d4fb91e)

Stack

Kotlin 2.3.21, Android/Gradle, Go 1.26.6, Cobra, LG webOS SSAP, FRITZ!Box TR-064

One dashboard for household devices

Flimmerkasten (LG TV)
Online on the local network; turn it off or control playback.
Quick Launch
Launch installed apps such as ARD Mediathek and Tagesschau.
TV Online Budget
Check remaining FRITZ!Box time and grant a 45-minute bonus.

Designed for privacy and simple local control

Direct TV control

Wake the TV over the network, power off through SSAP WebSocket, and control playback.

Quick app launch

Pin and launch installed TV apps such as ARD Mediathek, YouTube, and ZDF.

FRITZ!Box parental controls

Check the remaining daily online budget, grant bonus time, or block a device through TR-064.

Encrypted account transfer

Share FRITZ!Box configuration with time-limited AES-256-GCM QR codes and six-digit confirmation codes.

Restricted network scope

Android network security limits cleartext traffic to private LAN subnets and .local hosts.

No cloud or telemetry

No analytics, advertising SDKs, or third-party cloud connections; credentials stay in Android Keystore.

Smarthome v0.1.0 release artifacts

The universal APK requires Android 8.0 (API 26) or newer. Download the standalone release APK, with its SHA256SUMS and Minisign signature.

Check the checksum and signature

sha256sum -c SHA256SUMS
# Expected: smarthome-0.1.0-phase1.apk: OK

Verify the checksum file with Minisign and the release public key below. Long keys and commands scroll within their code blocks on small screens.

RWSh4EKeMIxgiaYw5jABwqGRKTRqFCoftR5iWzJJakbkqz/CwgFaLnHZ
minisign -Vm SHA256SUMS -P RWSh4EKeMIxgiaYw5jABwqGRKTRqFCoftR5iWzJJakbkqz/CwgFaLnHZ

Sideloading guide

1. Download the APK
Download the release file from this page using your mobile browser.
2. Allow installation
In Android settings, allow your browser or file manager to install unknown apps.
3. Play Protect notice
If Android shows an unrecognized-app prompt, review the details and choose Install anyway.
4. Configure local devices
In Settings, enter the TV's local IP and MAC address, and optionally the FRITZ!Box router address and credentials.

Access required for local operation

Internet and network state

Send Wake-on-LAN packets and local SSAP and TR-064 requests.

Camera (optional)

Scan encrypted QR codes; images are parsed in memory and never stored.

No background access

No location, contacts, microphone, SMS, or storage permissions.

See the privacy policy and the Impressum for details.

From TV controls to a household toolset

The Go companion made protocol behavior easier to inspect while the Android app grew to include TV discovery, QR sharing, Wake-on-LAN, and selected router controls. Read the Smarthome engineering story.

Project details

Stack
Kotlin 2.3.21, Android/Gradle, Go 1.26.6, Cobra, LG webOS SSAP, FRITZ!Box TR-064
Milestones
FRITZ!Box internet access controls (#013, 647a770) · Go companion command-line tool (#041, 5cc87ea) · Wake-on-LAN across interfaces and routers (#057, 58d20b8, d4fb91e)

Layer composition

Terminal
CLI, terminal QR codes
Desktop
Android
Inference / AI
—
Containers / VM
—
Web
—

smarthome: the story behind the project

Smarthome began with a small inconvenience: control an LG webOS television without finding its remote. The repository history starts on September 2, 2026, with an Android and Go project scaffold and an issue describing the first power-off f…

Read the engineering story