Hop til indhold
  • 0

OpenHAB 2 habpanel ringetryk/momentary.


Morten H
 Share

Spørgsmål

Jeg har lige fået OpenHAB2 til at virke på en RPi, i dag. Jeg har binded næsten alle udgange, og fået dem tildelt kontakter i Habpanel. Konen forstår at bruge det. Det fungere bare. Når jeg er kommet igennem alle baby steps, skal jeg have leget med Google Assistant.

Men i første omgang, så fungere 2 af mine lysdæmpere og min garageport jo som "ringetryk". Så hvis jeg tildeler dem en kontakt går de bare i on, og lysdæmperen fiser bare op og ned. Jeg fandt en momentary switch ved at google lidt ( https://community.openhab.org/t/momentary-switch-habpanel/26672 ) og det virker fortræffeligt på PC'en, men straks over på en telefon eller tablet og så fungere det der mouseup altså bare ikke. Det virker i ny og næ, men det er som om habpanel's mousedown og mouseup ikke helt kan lide touch.

Hvad har i andre gjort med jeres ringetryk funktioner?

Næste problem er password beskyttelse af habpanel såfremt man laver port forwarding? Det virker en smule tosset at det bare er en http(uden s) og uden password. Så åbner man bare op for gud og hver mand.

Link til kommentar
Del på andre sites

Recommended Posts

  • 0

Uanset hvad jeg gør i min things fil nu, så får jeg den samme fejl. Jeg kan copy paste direkte fra det du har postet eller fra Pauli's readme. Samme fejl. Jeg har prøvet at stoppe openhab2 og slette tmp og cache, men hvilken som helst things fil jeg smider op giver den her(og nu var det lige ved at virke):

2019-04-28 01:09:31.508 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'controller.things'

2019-04-28 01:09:31.521 [WARN ] [el.core.internal.ModelRepositoryImpl] - Configuration model 'controller.things' is either empty or cannot be parsed correctly!

 

Link til kommentar
Del på andre sites

  • 0

Det kan simpelthen ikke passe det skal være så tungt... Jeg har lige prøvet igen igen igen at lave et frisk openhabian sd kort, for at se om jeg i det mindste kunne få den online igen, men nu er det fuldstændig ligegyldigt hvilken .things fil jeg smider op, så skriver den bare "2019-04-28 10:39:26.148 [WARN ] [el.core.internal.ModelRepositoryImpl] - Configuration model 'tbv.things' is either empty or cannot be parsed correctly!"

Det kan være direkte copy paste fra Kandersens code felter. Direkte copy paste fra Pauli's readme. Jeg har også prøvet at skrive den i hånden så det ikke var noget jeg fik kopieret med over fra kode felterne som ikke skal være der (et lille mellemrum eller lign.) men jeg får bare den fejl nu.

Giver fanme snart op.

 

Jeg har prøvet med notepad, notepad++ og Visual Studio Code med Openhab extension.

Link til kommentar
Del på andre sites

  • 0

ENDELIG!

Jeg har håndskrevet den her i VSC. Min OpenHAB accepterede den. Endelig. Jeg peger direkte på ID'en på "tænd/sluk reguler op/ned" i Visual.

ihc:controller:elko [ ip="192.168.1.151", username="openhab", password="*", timeout=5000, loadProjectFile=true, createChannelsAutomatically=false ] {
    Channels:
        Type switch-channel : my_test_switch "My Test Switch" [
            resourceId=3480081, direction="WriteOnly", pulseWidth=300
        ]
}

Jeg kan også se My Test Switch i OpenHAB app'en på min telefon. Når jeg trykker på den, forbliver den dog inde og lysdæmpere kører bare lyset helt op.

Link til kommentar
Del på andre sites

  • 0

Det VIRKER. Dog uden pulswidth!

Controller.things

ihc:controller:elko [ ip="192.168.1.151", username="openhab", password="*", timeout=5000, loadProjectFile=true, createChannelsAutomatically=false ] {
    Channels:
    //Entre
        Type switch-channel : entre_dimmer "Entre Dimmer" [
            resourceId=3480081
        ]
}

Controller.rules

rule "entre dimmer"
when
Item entre_dimmer changed to ON
then
Thread::sleep(100)
entre_dimmer.sendCommand(OFF)
end

Jeg kan dog ikke lige få det til at virke når jeg selv laver .items filen ? Så pt. opretter jeg items i paperui. Kunne nogen være venlige at lave et eksempel på en .items til ovenstående?

Men når jeg trykker i openhab app'en nu, så flyver knappen direkte tilbage på off og lyset tænder. Det er fantastisk.

Fandt løsningen her:

https://community.openhab.org/t/solved-problem-with-ihc-push-button-light-toggles-on-off/12958

Link til kommentar
Del på andre sites

  • 0

Du bruger efter min mening ikke den seneste binding.. 
Prøv lige at gå i Karaf og se hvilken version du bruger.. 
Det triggede mig længere oppe, hvor du skriver, at du ændrede hostname til IP, så fik du hul igennem. 
Derefter kan jeg se at du kan få det til at virke med Type switch-channel : ....

Begge dele er ændret i den nyeste binding, inkl at pulswidth burde virke. 
Så prøv lige at kig i den gamle tråd openhab2 IHC binding Mener det er 2-3 uger siden Pauli lagde en ny op, som jeg hentede.

Dette er den version jeg bruger nu: (fra d. 02.04.2019)
 


[12:46:01] openhabian@openHABianPi:~$ ssh -p 8101 openhab@localhost
Password authentication
Password:

                          __  _____    ____
  ____  ____  ___  ____  / / / /   |  / __ )
 / __ \/ __ \/ _ \/ __ \/ /_/ / /| | / __  |
