A Cross-Layer Approach to Minimize the Energy Consumption in Wireless Sensor Networks

Energy efficiency represents one of the primary challenges in the development of wireless sensor networks (WSNs). Since communication is the most power consuming operation for a node, many current energy-efficient protocols are based on duty cycling mechanisms. However, most of these solutions are expensive from both the computational and the memory resources point of view and; therefore, they result in being hardly implementable on resources constrained devices, such as sensor nodes. This suggests to combine new communication protocols with hardware solutions able to further reduce the nodes’ power consumption. Inthiswork,across-layersolution,basedonthecombineduseofaduty-cyclingprotocolandanewkindofactivewake-upcircuit,is presentedandvalidatedbyusingatestbedapproach.Theresultingsolutionsignificantlyreducesidlelisteningperiodsbyawakening thenodeonlywhenacommunicationisdetected.Specifically,anMACschedulermanagestheawakeningsofacommercialpower detectorconnectedtothesensornode,and,ifanactualcommunicationisdetected,itenablestheradiotransceiver.Theeffectiveness oftheproposedcross-layerprotocolhasbeenthoroughlyevaluatedbymeansoftestscarriedoutinanoutdoorenvironment.


Introduction
Smart environments are expected to become the main actors of the Next Internet, which will be no longer seen as a means to connect people to services but to access the resources made available by small smart objects, first of all sensors and actuators, adopting the machine-to-machine (M2M) paradigm.This new vision of the Internet fits into the broader concept of the Internet of Things, according to which the everyday objects that surround us will become proactive actors of the global Internet, with the capability of generating and consuming information for advanced applications [1].Among all the wireless technologies enabling the new vision of the Internet, wireless sensor networks (WSNs) are the ideal choice because sensor nodes are able to self-configure and self-organize.These characteristics make them useful to be deployed even in hostile environments in order to detect the environmental parameters (temperature, light, humidity, etc.) without human intervention.Then, exploiting the wireless channel and the multihop communication among nodes, the collected data are sent to a central processing point or are exploited by user-customized mash-up applications [2].Other strengths of this technology are represented by the low cost of devices, their small size, and their low power consumption.These simple yet fundamental functionalities are of great interest for a plethora of applications, such as building automation, surveillance, military operations, healthcare, and logistics, just to mention a few of them.However, the management of power consumption is still one of the main problems that are slowing the widespread diffusion of WSNs.Indeed, sensor nodes are usually battery powered and deployed in large areas in which changing or replacing batteries is impractical or completely unfeasible.Therefore, minimizing the power consumption in a node is a primary issue to be considered, and the use of effective solutions for increasing the nodes lifetime is fundamental in many applicative scenarios.
Let us observe that the power consumption of nodes is negligible in data sensing and processing procedures.On the contrary, the data communication towards the central 2 International Journal of Distributed Sensor Networks processing system has a strong impact on the nodes battery.This issue has a twofold cause: on the one hand, the radio transceiver implies a higher power consumption compared to the other components of the embedded device; on the other hand, the communication phase is associated with phenomena such as collisions, overhearing (i.e., listening of messages addressed to another node), overemitting (i.e., transmission of data to a node that cannot receive them), and idle listening (i.e., listening to the channel in absence of communications), which substantially reduce the nodes battery.To address these problems, many works in the literature are focused on energy saving solutions, mainly focused on the media access control (MAC) layer.The main goal of these protocol solutions is to minimize the activity time of the radio transceiver by properly setting the nodes duty cycle.In this way, each node is able to switch its radio component between ON and OFF state according to a predefined scheduling.However, most of these solutions result in being hardly implementable on real embedded devices, since they are expensive from both the computational and the memory resources point of view [3].These issues suggest to combine new MAC protocols with hardware solutions able to further reduce the node's power consumption [4,5].In this context, an increasing number of current works in the literature propose the use of a secondary low-power radio, called the "wake-up radio", able to monitor the channel and wake up the node only when a communication is detected.In such a way, nodes can remain asleep for most of the time and activate their main radio transceiver to receive data only when they receive a signal on the wake-up radio.This particular behavior allows to minimize the idle listening periods, and, consequently, the nodes' power consumption.Wake-up radios can be categorized as active and passive based on whether they use a power supply.Active wake-up radios require a continuous power supply, while passive systems harvest energy to power themselves from the wake-up radio signal transmitted by the sender.Since these last ones do not dissipate any energy from the battery, they operate over a shorter range of distances compared to active wake-up radios.
In this work, a cross-layer solution, based on the combined use of a duty-cycling protocol [6] and a new kind of active wake-up circuit, based on a very-low-consumption radio frequency (RF) power detector never adopted in the literature so far, is presented and validated.To the best of our knowledge, the proposed solution represents the first study presented in the literature on the integration of an active wake-up radio with an energy-efficient MAC protocol for WSNs.The resulting solution is able to substantially reduce power consumption and to extend sensor nodes lifetime by preventing unnecessary awakenings of nodes.Specifically, a commercial power detector has been connected to the sensor node and used as active wake-up radio.The power detector is an electronic integrated circuit able to provide an output signal linearly proportional to the input RF signal.To further reduce the overall power consumption, the activation of the secondary radio is controlled by the implemented scheduling schema.In more detail, during the network setup phase, each node communicates with the time interval chosen for the transmission of its packets.In such a way, neighboring nodes can properly set their wake-up times.This way, every node knows in advance when it can switch to sleep mode, because no transmissions are scheduled, and when it must be awake for receiving data.However, since a neighbor might not have data to transmit, a node switches on its radio transceiver to receive data only when the power detector detects a transmission.In order to evaluate the effectiveness of the proposed system, the selected power detector was firstly characterized through a test bed approach, and then a performance comparison between the proposed solution and the enhanced duty-cycling solution, reported in [7], was carried out by using real hardware devices.Obtained results show that the energy efficiency using the proposed cross-layer solution is much greater than when using the standard dutycycling protocol.
The rest of the paper is organized as follows.Section 2 summarizes the state-of-the-art of MAC energy-efficient MAC solutions and radio wake-up technology for WSNs.The characterization of the power detector is described in Section 3, while the MAC scheduler is defined in Section 4. In Section 5 numerical results are discussed.Conclusions are drawn in Section 6.

