All new UPnP-2-xPL gateway

It’s been more than a year since I actually updated the gateway, but this is a major overhaul, still early stage, so probably going to be buggy.

The xPL schema set has been revised and is more thorough, the entire UPnP device description will now be announced and it will be done in a more structured way (check the readme for the schema details). Obviously there is no compatibility with the previous version. But that was a piece of disposable-test-code anyway. Continue reading

UPnP example in Visual Basic, an improved Network Light sample

In my attempt to further automate my home, I’m trying to create UPnP devices for my appliances. The simplest examples are power switches and lights that can be controlled using the UPnP protocol. Obviously that’s not very user friendly, so I decided to experiment with a webinterface for the interaction, while keeping the UPnP functionality. The UPnP part can then be connected to the RFXcom devices for actually controlling my X10 and HomeEasy equipment (still working on my DevCom project for the hardware connection part) Continue reading

Utility to add shortcuts to a network

What is it?

A shortcut/link to a URL visible on the network, by (ab)using UPnP technology. 

What does it do?

When Windows users on a network (local subnet) browse their network, they will see icons, with a description. When they double click them, a webpage pops up. Example: On my homeserver eMule runs as a peer-2-peer file sharing application. It features a webinterface and before I had a shortcut installed on each computer/laptop in the house. Now, I have installed the app on my homeserver and they simply double click the device “eMule downloader” from the network. Continue reading

UPnP device development with the Intel UPnP stack

When starting with UPnP development, some test projects, I initially started of with the Microsoft stack, as its already included in most Windows versions. But the documentation on the microsoft UPnP stack is so sparse, all examples I could find, were in C and then still only controlpoints, no devices. Hence I started using the Developer tools for UPnP (formerly by Intel). They contain a fully functional C# UPnP stack, and a code generator that generates a C stack. Just compile the C# stack and the resulting dll can be used from any (including VB) .NET language. Besides that the toolset contains a number of very usefull UPnP utilities.

The tools where initially available as the Intel UPnP tools, and after having disappeared from the Intel website for some time they have been relaunched as open source. Currently the stack is being maintained by Ylian Saint-Hilaire (Intel), and he does a good job at it (several bugfixes and improvements I submitted landed in the code quickly). Its a pitty that there isn’t a public forum for the UPnP tools.

This post is mostly about my experiences getting things up-and-running using the C# stack, which has its peculiarities, so here is what I learned; Continue reading

Experimental UPnP-2-xPL gateway

Having recently discovered some great tools for UPnP (formerly by Intel, now open source), I wondered whether it was possible to create some gateway. I like xPL for its simplicity but its definitions of devices (schemas etc.) are still fairly ambigious. Thats what I like about UPnP, much tighter descriptions, more solid enduser experience. I think this is why most of the xPL users are fairly technical guys that mostly build their own applications and script the whole thing together. A non-techie wouldn’t last very long out there. Continue reading