[Uppdaterad 2012-02-13. Ny version som är mycket enklare att konfigurera]
[Uppdaterad 2012-04-01. Nytt gränssnitt är snabbare.]
Klicka här för att gå till en demo.
Många har bett mig göra en mer detailjerad beskrivning av hur jag satt upp min hemautomation så här kommer den.
Materiel:
- En dator dedikerad till hemmaserver (som behöver vara påslagen hela tiden. Jag tog min gamla laptop)
- Tellstick för att skicka rf-signaler (det som styr Nexabrytare) http://www.clasohlson.se/Product/Product.aspx?id=167971680
- Usb-uirt som ir-sändare och mottagare (för tv, stereo mm) http://www.usbuirt.com/order.htm (jag har den billiga)
- Några vanliga Nexabrytare http://www.clasohlson.se/Product/Product.aspx?id=165894303
- Inbyggd dimmer, Nexa http://www.clasohlson.se/Product/Product.aspx?id=165064932
Installation
- Koppla upp dator
- Koppla in tellstick och installera tillsammans med Telldust mjukvara
- Installera alla nexa-brytare du vill använda
- Sätt ir-sändaren så att den når det du vill styra. Lägg dit ir-repeterare om signalen inte når hela hemmet.
Testa tellstick
- Öppna Telldus Center
- Lägg till en enhet genom att klicka på Ny.
- Välj enhet.
- Lär upp.
- Det fungerar när du kan släcka och tända lampor genom att klicka på de små ikonerna.
Eventghost
- Installera http://www.eventghost.org/
- Jag har för mig att du inte behöver ett plugin för att köra tellstick och usb-uirt. Det ska bara fungera.
- Testa dig fram till hur eventghost fungerar. Jag tänker inte förklara det i detalj men mekron är en kombination av händelser. I varje makro behöver man ha actions vilka bestämmer när ett makro ska köras. Exempelvis kanske man vill köra ett visst makro som tänder en lampa när en knapp på fjärrkontrollen trycks (läses från ir-mottagaren). Makron kan placeras i mappar.
Webbservrar
Nu till det lite svårare nämligen webbserver. Jag rekommenderade tidigare "dynamic web server" men denna har blivit gammal och fungerar inte lika bra som den vanliga webbservern i Eventghost. Se till att du har senaste versionen av Eventghost för att också ha den senaste versionen av webbserver-plugin.
- Du lägger till webbservern som en plugin i Eventghost. Autostart->Lägg till plugin->Webserver,
- Ställ in en port och en dokumentrot. Porten valde jag till 8080. Dokumentroten "C:UsersSebastianDocumentsEventghost webserver" men båda dessa kan givetvis vara annorlunda.
- Lägg all min kod i dokumentroten ( "C:UsersSebastianDocumentsEventghost webserver" i mitt fall). Koden får du från https://bitbucket.org/sebnil/eventghost-web-gui/get/tip.zip.
- Navigera till http://localhost:8080/index.html för att se att det fungerar. Om det fungerar så ser du gränssnittet. Testa i olika webbläsare eftersom det finns risk för att det ser lite dåligt ut i Internet Explorer. Om du inte får igång webbservern så börja felsök i Eventghost. Testa annan port och annan dokumentrot. Skype ligger på port 80 vilket kan ge problem om du valde den porten.
- Testa att du kan skicka kommandon till eventghost genom att skriva localhost:8080/?foo=bar. Om det syns till vänster i Log i Eventghost så är det ok.
- Testa att klicka på knappar i gränssnittet på http://localhost:8080 får att se om de registrerar i Eventghost. Om du kör Chrome kan du högerklicka och trycka Granska komponent, välja Nätverk och se om det skickas några kommandon till eventghosts webbserver.
Den stora förändringen med den nya versionen är att man inte behöver ställa in lika mycket för att få servern att fungera. Om du har senaste versionen av Eventghost och senaste versionen av min kod ska det räcka med att köra webbserver i Eventghost (och inte som det var tidigare då man även behövde köra en php-server i Wamp).
Gör gränssnittet personligt
Jag antar nu att du fått igång mitt gränssnitt och att det ligger uppe på din webbserver. Konfigurationen jag gjort ligger i /js/script-and-config.js. Ändra i denna endast om du känner att du vill fixa något i bakomliggande teknik.
/index.html är huvudsidan. De andra sidorna ligger under i samma dokumentrot. Grundläggande kunskap i html är nödvändig men du kanske klarar dig på att redigera filerna och testa dig fram. Den action som skickas till Eventghost bestäms av data-action=x. Det borde vara allt. Som sagt, testa dig fram och se vad som fungerar och blir bra. Det är så jag gjorde.
Komma åt hemautomation utifrån (över internet)
Om du gjort alla steg innan detta så är du egentligen klar men det kan finnas vissa saker kvar att göra om du vill komma åt webbservern utifrån (alltså att styra hemautomationen när du inte är hemma). Jag går inte igenom detta detaljerat eftersom det skiljer sig från system till system. Några saker att komma ihåg är dock:
- Ta reda på extern ip från exempelvis mittip.nu
- [Frivilligt] Fixa ett domännamn kopplat till ditt ipnummer. De flesta har dynamiskt ip som byter och därför behöver man en tjänst som uppdaterar regelbundet exempelvis http://www.no-ip.com/. Istället för att koppla upp sig mot något som http://213.100.33.42 så får du http://hem.zapto.org eller http://hem.servehttp.com. Lättare att komma ihåg helt enkelt.
- Gör en port forward i routern.
- Öppna brandväggen i operativet + eventuella övriga brandväggar.
- Glöm inte bort att lägga in skydd från att andra kommer åt din hemautomation!
Det vore kul att se vad ni lyckas göra med min mjukvara och hur den modifieras så lägg gärna en kommentar och berätta vad du gjort. Projektet ligger som öppen källkod på https://bitbucket.org/sebnil/eventghost-web-gui/overview. Lycka till!
Varför skall det vara så krångligt med teknik tex nu fungerar inte webservern i event ghost o har ingen aning om varför innan fungerade det ????????? Har småbarn och har inte tid att sitta o krångla timmars med teknik..
Webbservern i Eventghost är inte alltid den stabilaste. Allt detta är ganska ny teknik och då stöter man ibland på buggar. Testa starta om eventghost. Därefter kontrollerar du routern om du vill komma åt webbservern utifrån (sista steget i guiden).
Vad använde du dig av för program när du "lärde upp" usb-uirt:en fjärrkontrollskommandon?
Eventghost. När man trycker på en knapp på fjärrkontrollen riktad mot usb-uirt så registrerar den ir-koden i eventghost som en händelse. Eller om du menar hur jag fick vissa koder som inte fanns på fjärrkontrollen (exempelvis diskret on) så hittade jag denna http://www.remotecentral.com/cgi-bin/mboard/rc-discrete/thread.cgi?keywords=5780&highlight=samsung|lcd|arrow|up
Jo det är just det hur jag får ditt gränssnitt att sända ir till min tv osv. Använder du dig inte av grider? Fick hem usb uirt:en idag så har inte riktigt satt mig in i den. Den är din klasskamrat Robert C K som har lurat i mig att jag lätt skulle få ordning på detta. Vi får väl se. Jag är rätt så okunnig på datorer, egentligen. Men jag har iaf fått igång ditt gränssnitt så att foobar funkar! Men det ska du veta får jag igång allt så har du gjort ett bra jobb med guiden. Tack på förhand! / Magnus
Använder eventghost istället för grider. Tyckte det såg enklare ut. Och det är väll bara att erkänna att detta system passar bättre till hemmafixaren än till någon som vill ha något som fungerar direkt ur lådan. Men lycka till och lägg gärna in en kommentar när du får det att fungera.
Jo jag förväntar mig att det blir en del pyssel men jag ser det lite som en utmaning. Har man lagt ner lite pengar i prylarna så blir man ju tvungen att ta itu med det och få det att funka. Tack för info och gränssnittet!
Nu har jag fått igång det. Inte helt klar men det var ju inte allt för komplicerat när man väl tittat på det. Har du något bra tips på Ir repeterare? Tack all hjälp!
Kul att höra. Nej jag har inget bra tips.
Hej Sebastian!
Bra jobb där, jag har sökt ett tag efter en mer "hemmaknackad" lösning för ett touchgränssnitt till alla mina switchar makron mm.
Har fått ditt webgui att funka fint inga som helst problem.
Jag undrar, har du något bra tips om hur jag skulle kunna visualisera info från mina temperaturgivare? Dessa är redan igång i EG och triggar olika grejer, den roligaste är flaskvärmaren till kaninens vattenflaska i trädgården!! Haha.
Mvh: Cesare
Coolt. Jag har tyvärr inget bra tips för hur du implementerar. En idé är att söka på websocket plugin till EG.
Tjena..
Har följt ditt Eventghost projekt ett bra tag nu. Tänkt på testa GlobalTach IR2IR?
Undrar helt enkelt hur du får din Volume Slider att fungera? Jag använder en plugin för min AV Receiver som någon har lagt ut på deras hemsida. Men jag skulle vilja ha slider istället för knappar men jag har ingen aning om hur det ska göras. Skulle uppskatta ifall du tog dig tiden att melja eller skriva här hur du gjorde för att få Volume Slidern att funka. Jag ser att när jag drar i slidern så får jag upp "kommandon" i Eventghost. men jag kan inte dra dem alla till ett och samma makro?
MVH Aleks
Har baserat början på min styrning på dina filer, underbar början!
Utökade min volymkontroll lite i mitt tv.js script som jag skapade.
Installerade Nginx och satte upp den som reverse proxy så det inte blev några problem med cross scripting mot min förstärkare 🙂
var marantzServerUrl = 'http://192.168.66.10:89';
$(document).ready(function() {
get_volume();
window.setInterval(function(){
get_volume();
}, 10000);
});
function parseXml(xml)
{
$(xml).find('MasterVolume').each(function(){
$(this).find('value').each(function(){
$("#volSlider").val($(this).text());
});
});
}
function get_volume()
{
$.ajax({
type: "GET",
url: marantzServerUrl + "/goform/formMainZone_MainZoneXml.xml",
dataType: "xml",
success: parseXml
});
}
Howdy. I came across your blog site the utilization of ask. This is usually a really well published document. I will be sure to book mark the item as well as get back to go through excess of this valuable info. Information submit. I most certainly will absolutely gain.
Thanks for finally talking about > Instructions for home server, tellstick, Nexa and
ir transmitter < Loved it!
Here is my page: real
estate photography houston
I just got new one that I'm really happy with
made by Reuning driving school in fort lauderdale Boston, Mass.
Part of the training is technical data not normally
understood by other country drivers. They have a new CD out called Dancing On The Gallows.
Jag har en liten fråga hur du har fått "lightslidern" att fungera. Har fått vanliga On/off knappar att fungera men inte slidern.
Jag är väldigt osäker på hur jag skall koda detta i EventGhost: hur plockar man ut värdet som sidan genererar som följande i EventGhost: "HTTP.lightsSlider2 [u'value=72', u'callback=jQuery172029542232980020344_1436449453290', u'_=1436450491744']" där 72 är värdet som som spottas ut. Måste jag använda "eg.event.payload" på något sett?
Eller nu får jag nog editera mitt inlägg, har lekt lite med scriptet så värdet eventghost är detta(Och inte det jag skrev ovan. för där har jag försökt separera värdet men inte lyckats komma längre än det) "HTTP.lightsSlider2.72 [u'callback=jQuery172029542232980020344_1436449453290', u'_=1436450491744']"
You need to use python script to get this working. See my xml at https://bitbucket.org/sebnil/eventghost-web-gui/src/c2ed6abe2dd9d793f17ed9df605f557f4de45f54/my_eventghost_file.xml?at=default
row 1606
EventGhost.PythonScript(u'suffix = eg.event.suffix;\neg.globals.example=\'hejsan hoppsan\';\ntry :\n volume = int(suffix[suffix.find(".")+1:]);\nexcept Exception:\n volume = 0;\nelse:\n eg.plugins.System.SetMasterVolume(volume, 0)\n eg.globals.masterVolumeStr = str(volume);')
Tack nu klarnade det upp! Jag hade missat den filen totalt.