## 5 Validation and Results
### Testbed Components Identification  
The testbed was built over an Ethernet LAN emulating the wired backbone network with a WiFi access point, allowing access to external terminals, such as smartphones. A 6 LoWPAN border router was connected to the network to route traffic from several test nodes and beacon prototypes. The radio module used in the testbed nodes was the Freestar Pro ZFSM-201-X [38] from California Eastern Laboratories. It includes a microcontroller unit (MCU), a transceiver and an antenna, integrated  
Figure 14: Main components of the laboratory testbed: (1) border router and gateway; (2) dynamic marker; (3) amperometric clamp. Figure 13: Example of a detailed view with available connections and related controls. in a printed circuit board. It is based on Freescale's MC13226V [39] platform and incorporates a power amplifier (PA), a printed antenna and a connection interface for prototyping in other boards. This module was included in a board designed to easily connect a variety of sensors and actuators to the MCU ADC. Moreover, several LEDs were connected to that board in order to implement the dynamic marker beacon described in Section 3. Each node in the IoT network ran a version of the Contiki OS, ported to MC13226V microcontrollers, with the uIP [40] protocol stack and CoAP as the application layer protocol. We have implemented the following resources with CoAP for the nodes in the testbed, which are to be placed in electrical panels:  
* _well-known/core_: default resource used by CoAP to request the list of resources for a node;
* _sensors/vbatt_: to monitor battery level;
* _sensors/conntatus_: to indicate the status of the indicated electrical connection of the panel;
* _sensors/energycons_: to obtain the average power consumption through the selected electrical connection;
* _actuators/set_beacon_freq_: to set the frequency of the transmitting LEDs;
* _actuators/led_pos_: to activate the reference LEDs in the corners;
* _actuators/led_beacon_: to activate the data transmission LEDs;
* _options/rfchannel_: to modify the IEEE802.15.4 radio channel;
* _options/txpower_: to modify the transmission power of the node;  
These resources are directly accessible on each node via the WAN interface of the border router. Accordingly, any device connected to the backbone network can access relevant real-time information provided by any of the individual infrastructure elements. In the next step, we connected the test nodes to the electrical panels of a building using amperometric clamps to measure the total intensity of current flow. These nodes were equipped with prototypes of dynamic AR markers, allowing us to deliver basic information about the connections to an Android AR application (Figure 15). For the border router prototype, the following modules were used:  
* ZFSM-201-2 California Eastern Labs MCU with Freescale MC123226V microcontroller
* FOX Board G20 [41] with Debian Linux system  
The same radio module was used in the test nodes and the 6 LoWPAN border router. Moreover, to act as a bridge between wired (Ethernet) and wireless networks (WiFi), this module was connected to a Linux board for routing traffic from these interfaces according to the destination subnet. This was calculated using the IPv6 address of the destination (the same applied when routing traffic in the opposite direction). Thus, interconnections between all of the elements of the testbed are supported, thereby facilitating the inclusion of new nodes in the future. Finally, the AR GUI in Figure 15 was implemented for Android devices. In order to interact with the CoAP resources in IoT nodes, the Californium framework libraries [42] were ported to Android, after resolving several problems regarding inter-process communications and library compatibility. Using these ported libraries together with the OpenGL ESAPI [43], we implemented and tested the basic information GUI described in Section 4.2 in a Nexus 4 terminal.