/ /_/ / /_/ /  __/ / / / __  / ___ |/ /_/ /
\____/ .___/\___/_/ /_/_/ /_/_/  |_/_____/
    /_/                        2.5.0-SNAPSHOT
                               Build #1575

Hit '<tab>' for a list of available commands
and '[cmd] --help' for help on a specific command.
Hit '<ctrl-d>' or type 'system:shutdown' or 'logout' to shutdown openHAB.

openhab> bundle:list -s |grep -i ihc
211 x Active x  80 x 2.5.0.201904021522    x org.openhab.binding.ihc
openhab>

Det ville også forklare, hvorfor du har haft så store problemer. Hvis du bruger ny configurations metode, men med en ældre binding. 

Btw.. Ang pulsewidth, så skal du lige være opmærksom på, at den i openhab vil vise at kontakten er tændt, men overfor IHC controlleren, så vil den virke som en Kip. Det er en rigtig god ting, da man derved kan bruge det til fx at vise når en lampe er tændt, selvom switchen i realiten er OFF. 

Link til kommentar
Del på andre sites

  • 0
25 minutter siden, Morten H skrev:

Ah jeg havde bare antaget at 2.4 snapshot i #1 var den nyeste stable version. Jeg må lige rode med det igen.

Nix, der er sket meget siden, inkl at .things filen skal sættes op anderledes. Det skal du huske, hvis du smider den nyeste på :)

 

26 minutter siden, Morten H skrev:

Men vigstigst af alt så virker den.

Det gør den ikke med puslewidth, såvidt jeg husker. Det kom først senere. Men ja, du har hul igennem. Den del virker.

 

26 minutter siden, Morten H skrev:

Ifht til det du siger med at kontakten viser on så virker det vel kun lige indtil jeg trykker på trykket i huset?

