AminetAminet
Search:
85638 packages online
• About
• Recent
• Browse
• Search
• Upload
• Setup
• Services

comm/tcp/AmiHomeassist.lha

Mirror:Random
Showing: m68k-amigaos iconppc-amigaos iconppc-morphos iconi386-aros iconi386-amithlon iconppc-warpup iconppc-powerup icongeneric iconother icon
No screenshot available
Short:Home Assistant for MUI, with guide
Author:radi777
Uploader:thomas radeck gmail com (radi777, see note below)
Type:comm/tcp
Version:0.9.1
Architecture:m68k-amigaos
Date:2026-10-01
Requires:dev/mui/MCC_NList-0.128.lha
Distribution:Aminet
Download:comm/tcp/AmiHomeassist.lha - View contents
Readme:comm/tcp/AmiHomeassist.readme
Downloads:6

AmiHomeassist - your smart home from a real Amiga
=================================================

Lights, sockets, blinds, sensors and thermostats from Home Assistant,
arranged on dashboards of your own. A sidebar on the left with an icon
per page, the contents of the selected page on the right in framed
groups. One click on the switch flips the device. States are polled, so
changes made elsewhere show up by themselves.

You decide what appears and how it looks. A large Home Assistant setup
easily has 900 entities and you want a dozen or two. So there is a
picker with a suggestion you can overrule, and an editor where pages,
groups and devices are put together freely.

NEW IN 0.9.1

A manual: AmiHomeassist.guide, English and German in one file, with
screenshots in the Pics drawer.

Search in both device lists. All, None and Suggest act only on what the
list shows. Apply no longer rebuilds your pages - newly chosen devices
go onto the page of their room, unchosen ones go, everything else stays
as you arranged it. It asks before more than 100 devices, and every save
keeps the previous file as .bak.

Crash when removing a page fixed. Currencies Latin-1 lacks now show as
their ISO code (EUR, INR, RUB ...) instead of "?".

NEW IN 0.9

History charts. A new widget kind for meters such as your power
consumption: a bar chart of the last 30 days or 12 months, like the
statistics cards in Home Assistant. The values come from Home
Assistant's long-term statistics, which are only available over its
WebSocket interface - so AmiHomeassist now speaks a small piece of
WebSocket. One query is 1 to 3 KB and takes half a second on a 68030
with a plipbox. Charts are fetched at start, on Refresh and every ten
minutes.

They are drawn by a MUI class of their own - no third-party class to
install, no FPU. The grid adapts to the height available, the date
labels to the width. In the editor pick "History (days)" or "History
(months)" as the kind. The shell version lists the same values:

    AmiHomeassistCLI HISTORY=sensor.energy MONTH

Freeze on quit fixed. 0.8 switched to a larger stack through the C
library; started from Workbench, the Amiga froze hard on quitting, no
Guru. The program now switches the stack itself and switches it back
before it ends. If you run 0.8, please update.

Editor and main window stay on the same page: the editor opens where
you are, and after closing it you are where you last worked. Refresh
no longer jumps back to the first page.

ALSO SINCE 0.8

Labels right-aligned with a colon and buttons of equal width in
columns, a setting for "unknown"/"unavailable" values (show, grey out,
hide), drag and drop in the editor, and a stack fix for real 68030
machines.

WIDGET KINDS

  Switch      light and switch - the toggle you click
  Indicator   binary_sensor - window open or closed
  Number      sensor with its unit
  Bar         sensor with a fixed range, per cent or watts
  Blind       cover - up, stop, down, and the position
  Thermostat  climate - current and target temperature, colder, warmer,
              and the operating mode
  Text        a caption
  History     sensor - bar chart of the last 30 days or 12 months,
              for sensors with long-term statistics (a state_class)

When you add a device the program suggests a kind, from its domain and
device class. The editor lets you change it.

EASY ON THE WIRE

The full catalogue is fetched once. After that only the states of the
devices actually on screen are polled. In a setup with 941 entities
that is 1.4 KB instead of 55 KB per poll - 98 per cent less. On an
A500 over a slow link that is the difference between usable and not.
Memory grows on demand instead of sitting in fixed tables.

REQUIREMENTS

  AmigaOS 2.0 or newer, 68020 or better, no FPU needed
  MUI 3.8 or newer
  NList.mcc and NListview.mcc from dev/mui/MCC_NList
  a TCP/IP stack offering bsdsocket.library
  Home Assistant reachable over plain http - https is not supported
  a long-lived access token from Home Assistant

