Trabajo a bajo nivel

En alguna entrada anterior comenté que la parte del servidor iba a estar conectada a los dispositivos domóticos utilizando una biblioteca desarrollada el año pasado en la UGR como un proyecto fin de carrera.

La idea era engancharla con BlueRose y olvidarme de todo el rollo a bajo nivel. Pero resulta que:

  1. La biblioteca es un mojón. Tanto el diseño como la implementación son una cossa maravillosssa.
  2. No funciona.
  3. Hay problemillas no-funcionales.

Así que vamos a diseñar una biblioteca desde cero y que además funcione. Y sin follones feos. El objetivo principal es tener algo funcionando en condiciones antes de que acabe el curso, aunque el diseño de la biblioteca deberá llevar más tiempo. Y es que hay muchos problemas para desarrollarla:

  • Hay poca documentación sobre KNX más allá de los manuales. Pero tenemos a José Manuel (que es experto en KNX) y además los manuales, aunque tenerlos en formato electrónico sería más cómodo.
  • KNX es un coñazo y hay poquísima documentación aparte del manual.
  • Calimero, la biblioteca libre para comunicarse con KNX está en versión 2.0alpha4 desde 2008. Es decir, que está muerta. Al menos funciona y está muy bien hecha y comprobada. La alternativa sería usar Falcon para Windows, pero es cerrada y se basa en ¡¡DCOM!!
  • No hay prácticamente nada de documentación sobre Calimero más allá del Javadoc y cuatro ejemplos.
  • No conseguíamos echar a andar Calimero en GNU/Linux pero esta tarde lo hemos conseguido :) .

En resumen, que va a haber que echarle bastante tiempo a este tema, pues es bastante complejo. Vamos a tener que hacerlo casi todo mediante ingeniería inversa.

Por ahora hemos conseguido conectar el ordenador al entrenador y cambiar los valores de algunos dispositivos, así que ya hemos avazado algo:

Seguiremos informando, ojalá pueda subir pronto un vídeo de Kora funcionando al 100%.

Tagged , , , .Bookmark the permalink.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

*

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>