Du skal tolke det som, at hvis du har lavet en channel med puslewidth (der virker self), så vil det visuelt i openhab se ud om om at den forbliver tændt. Men i baggrunden vil du i IHC controlleren (ved brug at serviceview) se, at den tænder og slukker xx ms efter. Men i openhab forbliver den som om den er tændt.. Og det er det jeg mener er smart, fordi så kan du kombinere din items med både dit tryk og tilbagemelding fra lampen/Fb/whatever, og på den måde i openhab vise, at lampen er tændt. Hvis nu switchen i openhab havde fulgt pulsewidth, så ville switchen gå OFF efter xx ms, og openhab vil ikke kunne vise dig lampen er tændt, medmindre du laver en proxy/slave switch i openhab. 

Det lyder måske lidt forvirrende, men det er smart lavet det sådan..
Jeg kan vise dig en item hvori jeg bruger trigger channel og tilbagemelding channel på samme item:
 

Switch    stort_badDimmerLys    "Halogenlys i StortBad [%s]"    <cu_spot>    (vLys)    [ "Lighting" ]             { channel="ihc:controller:elko:stortbad_dimmer_fb", channel="ihc:controller:elko:stortbad_dimmer_state", autoupdate="false" }

Som du kan se, så er to channels linket til den item som hedder stort_badDimmerLys. (Det er i øvrig en UNI400 dimmer). Dvs når lyset tænder, uanset om det er på fysisk tryk, via openhab app eller i habpanel/basicUI, så vil stort_badDimmerLys forblive visuelt tændt i openhab. Men i IHC har den bare kippet på Fbén. Dvs den er reelt slukket i IHC controlleren. 
Det er det PulseWidth gør. Den kipper i x ms. 
Det er derfor jeg bruger FBén til at trigge med, og til at "opfange" tilbagemeldingen. Jeg linker faktisk ingen tryk overhovedet. Men jeg linker på FBén samme sted, som hvis det havde været et tryk.

Link til kommentar
Del på andre sites

  • 0

Jeg forstår udemærket hvor du vil hen med det :-) men ruten er temmelig svær og det hele er helt nyt for mig . Jeg er sindssygt imponeret af mig selv over overhovedet at være nået så langt. Jeg vil prøve det du skriver med nyeste binding. 2 ting. Pauli burde virkelig holde #1 i hans tråd opdateret med nyeste binding fordi så kunne jeg da have skåret 4 timers frustration væk og 2. Hvis det bliver muligt at stille pulsewidth på auto channels så behøvede nybegyndere slet ikke lave things filerne selv....

Link til kommentar
Del på andre sites

  • 0
1 time siden, Morten H skrev:

Pauli burde virkelig holde #1 i hans tråd opdateret med nyeste binding fordi så kunne jeg da have skåret 4 timers frustration væk og 2. Hvis det bliver muligt at stille pulsewidth på auto channels så behøvede nybegyndere slet ikke lave things filerne selv....

Enig. Jeg har flere gange opfordret ham til at holde det nemt og overskueligt at finde seneste binding. Men han er vist programmør og derfor ikke pædagogisk anlagt :)
Ang det med auto pulsewidth, der kan jeg også godt være enig. Problemet er bare, at det er jo ikke altid man vil bruge det. Men det er faktisk også et foreslag jeg tidligere skrev til ham, fordi det ville gøre det nemmere at benytte autochannels. Det er i øvrig derfor jeg ikke benytter autochannels. Bindingen henter dem bare, men jeg laver mine egne. 
Omvendt har jeg det også sådan, at jeg helt klart synes, at det med at lave filerne manuelt, det gør det langt nemmere, plus at man langt bedre forstår, hvordan tingene hænger sammen. Det er ganske rigtig en stejl indlæringskurve og kan virke de-motiverende for nye. Men når det først er lært, så har man slet ikke lyst til at se sig tilbage.. Jeg bruger/ser feks slet ikke items i PaperUI. Med de efterhånden temmelig mange items jeg har, der er det bare et stort rod i PaperUI og vildt uoverskueligt. Så er det meget nemmere med items filer. 

Link til kommentar
Del på andre sites

  • 0

Åbnede putty, loggede ind. Stoppede openhab med sudo systemctl stop openhab2.service og slettede var/lib tmp og cache og slettede binding, sudo shutdown -r now.

