Home Assistant – zaczynamy! Instalacja za pomocą Hass.io

Jak to mówił w niezapomnianej roli Wacław Kowalski: 'Nadejszła wiekopomna chwila…’ żeby spróbować czegoś innego niż Domoticz.

Nie jest to może najmądrzejszy krok, bo jeszcze w Domoticz mam co robić, ale:
– jedno drugiemu nie przeszkadza
– coś tam jednak w Domoticz już wydłubałem, działa, sprawdza się dobrze, chcę spróbować jak można to zrobić w innym systemie
– leżała mi jedna wolna (dosłownie i w przenośni) Malina, na której to wszystko postawiłem

Możliwości instalacji Home Assistant jest kilka.

Jedną z nich, najprostszą dla początkującego (a tak mi się przynajmniej wydaje) jest użycie Hass.io. Jak na mój stan wiedzy jest to obraz Raspbian z zainstalowanym Docker’em i w nim znajduje się komponent Home Assistant.

Dostępny pod adresem https://www.home-assistant.io/hassio/installation/, zawiera obrazy dla różnych SBC. Ja (niestety!) mam w domu do testów tylko Raspberry Pi 1 B. Wolne to jak diabli, ale działa. Mam pewien pomysł w głowie, ale muszę do niego dorosnąć 😉

Ściągnąłem, użyłem balenaEtcher, nagrałem na kartę, włożyłem w Malinę, uruchomiłem – uruchomił się. Komunikat nie jest bezpodstawny. Wydaje mi się, że na tej mojej wolnej RPi1 potrzebował około 30 minut (podłączony kablem sieciowym) aby dokończyć instalację. W tym czasie ściąga najnowszą wersję i konfiguruje środowisko.

Jeżeli Wasz router obsługuje mDNS (multicast DNS) możecie od razu wejść na adres http://hassio.local:8123 i poczekać na odświeżenie strony. Jeżeli nie – musicie znaleźć adres IP Waszego SBC jakimś skanerem adresów IP.

Gdy instalacja zostanie zakończona zostaniecie poproszeni o stworzenie pierwszego i głównego użytkownika systemu oraz podanie hasła do jego konta.

I przechodzicie do dodawania elementów. Tutaj zwanych Integracjami.

W sumie nic tutaj nie dodawałem, przeszedłem po prostu dalej, czyli wcisnąłem Finish.

Co mnie mile zdziwiło (chociaż czytałem o tym wcześniej w dokumentacji), Home Assistant wykrył mi od razu dostępne w domu urządzenia. Yeelight, lokalizacja, Xiaomi Mi Box, wzmacniacz Denon i jego HEOS.