A shell version is included that works without MUI: list and switch
devices, for scripts.

The interface speaks English, German, Italian and Spanish. English is
built in; the other three ship as catalogues and are loaded through
locale.library. Device names, room names, units and states come from
Home Assistant, so those are in your own language anyway.

Full source is included, MIT licence - except muistubs.c, which comes
from the amimcp project and is Apache 2.0; its licence text is in the
archive. MUI's own developer headers are NOT included, as MUI's licence
permits redistribution of the complete original archive only; the
README says where to get them.

Icons are Material Design Icons (Apache 2.0). The house logo belongs to
the Home Assistant project, which is separate from and unaffiliated
with this program.

Italian and Spanish were not written by native speakers. The
translation files are plain text in the Source drawer - corrections are
welcome and need no recompilation.

Tested on an A500 with PiStorm (Emu68), OS 3.2.3, MUI 3.8.

This program is vibe coded. I described what it should do, an AI wrote
the code, and I read, tested and decided what stayed in. The full
source is in the archive, so you can judge for yourself.

Note on the uploader address: it is written without the @ and the dot
to keep address harvesters out. Put an @ before "gmail" and a dot in
front of "com" and you have it.


AmiHomeassist - dein Smarthome vom Amiga aus
============================================

Lampen, Steckdosen, Rollaeden, Sensoren und Heizungen aus Home
Assistant, geordnet in eigenen Dashboards. Links eine Seitenleiste mit
Symbolen, rechts der Inhalt der gewaehlten Seite in umrandeten Gruppen.
Ein Klick auf den Schalter legt das Geraet um; der Zustand wird zyklisch
nachgefuehrt, so dass Aenderungen von aussen von selbst erscheinen.

Welche Geraete auftauchen und wie sie aussehen, bestimmst du. Eine
grosse Home-Assistant-Installation hat schnell 900 Entitaeten, davon
willst du ein bis zwei Dutzend. Also gibt es eine Auswahl mit einem
Vorschlag zum Ueberstimmen und einen Editor, in dem Seiten, Gruppen und
Geraete frei zusammengestellt werden.

NEU IN 0.9.1

Eine Anleitung: AmiHomeassist.guide, Englisch und Deutsch in einer
Datei, mit Bildschirmfotos in der Schublade Pics.

Suche in beiden Geraetelisten. Alle, Keine und Vorschlag wirken nur auf
das, was die Liste zeigt. Uebernehmen baut deine Seiten nicht mehr neu -
neu gewaehlte Geraete kommen auf die Seite ihres Raums, abgewaehlte
gehen, alles andere bleibt, wie du es angeordnet hast. Ab 100 Geraeten
fragt es nach, und jedes Speichern hebt die alte Datei als .bak auf.

Absturz beim Entfernen einer Seite behoben. Waehrungen, die Latin-1
nicht kennt, erscheinen als ISO-Code (EUR, INR, RUB ...) statt als "?".

NEU IN 0.9

Verlaeufe. Eine neue Darstellungsart fuer Zaehler wie den
Stromverbrauch: ein Balkendiagramm der letzten 30 Tage oder 12 Monate,
wie die Statistik-Karten in Home Assistant. Die Werte kommen aus der
Langzeitstatistik von Home Assistant, die es nur ueber die
WebSocket-Schnittstelle gibt - AmiHomeassist spricht dafuer jetzt ein
kleines Stueck WebSocket. Eine Abfrage ist 1 bis 3 KB gross und dauert
auf einem 68030 mit plipbox eine halbe Sekunde. Geholt wird beim Start,
bei "Aktualisieren" und alle zehn Minuten.

Gezeichnet wird von einer eigenen MUI-Klasse - keine Fremdklasse, keine
FPU. Das Raster passt sich der Hoehe an, die Datumsbeschriftung der
Breite. Im Editor "Verlauf (Tage)" oder "Verlauf (Monate)" als Art
waehlen. Die Shell-Fassung listet dieselben Werte:

    AmiHomeassistCLI HISTORY=sensor.strom MONTH

Einfrieren beim Beenden behoben. 0.8 schaltete ueber die C-Bibliothek
auf einen groesseren Stapel um; von der Workbench gestartet fror der
Amiga beim Beenden hart ein, ohne Guru. Jetzt schaltet das Programm
selbst um und vor dem Ende selbst zurueck. Wer 0.8 benutzt, sollte
wechseln.