Lagde den nyeste binding ind. Lavede ny controller.things

ihc:controller:elko [ hostname="192.168.1.151", username="openhab", password="*", timeout=8000, loadProjectFile=true, createChannelsAutomatically=false ] {
    Channels:

// Entre
   	   Type switch   :entre_dimmer           "Entre Dimmer"              [ resourceId=3480081, direction="WriteOnly", pulseWidth=100 ]
}

og en controller.items

Switch entre_dimmer  "Entre Dimmer"    { channel="ihc:controller:elko:entre_dimmer" }

og nu virker det uden rules og den står tændt når det er tændt og den slukker når det er slukket. Jeg peger også på FB'en istedet for input eller output.

 

TUSIND TAK FOR DIN TÅLMODIGHED. Gid vi havde opdaget mine fejl noget før, men nu kan jeg efterhånden næste skrive ovenstående .things fra hovedet. Så mangler jeg kun at lære de sidste 98% :-D

Link til kommentar
Del på andre sites

  • 0
2 timer siden, Morten H skrev:

Gid vi havde opdaget mine fejl noget fø

Ja jeg ved ikke lige hvor det gik galt, men jeg var så overbevist om, at du brugte den nyeste. Ellers havde vi nok fanget den for længe siden.

2 timer siden, Morten H skrev:

men nu kan jeg efterhånden næste skrive ovenstående .things fra hovedet. Så mangler jeg kun at lære de sidste 98% :-D

Intet er så skidt, så det ikke er godt for noget - Siges der :D 

Den items du har lavet.. Fik du fat i det jeg tidligere skrev med, at bruge flere channels i samme items? Hvis du har en tilbagemelding fra din dimmer i din FB, så kan du bare lave en channel på den (som readonly), og sætte den ind i items også.. Så har du både trigger og state i samme item.

Link til kommentar
Del på andre sites

  • 0

Nu har jeg lavet en "dum" lampe i stuen og så den dimmer i entreen. Jeg skal af en eller anden grund have 10000 i timeout ellers får jeg read errors hele tiden.

Nåh, men jeg skal have gennemskuet det der med "state" fordi de opfører sig ikke helt rigtigt knapperne i openhab app'en.

Jeg har nogenlunde gennemskuet at på en dum lampe skal jeg pege på kip indgangen på FB'en som var det et tryk, og så skal state pege på udgangen af lampeudtaget ovre i installation.

Men på min dimmer har jeg jo ikke noget feedback, da jeg bare bruger et ihc output 230 til at kippe med servodan dæmperen, så jeg kan jo ikke se om den er tændt eller slukket.

Switch    stort_badDimmerLys    "Halogenlys i StortBad [%s]"    <cu_spot>    (vLys)    [ "Lighting" ]             { channel="ihc:controller:elko:stortbad_dimmer_fb", channel="ihc:controller:elko:stortbad_dimmer_state", autoupdate="false" }

Hvad er [%s] ?

Hvad er <cu_spot> og (vLys) ?

Link til kommentar
Del på andre sites

  • 0
16 minutter siden, Morten H skrev:

Men på min dimmer har jeg jo ikke noget feedback, da jeg bare bruger et ihc output 230 til at kippe med servodan dæmperen, så jeg kan jo ikke se om den er tændt eller slukket.

Nix i det tilfælde er du nødt til at tro på switchen. Dvs er den ON, jamen så burde lyset være tændt. 

16 minutter siden, Morten H skrev:

Hvad er [%s] ?

Hvad er <cu_spot> og (vLys) ?

Det bruges i BasicUI. 
[%s] er værdien. Det er vist noget standard Java-noget. Der findes et hav af måder, afhængig af hvad det er for noget værdi. Jeg behøvede egentlig ikke at bruge dem i mit tilfælde, da jeg har dynamiske ikoner. Men det er ren vane, og skader ikke. 
<cu_spot> er netop ikon.
(vLys) er group. Det er smart at bruge, når man fx laver rules til flere items på een gang. Så kan man samle dem i en group og lave rules ud fra gruppen. 

