Jump to content

Welcome to Smart Home Forum by FIBARO

Dear Guest,

 

as you can notice parts of Smart Home Forum by FIBARO is not available for you. You have to register in order to view all content and post in our community. Don't worry! Registration is a simple free process that requires minimal information for you to sign up. Become a part of of Smart Home Forum by FIBARO by creating an account.

 

As a member you can:

  •     Start new topics and reply to others
  •     Follow topics and users to get email updates
  •     Get your own profile page and make new friends
  •     Send personal messages
  •     ... and learn a lot about our system!

 

Regards,

Smart Home Forum by FIBARO Team


All Activity

This stream auto-updates

  1. Today
  2. Here's the test result after over a day of continuous use. As we can see the hub.call communication can be assumed to be very reliable. None of 65k calls was lost. It was not so clear for me - this is the box who decide about broadcast the call. It can be seen how many events is generated in ~100 devices installation.
  3. Hello everyone, I need some help finding specific historical data in my Home Center Lite (HCL). One of my smart plugs (used for energy metering on a TV) was unplugged/disconnected from the wall by someone, and the power line was bypassed. I can see the "X" icon on the device dashboard showing it is currently dead. However, I need to find the exact date and time when this device lost power/connection to know when it was physically removed. Is there a way to extract this specific "Device marked as dead" timestamp from the HCL Event Panel or via an API call? Any guidance on how to track this down would be greatly appreciated. Thanks in advance!
  4. Yesterday
  5. Let me answer at some length, because it may indeed seem strange that I have been showing off various ideas, but somehow never include the code. The programs I write, and in general the area of programming that interests me, are not particularly popular in our community. For example, I am not interested at all in creating integrations with various devices, which are desired by the community, and rightly so. What I do interests, I think, only a handful of people, who nevertheless provide me with a certain amount of support and satisfaction through their likes. Before I sit down to program, I spend many hours constructing the contract, deciding how it is all supposed to work. I am not a professional programmer, only an amateur, but this is what the DNSfD project taught me: a concept that is wrong in one small but crucial place means either throwing the code away or going through the torments of Tantalus while trying to “repair” it. You should also know that this is not a simple program, such as a controller for blinds or a fireplace. It is around 3,000 lines of code. It would have to be tested thoroughly, because bugs and failures in a server-based model can be mysterious and difficult to track down. I didn't do this to the end, yet. Creating client-server software requires a particular kind of experience. It is an area which, it seems to me, really follows its own rules. Something always appears that you had not anticipated, even after spending a long time thinking about how everything should work. TableMan happens to be a relatively simple project, although it has quite an extensive “construction language.” But even there I have already added things I had not expected. Another project, DNSfD, showed very clearly how difficult it is to explain to the community a concept that is systemic, tool-oriented. It also showed that more sophisticated, automated and elegant solutions do not necessarily win. Not because they are bad, but because first you still have to explain why they exist at all and how they are supposed to be used. Documentation would also have to be written. AI would probably help with that, but it would not do everything. I simply cannot find the time for it anymore. It would probably be a solid 20 to 30 pages in two languages. On the other hand, the era of sweet idleness in my life came to an end, suddenly and unexpectedly, and I had to turn programming into an additional source of income. In short, in my situation these would have to be paid solutions, so that I could be fully available to users. That, in turn, creates other problems which I am not actually in a position to deal with. I will think some more about this particular project, but for now I have to admit that, as a general rule, I had no intention of publishing these programs. I only intended to publish information about them, which may also be valuable in some way. I apologize for this somewhat chaotic and, as usual, long reply, but I am simply writing what I think.
  6. I will think about it and answer soon.
  7. Will you share your code when finished?
  8. Thank you very much. In my particular case this will not help - measurig points incomes "at it's will", instead of one-after-one stream. I heard about socket.gettime but not here... Basically, the need for this arose because, for a new idea of mine, I wanted to check how reliable a hub.call to another QuickApp actually is. By the way, I am attaching these two little programs, the sender and the receiver. This may be an interesting experiment for some of you, showing just how much is happening inside that black box. Before start, you need to enter the correct IDs of both programs in the sender (SENDER and RECEIVER constants), so that it can filter out the communication between them. The sender sends a call to the receiver every single event in the system. It's data contain own counter value . The receiver receives it, but also maintains its own counter, which must match the value it received. In addition, the average number of events per hour is calculated over a twelve-hour rolling window. Once the window has been filled, the minimum and maximum events-per-hour values will also be updated. Number of missing hub.calls will also be shown. I also wanted to measure the sender-receiver-sender round-trip time “in real life”, but unfortunately, that cannot be done... EV_sender.fqa EV_receiver.fqa
  9. Yep, this is only solution. Lua does not support natively ms.
  10. Make a 100 or 1000 request with os.time and calculate the average round trip...
  11. Message to @m.roszak. SVG graphics in QuickApp interface makes it possible to create UI that are more visually attractive than those built only with the standard UI elements or simple HTML. At the moment, however, SVG is displayed only as an image, so individual parts of the graphic cannot respond to clicks. This is really unfortunate. Even very limited click support would make it possible to create room plans, control panels or installation diagrams even much attractive - because of reaction on a click over the element... I am not suggesting that arbitrary JavaScript should be allowed inside SVG files. That could obviously create security concerns. However, the controller already supports calling device actions through the existing callAction endpoint, including over HTTPS, like this: https://user:password@ip_address/api/callAction?deviceID=ID&name=nazwa_funkcji Perhaps SVG could therefore be given one simple and controlled mechanism that would call such an action when clicked, using the user’s current authenticated session. For example, it could look like this: <a href="fibaro-action:call?deviceID=1611&name=turnOn"> ... </a> Such a link would not open a website. Instead, the HC3 interface would intercept it and execute the normal device action call over HTTPS. This way, the SVG would not need to contain a username, password, or any JavaScript code. Scripts, external links, and other potentially unsafe elements could remain blocked. Another possible approach could be a dedicated attribute - as an information to the interface what action should be executed. Of course, I do not know how the current interface is implemented or how much work such a change would require. From the user’s point of view, however, even this simple ability to call an existing device function would be enough. Would it be possible to consider adding this kind of limited click support for SVG? If anyone agrees with this suggestion, please add your support. Perhaps it will help strengthen our voice.
      • 4
      • Like
  12. Good morning, is there a millisecond-resolution wall clock available in HC3 QuickApps? As I want to measure between-quickapp communication latency, the os.clock() is not a solution - I checked and it measures just CPU time. Or - is there a method to measure a single quickapp millisecond run time, not only CPU time of the application?
  13. Last week
  14. Jan, v0.2.75 [15.07.2026] [14:10:27] [ERROR] [QUICKAPP397]: QuickApp crashed [15.07.2026] [14:10:27] [ERROR] [QUICKAPP397]: /usr/share/lua/5.3/json/decode/util.lua:35: unexpected character @ character: 1 0:1 [<] line: [15.07.2026] [14:12:01] [ERROR] [QUICKAPP397]: table: 0xaaab0044daf0
  15. Najłatwiej jak pobierzesz istniejacy szablon z innego urządzenia, to generalnie plik json. Tam zmieniasz numery parametrów, dopuszczalne zakresy (oraz rozmiar), definiujesz typ (lista wyboru, slider, bitmaska) i uzupełniasz opisy. Później tylko wgranie. Polecam edytor, który waliduje strukturę jsona by uniknać drobnych błedów jak np brak przecinka - np Visual Studio Code, który jest darmowy.
  16. Hej. jestescie w stanie podesłać link do instrukcji jak tworzyć szablony ? Model AMZ z-wave https://sklep.fakro.pl/markiza-zewnetrzna-na-okno-dachowe-amz-z-wave.html
  17. Thank you @trob.
  18. Hej W kwestii 1, najlepiej jak skontaktujesz się z Fakro. Jeśli chodzi o markizę, podasz dokładny model? Generalnie nie mieliśmy planów na to w związku z niewielką popularnością tych rozwiązań (zawsze można dodać ręcznie parametry). Jeśli pojawi się więcej osób zainteresowanych integracją to można to rozważyć. Na silniku 3.0 można też stworzyć normalnie szalblon i go "wgrać" do urządzenia.
  19. Indeed there seems to be a bug, when ip field is empty (and for routing it should be empty - we use default 224.0.23.12) you cannot select routing. PUT request you made should work, but only only after restart of knx-engine (or gateway) Correct request to enable "routing" connection would be POST ${IP}/api/devices/9/action/configure with payload {"args":[{"connectionType": "routing"}]}
  20. Pamiętaj, że bez ochrony lokalnej ten kontrakton domyślnie będzie sterował wyjściem. Także koniecznie by przycisk sterujący był podłączony do wejścia co odpowiada danemu wyjściu - temu co steruje bramą (wyłączona ochrona lokalna) a kontrakton do drugiego wejścia z włączoną ochroną lokalną lub po prosty odłączonym drugim wyjściem. Poza tym, nic więcej.
  21. Witajcie, mam okna Fakro z napędem i komunikacją z-wave. Wielkie podziękowania dla zapolu Fibaro, który opracował szablon dla tych okien. Mam jednakże problem z aktywacją kalibracji okna. pomimo zapisania [ wg procedury] - stanu rozkalibrowanego i skalibrowanego ( pkt 2 a potem 1 parametru) - kalibracja się nie aktywuje. Prośba o podpowiedź jak to uruchomić. druga kwestia - zintegrowane markizy Fibaro. Możecie też opracować szablon ?
  22. Dzięki serdeczne - wszystko działa! Nie wiem czemu nie ma tej informacji w manualu. Jezeli chodzi o kontaktron to podpinam go do zielonego kabelka i do GND silnika i w ustawieniu Wejscia 2 --> Binarny NC --> i po prawej numer czujnka z centralki ? W moim przypadku to bedzie numer 65.6 ( 65.5 to sygnal wejscia 1 - podswietla sie gdy otwieram brame). Czy są jescze jakeis specyfincze ustawienia jesli chodzi o kontaktron?
  23. Your rule, simplified, looks like: rule([[ $Bezetting_Eethoek == 'Vrij' & $Bezetting_Keuken == 'Vrij' & $Verlichting_Appartement == 'Aanwezig_Aan' & schakelaar_eettafel == false => case || $Temp_Binnen_Buiten_Delta == 'Koud' >> log('Hupp1') || $Temp_Binnen_Buiten_Delta == 'Warm' >> log('Hupp2') end ]]) and will only trigger if the any variable in the condition $Bezetting_Eethoek == 'Vrij' & $Bezetting_Keuken == 'Vrij' & $Verlichting_Appartement == 'Aanwezig_Aan' & schakelaar_eettafel changes. And the action will run if the condition is true. It will not trigger on Temp_Binnen_Buiten_Delta changing from Koud to Warm or vice versa as that test is not in the condition part of the rule.
  24. I had to use API with PUT method. JSON body: {"properties":{"ip":"224.0.23.12", "mac":"", "port":3671}} Now, I got it working.
  25. Hello, I am unable to set-up KNX/IP Routing communication. It is grayed out.
  26. The problem may have been there all the time... try v0.2.75 with a fix.
  27. Jan, if he GV change it does't work as trigger? Action comes if light is switched oo than he changes from warm in to Koud or vice versa rule([[$Bezetting_Eethoek == 'Vrij' & $Bezetting_Keuken == 'Vrij' & $Verlichting_Appartement == 'Aanwezig_Aan' & schakelaar_eettafel == false =>case || $Temp_Binnen_Buiten_Delta == 'Koud' >> fibaro.call(eethoek.Eethoek_Lampen,"turnOn","Kleur_Koud_5"); log.dodgerblue('38-A - Hue scene Eethoek - "scene","Kleur_Koud_5"'); wait(00:00:02); log.khaki('38-A - Eethoek_Lampen lichtsterkte >>> %s procent',eethoek.Eethoek_Lampen:value); wait(0) || $Temp_Binnen_Buiten_Delta == 'Warm' >> fibaro.call(eethoek.Eethoek_Lampen,"turnOn","Kleur_Warm_5"); log.dodgerblue('38-2A - Hue scene Eethoek - "scene","Kleur_Warm_5"'); wait(00:00:02); log.khaki('38-2A - Eethoek_Lampen lichtsterkte >>> %s procent',eethoek.Eethoek_Lampen:value); wait(0) end ]])
  28. Jan, V02.74 Before I did't see this error? [14.07.2026] [16:37:24] [ERROR] [QUICKAPP397]: QuickApp crashed [14.07.2026] [16:37:24] [ERROR] [QUICKAPP397]: ./include/App.lua:1085: attempt to call a nil value (method 'turnOff') turn off is the last line in app self:updateProperty("value", self.hasDim and 0 or false) self:updateProperty("state", false) self:_stampCmd() self.group:turnOff(self.transition)
  1. Load more activity
×
×
  • Create New...