Editor und Hauptfenster zeigen dieselbe Seite: der Editor oeffnet dort,
wo man gerade ist, und nach dem Schliessen steht man dort, wo man
zuletzt gearbeitet hat. "Aktualisieren" springt nicht mehr an den
Anfang.

AUSSERDEM SEIT 0.8

Beschriftungen rechtsbuendig mit Doppelpunkt, gleich breite Knoepfe in
Spalten, eine Einstellung fuer "unknown"/"unavailable" (anzeigen,
ausgrauen, ausblenden), Ziehen und Ablegen im Editor und die
Stapel-Korrektur fuer echte 68030.

DARSTELLUNGSARTEN

  Schalter    light und switch
  Laempchen   binary_sensor - Fenster offen oder zu
  Zahl        sensor mit Einheit
  Balken      sensor mit festem Bereich, etwa Prozent oder Watt
  Rollladen   cover - Auf, Stop, Zu und die Stellung
  Thermostat  climate - Ist- und Solltemperatur, kaelter, waermer und
              die Betriebsart
  Text        eine Zwischenueberschrift
  Verlauf     sensor - Balkendiagramm der letzten 30 Tage oder 12
              Monate, fuer Sensoren mit Langzeitstatistik (state_class)

Beim Hinzufuegen schlaegt das Programm eine Art vor, aus Domain und
Geraeteklasse; im Editor laesst sie sich aendern.

SPARSAM AM NETZ

Den vollen Katalog holt das Programm nur einmal. Im Sekundentakt kommen
danach bloss die Zustaende der Geraete, die tatsaechlich angezeigt
werden. In einer Anlage mit 941 Entitaeten sind das 1,4 KB statt 55 KB
je Abfrage - 98 Prozent weniger. Auf einem A500 an einer langsamen
Leitung entscheidet das darueber, ob das Programm benutzbar ist. Auch
der Speicher waechst nach Bedarf, statt feste Tabellen zu belegen.

VORAUSSETZUNGEN

  AmigaOS 2.0 oder neuer, 68020 oder besser, keine FPU noetig
  MUI 3.8 oder neuer
  NList.mcc und NListview.mcc aus dev/mui/MCC_NList
  ein TCP/IP-Stack mit bsdsocket.library
  Home Assistant, ueber http erreichbar - https geht nicht
  ein Long-Lived Access Token aus Home Assistant

Eine Shell-Fassung liegt bei, die ohne MUI auskommt.

Die Oberflaeche spricht Englisch, Deutsch, Italienisch und Spanisch.
Englisch steckt fest im Programm, die anderen drei liegen als Katalog
bei und werden ueber locale.library geladen. Geraete- und Raumnamen,
Einheiten und Zustaende kommen aus Home Assistant und sind damit
ohnehin in deiner Sprache.

Der Quelltext liegt vollstaendig bei, MIT-Lizenz - ausser muistubs.c,
das aus dem Projekt amimcp stammt und unter Apache 2.0 steht; der
Lizenztext liegt im Archiv. MUIs eigene Entwickler-Header liegen NICHT
bei, weil MUIs Lizenz nur die Weitergabe des vollstaendigen
Originalarchivs erlaubt; die README sagt, woher man sie bekommt.

Die Symbole stammen aus den Material Design Icons (Apache 2.0). Das
Haus-Logo gehoert dem Home-Assistant-Projekt; Home Assistant ist ein
eigenstaendiges Projekt und hat mit diesem Programm nichts zu tun.

Italienisch und Spanisch stammen nicht von Muttersprachlern. Die
Uebersetzungsdateien sind reiner Text im Source-Verzeichnis -
Korrekturen sind willkommen und brauchen keine Neuuebersetzung.

Getestet auf A500 mit PiStorm (Emu68), OS 3.2.3, MUI 3.8.

Dieses Programm ist vibe-coded. Ich habe beschrieben, was es koennen
soll, geschrieben hat den Code eine KI, und gelesen, getestet und
entschieden habe ich. Der Quelltext liegt vollstaendig bei - schau
selbst hinein.

Hinweis zur Uploader-Adresse: sie steht ohne @ und ohne Punkt da, damit
Adresssammler nichts davon haben. Ein @ vor "gmail", ein Punkt vor
"com", fertig.