Her er et eksempel fra mit BasicUI der viser brugen af ikoner og værdier. Håber det giver lidt mening (hurtigt tegnet i hånden). 
1903846787_basicikonogvrdi.thumb.png.1c97057eaf1c9afb1bc70b36f658589b.png

Og her er samme, hvor lysene (spotlys og lampeudtag) er tændt. 
35374564_basicikonogvrditndt.thumb.png.284472118b42cf07f9170e4482b60478.png

Link til kommentar
Del på andre sites

  • 0

Ah så giver det mening :-)

Jeg er faktisk ikke rigtig fan af pulsewidth. Foretrækker på mine 2 lysdæmpere og garageporten, hvor jeg alligevel ikke kan få feedback(uden supplerende følere) at knappen bare springer tilbage igen som den gjorde med .rules filen jeg lavede. Kan jeg mon strikke hele min openHAB op i paperUI og så skrive en .rules selv hvis jeg bare peger på de item navne jeg generere med paperui?

Link til kommentar
Del på andre sites

  • 0

Du kan sagtens bruge pulsewidth til dine tryk, og de vil fungere helt som normalt. 

Det her er et almindeligt IHC tryk, som jeg bruger til at aktivere brugerfunktionen i vores Nilan anlæg:
Her er først .things:
 

Type switch   :nilan_brugerfunktion         "Aktiver Nilan brugerfunktion"         [ resourceId=14474513, pulseWidth=300 ]

Og her er items.

Switch  stort_bad_NV  "Nilan Brugerfunktion [%s]"   <light>   [ "Switchable" ]     { channel="ihc:controller:elko:nilan_brugerfunktion", autoupdate="false" }

Der er ingen magi i dette. Openhab opfatter trykke helt normalt. 

Alternativ skal du lave en rule som sætter dit tryk OFF efter x antal ms. Og så kan du selvfølgelig slippe for pulsewidth. Jeg mener faktisk at Pauli har lavet den rule i hans dokumentation for bindingen.

Link til kommentar
Del på andre sites

  • 0

Nu har jeg programmeret det hele op i PaperUI. Dvs. ingen bøvl med .things og .items eller pulsewidth og FB'er.

Så har jeg lavet en .rules til mine dimmere med 200ms og så en off command.

Med Niko Servodan 330-00700 starter dimmeren op fra minimum hvis man holder knappen inde i mere end 400ms og så begynder den at dæmpe op. Så har jeg lavet en ekstra item til dæmperen og kaldt den entre_dimmer_50 og timet den til ca. 50% i ms, og så lavet en ny rule. Så nu har jeg bare en kip knap og en 50% knap i HABpanel. Der er så lidt rampe på 50% knappen, men det fungere. Jeg har så ingen feedback, men det er så hvad det er. Såfremt det var meget vigtigt med feedback kunne jeg jo købe et ihc input 230 og så få den til at "kigge" på dæmpernes output. Men det gør jeg nok ikke. Kommer minimalt til at bruge det når jeg ikke er hjemme, og når jeg ér hjemme har jeg jo optisk feedback ;-)

rule "entre dimmer"
when
Item entre_dimmer changed to ON
then
Thread::sleep(200)
entre_dimmer.sendCommand(OFF)
end

rule "entre dimmer 50"
when
Item entre_dimmer_50 changed to ON
then
Thread::sleep(xxxx)
entre_dimmer_50.sendCommand(OFF)
end

 

Link til kommentar
Del på andre sites

  • 0

