Skip to content
This repository has been archived by the owner on Sep 21, 2022. It is now read-only.

Frequently asked questions

danbim edited this page Jul 27, 2012 · 1 revision

I get an error message "Could not connect to host/port of the given endpoint URL..." when connecting to the testbed

Sometimes when using the Experimentation Scripts you get an error message that looks like the following:

Target exception: javax.xml.ws.soap.SOAPFaultException: Could not connect to host/port of the given endpoint URL:
"http://ubuntu804desktop.localdomain:8090/controller".
Make sure you're not behind a firewall/NAT and the endpoint is already started.

Upon connecting to the testbed using the experimentation scripts the client opens a Web service on your host so that the testbed backend can use this as a back channel to deliver node output to your host.

The first possible reason for that error is that you are behind a firewall or NAT router. In this case the testbed backend can't open a TCP connection to your host.

The second reason may result from the testbed backend being unable to resolve the Web services URL (which is http://ubuntu804desktop.localdomain:8090/controller) in the example. This example URL surely can't be resolved as it points to ubuntu804desktop.localdomain. There are several solutions to this second problem:

  1. In case you have a fixed IP and host name configure your desktop host name appropriately so that executing hostname on the shell returns a resolvable host name. The experimentation scripts will use this host name and send it to the testbed backend.
  2. In case you have a dynamic IP: a) Use dynamic DNS services such as DynDNS. b) Edit the Beanshell Scripts in the experimentation scripts scripts/ subfolder to not try to detect the host name but to take a statically configured one.
  3. Use the unofficial protocol buffers API available on some of the WISEBED testbeds by adding the appropriate configuration to your properties file. In case of the Luebeck testbed your configuration file would then look as follows:
testbed.snaa.endpointurl  = http://wisebed.itm.uni-luebeck.de:8890/snaa
testbed.rs.endpointurl    = http://wisebed.itm.uni-luebeck.de:8889/rs
testbed.sm.endpointurl    = http://wisebed.itm.uni-luebeck.de:8888/sessions
testbed.urnprefixes       = urn:wisebed:uzl1:
testbed.usernames         = 
testbed.passwords         = 
testbed.protobuf.hostname = wisebed.itm.uni-luebeck.de
testbed.protobuf.port     = 8885

You can look up the unofficial Protobuf API configuration parameters for the individual testbeds on the testbeds page on wisebed.eu.

I Can't See any Messages

Testbed Runtime by default uses a deframing algorithm in its backend that does packetizing from the UARTs stream into individual packets based on some framing mechanism. If you don't see any output being generated that may be due to the fact that the wrong deframing algorithm is currently configured for your sensor nodes application (and operating system) in the testbeds ChannelPipeline. Please see Customizing the ChannelPipeline for more information on this.