Derek finished an experiment with how the Puck signal is picked up by a vertically oriented mote in the expected position and orientation relative to the puck at power level 5.
The motes were placed at distances of .25, .5, .75 and 1.0 m from the puck at orientations from 0 to 180 degrees in increments of 20 degrees. The motes were placed at either .1 or .35 m below the height of the puck (the relative range of height of someone’s pager when the puck is mounted properly on the wall). At each position the puck broadcast messages and 3 motes ran the ParrotPacket software, recording the signal strength in their flash memory. The data were then saved to a file and imported into MiniTab for statistical analysis.
The results suggest that distance and orientation are significant as is their interactions and their interactions with height. Height itself is not significant.
I ran a general linear model with distance as a covariate, height and distance as fixed variables. The results are below. They indicate that the most important effects are distance, orientation, the distance X orientation interaction and the distance X height interaction, in that order. There are a couple of particularly tricky angles, particularly 40 (esp. low position), 100, 120 and 160 (especially high) degrees.
General Linear Model: Rssi versus Angle, Height
Factor Type Levels Values
Angle fixed 10 0, 20, 40, 60, 80, 100, 120, 140, 160, 180
Height fixed 2 0.10, 0.35
Analysis of Variance for Rssi, using Adjusted SS for Tests
Source DF Seq SS Adj SS Adj MS F P
Angle 9 170764 72123 8014 565.17 0.000
Distance 1 310959 292285 292285 20613.52 0.000
Height 1 30896 9 9 0.63 0.428
Angle*Distance 9 38513 44507 4945 348.76 0.000
Angle*Height 9 78799 21280 2364 166.75 0.000
Height*Distance 1 6185 4716 4716 332.60 0.000
Angle*Height*Distance 9 20705 20705 2301 162.25 0.000
Error 11494 162977 162977 14
Total 11533 819797
S = 3.76554 R-Sq = 80.12% R-Sq(adj) = 80.05%
Term Coef SE Coef T P
Constant 46.3831 0.1017 456.23 0.000
Distance -0.202612 0.001411 -143.57 0.000
Distance*Angle
0 -0.038021 0.003512 -10.83 0.000
20 0.033614 0.003657 9.19 0.000
40 -0.108594 0.004031 -26.94 0.000
60 0.070384 0.003640 19.34 0.000
80 0.004124 0.003758 1.10 0.273
100 -0.171713 0.006425 -26.73 0.000
120 0.120326 0.003779 31.84 0.000
140 0.089478 0.003965 22.57 0.000
160 -0.019497 0.004282 -4.55 0.000
Distance*Height
0.10 -0.025737 0.001411 -18.24 0.000
Distance*Angle*Height
0 0.10 -0.023842 0.003512 -6.79 0.000
20 0.10 0.037899 0.003657 10.36 0.000
40 0.10 -0.053161 0.004031 -13.19 0.000
60 0.10 -0.008957 0.003640 -2.46 0.014
80 0.10 0.044158 0.003758 11.75 0.000
100 0.10 0.019881 0.006425 3.09 0.002
120 0.10 0.003918 0.003779 1.04 0.300
140 0.10 -0.027172 0.003965 -6.85 0.000
160 0.10 -0.098929 0.004282 -23.10 0.000
The overall mean of the distances is deceptively promising:
That’s because if you average over a wide variety of positions near the puck and record lots of data, you can be pretty sure about your relative position.
If you include orientation effect and graph boxplots, you can see that the individual values are all over the place, even if the confidence interval on the mean is pretty stable:
If you break the rssi value by angle, the picture becomes a bit more complex:
From this boxplot it is clear that the .25 m distance could be reasonably distinguished from the 1.0 distance, except for the troublesome 120 degree angle. The other three distances seem to be in the same range and hard to distinguish. The stars indicate outliers, which are fairly common, perhaps a result of noise on the channel? Note that the outliers tend to be low.
Breaking out distance as well, you can see the full complexity of the results. The lower mote positions (.35m) seem to present a much more reliable pattern than the high mote position. Also there seems to be a pattern that when the signal drops below about 25, there seems to be a lot more variation in the results.

Finally, a plot of the residual analysis is presented below. The normal probability plot in the upper left suggests that there were more negative values than would be predicted by normal variation alone, which is confirmed by the histogram plot. The lower right plot suggests that many of the unusually low values came in batches, suggesting particularly around trials 1500, 2500, 9000 and 10000.
Discussion
The results are not stable enough to estimate distance based on rssi value alone between the .75 and 1.0m distances, though it is close to being reliable for the .25m distance.
The high variance seems to come from positions close to the puck. This is consistent with previous observations that the radio signal is not very strong and reliable in the plane of the mote. The lower position seemed to do much better. This may be because these positions occur closer to a useful cone extending downward from the puck.
The low power signals also seem to be more problematic than the strong one. Perhaps some of the variation will be reduce if a higher power level was used. It may be that the signal is inherently unstable in the plane of the board, but it may be that this region has a weak signal and using a high power will provide more consistency.
The residual plot also suggests that there are particularly bad positions — probably at the orientations and distances mentioned above. Some of this might be related to a low battery in one of the 3 sensor motes … we’ll have to check that possibility out.