Kolejne miłe zaskoczenie – interface Lovelace (skojarzenie W OGÓLE nie uzasadnione – bardzo proszę się nie dziwić przy wyszukiwaniu go w Google 😉 jest już zainstalowany oraz skonfigurowany.

Słowem wyjaśnienia – śledziłem do tej pory postępy Home Assistant wyłącznie pobieżnie. Wiedziałem, że prężnie się rozwija, jeden z dobrych internetowych znajomych będących głęboko w temacie (Maciej – pozdrawiam) polecał go gorąco. Dlatego wiele rzeczy jest dla mnie albo zdziwieniem, że 'tego nie ma’, albo 'o, to jednak jest, wbrew temu co czytałem’. Wydaje MI się, że Lovelace dość niedawno wszedł do standardu, pozwolił na o wiele sprawniejsze uruchomienie i skonfigurowanie Home Assistant. Do tej pory HA kojarzył mi się z tekstem 'Bariera wejścia jest dość duża, bez znajomości YAML nie podchodź’. Nie boję się skryptów, tworzenia konfiguracji w tekście (pozdrawiam pamiętających tworzenie kolorowych i interaktywnych Autoexec.bat i Config.sys – device=c:doshimem.sys 4EVA RULZ!), ale skoro Domoticz działa, to po co się pakować w kłopoty 😉 Dobrze, że sam siebie jednak nie posłuchałem! WARTO poznać Home Assistant, bo podejście do domowej automatyki jest w nim zgoła inne niż w Domoticz. A do tego – jakże miło nauczyć się czegoś nowego.

Wracając jednak do tematu…

Można od razu zacząć sprawdzać możliwości, opcje, itp. Fajne, nie powiem! Bardzo spodobała mi się opcja Text to speak na Xiaomi Mi Box. Dzieci były zdziwione gdy kazałem im zejść po jedzenie 😀

Rozpoczęło się dalsze szukanie nowych elementów systemu, poniżej historia zdarzeń powiązana z elementami naszego systemu.

Podłączenie do wzmacniacza i systemu Heos.

Poniżej BARDZO ważna zakładka – Configuration. To tutaj możecie się dostać do wszystkich Waszych:
Integrations – czyli na przykład połączenie z HEOS, MQTT, PS4
Users – czyli użytkownicy naszego systemu
General – jedna z najważniejszych funkcji dla początkujących w HA – sprawdzenie poprawności pliku configuration.yaml. Z tego co czytałem (i sam się w ostatnich dniach przekonałem) niezmiernie ważna jest poprawna edycja tego pliku. Wcięcia o odpowiednich długościach, tabulacje, itp. Na szczęście w tej właśnie sekcji jest Configuration Validation, którą powinno się wykonać po każdej zmianie w pliku. Szczególnie na początku, gdy jeszcze 'błądzimy we mgle’. Widać, że system jest przemyślany – na tej samej stronie, poniżej, znajduje się przeładowanie konfiguracji i serwera Home Assistant. Nie przeładujecie jej, jeżeli w konfiguracji jest błąd. Zapobiega to 'wywaleniu’ systemu jeżeli coś źle zrobiliśmy.
Persons – osoby, które mają zostać odzwierciedlone w systemie. Na przykład do sprawdzania obecności
Entity Registry – lista naszych czujników, itp.
Area Registry – lista pomieszczeń
Automation – automatyka
Script – skrypty
Customization – możliwość zmiany

Ostatnie pięć wymaga osobnych postów, to po pierwsze. A po drugie – sam ich jeszcze do końca nie rozumiem, więc nie będę cwaniakował 😀

Tutaj zakładka z parametrami naszego systemu:

Z tego co widzę system backupów jest realizowany na zasadzie snapshotów aktualnego statusu systemu. Ciekawostka, trzeba doczytać.

Jak widać poniżej – nie mamy żadnych dodatków jeszcze skonfigurowanych. Pora to nadrobić!

Na początku starałem się dodać komponenty z oficjalnego Add-On store, bo po prostu nie wiedziałem jak zrobić to w inny sposób. Samba share, SSH. Niby się zainstalowały, ale cóż z tego, kiedy nie wiedziałem jak je uruchomić…

Bo trzeba umieć czytać dokumentację!

Każdy komponent potrzebuje chociaż wstępnej deklaracji konfiguracji w pliku konfiguracyjnym. Któren to znajduje się w sekcji Hass.io. Oczywiście, jeżeli go wcześniej zainstalowaliście 🙂

Wybieramy ikonę folderu,

Oraz plik konfiguracyjny

I tam na przykład wstawiacie sekcję speedtestdotnet, jak opisane na stronie: https://www.home-assistant.io/components/speedtestdotnet/. Miałem trochę barierę mentalną związaną z każdym Raspbian, Windows, Domoticz. 
Jak to się, do cholery, instaluje? Otóż, proszę Państwa, wcale. Podaje nazwę, system sam dba, aby dodać kolejne Entity. No, na mój stan wiedzy na ten moment 😉
I po sprawie. Restart jak wcześniej sugerowałem:

I po chwili mamy wynik. Co prawda trzeba go wstawić na stronę, ale o tym już w kolejnym wpisie. Zwróćcie również uwagę na inne komponenty – bez problemu mogę sterować amplitunerem oraz jak widać monitorowanie parametrów systemu jest dostępne bez problemu.
A komponentów jest… Bagatela, prawie 1400!
Aplikacja na telefon również jest dostępna i przedstawia się następująco:

Zaczyna się nowa, arcyciekawa przygoda! Opis dość chaotyczny, pisany na gorąco, bez przemyślenia jeszcze, ale to co zastałem jest po prostu niesamowite! Jakże inne podejście niż w Domoticz! Widzę, że czekają mnie miesiące nauki, ale tym bardziej to motywuje! Modułowa budowa programu, natychmiastowa reakcja, bardzo częste aktualizacje, separacja dodatków od 'core’ systemu – to jest coś, co wróży stabilność i bezproblemowe działanie.

Dobranoc, pora ochłonąć przy muzyce Rotting Christ i szklaneczce whisky, skoro rodzina śpi 😀

Arcade bartop – my current Opus magnum.

Introduction will be short. Sentimental, a bit nostalgic.

Probably you don’t know how 'Arcade salons’ used to look like 35 years ago in Poland – if not then google 'Wóz Drzymały arcade’. They were not only ugly, but also crowded, smelly and a bit dangerous sometimes. But it was the only place to play games better than on your computer – if were that lucky to have one at home that time! I wasn’t visiting them that often as I would like to. But I always wanted to have one…

I remember playing my Atari 65XE – great time. Loading games, watching first demos, learning BASIC and assembler. Commodore C64 when visiting friends, shocking Last Ninja. Then I had PC (286 AT 12 MHz), some friends had Amigas. That time Amiga comparing to PC was something like a miracle. .

However, I am sentimental animal and was lucky to gather some retro machines at home. I have my own old Atari 65XE and games on tapes, there is Amiga 500, Game Boy, PS2, Nintendo Dual Screen and PSP (not that retro…), but connecting them is always a challenge – cables, connectors, looking for floppies (not that easy to get sometimes). There is SIO2SD, Gotek – maybe one day 😉 Time, however, is not made of rubber and after some tries I am just tired of setting this up again and again.

As a 'die-hard’ fan on Raspberry Pi (I’ve written once that it reminds me of old old times, when you had to do lots of things by yourself) I’ve seen RetroPie long time ago. But again – connecting, configuring pads, second one when I play with my son, connecting to the TV (and then you realize that all HDMIs are already taken), chargers. Naaaah.

Eventually I’ve grown up to create my very own Arcade Bartop. And this topic will be next to describe here. I was not in rush, slowly gathering all the elements, sometimes I had to order additional, as idea changed or there was a new need. Promotion here, discount there – finally I had all! During the process one of my weak points was delaying all – I HAVE TO describe everything before I start, think it over dozen of times and I am afraid of manual work because I think I will brake everything. And because of that things that would take you week – was a month for me. Vide – putting all the wooden parts together. I wanted to quit sometimes and forget about it, but once I’ve visited Console museum and have played 1943 and after that there was no other option – I HAD TO finish.

Mistakes that I’ve made:
– MDF, not plain wood. More aesthetic, easier to paint.
– Gather elements, do, don’t overthink. I am not sending rocket to the moon…

I will translate all the parts next days, so stay tuned!

Document is split to:
– preamble, you read it now
list of all parts – http://blog.asobczak.pl/2018/11/05/arcade-bartop-sprzetowo/
sticks – http://blog.asobczak.pl/2018/11/03/arcade-bartop-sterowanie/
sound – http://blog.asobczak.pl/2018/11/03/arcade-bartop-audio/
configuration – http://blog.asobczak.pl/2018/11/03/retropie-konfiguracja/
how to make RetroPie beautiful – http://blog.asobczak.pl/2018/11/03/retropie-wyglad-okladki-do-gier-scrapping/
emulators – Amiga – http://blog.asobczak.pl/2018/11/03/retropie-i-amiga/
emulators – Atari, Commodore 64, ZX Spectrum

RetroPie is huge. It emulates most machines that I ever wanted to play and never was able to. Among them:

– many Ataris – 2600, 5200, 7800, XE, XL, Jaguar, Lynx
– Commodore – C64, Vic-20, PET
– ZX Spectrum
– Amiga – and WHDLoad – full automation and configuration 'on the fly’ when loading games
– MAME – arcade machines
– Amstrad CPC
– Nintendo Game Boy, Color, Advance
– NES, SNES, N64
– SEGA – Genesis, Game gear, CD, 32X
– Neo Geo Pocket
– Sony Playstation 1, PSP
– PC engine
– Sam coupe
– ScummVM
– ports – Descent, Doom, OpenTTD, itp.
– KODI

and many more, sometimes very exotic. Wonderswan, Vectrex, VirtualBoy. Most cases they are already pre-configured so you sit and play, but some of them need additional tuning.

There are dozens of 'HowTo’s on the internet, I’ve followed: https://www.instructables.com/id/2-Player-Bartop-Arcade-Machine-Powered-by-Pi/. Good looking, for two players, seems easy, well documented. BE CAREFUL, to print PDFs maintaining proper aspect ratio! I was close to make a mistake which could finally lead to failure.

Black paint as a background.

And here we have fully pro printouts directly on wood made by Omega Art z Olkusza – www.omega-art.pl – I recommend!

To make painting last forever I’ve put on the top special paint for floors, as suggested by Omega Art .

As you see – even my daughter was involved 😀

Putting all the parts together was most stressful for me. I’m not that good at hand craft and I didn’t want to ruin such beautiful paintings, so I had to plan everything carefully.

First buttons already in place – emotions!

Up high cabinet without magnes. Down below work in progress connecting all the cables.  

Slowly progressing…

Down below putting all the cables together.

Front panel finally mounted. No turning back!

I had to somehow put screen in place…

It looks better and better.

Most stressful – have I done everything right?

But i was more than fine! No speaker covers and no marquee, yet. But believe me – even this moment was fantastic. 'I’ve done it! By myself! It works!’.

View from the back. Also important.

’Full professional speaker cover’ :D. But I was so excited then, that even when my daughter would put pink circles around them I would accept that.

That was expected – screen is upside-down 😉   Solution: display_rotate=2 in /boot/config.txt

AND HERE WE ARE!

Super NES…

MAME…

As it was a present for my son – let him play 😉 He left Fortnite for a moment to play Keystone Kapers. His favorite, as well as Tapper.  

But daughter was also amazed. No better moment for a father!

Sonic? Why not!

As I’ve presented that during kid’s birthday, even my father in law wanted to play River Raid 😀

Conclusion. I am damn proud and happy. For some people – 'week and I’m done’. For me – crossing another border and making dreams come true.

Personal greetings 😀

– My wife for being patient (many nights spent on thinking, configuring) and accepting my hobby 😀
– Kids for help, choosing bevels and that they are with me.
– Parents – especially my father for help during last stages.
Omega Art for help.

Ritual hail to Rotting Christ, Samael, Behemoth, Mgła, Combichrist, Agonoize, Impaled Nazarene, Dismember, Project Pitchfork, Obituary, Slayer, Type O Negative, Rotersand, Edge of sanity, Grave, Deicide, Falkenbach, Entombed, Vader, Pan.Thy.Monium, Unleashed, Sisters of mercy, VNV nation, Suicide commando, Mortiis, Icon of coil, Feindflug, Merzbow, Immortal, Carcass, Death, At the gates, Bathory, Sinister, Dead can dance, Hypocrisy, Arkona and dozens other bands that settled my thinking proper way and open minded: 'Who, if not me? This is my time to act.’

IT IS ACHIEVABLE! Even person like me can do it!