eCosPro-mDNS - an mDNS responder for the eCosPro RTOS

Bonjour lwIP

eCosPro-mDNS is an optional middleware package for the eCosPro RTOS that provides Zeroconf networking support.

Installing, configuring and using embedded devices on a local area network can be a complicated affair. Setting up static IP addresses, administering DHCP and DNS, finding and configuring a device on the network, understanding what services devices provide and accessing the devices from a wide range of different client operating systems - all these aspects can be onerous, awkward and downright difficult for your typical home or small business user. In an ideal world anyone should be able to simply connect a device to their network, turn it on and start using it immediately.

Zeroconf networking technologies simplify the whole process of installing, administering and accessing networked devices. IP addresses are automatically assigned whether or not a DHCP server has been configured. Devices and the services they provide are identified by human readable names rather than MAC, IP addresses or port numbers - and without any requirement for a locally administered central DNS server. Users can easily browse their local network to see what named devices and services are available. Applications can search the network and automatically find the devices and services they wish to connect to and interact with.

Imagine building a eCos-based networked device that can be controlled, for example, using iOS and Android based smartphones and tablets. Users simply plug your device into their network and switch it on, then install and open your custom control app on their smartphone or tablet. The app would make use the Zeroconf API support built-in to these client operating system to browse the network and locate the new device. Once located the app opens communications directly to the device to control and read/write data as desired. The end result is a device that is remarkably easy to install and can be controlled via a modern touch-based interface. Potential applications include security systems, smart home applications, multi-media devices - any type of device that could benefit from straightforward LAN connectivity and remote control.

Zeroconf Benefits for embedded devices


Google TechTalk - Introduction to Zeroconf
Dr. Stuart Cheshire, Distinguished Scientist at Apple and the father of Zeroconf

This package, and an associated updated lwIP network stack, together provide eCos support for zero configuration networking (Zeroconf) related technologies. This includes link local addressing, multicast DNS (mDNS) and DNS service discovery (DNS-SD). Apple refer to this group of networking technologies by their trademarked "Bonjour" name. You can essentially treat Bonjour as a commercial synonym for Zeroconf.

The key functionality provided is the "mDNS responder" that runs on the eCos-based device. This component is responsible for setup and administration of the device hostname, publishing services and handling incoming DNS-SD requests. The package does not support the generation of client-side DNS-SD requests so cannot itself directly locate other Zeroconf-based devices and services on the network.

eCosPro-mDNS Features

eCosPro-mDNS is supplied as a standard installable and configurable eCos EPK module. Full source code and documentation are included along with engineering technical support. The royalty free license allows for an unlimited number of deployed units per specified product. Requires eCosPro version 3.1.32 or later for updated lwIP support.

eCosCentric eCosCentric

For additional technical details please read the eCosPro-mDNS related chapters of the eCosPro online documentation. For questions regarding the eCosPro-mDNS package, including pricing, technical or commercial issues, please contact us for a detailed discussion.

Bonjour logo used with permission from Apple Inc. Bonjour, iOS and OS X are registered trademarks of Apple Inc. Android is a registered trademark of Google Inc. Windows is a registered trademark of Microsoft Inc. Linux is a regsitered trademark of Linus Torvalds.