Det er også en måde at gøre det på. 
Mht til feedback, så kan du bare lave en proxy item (switch), som går ON samtidig med dit tryk, og lade den være dit feedback. Det giver visse fordele, selvom du fx siger at du visuelt kan se det. Så vil jeg sige, at du ser det jo kun, når/hvis du ser det. Er der en der glemmer at slukke lyset i et rum, så ser man det ikke nødvendigvis.. 
Selvfølgelig er det begrænset i dit tilfælde, hvis der kun er tale om 2 lamper/rum. Men i vores hus er der et hav af lamper. Og jeg kan via openhab, gruppering osv, lyn hurtigt se, hvis en lampe er tændt, hvor den fx ikke burde være det.. Fx sådan her:
100014144_lysivrelser.thumb.png.2c6b2ab8b4d12257594ae8097abe5eb9.png

Link til kommentar
Del på andre sites

  • 0
49 minutter siden, Morten H skrev:

Ah ja, det var selvfølgelig en idé. I sin tid da jeg valgte Niko Servodan dæmperen var det pga. sluk indgangen, så min sluk alt puls fra f.eks. alarmen også slukkede dæmperne :-)

Det kunne du også sagtens lave med IHC dæmperne. Eneste grund til at vælge Niko dæmpere fremfor IHC, det er fordi de er væsentlig bedre til LED. Det er ihvertfald det jeg har læst. 

Link til kommentar
Del på andre sites

  • 0

Btw, det du ser herover på billedet af alle lamperne/spot osv.. Det er een enkelt item, som styre dette, fordi de alle er sat i samme gruppe. Du husker måske den famøse (vLys) du spurgte ind til tidligere. Det er den som laver dette. Den blå bjælke foroven vil den ændre sig automatisk fra nuværende OFF til ON, hvis en lampe bliver tændt. 
Men pointen er, at det er een group item. Dvs med denne ene item kan jeg hvad som helst. fx få en push besked på mobilen, (via Pushover) hvis en lampe bliver tændt. Eller jeg kan slukke tænde/slukke alt lys via denne ene item osv osv..  Nærmest ubegrænset muligheder :)

Link til kommentar
Del på andre sites

  • 0
På 1.5.2019 at 12:16 , Kandersen skrev:

Det kunne du også sagtens lave med IHC dæmperne. Eneste grund til at vælge Niko dæmpere fremfor IHC, det er fordi de er væsentlig bedre til LED. Det er ihvertfald det jeg har læst. 

Ja , den er nemlig rigtig god til LED. Lige bortset fra feedback om lyset er tændt, så har jeg fikset at starte lyset på det niveau jeg ønsker. Dog ikke med en slider, som med wireless dæmperen, men derimod med et par fake FB's som jeg så styre med en rule. Da Niko dæmperen altid starter på laveste værdi ved 400ms har jeg bare timed et par funktioner. Start på 40% og start på 80%. Så "holder reglen bare knappen inde" indtil lyset er på det ønskede niveau :-)

Jeg har overvejet at købe en IHC Input 230V og montere mine dæmper udgange på den, og så derved skabe et feedback, men det bliver vidst kun hvis jeg kan finde en brugt. 800kr for noget jeg egentlig sagtens kan undvære virker lidt fråds, med alle de projekter jeg ellers har gang i.

Men hele HABpanel fungere nu, på samtlige ting i huset. Både dæmpere og garageporten. Jeg er vældig tilfreds.

Tusind tak for alt hjælpen.

Link til kommentar
Del på andre sites

  • 0
2 timer siden, Morten H skrev:

Jeg har overvejet at købe en IHC Input 230V og montere mine dæmper udgange på den, og så derved skabe et feedback, men det bliver vidst kun hvis jeg kan finde en brugt. 800kr for noget jeg egentlig sagtens kan undvære virker lidt fråds, med alle de projekter jeg ellers har gang i.

Ahh jatak det kender jeg alt til. Hvis jeg bare kunne lære at begrænse mig, så tror jeg livet ville se helt anderledes ud :D

Men godt du har fået det til at virke som du næsten vil have det.  

Link til kommentar
Del på andre sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gæst
Svar på dette spørgsmål

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loader...
 Share

×
×
  • Tilføj...

Important Information

Privatlivspolitik og We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.

1200x630bb.png

ok