Jump to: navigation, search

TM/Autodetect

Lead: Javier Montalvo-Orús (Symbian)
Members: Symbian, Freescale, WR


Autodetect through service discovery

We want to

  • Autodetect boards on the local network or in a lab
  • Autodetect services on a remote system
  • Autodetect connection mechanisms to a board (connectors)
  • Autodetect remote board registries (related to Shared Board Labs)

in order to simplify setup of remote system connections for a user.

To enable service discovery to the RSE get the plugins from CVS (/cvsroot/dsdp/org.eclipse.tm.core/discovery/) or download the working 2006/10/10 nightly build

It contains the following plugins:

  • org.eclipse.tm.discovery.engine: Engine for the service discovery process
  • org.eclipse.tm.discovery.protocol: Contains the factory, interface and extension point org.eclipse.tm.discovery.engine.discoveryProtocol to define protocols
  • org.eclipse.tm.discovery.transport: Contains the factory, interface and extension point org.eclipse.tm.discovery.engine.discoveryTransport to define transports
  • org.eclipse.tm.discovery.protocol.dnssd: Implementation of the DNS - Service Discovery protocol
  • org.eclipse.tm.discovery.transport.udp: Implementation of the UDP transport
  • org.eclipse.tm.discovery.view: View to browse discovered services, independent of RSE and enabled to launch the wizard page to start a new service discovery process.
  • org.eclipse.tm.discovery.wizard: Wizard pages for service discovery
  • org.eclipse.tm.discovery.model, org.eclipse.tm.discovery.mode.edit: EMF model for Service Discovery (requires EMF 2.2.0)
  • org.eclipse.rse.discovery: Link between RSE and the target management packages. Provides a customised wizard for the Discovery system type.

Service discovery usage on RSE

The default plugins contains the implementation of DNS-SD (Zeroconf/Bonjour) over UDP, other implementations can be provided through extension points. The multicast address for DNS-SD is 224.0.0.251, but a specific IP can be used if just querying one device.

The usage of service discovery can be seen on the service discovery recording

Use cases for autodetect

  • New Connection - instead of having to type an IP address, get a list of available systems. Grouped by system type, connection type (serial vs. TCP/IP), LAN/WAN range etc.
  • In the New Connection Wizard, when the remote system is already identified, get available services / subsystems pre-selected as detected on the remote system (or disabled if not available on the remote system).
  • New Board Lab - instead of having to type an IP address, get a list of available board lab servers.

Discussions