Related Works
Most energy-efficient communication protocols for WSNS are based on duty-cycling mechanisms.Such protocols fit into three main categories: preamble sampling, scheduling, and hybrid approaches.
Preamble-sampling MAC protocols are based on the low-powerl (LPL) [8] technique, according to which nodes periodically wake up for a short duration to sample the channel.If the channel is idle, nodes go back to sleep immediately; otherwise, they keep listening until a data frame is received or a timeout occurs.The transmission of a packet is preceded by a preamble that is as long as the channel sampling interval, so as to ensure that all potential receivers can detect the communication and stay awake to receive the data.B-MAC [9] is an early example of LPL protocol.It uses unsynchronized duty cycling in order to reduce the idle listening.WiseMAC [10] is similar to B-MAC but further optimizes transmission by allowing all nodes to record the radio sample phase of their neighbors.The wake-up tone is sent just before the receiver wakes up, saving a greater amount of energy.X-MAC [11] was the first LPL protocol to use a strobe preamble (i.e., a sequence of short preambles).Such short preambles contain the address of the receiver, and, therefore, nontarget nodes can immediately go back to sleep when they receive a strobe for another node.Furthermore, X-MAC uses the gap between two packets to accommodate an early ACK.Some protocols, such as SpeckMAC-D [12] and MX-MAC [13], repeat an actual data packet as the preamble.However, using data packet as the short preamble packet increases the idle listening period.
Scheduling approaches, such as S-MAC [14], T-MAC [15], DW-MAC [16], and PW-MAC [17], reduce the node duty cycle exploiting the use of a MAC scheduler.In particular, in S-MAC [14] nodes are organized into clusters composed of three periods: SYNC, DATA, and SLEEP.All nodes of the same cluster wake up at the beginning of the SYNC period to synchronize clocks with each other.Nodes with packets to send contend the channel during the DATA period, while nodes that are not involved in a communication return to sleep at the start of the SLEEP period.T-MAC [15] improves S-MAC by using an adaptive timer able to reduce the wakeup duration and introducing the Future Requests To Send (FRTS) policy.Specifically, it uses a special scheme to decide when a wakeup period can end (i.e., no activation event has occurred for a certain amount of time).This design aims to achieve optimal wake-up periods under various traffic loads.However, it introduces overhearing because a node has to stay awake also if it is not involved in data transmission.The scheduling algorithm in DW-MAC [16] integrates scheduling and access control to maintain a proportional one-to-one mapping function between a DATA period and the subsequent SLEEP period, which minimizes scheduling overhead while ensuring that data transmissions do not collide at their intended receivers.PW-MAC [17] protocol further improves both S-MAC and T-MAC exploiting a scheduler based on a pseudorandom algorithm, which allows the sender to predict the next wake-up time of the receiver node.Let us observe that all scheduled approaches must rely on a tight time synchronization procedure, which results in high overhead and significant power consumption even when there are no useful data to send.
Hybrid approaches, such as SCP-MAC [18] and AS-MAC [19], combine preamble sampling with scheduling techniques.In more detail, SCP-MAC [18] synchronizes the wake-up time of neighboring nodes so that only a short preamble is required to wake the receiver up.This protocol reduces the overall nodes power consumption but it is not able to avoid the overhearing problem.Such problem is successfully addressed by the AS-MAC [19] protocol, coordinating asynchronously the wakeup times of neighboring nodes.One of the main disadvantages of this protocol is the inefficiency in broadcast transmissions, since it has to transmit every packet once for each neighbor.In [7], an energy efficient MAC protocol based on an asynchronous scheduler is presented.According to this protocol, every node has the complete list of the transmission times of its neighbors and knows in advance when it can switch to sleep mode, because no transmissions are scheduled.Furthermore, to solve the clock drift problem, a node updates its neighbors' list every time it receives a new data packet.However, if a transmission is scheduled but no data have to be transmitted, both the sender and its neighbors wake up and remain active for the whole wake period, even if an actual transmission is not in progress.In the last years, several papers proposed cross-layer energy saving solutions for WSNs.In [20,21] authors present an optimization design and evaluation of the Distributed Queuing (DQ) MAC protocol.Specifically, in [20] they describe a novel cross-layer fuzzy-rule-based scheduling algorithm, which allows packet transmissions to be scheduled taking into account the channel quality among body sensors.In [21], the potential benefits of DQ MAC in terms of energy efficiency per information bit under saturation conditions are analyzed.
Current duty-cycling protocols can only reduce but not eliminate idle listening, which remains the main source of power dissipation in sensor networks.An alternative approach suggests to use an additional low-power wakeup radio component able to listen to the channel when the node enters the sleep mode and to wake up the main radio transceiver when channel activity is detected.To gain a benefit in energy efficiency, the additional radio must be of lower power than the main data receiver.Several different low-power active wake-up radios have been proposed in the literature.In [22], a super-regenerative architecture with a 1.9 GHz Bulk Acoustic Wave (BAW) resonator is used to reduce the power consumption of the wake-up radio.This approach has been further optimized in [23].In this work, a 65 W wake-up receiver is created, using a 1.9 GHz BAW resonator matching network for RF signal filtering.In [24], a zero-bias Schottky diode envelope detector is used to receive a PWM signal.Using this signal, the address decoder generates the clocking signal necessary for the activation of the decoding circuit.A three-stage wake-up scheme is introduced in [25].In this approach, a very low power (on the order of nW) always-on stage is used to trigger an intermediate higher power (on the order of W) stage for wake-up signal verification.Only if the wake-up signal is confirmed the main transceiver is activated.Other approaches for active wake-up radios are described in [26,27].Although there are several hardware proposals for active wake-up radios, not many physical implementations or commercialized products are available.Furthermore, to the best of our knowledge, no cross-layer solution, based on the combined use of a dutycycling protocol and an active wake-up circuit, has been previously presented in the literature.

