403 614 läst · 4 885 svar
404k läst
4,9k svar
Home Assistant
Som HA-green.Johan Gunverth skrev:…eller så låter du Home Assistant ligga i en separat hårdvara, typ RPi, med HAOS och kör alla containers i en annan mijlö som är avsedd för detta, t.ex Proxmox. Proxmox som är Debian-baserad kan göra många roliga saker med inkl. virtualisera HAOS. Du väljer, men jag skulle följa generalspåret att köra HAOS separat i en egen enkel hårdvara och koppla på allt annat från ett separat system.
Renoverare
· Stockholm
· 18 674 inlägg
zarkov skrev:Nja, både ja och (mest) nej. I HAOS finns Docker, alla sk add-ons är eg bara containers men det finns vad jag vet inget åtkomligt API. Det går att köra Portainer som add-on men det är knappast tänkt att man skall köra egna containers där, i HAOS. Dessutom finns en Docker-version av HA men då kan man inte använda add-ons utan får själv sköta (och koppla ihop) övriga tjänster.
Jag kör HA i en VM och Docker vid sidan om.
Johan Gunverth skrev:…eller så låter du Home Assistant ligga i en separat hårdvara, typ RPi, med HAOS och kör alla containers i en annan mijlö som är avsedd för detta, t.ex Proxmox. Proxmox som är Debian-baserad kan göra många roliga saker med inkl. virtualisera HAOS. Du väljer, men jag skulle följa generalspåret att köra HAOS separat i en egen enkel hårdvara och koppla på allt annat från ett separat system.
Vill du bara ha ett (1) fysiskt system med möjligheter: kör Proxmox med HAOS virtualiserat.
Tack då vet jag vilka options som finns. VIll ersätta min befintliga controller med en annan controller, inte mjukvara i en PC eller NUC.P paralun skrev:
Sedan vill jag ersätta alla mina random lua scripts med en custom backend skriven i .NET 9 som kör CoreCLR i en docker.
Jo och det tar ju inte många minuter att installera och sedan testa.AndersMalmgren skrev:
Sen har då HA en egen hub hos Docker
https://hub.docker.com/r/homeassistant/home-assistant
Medlem
· Tomte-tekniker · Nordpolen
· 1 943 inlägg
Om du inte har kört Home Assistant (HA) tidigare tycker jag du ska börja med Home Assistant OS (HAOS) som har allting förkonfigurerat med Linux och HA. Detta kan laddas ned och köras direkt i exempelvis Hyper-V. Med detta minimerar du administrationen av miljön och får möjlighet att uppdatera både Linux och HA på ett väldigt enkelt sätt med det inbyggda uppdaterings-verktyget.AndersMalmgren skrev:
Har du redan någon form av server igång hemma finns det ingen anledning att skaffa separat hårdvara. Den stora fördelen med att köra virtuellt med HAOS är att det blir väldigt enkelt att flytta miljön runt vid behov.
Home Assistant har färdig integration med Domoticz om du vill. Det finns också möjlighet att styra allt i HA externt från LUA.
Bra att ha i bakhuvudet: Home Assistant är ett stort j-la jättehack med en väldigt snygg front-end. Så fort du behöver göra något mer avancerat måste du börja hacka med YAML/Ninja vilket är rätt värdelöst om koden överstiger en one-liner. Bättre att jobba direkt med exempelvis Python som kan köras som en integration med några add-ons.
Bered dig på att dokumentationen är värdelös och ibland nästan obefintlig.
Renoverare
· Stockholm
· 18 674 inlägg
Därför jag vill köra en docker container med min egna backend som pratar med HA apiet. Den controller jag har idag kör med lua och det bli messy snabbt då jag har en del komplexa custom grejer jag byggt.Boilerplate4U skrev:
Jag är ingen expert på HA's intena delar, men är nog en bit över den genomsnittliga användaren i alla fall. Eftersom jag jobbar med Linux och tycker det är kul att labba så har jag testat en hel del "fulhack".Boilerplate4U skrev:Bra att ha i bakhuvudet: Home Assistant är ett stort j-la jättehack med en väldigt snygg front-end. Så fort du behöver göra något mer avancerat måste du börja hacka med YAML/Ninja vilket är rätt värdelöst om koden överstiger en one-liner. Bättre att jobba direkt med exempelvis Python som kan köras som en integration med några add-ons.
Bered dig på att dokumentationen är värdelös och ibland nästan obefintlig.
Allt jag kör i min "produktions-HA" är gjort via GUI. Trots en del ganska avancerade automationer och en del obskyra prylar köpta billigt från Kina har jag inte behövs skriva en enda rad Yaml eller programkod eller använt några tredjepartsplugin.
Vilka saker är det du har gjort i modern tid som kräver manuellt skrivande av Yaml-filerna?
Dock finns det såklart en hel del brister i GUI't, men med lite tålamod kan man göra ganska mycket. Det jag brukar störa mig mest på är de oändliga rullgardinslistorna när man ska välja en entitet till en automation eller ett kort. Har man 70+ enheter med 5-8 entiteter i varje (och dessutom är dålig på att namnge sakerna på ett enhetligt sätt) blir listan ganska snart oöverskådlig. Sitter man på datorn funkar det hyfsat eftersom man kan söka i listan, men på mobilen är det nästan oanvändbart.
Håller inte riktigt med men jovisst är det ett stort hack och mycket bygger ju på all kod som världens mjukvaruknådare har hos Github. I just Github så finns det då även dokumentation.Boilerplate4U skrev:Bra att ha i bakhuvudet: Home Assistant är ett stort j-la jättehack med en väldigt snygg front-end. Så fort du behöver göra något mer avancerat måste du börja hacka med YAML/Ninja vilket är rätt värdelöst om koden överstiger en one-liner. Bättre att jobba direkt med exempelvis Python som kan köras som en integration med några add-ons.
Bered dig på att dokumentationen är värdelös och ibland nästan obefintlig.
Sen har HAs egen dokumentation kraftigt förbättrats om man besöker hemsidan.
https://www.home-assistant.io/docs/
Sedan finns då liklnande för alla integrationer.
Slutligen "pythonhelvetet" som jag kallar det är en never-endingstory av fel version och att man enbart blir förbannad därför bytte jag till Dockerinstallationer.
Medlem
· Tomte-tekniker · Nordpolen
· 1 943 inlägg
Jag står fast vid min åsikt.Alfredo skrev:
Dokumentationen är en stor missmatch av övergripande, intetsägande bilder och texter som till exempel "Architecture Overview" som innehåller direkta felaktigheter.
Integrationer och add-ons presenteras på en låg nivå med oväsentliga detaljer utan någon som helst vettig koppling till den övergripande logiken som ibland pliktskyldig beskrivs med någa få rader text (som det vore den ointressanta delen av dokumentationen)
Koden för Home Assistant är helt odokumenterad vilket i princip omöjliggör att följa logiken för att undersöka en integration, datamodellen (ORM-mappningen) osv.
För att inte tala om den senaste versionen av HACS. Nu går pulsen upp så det är bäst att lägga av innan jag får en hjärtattack! 😁
Redigerat:
Det låter lovande.useless skrev:Jag är ingen expert på HA's intena delar, men är nog en bit över den genomsnittliga användaren i alla fall. Eftersom jag jobbar med Linux och tycker det är kul att labba så har jag testat en hel del "fulhack".
Allt jag kör i min "produktions-HA" är gjort via GUI. Trots en del ganska avancerade automationer och en del obskyra prylar köpta billigt från Kina har jag inte behövs skriva en enda rad Yaml eller programkod eller använt några tredjepartsplugin.
Vilka saker är det du har gjort i modern tid som kräver manuellt skrivande av Yaml-filerna?
Dock finns det såklart en hel del brister i GUI't, men med lite tålamod kan man göra ganska mycket. Det jag brukar störa mig mest på är de oändliga rullgardinslistorna när man ska välja en entitet till en automation eller ett kort. Har man 70+ enheter med 5-8 entiteter i varje (och dessutom är dålig på att namnge sakerna på ett enhetligt sätt) blir listan ganska snart oöverskådlig. Sitter man på datorn funkar det hyfsat eftersom man kan söka i listan, men på mobilen är det nästan oanvändbart.
Det enklaste custom sensorer jag integrerat använde sig av REST API:et. Men då är det typ bara att fråga efter XML eller JSON och ge sensorn ett värde + attribut baserat på det anropet.AndersMalmgren skrev:
HA själv har inget riktigt native API utan har istället flera tusen integrationer till andra APIer som plockar in värden. Och vill man göra en egen komponent enligt alla konstens regler får man koda den i Python och sedan hämta data från vilket API det nu handlar om.
Renoverare
· Stockholm
· 18 674 inlägg
Så inngen övergripade design för att ändra state på devices? Tex empel från ett av mina scriptS sjoelund skrev:Det enklaste custom sensorer jag integrerat använde sig av REST API:et. Men då är det typ bara att fråga efter XML eller JSON och ge sensorn ett värde + attribut baserat på det anropet.
HA själv har inget riktigt native API utan har istället flera tusen integrationer till andra APIer som plockar in värden. Och vill man göra en egen komponent enligt alla konstens regler får man koda den i Python och sedan hämta data från vilket API det nu handlar om.
function switchPowerStatusListener(id, service, variable, valueOld, value)
local remotes = remoteControllerLights[id]
for i, device in ipairs(remotes) do
luup.call_action("urn:upnp-org:serviceId:SwitchPower1", "SetTarget", {newTargetValue = value}, device)
end
end
for id,v in pairs(remoteControllerLights) do
luup.variable_watch('switchPowerStatusListener', 'urn:upnp-org:serviceId:SwitchPower1', 'Status', id)
end
Medlem
· Tomte-tekniker · Nordpolen
· 1 943 inlägg
Renoverare
· Stockholm
· 18 674 inlägg
Dessa körs rakt upp och ned i controllern. MEn det blir ju messy med ett gäng script. Skulle vilja bygga en custom backend som är lite mer sammanhängade istället för random scripts i scener och startup. Ovan är exempel på startup script som körs vid startup och sedan liggger och lyssnar på state så länge controllern är vid livBoilerplate4U skrev: