Technical University of Madrid
Ingeniería de Telecomunicación (EE-CS): 1994-2003
Master ThesisDesarrollo de protocolos para una red difusiva inalámbrica de bajo coste en espectro libre de frecuencias (http://www-app.etsit.upm.es/tesis_etsit/documentos_biblioteca/masinformacion.php?sgt=PROYEC-03-006)
VESTA: A High Flexibility and Low Granularity Domotic Platform Based on Distributed Processing over a Dynamic Interconnection Wireless Network. VIP Scientific Forum of the International IPSI-2003 Conference. 10/04/2003-10/11/2003.Sveti Stefan, Serbia and Montenegro
Nuevas Soluciones Tecnológicas para el Entorno Domótico. XIII Jornadas Telecom I+D. 11/18/2003-11/20/2003.Madrid, Spain. ISBN: 84-89315-28-0
C and C#, ActionScript3 and Flex, XHTML and CSS
PostgreSQL and PL/pgSQL, SQL Server 2005 and T-SQL
.NET, ASP.NET, DotNetNuke, Zen-Cart
Fluent in English. Native Spanish.
Atalum Wireless SA (http://www.atalum.com)
2003-2008 Founder and CTO
Startup focused on how to maximize a ZigBee infrastructure producing the tools to monitor, diagnose and control ZigBee networks.
First Spanish company to join the ZigBee Alliance (http://www.zigbee.org).
- Leading the r+d team made up of 5 people.
- Defining the architecture, developing the software and managing the development cycle of the products GREENoperator, GREEENtool and GREENmesh.
- Meeting leading Building Automation OEMS for specifying our tools' feature set in both the US and the EU.
- Attending to the ZigBee Alliance's Open Houses and Member Meetings.
- Attending to the ZigBee Alliance's weekly conference calls.
- Active involvement in the following groups of the ZigBee Alliance: Network
Working Group, Commissioning Tools Task Group, Gateway Work Group. A brief
summary of such involvement includes:
- Official reviewer of the ZigBee specification.
- Significant contributor to the Commissioning Framework. Provided a gap analysis for the specification of a Commissioning Cluster and became evangelist of the Commissioning Task Group. Proposed the Commissioning EPID solution that's currently used by ZigBee standard.
- Submitted an efficient Passive Clustering Broadcast algorithm for inclusion in the standard
- Submitted a Diagnostics Cluster proposal for inclusion in the standard
- Jump-started the efforts of the Gateway Group for defining a SOAP Gateway to ZigBee networks.
An enterprise class application capable of managing thousands of ZigBee networks.
- Defining the architecture of the application.
My goals were to reuse as much components as possible from GREENtool. As an example of that, the second release was written in C++ and ran on Linux box, so in order to reuse GREENmesh access modules I decided to use the open source Mono Project (http://www.mono-project.com). That allowed us to run the .NET modules in Linux.
Additionally we needed to communicate GREENoperator's core with the .NET access libraries. The decision I took was to wrap the .NET modules with a web services facade and use the open source gSOAP (http://www.cs.fsu.edu/~engelen/soap.html) development toolkit. By doing so we had interoperable off-the-shelve communication between heterogeneous systems.
- Designing the dimensional database schema and implementing it in both
PostgreSQL and SQL Server 2005.
The goal was to be able to cope with the vast amount of data that GREENoperator must handle. To do so I identified the dimensional model as the only viable alternative for handling and storing such a huge amount of information.
- Programming the GUI in Adobe's Flex.
- Designing and developing the API with WebORB and ASP.NET Web Services.
In order to provide a rich user experience we needed to push information from our server to the web clients. For that purpose I integrated the free WebORB platform (http://www.themidnightcoders.com/weborb/) with our business logic. In fact our business logic was accessible by many facades. I defined a contract that had to be implemented by every facade and coded both the WebORB facade for human clients and a Web Services (adhering to the WS-I Basic Profile) for machine to machine communication.
- Designing and developing the Business and Data Access Layers en .NET.
The goal was to provide a scalable solution so I took great care in designing a stateless solution so we could easily scale by web-farming.
On the other hand it was quite important to maximize each server's throughput so I designed the business Logic and Data Access Layers for asynchronous operations thus becoming quite thread efficient.
When facing competition, an appalling GUI can give you a competitive edge. I took the responsibility of creating a desktop-like experience for our online users and produced a sleek interface including the ability to drag devices around a map.
A Windows application for commissioning and maintaining ZigBee networks.
I had the vision of a creating a portable tool that would help installers to commission ZigBee networks and devices.
An important decision I took while designing GREENtool's architecture was to support many platforms, from development boards to full-blown IP Gateways, with the same piece of software. That decision prove very helpful down the road: not only we were able to support many platforms in the first release, but also we used the same pieces of software for our server product GREENoperator. Should a new platform be supported, we only had to write the specific code and deploy it to the application just by adding a couple of XML lines.
- Development of about 25% of the application's components. Including:
- An extensible framework for platform detection and configuration based on XML configuration files.
- An extensible framework for application communications based in the ZigBee Cluster Library
- Provided guidance to our software engineers on effective techniques for displaying signal-strength in our tools
Atalum's implementation of a ZigBee stack based on the ZigBee 2004 specification.
Back in 2003 I identified the emerging ZigBee standard as the most feasible alternative for short range radio networks. That supposed a departure from the proprietary solutions developed in the university hence avoiding the effort to move from proprietary to standard
Being early adopters of the ZigBee standard provided us with in depth knowledge that was key to our software products.
- Designing the development board Bobcat, based on Atmel's
Atmega128 and Texas Instruments' CC2420 chips.
At that time, any company in the ZigBee space had to offer a development kit. I was responsible for almost all the development cycle, including
- Schematics and PCB design.
- Managing Bill Of Materials.
- Supervising the manufacturing process and quality assurance of the pre-series made by Sanmina SCI.
- Developing the GREENmesh stack on the Bobcat platform.
- Porting of the Ember's EmberZNet and Texas Instruments' ZStack stacks to
the Bobcat platform.
Given that our Bobcat platform used the same radio and controller chips I guided our firmware engineers to port Ember's and TI's ZigBee stacks to our hardware. Doing so we were able to create dense networks with our development boards that would be otherwise budgetary prohibitive. Keep in mind that each development kit from those vendor costs about $5.000 and only includes 5 boards.
- Porting of the GREENmesh stack to Freescale's platform.
I was responsible for the strategy of code reduction which finally allowed us to fit our stack in a platform with half the memory resources than our Bobcat.
I designed the architecture of the stack, based on a custom scheduler and state machines for the layers that comprised the stack. It was also my idea to provide a command line interface for automated testing of each layer. Eventually it became our interface to many platforms such as Ember, Jennic, TI and Freescale's. It's worth noting that in the public interoperability tests we attended, many big companies had to recompile and reflash their stacks in order to change runtime parameters whereas we were able to do that with a single command in a terminal prompt.
- ZigBee Members Meeting, San Jose, June 2006.
- ZigBee Developers Conference, Chicago, June 2006. Presenting: ZigBee is in the building
- ZigBee Members Meeting, Milan, March 2006.
- ZigBee Members Meeting, Chicago, September 2005.
- ZigBee Members Meeting, San Francisco, March 2005
Customizing, deploying and managing Zen-Cart, an open-source commerce solution, for Viajes Dosan (http://www.viajesdosan.com). I customized the templates and modified the checkout process for including dates in travel tickets.
Customizing, deploying and managing DotNetNuke, an open-source CMS for Paumontecarmelo.com (http://www.paumontecarmelo.com) I simplified the login process and customized the templates.
References are available upon request.