Power Detector Enabling Radio Wakeup
In order to exploit the desired cross-layer approach and to reduce the WSN power consumption, WSN nodes provided with radio wake-up systems should be designed, realized, and validated.In this section, once the requirements for the hardware wake-up system are individuated, a solution is provided.
In particular, the radio wake-up system should be able to activate the node wireless interface only when a radio frequency (RF) signal is sent towards such a node.In such a way, even if in certain time periods the node is turned off and consequently does not waste power, the wake-up system must be permanently turned on in order to sense potential active WSN nodes.For such a reason, a power consumption appreciably lower than the node is the first requirement.
The second crucial requirement deals with the wakeup sensitivity, which represents the minimum RF power guaranteeing the proper functioning of the device.As the sensitivity is strongly linked with the maximum working range, in order not to introduce bottlenecks into the overall system, values comparable with that of the WSN node are strongly desired.Some minor requirements, such as compactness in order to be easily integrated into the WSN node and cost effectiveness in order to slightly impact upon the node total cost, must be satisfied as well.
In a first step, by taking into account all the requirements as a whole, it can be certainly deduced that an active solution must be preferred to a passive one.Indeed, in order to wake a WSN node up, a certain power is necessary, and, considering the low RF signal power emitted by a WSN node, a simple RF passive energy harvester used as wakeup would guarantee too short working distances.Vice versa, more complicated RF energy harvester systems provided with a DC-DC charge pump and the related capacitor, such as those presented in [28,29], despite allowing longer working ranges, introduce latencies and asynchronism (due to the charging and discharging phases of the capacitor) which can be hardly managed in a WSN.
The proposed wake-up circuit is based on the use of an RF power meter, an active device commonly adopted to measure even very low RF signals.An important peculiarity of an RF power meter is that it is able to give a significant output voltage (as it is active) proportional to the incident RF power.Consequently, in the WSN context, such a signal can be used to generate a trigger to wake up the node.
Among the different devices available on the market, the Texas Instrument LMV221 [30] has been selected.Indeed, it works properly around 2.4 GHz (working band from 50 MHz to 3.5 GHz), it guarantees a reasonably good sensitivity (−45 dBm), its supply voltage of 3 V is compatible with that of many commercial WSN nodes, the supply current is of only 7.2 mA, and, finally, it is rather inexpensive.
For a practical usage, in the first developed prototypal version, the LMV221 evaluation board, named LM221EVAL [31], has been connected to a 2.4 GHz dipole-like antenna and adopted.In particular, in order to validate the proposed radio wake-up solution, the LMV221EVAL board has been used to drive the MB954 board, a WSN node developed by ST Microelectronics.This board is powered by a 3 V battery pack (which can be also used to power the power meter) and is equipped with a 32-bit ARM CortexTM-M3 microcontroller operating at a clock frequency up to 24 MHz and embedding 16 Kbytes of RAM and 256 Kbytes of eFlash as ROM.It integrates a 2.4 GHz wireless transceiver compliant with the IEEE 802.15.4 standard and a power amplifier.The radio transceiver needs a transmission current of 21 mA and a receive current of 19 mA.These values are increased by the consumption of the CPU during the node lifecycle: during active periods the CPU needs 7.5 mA, whereas when the radio transceiver is OFF, it uses only 3 mA.The mounted microcontroller is highly optimized to guarantee high performance at very low power consumption.But most importantly, the selected board is equipped with 24 highly configurable GPIOs.Consequently, the voltage output of the power meter can be straightforwardly connected to one of the GPIO ports configured for analog to digital conversion, and, depending on such a voltage value, a switching-on/off trigger can be generated and opportunely managed to smartly control the radio interface, as thoroughly described later on in the paper (Figure 1).
Before developing the cross-layer solution, an accurate characterization of the properties of the integrated device has been performed.For this purpose, a simple scenario, consisting of one sender and one receiver, has been considered.In particular, during the experimental campaign, the sender, with a standard configuration, has been statically positioned in the center of a soccer field and the receiver, connected to the wake up circuit, has been used to measure the output voltage produced by the power meter when a signal is detected.The experiment has been repeated several times increasing at each run the distance between the two nodes.The main results obtained in such test are reported in Figure 2. The curves clearly show that the measured voltage decreases as the distance increases.In particular, the analysis has shown that the integrated device is no longer able to detect a node's transmission when the distance between the two devices becomes greater than 35 meters.