Contents of comm/tcp/AmiHomeassist.lha
 PERMSSN    UID  GID    PACKED    SIZE  RATIO METHOD CRC     STAMP          NAME
---------- ----------- ------- ------- ------ ---------- ------------ -------------
[Amiga]                    743    2102  35.3% -lh5- 51e1 Sep 30 17:31 AmiHomeassist.info
[Amiga]                  48413   93940  51.5% -lh5- 74f3 Sep 30 17:31 AmiHomeassist/AmiHomeassist
[Amiga]                  10875   28494  38.2% -lh5- b4e6 Sep 30 17:31 AmiHomeassist/AmiHomeassist.guide
[Amiga]                    419     906  46.2% -lh5- d108 Sep 30 17:31 AmiHomeassist/AmiHomeassist.guide.info
[Amiga]                    725    2046  35.4% -lh5- a7ec Sep 30 17:31 AmiHomeassist/AmiHomeassist.info
[Amiga]                  29511   49232  59.9% -lh5- cfcc Sep 30 17:31 AmiHomeassist/AmiHomeassistCLI
[Amiga]                    473    1020  46.4% -lh5- 5b45 Sep 30 17:31 AmiHomeassist/AmiHomeassistCLI.info
[Amiga]                    743    2102  35.3% -lh5- 51e1 Sep 30 17:31 AmiHomeassist/Catalogs.info
[Amiga]                   2648    5394  49.1% -lh5- 4592 Sep 30 17:31 AmiHomeassist/Catalogs/deutsch/AmiHomeassist.catalog
[Amiga]                   2584    5358  48.2% -lh5- 85f6 Sep 30 17:31 AmiHomeassist/Catalogs/espa?ol/AmiHomeassist.catalog
[Amiga]                   2579    5420  47.6% -lh5- 8e0b Sep 30 17:31 AmiHomeassist/Catalogs/italiano/AmiHomeassist.catalog
[Amiga]                   3826    8329  45.9% -lh5- bd1d Sep 30 17:31 AmiHomeassist/Changelog.txt
[Amiga]                    419     906  46.2% -lh5- d108 Sep 30 17:31 AmiHomeassist/Changelog.txt.info
[Amiga]                   1084    6970  15.6% -lh5- d1c0 Sep 30 17:31 AmiHomeassist/Pics/adddevice.ilbm
[Amiga]                   2870    9516  30.2% -lh5- 0cb6 Sep 30 17:31 AmiHomeassist/Pics/editor.ilbm
[Amiga]                   4854   22240  21.8% -lh5- 2714 Sep 30 17:31 AmiHomeassist/Pics/energy.ilbm
[Amiga]                   5500   19752  27.8% -lh5- b76b Sep 30 17:31 AmiHomeassist/Pics/main.ilbm
[Amiga]                    861    2358  36.5% -lh5- 6971 Sep 30 17:31 AmiHomeassist/Pics/manydevices.ilbm
[Amiga]                   2242   10144  22.1% -lh5- 2caa Sep 30 17:31 AmiHomeassist/Pics/select.ilbm
[Amiga]                   1104    3182  34.7% -lh5- 9d45 Sep 30 17:31 AmiHomeassist/Pics/settings.ilbm
[Amiga]                   8178   18787  43.5% -lh5- 2610 Sep 30 17:31 AmiHomeassist/README.txt
[Amiga]                    419     906  46.2% -lh5- d108 Sep 30 17:31 AmiHomeassist/README.txt.info
[Amiga]                    353     874  40.4% -lh5- ccf3 Sep 30 17:31 AmiHomeassist/Source.info
[Amiga]                  16632   54479  30.5% -lh5- 1f30 Sep 30 17:31 AmiHomeassist/Source/amiha.c
[Amiga]                   3505    7789  45.0% -lh5- 24b3 Sep 30 17:31 AmiHomeassist/Source/amiha.h
[Amiga]                    864    2136  40.4% -lh5- f348 Sep 30 17:31 AmiHomeassist/Source/amiloc.c
[Amiga]                    379     639  59.3% -lh5- 78c8 Sep 30 17:31 AmiHomeassist/Source/amiloc.h
[Amiga]                   3479    9404  37.0% -lh5- 51bb Sep 30 17:31 AmiHomeassist/Source/appicon.py
[Amiga]                   2914    6565  44.4% -lh5- b0dc Sep 30 17:31 AmiHomeassist/Source/catalogs/deutsch.ct
[Amiga]                   2881    6531  44.1% -lh5- 2f2a Sep 30 17:31 AmiHomeassist/Source/catalogs/espa?ol.ct
[Amiga]                   2861    6526  43.8% -lh5- 3d56 Sep 30 17:31 AmiHomeassist/Source/catalogs/italiano.ct
[Amiga]                   4125   11899  34.7% -lh5- 7210 Sep 30 17:31 AmiHomeassist/Source/chart.c
[Amiga]                    521     914  57.0% -lh5- 1121 Sep 30 17:31 AmiHomeassist/Source/chart.h
[Amiga]                   2205    4910  44.9% -lh5- a65c Sep 30 17:31 AmiHomeassist/Source/checkfpu.py
[Amiga]                   3388   10551  32.1% -lh5- 9f61 Sep 30 17:31 AmiHomeassist/Source/cli.c
[Amiga]                   6762   24583  27.5% -lh5- 602b Sep 30 17:31 AmiHomeassist/Source/dash.c
[Amiga]                   1915    4566  41.9% -lh5- a403 Sep 30 17:31 AmiHomeassist/Source/dash.h
[Amiga]                   9329   39163  23.8% -lh5- 6486 Sep 30 17:31 AmiHomeassist/Source/edit.c
[Amiga]                    649    1195  54.3% -lh5- be9a Sep 30 17:31 AmiHomeassist/Source/edit.h
[Amiga]                  20123   75285  26.7% -lh5- 2aae Sep 30 17:31 AmiHomeassist/Source/gui.c
[Amiga]                    568    2881  19.7% -lh5- c215 Sep 30 17:31 AmiHomeassist/Source/icons.c
[Amiga]                    657    1455  45.2% -lh5- e4d0 Sep 30 17:31 AmiHomeassist/Source/icons.h
[Amiga]                   1340    3855  34.8% -lh5- 31f1 Sep 30 17:31 AmiHomeassist/Source/icons.py
[Amiga]                   6847   94456   7.2% -lh5- 988b Sep 30 17:31 AmiHomeassist/Source/icons_mdi.c
[Amiga]                    747    1242  60.1% -lh5- b1ba Sep 30 17:31 AmiHomeassist/Source/LICENSE
[Amiga]                   3994   11358  35.2% -lh5- 19ee Sep 30 17:31 AmiHomeassist/Source/LICENSE-Apache-2.0
[Amiga]                   4385   11520  38.1% -lh5- f245 Sep 30 17:31 AmiHomeassist/Source/locale.py
[Amiga]                   3982   12915  30.8% -lh5- f4fe Sep 30 17:31 AmiHomeassist/Source/locale_strings.h
[Amiga]                   1265   19264   6.6% -lh5- 87b1 Sep 30 17:31 AmiHomeassist/Source/logo.c
[Amiga]                   2107    4257  49.5% -lh5- 7dce Sep 30 17:31 AmiHomeassist/Source/Makefile
[Amiga]                   3494    8881  39.3% -lh5- 66de Sep 30 17:31 AmiHomeassist/Source/mdi.py
[Amiga]                   1013    2905  34.9% -lh5- ba38 Sep 30 17:31 AmiHomeassist/Source/mui/NListview_mcc.h
[Amiga]                   6561   33900  19.4% -lh5- 3fec Sep 30 17:31 AmiHomeassist/Source/mui/NList_mcc.h
[Amiga]                    785    1616  48.6% -lh5- 7c54 Sep 30 17:31 AmiHomeassist/Source/muistubs.c
[Amiga]                    973    1910  50.9% -lh5- bf80 Sep 30 17:31 AmiHomeassist/Source/stack.c
[Amiga]                    238     328  72.6% -lh5- 4aee Sep 30 17:31 AmiHomeassist/Source/stack.h
[Amiga]                   3202    8260  38.8% -lh5- 8d22 Sep 30 17:31 AmiHomeassist/Source/strings.cd
---------- ----------- ------- ------- ------ ---------- ------------ -------------
 Total        57 files  256113  788116  32.5%            Oct  1 16:44
Page generated in 0.02 seconds
Aminet © 1992-2024 Urban Müller and the Aminet team. Aminet contact address: <aminetaminet net>