A binding of the pupnp library for Lua 5.1. It is a work in progress and nowhere near complete yet.

So far the following has been achieved;


LuaDoc generated documentation is available.

Copyright & license

Copyright 2012 Thijs Schreijer, licensed under GPLv3.


Please read the contributing guidelines first


upnp LuaUPnP is a binding for the pupnp library for Lua.
upnp.bootstrap UPnP gateway.
upnp.classes.action The base object for UPnP actions.
upnp.classes.argument The base object for UPnP action arguments.
upnp.classes.device The base object for UPnP devices.
upnp.classes.service The base object for UPnP services.
upnp.classes.statevariable The base object for UPnP statevariable.
upnp.classes.upnpbase The base object for UPnP objects.
upnp.devicefactory Device factory for generating standardized services and devices (xml's + implementation code).
upnp.drivers.driver-template Template code file for a UPnP gateway driver.
upnp.drivers.xplrfx UPnP gateway driver for the rfxlan device with xPL firmware.
upnp.lp Lua Pages template engine.
upnp.xmlfactory XML factory for generating device and service XML's which can be written to the webserver.
urn_schemas-upnp-org_device_BinaryLight_1 Standard device; "urn:schemas-upnp-org:device:BinaryLight:1".
urn_schemas-upnp-org_device_DimmableLight_1 Standard device; "urn:schemas-upnp-org:device:DimmableLight:1".
urn_schemas-upnp-org_service_Dimming_1 Standard service; "urn:schemas-upnp-org:service:Dimming:1".
urn_schemas-upnp-org_service_SwitchPower_1 Standard service; "urn:schemas-upnp-org:service:SwitchPower:1".

Valid XHTML 1.0!