The Cross-Layer Radio Wake (CL-RW) Protocol
The basic idea of the defined protocol is to ensure smart awakenings; that is, nodes should wake up only when they actually have data to send or receive.In this perspective, during the network setup phase, each node chooses its transmission time, that is, the time instant at which it periodically can transmit; then, it communicates such information to its neighbors.In this way, in each duty cycle period, a node wakes up once to transmit and  times to receive, where  is the number of neighboring nodes.However, a node may not have data to transmit in a given period, and then the awakening of its neighbors would result in an unnecessary waste of energy.Just in these circumstances, the role of the power detector is fundamental: if the node has to wake up because the transmission of a neighbor is scheduled, the awakening occurs only if the wake-up device detects the presence of an effective communication.
For the sake of clearness, before describing the new scheduler in detail, some parameters used in the discussion are introduced below.
International Journal of Distributed Sensor Networks  (i)  0 is the time interval (in seconds) between two subsequent transmissions.It is the same for every node and it is preconfigured.
(ii) Wake Time is the time interval (in seconds) in which a node can transmit the local buffered data or receive data from its neighbors.
(iii) Announce Packet (Pkt ANN ) is a signaling packet used by each node to advertise its presence; it contains the time interval between the current time and the next awakening time chosen for transmission.
(iv) Alert Packet (Pkt ALERT ) is a signaling packet used by a node to alert a neighbor about a possible collision.
(v) Full Packet (Pkt FULL ) is a signaling packet used by a node to inform its neighbors that it is out of the network.
(vi) Wake Packet (Pkt WAKE ) is a signaling packet used by a node to inform its neighbors that it is about to send data or a Pkt ANN .
(vii) Wake-up Table (W TBL ) is a table used by each node to store information about the transmission times of its neighbors.Each table entry is associated with exactly one neighbor and contains the following information: (a) the ID of the neighbor, (b) the offset of the awakening time, and (c) the number of cycles of length  0 during which no data have been received from the corresponding node.
In the following, the start-up phase and the periodic listening and sleep phase are described.

