26/05/2018, 17:11:19
(26/05/2018, 13:52:23)silverrcx a écrit : Je vais être critique mais franchement, en 2018, un nouveau projet de supervision se doit de:Je ne suis pas totalement d'accord avec toi.
(a) importer correctement toute la config ETS5. Elle est en XML pour ça. Toute la maison (ou presque) peut-être documentée dans ETS: étages, pièces, fonctions.
C'est dommage de limiter l'import du fichier ETS à l'obtention d'une liste plate des GA alors que tout pourrait être importé d'un coup...
(b) être KNX/IP natif. KNX est documenté sur multicast IP (ou TCP si vraiment on veut du tunnel), on peut avoir un appareil KNX complètement IP.
A quoi sert la brique KNXD ?
Ceux qui ont refait leur BCU avec un FPGA pour interfacer le bus peuvent utiliser KNXD pour prétendre avoir une interface IP. Les autres ont un routeur IP et n'ont pas franchement besoin d'un process en plus qui fait vaguement passe plat.
Déjà pour A, je ne vois pas ce que je pourrais importer de plus que les GA pour le moment.
Au niveau de KnxCached, j'ai uniquement besoin de connaitre les GA et leur types; je ne vois pas pourquoi j'aurais besoin des pièces ou d'une autre info d'ETS sur cette couche...
Pour B, être KNX/IP natif, j'y ai pensé; mais ça ne marche que pour ceux qui ont un routeur KNX/IP... perso, je n'ai qu'une passerelle... et la possibilité de mettre directement une raspberry sur KNX avec un TPUART est aussi une solution qui peut être intéressant. Pourquoi refaire ce que knxd fait déjà , bref, je suis un amoureux du principe d'unix, ou a un programme couteau suisse (usine a gaz difficile a maintenir et a faire évoluer), je préfère plusieurs démon qui ne servent qu'a une chose chaqu'uns, mais que mis ensemble, ils offres des possibilités infinis.
Pour la couche de connexion a KNX, knxd fait très bien son travail, ne consomme pas beaucoup de ressource, et offre de nombreuses possibilité, depuis qu'ils ont supprimé la dépendance a la lib pthsem, je ne voit plus de problème pour l'utiliser.
Mon but n'est justement pas de refaire un N-ième Jeedom ou autre supervision existante; je cherche plutôt un ensemble de projets simple, qui pourront être potentiellement interchangeable, qui resteront le plus simple possible pour que n'importe qui puisse s'approprier le code; qui ne dépendront que d'un minimum de librairies, qui seront compiler (j'ai horreur de Java, node.js et autre techno de ce genre, surtout pour des démons). Seul les couches "hautes" du système dépendront de Qt5, mais ce sera tout, et encore c'est du C++, compilé et performant.
Pour le moment, je n'en suit qu'au début, c'est encore assez brouillon et pas trop débuguer (en paralelle, je suis sur un projet de composant KNX STM32+TPUART, donc mon temps libre est pas mal occupé), mais ma première application sur mon téléphone marche déjà de façon bien plus fluide que les 2 dernières supervisions que j'avais testé (Jeedom et KnxWeb2), et les possibilité de design (avec QML) sont beaucoup plus ouverte.
Alors certe, il faut connaitre QML, Qt, un peut de C++;
Ce n'ai pas une supervision ne demandant que de la configuration au travers d'un site Web, c'est plus un framework basé sur Qt/QML, permettant assez rapidement pour un développeur Qt de faire une application professionnel, personnalisé et performante a son gout.