Network Startup.
During the network initialization phase, all nodes stay awake for a certain time interval in order to detect the information useful to schedule their awakenings.In particular, they exchange information about their transmission time by sending Pkt ANN s.On the reception of such a message from an unknown neighbor, the CL-RW MAC protocol updates its W TBL by storing a new entry.However, before being stored, the information on the transmission time of the neighbor must be validated: the node verifies that the time chosen by the new neighbor does not overlap with the transmission intervals of the other neighboring nodes already stored into its W  .If the verification procedure succeeds, the transmission time of the neighbor is converted into offset by subtracting an appropriate time interval and then it is stored according to the ascending order of the offsets.Otherwise, if the transmission interval chosen by the new node overlaps with any of the transmission intervals already in W TBL , the node sends a Pkt ALERT to the new node, specifying the overlapping interval.In order to avoid collisions between packets, each node sends the Pkt ALERT after a waiting time, randomly chosen in a predefined time interval.In such a case, the new neighbor stores the received information into its W TBL and it chooses a new transmission time.This mechanism also reduces one of the main problems that afflict ad hoc networks, that is, the hidden node problem: by leveraging the Pkt ALERT , collisions among nodes two hops away are avoided.If the new node cannot find a valid transmission time, that is, the network is full, it communicates the information by broadcasting a Pkt FULL and it turns off the radio.On the reception of such a message, all the neighbors, which have already stored an entry for that node, delete it.
Analyzing in more detail the transmission time selection procedure, we can say that each node chooses its own transmission time as a random value in a proper interval, also taking into account the choice done by its neighbors.This separation in time among transmissions of neighboring nodes leads to a reduced channel access contention.In more detail, if the W TBL is empty, then the transmission time is randomly selected in the interval [0,  0 − (WakeTime + 2 * TurnAroundTime)] , ( where WakeTime is the time window dedicated to data transmission and TurnAroundTime is the amount of time the radio needs for changing its state.If the W TBL is not empty, then the node tries to set its own transmission time to a value different from those of its neighbors, in order to avoid collisions due to simultaneous transmissions.In particular, the node checks if there are two consecutive entries in the table, namely, th and ( + 1)th, whose offsets difference is greater than If so, the transmission time is chosen within the interval where  = WakeTime + 2 * TurnAroundTime, whereas offset[] and offset[ + 1] are the offsets associated with the th and ( + 1)th entries, respectively.Note that the node also checks the time intervals: where offset[0] and offset[] are the offsets associated with the first and last entry, respectively.In order to maximize the probability that all its neighbors receive the message, a node sends the Pkt ANN three times.Figure 3 shows a simplified flow chart that clarifies the node behavior in the network start-up phase.

Steady State.
After the start-up phase, the network enters in steady-state phase, during which two kinds of periodic events, namely, the transmission and the reception of packets, and one aperiodic event, that is, the arrival of a new node in the network, may happen.With regard to the periodic events, the node exploits the information stored in its W TBL , by setting a timer for the next scheduled event.When the timer expires, if the event is a data transmission, the node checks the presence of packets in its queue.If there are buffered packets, then it sends a Pkt WAKE to inform its neighbors about the imminent transmission.Otherwise, it keeps its radio transceiver OFF.When the transmission ends, the node waits for an ACK from the intended receiver, and, if no ACK is received, the message is sent again.At the end of its transmission interval, the node schedules the next event of the W TBL and it switches off its radio transceiver.When the scheduled event is a data reception, the node activates the power detector in order to control if there is an incoming transmission; that is, the intended neighbor is sending a Pkt WAKE .If so, it enables its radio transceiver, receives the data packet, and sends an ACK.On the contrary, if the power detector does not sense an incoming transmission until the end of a predefined timer, the node switches off the power detector and keeps its radio transceiver OFF.We can summarize the behavior of a node in the steady-state phase as a periodic transaction among the following five states: (i) SLEEP-MODE: the node is inactive and waits for the next transmission or reception.In this state, the radio transceiver is OFF; (ii) RX WAKE: the node enters in this state when incoming transmission is scheduled and it verifies whether the transmission is occurring or not; (iii) TX WAKE: the node enters in this state when an its own transmission is scheduled and it verifies whether there are buffered data or not; (iv) RX: in this state, the node is in its receiving time slot because the power detector has sensed an incoming transmission.Therefore, it waits for the data coming from the scheduled neighbor; (v) TX: in this state, the node is in its transmission slot because it has verified that there are some data in its transmission buffer.
The state machine, reported in Figure 4, summarizes what we just said.
In order to accomplish the described behavior, both the transmission and the reception slots have two specific subintervals, namely, a checking subinterval and a communication sub-interval.For the transmission slot, the checking subinterval, called TX Wake Period, represents the time interval during which the node checks its queue for buffered packets, whereas the communication sub-interval, called TX Data Period, represents the time interval during which the node carries out the actual data transmission.Similarly, for the receiving slot, the checking sub-interval, called RX Wake Period, represents the time interval during which the node turns on the power detector to check the presence of an incoming transmission, whereas the communication subinterval, called RX Data Period, represents the time interval during which the node effectively receives data.Moreover, in order to correctly manage the arrival of new nodes in the network, both the transmission and the reception slots have another sub-interval, called Announcement Period.During this interval, the node enables the power detector in order to check whether a new node is announcing its presence or not.In the first case, the node turns on its radio component to receive the Pkt ANN ; otherwise it turns off the power detector and keeps its radio OFF until the start of the TX or RX Wake Period.The structure of the transmission and reception slots is shown in Figure 5. Figure 6, instead, shows the advantages resulting from the use of the power detector during the reception phase.While in the first duty cycle period Node 1 has some packets to transmit, during the other duty cycle intervals, it has no data in its buffer.In these situations, by leveraging the features of the power detector, Node 2 can keep its radio transceiver OFF, thus saving a considerable amount of energy.
As said, the proposed protocol is able to efficiently manage the entry of a new node in the network.In this situation, the new node first listens to the channel for a time interval equal to 2 *  0 with the aim of detecting the transmissions of its current neighbors, and then, for each packet received from an unknown node, it adds an entry in its W TBL .Afterward, it exploits the Announcement Period of the transmission slots of its neighbors to communicate them the chosen transmission time, that is, to send the Pkt ANN .In more detail, the new node sends a Pkt WAKE in the first Otherwise, one or more nodes can communicate the bad choice by sending a Pkt ALERT , as said in the previous section.Figure 7 summarizes the behavior just described.In the first two duty cycle periods, Node 3 listens to the transmissions of its neighbors and stores their transmission times in the W TBL ; then, in the third period, it sends its Pkt ANN during the Announcement Periods of the two neighbors.

Results
The performance analysis of the proposed cross-layer solution was carried out by means of real test beds.This choice allowed us to evaluate the effectiveness of the proposed protocol as function of the hardware characteristics of both the board (e.g., clock speed, memory) and the wake-up circuit used.In more detail, a single-hop and a multihop scenario were considered in the tests.as shown in Figure 8) inside the campus of the University of Silent, and, to limit the multipath problem due to the ground, the five MB954 used were positioned at a height of 1.5 m.In both network topologies, Node 1 was the sink and each node sent 50 packets towards the sink by adopting a Constant Packet Rate (CPR).Specifically, four different data rates were chosen: 1 packet every 10 seconds (high load), 1 packet every 30 seconds (medium load), 1 packet every 60 seconds (a typical data rate used in sensor networks [32]), and 1 packet every 120 seconds (very low load).Furthermore, to better appreciate the benefits derived by the use of the power meter, the proposed cross-layer solution was compared with the MAC solution implemented in [7] (called AS3-MAC in the rest of the section).The main idea of the AS3-MAC protocol is the concept of smart awake.In any duty cycle period, a node wakes up to both send and receive, but awakenings for reception are scheduled at the transmission times of the neighboring nodes.However, the awakenings (both in RX and TX state) are determined during the network initialization phase, their duration is fixed, and they remain unchanged during the steady state.In this way, the nodes wake up periodically to receive and to transmit even if there are no data to communicate.In both protocol solutions, the value of  0 was set equal to 10 seconds, assuming that the running application can change its data rate without modifying the protocol layer settings.The main parameters of experimental campaigns are reported in Table 1.Let us observe that to evaluate the performance of the proposed solution without considering the routing traffic overhead, a static routing protocol was implemented.
In order to collect meaningful information, a custom data logging application was developed.The application, installed on the sink node, was able to send all received packets to a laptop working as a storage device.The data exchange between sink node and laptop was carried out by a serial communication.Each transmitted packet provides  the information on the amount of time during which a node uses the radio transceiver and the wake-up circuit.In such a way, the overall node power consumption was measured.Finally, it is important to highlight that all tests were carried out by using the independent replications method and all results are characterized by a 95% confidence interval whose maximum relative error is 5%.The performance results of the STAR TEST are reported in Figure 9.The measured power consumption values are expressed in mW, whereas the four used data generation intervalS are labeled as DGI, indicating the elapsed time between two consecutive packet transmissions.It is important to observe that all reported power consumption values are evaluated by considering the activation periods of the main radio transceiver, the power meter, and the device microcontroller.In the considered network topology, all nodes consume the same energy.All nodes are in the same communication range, and, therefore, they have an equal number of neighbors, which determines the number of awakening in the W TBL .The proposed cross-layer solution substantially outperforms the AS3-MAC protocol in terms of energy saving.This behavior can be noticed for all nodes by considering each data generation interval.In the graph, only one trend for the AS3-MAC solution is represented because the obtained results have shown that in this protocol the used data rate does not significantly affect the nodes' power consumption, since the idle power consumption is the dominating factor of the system power consumption.On the contrary, it is possible to note that in the proposed solution the power consumption behavior can be considered as a function of the data generation interval, since lower power consumption values are experienced at lower data rates.In this scenario, the energy saved by the proposed scheduler is around 48%, when lowest data rate is considered.
The results of the CHAIN TEST are shown in Figure 10.As previously discussed, in both protocol solutions the transmission power consumption is not the dominating factor of the overall node power consumption.Therefore, the results do not show a significant difference among nodes closer to the sink, which forward messages generated by others too, and nodes further away.In the considered network topology, the farthest node shows lower power consumption due to the different number of neighbors.The last node in the chain has only one neighbor, and so it is awake for less time.It is important to observe that in the proposed crosslayer solution also Node 2 shows lower power consumption.According to our solution, a node turns on its main radio transceiver only when the power meter detects a packet transmission from a neighbor.Node 1 is the sink node and it does not perform packet transmissions during its activation periods.Therefore, in CL-RW protocol Node 2 does not turn on radio transceiver during transmission periods of the sink node.Furthermore, the curves in Figure 10 clearly show the linear relationship between the data rate and the nodes' power consumption, already discussed in the STAR TEST results.Finally, obtained results confirm that the proposed solution outperforms the AS3-MAC protocol also using the chain topology.In particular, the energy saved by the proposed cross-layer protocol is about the 44%, when the lowest data rate is considered.

Conclusions
The reduction of the power consumption is one of the major issues in WSNs, as the lifetime duration is critical in this kind of networks.Among all the possible sources of energy waste, the communication phase and so the management of the radio transceiver are the most important issues to be addressed.In this work, a cross-layer approach based on the joint use of hardware and software solutions is proposed.
Firstly, a new kind of wake-up system for the node has been presented and validated.It is based on the integration between a commercial sensor node and a power meter circuit capable of switching (ON and OFF) the radio transceiver of the node according to the presence of an adequate RF signal.Then, a new duty-cycle-based communication protocol has been implemented, which exploits the power detector to activate, in each duty-cycle period, only the radio transceivers of those nodes actually involved in a communication.In such a way, the idle listening period is strongly reduced, and, consequently, the power consumption is reduced as well.
The proposed cross-layer solution has been deeply validated through a test bed approach aimed at a performance comparison with a similar MAC protocol already presented in the literature.The encouraging results presented and commented in the paper demonstrate the appropriateness of the proposed solution.

Figure 2 :
Figure 2: Output voltage versus the distance between the two devices.

Figure 8 :
Figure 8: Test bed at the University of Salento.

Figure 9 :
Figure 9: STAR TEST: power consumption in the star topology.

Figure 10 :
Figure 10: CHAIN TEST: power consumption in the chain topology.
During the first experimental campaign (called STAR TEST in the rest of the paper) a star topology, consisting of one receiver and four senders positioned in the same communication range, was considered.Instead, during the second test (called CHAIN TEST in the rest of the paper), a chain network of five nodes was analyzed.All tests were carried out in an outdoor environment (i.e., a soccer field, without buildings in the surrounding area