appendix a: wireless sensor development platforms978-1-4471-6374-9/1.pdf · appendix a: wireless...
TRANSCRIPT
Appendix A: Wireless Sensor Development
Platforms
Benny Lo and Guang-Zhong Yang
A.1 Introduction
The development of BSN has been facilitated by the rapid advances in WirelessSensor Networks (WSNs) in recent years. BSN harnesses several allied technolo-
gies that underpin the development of pervasive sensing for healthcare, wellbeing,
sports and other applications that require “ubiquitous” and “pervasive” monitoring
of physical, physiological and biochemical parameters in any environment and
without activity restriction and behaviour modification. Key to the development
of BSN are technologies that address miniaturised biosensor design, suitable for
both wearable and implantable devices, biocompatibility and materials to ensure
long-term deployment, low-power wireless communication, integrated circuits and
systems, power scavenging techniques from the body, autonomic sensing and
standards and integration. Major technical hurdles of BSNs are related to continu-
ous sensing and monitoring, requiring long-term stability of the sensors and
low-power operation, also necessitating bio-inspired design (e.g., bio-inspired
mix-signal ASIC) and power scavenging techniques ultimately for battery-less oper-
ation. For device level inter-connectivity, BSNs can be wired (e.g., interconnecting
with smart fabric) or wireless (making use of common wireless sensor networks and
standards.
Since the introduction of the concept of WSN, a large number of development
platforms have been introduced [1, 2]. As shown in Fig. A.1, there are nearly
120 new WSN platforms introduced since 1998. The number of new platforms
introduced peaked in 2004–2007 and remained relatively static 2008 onwards.
The reason for the decline is largely due to the maturing of the sensing platforms
B. Lo • G.-Z. Yang, PhD (*)
The Hamlyn Centre, Imperial College London, London SW7 2BY, UK
e-mail: [email protected]
G.-Z. Yang (ed.), Body Sensor Networks, DOI 10.1007/978-1-4471-6374-9,© Springer-Verlag London 2014
527
and the increasing number of commercially available platforms. This is apparent by
comparing the trend of the platforms designed for research purposes and those
commercial platforms as shown in Fig. A.1.
A more detailed list of WSN platforms is provided in Table A.1. It must be
pointed out that this table is by no means exhaustive and unintentional omission is
likely. The general design and requirements for BSNs can be different from typical
WSN applications. However, many of the WSN development platforms have been
adapted or directly adopted for wearable BSN applications. For implantable appli-
cations, bespoke electronics and new ASIC designed are used due to stringent
power and resource constraints. After the introduction of dedicated BSN platforms,
such as the BSN node [3, 4], Pluto [5], Shimmer [6], purposely built platforms have
been used in BSN research. This appendix outlines the system architecture of
common WSN platforms and provides an overview of some of the main hardware
components involved.
A.2 System Architecture
The system architectures of all WSN development platforms are relatively similar,
and they mainly consist of the following components:
• Processor – the computer of the sensor node
• Wireless Communication – the wireless link between sensor nodes
• Memory – external storage for sensor readings or program images
140
120
100
80
60
40
20
01998 1999 2000 2001 2002 2003 2004 2005
Year2006 2007 2008 2009 2010 2011 2012
Commerically Available
Research Oriented
WSN Platforms
Number of WSN Platforms Introduced
Nu
mb
er o
f P
latf
orm
s In
tro
du
ced
Fig. A.1 Number of new WSN hardware platforms introduced in recent years
528 B. Lo and G.-Z. Yang
Table
A.1
Wirelesssensornetwork
developmentplatform
s
Platform
sCPU
Clock
(MHz)
RAM/Flash/
EEPROM
Radio
transceiver
BW
(bps)
Freq.
(MHz)
OS
Year
Organisation
WeC
Atm
elAT90LS8535
4512/8
K/32K
RFM
TR1000
10k
916.5
TinyOS
1998
UCBerkeley
AWAIRS1
IntelStrongArm
SA1100
59–206
1M/4
MConexantRDSSS9M
100k
900
MicroC/OS
1999
Rockwell
Micromote
Atm
elAT90S8535
Atm
elAT90LS2343
4 10
512/8
K/32K
128/2
k
RFM
TR1000
10k
916.5
TinyOS
1999
UCBerkeley
Rene1
Atm
elAT90LS8535
4512/8
K/32K
RFM
TR1000
10k
916.5
TinyOS
1999
UCBerkeley
Rene2
Atm
elAtm
ega163
81K/16K/32K
RFM
TR1000
10k
916.5
TinyOS
2000
UCBerkeley
uAMPS
StrongARM
SA1100
206
16M/512K
(ROM)
National
LMX3162
1M
2,450
uOS(eCOS
microkernel)
2000
MIT
BTnodea
bAtm
elAtm
ega128L
84K/128K/4
KZV4002BT/TI(Chipcon)
CC1000
1M
2,400
TinyOS
2001
ETH
Zurich
38.4
k868
Dot
Atm
elAtm
ega163
81K/16K/32K
RFM
TR1000
10k
916.5
TinyOS
2001
UCBerkeley
RSCWIN
SDECSA1100
206
1M/4
MRDSSS9M
100k
900
2001
Rockwell
SpotON
DragonballEZ
16
2M/2
MRFM
TR1000
10k
916.5
2001
University
of
Washington/
Intel
Smart-itsb
(Lancaster)
Microchip
PIC18F252
83K/48K/64K
Radiometrix
64k
433
Smart-its
2001
Lancaster
Smart-its(Teco)
Atm
elATMega103L
44K/128K
EricssonBT
1M
2,400
Smart-its
2001
University
of
Karlsruh
CENSMedusa
MK2
Atm
elATMega128L
Atm
elAT91FR4081
40
136K/1
MRFM
10k
916
Palos
2002
UCLA
iBadge
Atm
elAtm
ega103L
64K/128K
EricssonBT
1M
2,400
Palos
2002
UCLA
Mica
Atm
elAtm
ega128L
44K/128K/512K
RFM
TR1000
40k
916.5
TinyOS
2002
UCBerkeley
iMote1
ZeevoZV4002(A
RM)
12–48
64K/512K
ZeevoBT
720k
2,400
TinyOS
2003
Intel
Mica2
ab[10,11]
Atm
elAtm
ega128L
84K/128K/512K
TI(Chipcon)CC1000
38.4
k900
TinyOS
2003
UCBerkeley/
Crossbow
Mica2Dotab
Atm
elAtm
ega128L
44K/128K/512K
TI(Chipcon)CC1000
38.4
k900
TinyOS
2003
UCBerkeley/
Crossbow
MantisNymph
Atm
elAtm
ega128L
44K/128K/512K
TI(Chipcon)CC1000
38.4
k900
Mantis
2003
UColorado
RFRAIN
TI(Chipcon)CC1010
3–24
2K/32K
TI(Chipcon)CC1010
76.8
k0.3–1,000
RFRAIN
Libraries
2003
MIT
(continued)
Table
A.1
(continued)
Platform
sCPU
Clock
(MHz)
RAM/Flash/
EEPROM
Radio
transceiver
BW
(bps)
Freq.
(MHz)
OS
Year
Organisation
U3
Microchip
PIC18F452
0.031–8
1K/32K/256
CDC-TR-02B
100k
315
Pavenet
2003
UTokyo
AquisGrain
Atm
elAtm
ega128L
44K/128K/512K
TI(Chipcon)CC2420
250k
2,400
–2004
PhilipsResearch
BEAN
TIMSP430F149
82K/60K/512K
TI(Chipcon)CC1000
76.8
k0.3–1,000
YATOS
2004
UniversidadeFed-
eral
deMinas
Gerais
BSN
nodev2b[3,4]
TIMSP430F149
82K/60K/512K
TI(Chipcon)CC2420
250k
2,400
TinyOS
2004
ImperialCollege
London/
Sensixa
CIT
sensornode
Microchip
PIC16F877
20
368/8
KNordic
nRF903
76.8
k868
TinyOS
2004
Cork
Institute
of
Technology
DSYS25ab
Atm
elAtm
ega128
44K/128K
Nordic
nRF2401
1M
2,400
TinyOS
2004
UCC
eXtrem
eScale
Mote
(XSM)
Atm
elATmega128L
84K/128K
TI(Chipcon)CC1000
76.8
k433
TinyOS
2004
Ohio
State
Uand
Crossbow
Fleck
1
Fleck
2
Atm
elAtm
ega128
44K/128K/512K
Nordic
nRF903
76.8
k902–928
TinyOS
2004
CSIRO
MicaZ
ab
Atm
elAtm
ega128L
84K/128K
TI(Chipcon)CC2420
250k
2,400
TinyOS
2004
Crossbow
MITes
bNordic
nRF24E1
16
512/4
KNordic
nRF24E1
1M
2,400
–2004
MIT
Parasitic
SiliconC8051F311
25
1.2
k/16k
BlueR
adiosBR-C11A
1M
2,400
2004
MIT
Particle2/29a
Microchip
PIC
18F6720
20
4K128K/512K
RFM
TR1001
125k
868.35
Smart-its
2004
Lancaster/Univer-
sity
of
Karlsruhe
Pluto
b[5]
TIMSP430F149
84K/60K/512K
TI(Chipcon)CC2420
250k
2,400
TinyOS
2004
Harvard
ProSpeckzb
Cypress
CY8C2764
12
256/16K
TI(Chipcon)CC2420
250k
2,400
Speckle
net
2004
University
of
Edinburgh
Spec
8-bitAVR-likeRISC
core
4–8
3K
FSKTransm
itter
100k
TinyOS
2004
UCBerkeley
Telosab
TIMSP430F149
82K/60K/512K
TI(Chipcon)CC2420
250k
2,400
TinyOS
2004
UCBerkeley/
Sentilla
(Moteiv)
Ember
RFmodulea
Atm
elAtm
ega128L
84K/128K
Ember
2420
250k
2,400
EmberNet
2005
Ember
EnOcean
TCM120
Microchip
PIC18F452
10
1.5
K/32K/256
InfineonTDA
5200
120k
868
TinyOS
2005
HelmutSchmidt
University
eyesIFXv2b
TIMSP430F1611
810K/48K
InfineonTDA5250
64k
868
TinyOS
2005
TUBerlin
Hogthrob
Atm
elAtm
ega128L
XilinxSpartan3
XC3S400
8 48
4K/128K
56K
Nordic
nRF2401
1M
2,400
2005
Technical
Univer-
sity
of
Denmark
iMote2
IntelPXA271
13–104
256K/32M
TI(Chipcon)CC2420
250k
2,400
TinyOS
2005
Intel
MediM
eshb
TIMSP430F1611
810K/48K
TI(Chipcon)CC2420
250k
2,400
TinyOS
2005
ChineseUniversity
ofHongKong
Mullea
Renesas
M16C/62P
10
31K/384K/2
MMitsumiWMLC46AHR
2.178M
2,400
Mulle
2005
Eistec
RISE
TI(Chipcon)CC1010
EM
3–24
2K/32K
TI(Chipcon)CC1010EM
76.8
k0.3–1,000
TinyOS
2005
UCRiverside
ScatterWeb
ESB
TIMSP430F149
82K/60K
RFM
TR1001
115.2
k868
TinyOS/Contiki
2005
Freie
Universitat
Berlin
Stack
bSiliconC8051F206
25
1K/8
KRFM
TR1000
115.2
k916
2005
MIT
Solarbiscuit
Microchip
PIC
18LF452
7.3728
1K/32K
TI(Chipcon)CC1000
76.8
k315
2005
TheUniversity
of
Tokyo
Tmote
sky/TelosB
ab[12]
TIMSP430F1611
810K/48K/1
MTI(Chipcon)CC2420
250k
2,400
TinyOS
2005
UCBerkeley/
Sentilla
(Moteiv)
XYZsensornode
OKIML67Q500x
(ARM/THUMB)
1.8–57.6
4K/256K/512K
TI(Chipcon)CC2420
250k
2,400
SOS
2005
Yale
Antab
TIMSP430F1232
8256/8
KNordic
nRF24AP1
1M
2,400
Ant
2006
Dynastream
Inno-
vationInc.
BTnoderev3ab[13]
AtemlATmega128L
84K/128K/4
KZV4002BT/TI(Chipcon)
CC1000
1M
2,400
BTnut
TinyOS
2006
ETH
Zurich/Artof
Technology
38.4
k868
Cookies
AnalogDevice
ADuC841
XilinxXC3S200
Spartan3
16
48
4K/62K
234K
ConnectBlue
OEMSPA13i
1M
2,400
2006
Universidad
Politecnicade
Madrid
DSRPN
TIOMAP5912
TMS320C55x
192
200
250K
128K
340
2006
ChineseAcadem
y
ofScience
(continued)
Table
A.1
(continued)
Platform
sCPU
Clock
(MHz)
RAM/Flash/
EEPROM
Radio
transceiver
BW
(bps)
Freq.
(MHz)
OS
Year
Organisation
e-Watch
b[14]
PhilipsLPC2106
ARM7TDMI
60
64K/128K
SMARTM
Bluetooth
1M
2,400
2006
Carnegie
Mellon
University
IECAS
SiliconC8051F121
100
84K/128K
TI(Chipcon)CC2420
250k
2,400
2006
Institute
ofElec-
tronicsChinese
Academ
yof
Science
LEAP
IntelPXA255
400
128M/64M/
192M
TI(Chipcon)CC2420
Atheros5006XS
250k
2,400
LEAPsoftware
fram
ework
2006
UCLA
20M
2,437
Nano-Q
plus
Atm
elATmegal28
84K/128K
TI(Chipcon)CC2420
250k
2,400
Nano-Q
plusOS
2006
ETRIKorea
SENTIO
Atm
elAtm
ega128L
84K/128K
TI(Chipcon)CC2420
250k
2,400
2006
Mid
Sweden
University
Shim
mer
b[6]
TIMSP430F1611
810K/48K/2G
TI(Chipcon)CC2420
MitsumiWML-C46N
250k
2,400
TinyOS
2006
Intel
2.178M
2,400
Tinynode584a
TIMSP430F1611
810K/48K/512K
Sem
tech
XE1205
152k
868/902
TinyOS
2006
EPFL/Tinynode
TUTWSNb
Microchip
PIC18LF4620
10
4K/64K/1
KNordic
nRF905
50k
433/868/
915
2006
Tam
pereUniver-
sity
of
Technology
TyndallMoteb
Atm
elAtm
ega128L
84K/128K/32K
Nordic
nRF2401
1M
2,400
TinyOS
2006
Tyndall
ubER-Badgeb
[15]
TIMSP430F149
84K/60K/256M
TI(Chipcon)CC1010
76.8
k0.3–1,000
2006
MIT
uPart0140ilmta
Microchip
rfPIC16F675
464/1
KMicrochip
rfPIC16F675
19.2
k868
Smart-it
2006
University
of
Karlsruh
ZN1
Renesas
H8S/2218
4–24
128K/128K
(ROM)
TI(Chipcon)CC2420
250k
2,400
2006
Hitachi
AVRraven
aAtm
elAtM
ega1284p
Atm
elATmega3290p
20
128K/16K/256K
Atm
elAT86RF230
250k
2,400
Atm
elStudio
2008
Atm
el
FireFly
Atm
elATmega1281
16
8K/128K/2G
TI(Chipcon)CC2420
250k
2,400
Nano-RK
2007
Carnegie
Mellon
University
Fleck
3Atm
elAtm
ega128L
84K/128K/1
MNordic
nRF905
50k
433/868/
915
TinyOS
2007
CSIRO
GWNode[16]
Microchip
PIC18LF8722
40
128K/64K/1
KBiM
110k
173
2007
Southam
pton
iSense
ab
Jennic
JN5148
4–32
128K/512K
802.15.4
250k
2,400
iSense
2007
coalesenses
JN5121ab
OpenRSIC1000
16
96K/64K
IEEE802.15.4
250k
2,400
JenNet/Jenie
2007
Jennic
mPlatform
b[17]
TIMSP430F1611
OKIML67Q5003
XC2C512
CoolRunner-II
CPLD
8 60
32–200
10K/48K
32K/512K
TI(Chipcon)CC2420
250k
2,400
mPlatform
2007
Microsoft
NeoMotea(EcoWizard)
Atm
elATMega128L
84K/128K
TI(Chipcon)CC2420
250k
2,400
2007
MEMSIC
(Cross-
bow)/
Sumitomo
Precision
NWSPb
Altera EP2C20F256C7N
500
26K
National
LMX9830
1M
2,400
eCos
2007
Nokia
Power
meter
WSN
TI(Chipcon)CC1010
3–24
2K/32K
TI(Chipcon)CC1010
76.8
k0.3–1,000
2007
University
ofNew
South
Wales
Sydney
S-M
ote
TI(Chipcon)CC2430
32
8K/128K
TI(Chipcon)CC2430
250k
2,400
RETOS
2007
YonseiUniversity
Korea
SunSPOTab[18]
ARM920T
180
512K/4
MTI(Chipcon)CC2420
250k
2,400
JavaJ2ME
2007
Orcale(Sun)
Tmote
miniab
TIMSP430F1611
810K/48K/1024K
TI(Chipcon)CC2420
250k
2,400
TinyOS
2007
Sentilla(M
oteiv)
WeB
ee3b
TI(Chipcon)CC2431
16
8K/128K
TI(Chipcon)CC2430/
CC2431
250k
2,400
2007
LucerneUniversity
ofApplied
Sciences
ZigBita
Atm
elATmega1281V
16
8K/128K
Atm
elAT86RF230RF
250k
2,400
ZigBitDevelop-
ment
Kit/TinyOS
2007
MeshNetics
ArduinoBTab
Atm
elATmega328
16
2K/32K/1
KBluegigaWT11i
3M
2,400
ArduinoID
E/Java
2008
Arduino
BSN
nodev3ab[19]
TIMSP430F1611
810K/48K/4
MTI(Chipcon)CC2420
250k
2,400
TinyOS/BSNOS
2008
ImperialCollege
London/
Sensixa
(continued)
Table
A.1
(continued)
Platform
sCPU
Clock
(MHz)
RAM/Flash/
EEPROM
Radio
transceiver
BW
(bps)
Freq.
(MHz)
OS
Year
Organisation
DalianWSN
LPC2138
30
32K/512K
TI(Chipcon)CC2420
250k
2,400
2008
DalianUniversity
ofTechnology
EPIC
mote
TIMSP430F1611
810K/48K/512K
TI(Chipcon)CC2420
250k
2,400
TinyOS
2008
UCBerkeley
MASN
Ember
EM250
(XAP2b)
12
5K/128K
Ember
EM250
250k
2,400
TinyOS
2008
RochesterInstitute
ofTechnology
Shim
mer
1.3
ab
TIMSP430F1611
810K/48K/2G
TI(Chipcon)CC2420
RovingNetworksRN-42
(Bluetooth)
250k
2,400
TinyOS
2008
Shim
mer
3M
2,400
WBSNb
TIMSP430F1611
810K/48K/124K
TI(Chipcon)CC2420
250k
2,400
TinyOS
2008
QueenMary’s
Uni-
versity
of
London
Fem
toNode
Fem
toJava
56
0.5
KTI(Chipcon)CC2420
250k
2,400
API-Wireless
2009
UniversidadeFed-
eral
doRio
GrandedoSul
iCubes
SiliconC8051F320
25
2K/16K
TI(Chipcon)CC2500
500k
2,400
Over
TheAir
Programmed
(OTAP)
2009
Technical
Univer-
sity
ofCrete
Kmote-B
aTIMSP430F1611
810K/48K/512K
TI(Chipcon)CC2420
250k
2,400
TinyOS
2009
INETCH
Co./
TinyOSMall
PowWow
–CAIRN
TIMSP430F1612
85K/55K
TI(Chipcon)CC2420
250k
2,400
PowWow
2009
Inria
SenseNodea
TIMSP430F1611
810K/48K/1024K
TI(Chipcon)CC2420
250k
2,400
TinyOS
2009
Genet
Sensium
ab
Toumaz
Sensium
TZ1030
164k
Toumaz
Sensium
TZ1030
50k
928
Toumaz
Shim
mer
2ab
TIMSP430F1611
810K/48K/2G
TI(Chipcon)CC2420
RovingnetworksRN-42
(Bluetooth)
250k
2,400
TinyOS
2009
Shim
mer
3M
2,400
T-nodea
Atm
elATMega128L
84K/128K
TI(Chipcon)CC1000
38.4
k868
SOWNet
2009
SOWNet
Technologies
Tem
po3.1
b[20]
TIMSP430F1611
810K/48K
RovingNetworksRN-41
(Bluetooth)
1M
2,400
TEMPOS
2009
University
of
Virginia
WeB
ee3G
TI(Chipcon)CC2430
16
8K/128K
TI(Chipcon)CC2430
250k
2,400
2009
LucerneUniversity
ofApplied
Sciences
Egs
Atm
elSAM3U
96
52K/256K
TI(Chipcon)CC2520
WML-C46
250k
2,400
2010
Harbin
Institute
of
Technology
2.178M
2,400
ENSb
TIMSP430F2410
16
4K/56K
TI(Chipcon)CC2420
250k
2,400
ENSNetwork
software
2010
University
of
Edinburgh
G-nodea
TIMSP430F2418
16
8K/116K/1
MTI(Chipcon)CC1101
1.2
k868/915
SOWNet
2010
SOWNet
Technologies
IndriyaCS-03A14a
Atm
elATMega128L
84K/128K
XBee
250k
2,400
TinyOS
2010
Indrion
RecoNode
XilinxVirtex-4
FX20
450
128M/
TI(Chipcon)CC2520
250k
2,400
RTOS/TinyOS
2010
University
of
Denver
Shim
mer
2Rab
TIMSP430F1611
810K/48K/2G
TI(Chipcon)CC2420
RovingNetworksRN-42
(Bluetooth)
250k
2,400
TinyOS
2010
Shim
mer
3M
2,400
VE209-STVEmesha
TIMSP430
16
512B/8
KSem
tech
SX1211/SX1231
50k
902
2010
Virtual
Extension
XBee-PRO
ZBab
Freescale
HCS08
50.33
2K/32K
ZigBee
250k
2,400
XBee
SDK
2010
DigiInternational
Z1a
TIMSP430F2617
16
8K/92K
TI(Chipcon)CC2420
250k
2,400
TinyOS/ContikiOS
2010
Zolertia
AS-X
M1000a
TIMSP430F2618
16
8K/116K/1024K
TI(Chipcon)CC2420
250k
2,400
TinyOS/ContikiOS
2011
Advanticsys
Indriya_
DP_01A11a
TIMSP430F2618
16
8K/116K
TI(Chipcon)CC2520
250k
2,400
TinyOS
2011
Indrion
Indriya_
DP_03A20a
Atm
elATMega128L
84K/128K
GainSpan
GS1011M
1M
2,400
TinyOS
2011
Indrion
IRIS
aAtm
elATmega1281
16
8K/128K/512K
Atm
elAT86RF230
250k
2,400
Mote
Works/Mote
Runner
2011
MEMSIC
(Crossbow)
Libelium
Waspmoteab
Atm
elATMega1281
88K/128K/2GB
XBee
module
250/230/
230k
2,400/900/
848
Libelium
(Over
the
Air)OTA
2011
Libelium
LOTUSa
NXPLPC1758
100
64K/512k/64M
Atm
elAT86RF231
250k
2,400
FreeRTOS/
TinyOS/M
ote
Runner
2011
MEMSIC
(Crossbow)
MTM-CM5000-M
SPa
MTM-CM3000-M
SPa
TIMSP430F1611
810K/48K/1024K
TI(Chipcon)CC2420
250k
2,400
TinyOS/ContikiOS
2011
Advanticsys
MTM-CM3300-M
SPa
MTM-CM4000-M
SPa
Preon32a
ARM
Cortex-M
372
64K/256K
Atm
elAT86RF231
2M
2,400
Java
2011
Virtenio
WiSMote
Dev
aTIMSP430F5437
816K/256K/1
MTI(Chipcon)CC2520
250k
2,400
Contiki
2011
AragoSystem
s
(continued)
Table
A.1
(continued)
Platform
sCPU
Clock
(MHz)
RAM/Flash/
EEPROM
Radio
transceiver
BW
(bps)
Freq.
(MHz)
OS
Year
Organisation
CoSeN
/MantaroBlocksa
Atm
elATmega32A4
32
4K/32K/1
KAtm
elAT86RF231
250k
2,400
Atm
elStudio
2012
UMBC/M
antaro
FireFly3
Atm
el ATmega128RFA1
16
16K/128K/4
KAtm
elATmega128RFA1
250k
2,400
Nano-RK
2012
Carnegie
Mellon
University
M12modulea
Freescale
MC13224v
(ARM7)
26
96K/128K
Freescale
MC13224v
(802.15.4)
250k
2,400
ContikiOS
2012
RedWire
panStampa
Atm
elAtm
ega328p
82K/32K/1
KTI(Chipcon)CC1101
1.2
k868/915
panStamp
2012
panStamp
WiSMote
minia
Atm
el ATmega128RFA2
16
16K/128K/4
KAtm
elATmega128RFA2
2M
2,400
Contiki
2012
AragoSystem
s
aCommercially
available
platform
sbDesigned
orusedforBSNapplication
• Sensor Interface – interface with sensors and other devices
• Power Supply – the power source of the sensor node
A.2.1 Processor
Most WSN platforms are based on COTS (Commercial Off-The-Shelf) components,
and the development of WSN depends extensively on the rapid advances of
microprocessors. The majority of the WSN platforms use 8-bit or 16-bit RISC
processors, such as the Atmel ATmega and Texas Instruments’ (TI) MSP430
microcontrollers, due to their low power design, integrated multi-sensor interfaces
and widely available developing tools. More recently, some platforms have started
to use the ARM Cortex processors due to an increase in computational power of the
sensor nodes.
A.2.2 Wireless Communication
Wireless communication is the most power-demanding component of WSNs. This
often accounts for more than 50 % of the overall power budget of a sensor node [7].
Parallel to the development of micro-power radio transceivers, such as the Pico radio
[8], existing research in WSNs has been focused on developing energy-efficient
protocols and routing strategies. The three main components of wireless communi-
cation include the radio transceiver, antenna, and communication protocols.
A.2.2.1 Radio Transceiver
Among different radio transceivers, the TI (Chipcon) CC2420 is the most popular
of the IEEE 802.15.4 chipsets used in the WSN platforms. Since the introduction of
SoC (System on a Chip) by integrating both microcontroller and radio transceiver
onto a single chip (e.g., Nordic nRF24E1 and ATmega128FEA1), new WSN
platforms are increasingly using bespoke SoC chipsets to minimise the footprint
and reduce the overall size of the sensor node.
A.2.2.2 Antenna
For WSN and BSN, antenna design is important, although the majority of the
current WSN platforms use COTS antennas. Among these, the ceramic antennas
are most commonly used in WSN platforms due to their small footprints
and consistent signal quality for mass production. For BSNs, particularly for
implantable applications, miniaturised antenna design remains a key research
topic, as mentioned in earlier chapters of this book.
Appendix A: Wireless Sensor Development Platforms 537
A.2.2.3 Communication Protocol
Depending on the hardware and the operating systems used, early WSN platforms
mainly relied on proprietary communication protocols. The introduction of the
IEEE 802.15.4 standard enables the standardisation of communication between
WSN platforms. Many recent WSN platforms have adopted this standard as the
basis for their wireless communication protocol. Examples of this include Telos,
MicaZ, Pluto, iMote2, Tmote sky, XYZ node, ProSpeckz and the BSN node.
Due to the broad range of WSN applications, the 802.15.4 standard defines only
the MAC and physical layers of the communication protocol. This enables the
design of application-specific protocols. For example, Zigbee is built based on the
802.15.4 standard and is designed to ease the inter-operation between different
devices. Zigbee specifies all the protocol layers required for forming a wireless
network and it also provides an interface for application development.
As mentioned in Chap. 5, although Zigbee is designed for low power sensor
communication and enables interoperability, the power consumption of Zigbee is
still relatively high for BSN applications. Following the release of the Bluetooth
Low Energy (Bluetooth SMART) and the standardisation of IEEE 802.15.6, it is
envisaged that new BSN platforms will increasingly rely on these new communi-
cation protocols, whereas WSN applications will remain to use 802.15.4 and
Zigbee protocols.
A.2.3 Memory
Since limited Random Access Memory (RAM) is provided by MCUs, most WSN
platforms are designed with an external flash memory or Electrically ErasableProgrammable Read-Only Memory (EEPROM). Due to the non-volatile nature of
the EEPROM, it is used in most embedded systems for storing configuration infor-
mation because it does not require power to retain the stored data. It is also used as an
immediate storage for sensor readings. For instance, in order to perform feature
extraction or filtering of the sampled data, the EEPROM can be used as a processing
buffer for these algorithms. Another use of the EEPROM is for storing program
images. In addition to EEPROM, some WSN platforms have designed with a micro-
SD card interface for data logging. Although micro-SD card consumes more power
than EEPROM, the large storage capacity is ideal for long-term data logging.
A.2.4 Sensor Interface
To enable practical application development, most WSN platforms offer analogue
and digital sensor interfaces.
538 B. Lo and G.-Z. Yang
A.2.4.1 Analogue Interface
Sensors such as simple photo resistors and thermistors, or more complex gyro-
scope and condenser microphones, generally provide analogue readings. Most
WSN or wearable BSN platforms are equipped with ADC interfaces for data
sampling and acquisition. For instance, the Atmel Atmega128L MCU has an
eight-channel 10-bit ADC that can sample at a rate up to 15.4 ksps (kilo-samplesper second), whereas the TI MSP430 microcontroller has a 12-bit ADC, which
provides a higher precision than that of the Atmel processor. In addition to ADCs,
some platforms are equipped with Digital-to-Analogue Converter (DAC) for
controlling sensors or actuators.
A.2.4.2 Digital Interface
Since analogue readings are prone to voltage drift caused by the depletion of the
battery power, sensors such as the 9-axis inertial motion unit MPU-9150 [9] provide
direct digital readings. As sensor data is relatively small in size, serial communi-
cation is mainly used for interfacing with digital sensors, and the three most
commonly used serial communication protocols are I2C, SPI and UART.
A.2.4.3 Integrated Sensors
To ease application development, many WSN or wearable BSN platforms have
built-in sensors such as humidity, temperature, inertial, magnetic and photo sensors.
With integrated sensor board design, the hardware platform can be made more
compact and immune to noise induced by cables and connectors. However, inte-
grating sensors on the hardware platforms can limit the general use of the platforms
as different applications may have varying sensor requirements.
A.2.5 Power Supply
Currently, power supply is the main determining factor for the size and lifetime of
the WSN or BSN hardware. Similar to mobile phones, the battery or alternative
power source is often the largest single component of these sensor nodes. To
miniaturise the sensor nodes, a number of alternatives have been proposed. With
recent advances in power harvesting technologies, it has been demonstrated that
WSN sensor nodes can be powered by motion, temperature gradient, inductive
coupling and other alternatives. However, batteries still remain the main source of
power for current WSN or wearable BSN platforms. Among different battery
technologies, Lithium-ion or Lithium Polymer batteries are the most popular choice
Appendix A: Wireless Sensor Development Platforms 539
for sensor hardware because of their high power density. Although zinc-air batteries
have a higher energy capacity than that of Lithium batteries, the high rate of power
drains from the current radio transceivers limits the direct use of zinc-air battery for
BSN applications. To simplify sensor deployment, most WSN platforms have
integrated batteries. As discussed in earlier chapters of this book, the development
of new power scavenging techniques coupled with ultra-low power BSN designs
could provide significant improvements in BSN design in future years.
A.3 Conclusions
In this chapter, we have outlined the common WSN and wearable BSN develop-
ment platforms that have emerged in recent years. Although many of the WSN
hardware platforms can be adapted for BSN applications, due to the specific
requirements and constraints imposed by BSNs, a number of dedicated platforms
have been proposed for BSN research and development. As the BSN platform
technologies mature, recent research has been increasingly focused on the devel-
opment of optimised BSN platforms for both wearable and implantable applica-
tions. Many of them are entering into routine clinical use, thus realising the original
goal of the BSN in supporting pervasive health monitoring, early detection and
personalised treatment of diseases.
References
1. (2004). WsLAN summary: WP1000 – state of the art. Available: http://www.sintef.no/units/informatics/projects/wslan/WP1000-summary.pdf
2. M. Weiser, “Hot topics: ubiquitous computing,” Computer, vol. 26, pp. 71–72, Oct 1993 1993.
3. J. W. Ng, B. P. Lo, O. Wells, M. Sloman, N. Peters, A. Darzi, C. Toumazou, and G.-Z. Yang,
“Ubiquitous monitoring environment for wearable and implantable sensors (UbiMon),”
in International Conference on Ubiquitous Computing (Ubicomp), 2004.4. B. Lo, S. Thiemjarus, R. King, and G.-Z. Yang, “Body sensor network-a wireless sensor
platform for pervasive healthcare monitoring,” in The 3rd International Conference onPervasive Computing, 2005, pp. 77–80.
5. V. Shnayder, B.-r. Chen, K. Lorincz, T. R. F. Jones, and M. Welsh, “Sensor networks
for medical care,” in Conference On Embedded Networked Sensor Systems: Proceedings ofthe 3 rd international conference on Embedded networked sensor systems, 2005, pp. 314–314.
6. B. Kuris and T. Dishongh. (2006, SHIMMER - Sensing Health with Intelligence, Modularity,
Mobility, and Experimental Reusability Available: http://www.snm.ethz.ch/snmwiki/pub/
uploads/Projects/SHIMMER_HWGuide_REV1P3.pdf
7. V. Shnayder, M. Hempstead, B. Chen, G. W. Allen, and M. Welsh, “Simulating the power
consumption of large-scale sensor network applications,” in the Second ACM Conference onEmbedded Networked Sensor Systems, Baltimore, MD, 2004, pp. 188–200.
8. M. J. Ammer, M. Sheets, T. Karalar, M. Kuulusa, and J. Rabaey, “A low-energy chip-set for
wireless intercom,” in the Annual ACM IEEE Design Automation Conference, Anaheim, CA,
2003, pp. 916–919.
540 B. Lo and G.-Z. Yang
9. (2012). Nine-Axis (Gyro + Accelerometer + Compass) MEMS MotionTracking™ Devices.Available: http://www.invensense.com/mems/gyro/nineaxis.html
10. K. Mechitov, W. Kim, G. Agha, and T. Nagayama, “High-frequency distributed sensing
for structure monitoring,” in Proc. First Intl. Workshop on Networked Sensing Systems(INSS 04), 2004.
11. J. Jeong, S. Kim, and A. Broad, “Network reprogramming,” University of California atBerkeley, Berkeley, CA, USA, 2003.
12. G. Werner-Allen, K. Lorincz, M. Ruiz, O. Marcillo, J. Johnson, J. Lees, and M. Welsh,
“Deploying a wireless sensor network on an active volcano,” Internet Computing, IEEE,vol. 10, pp. 18–25, 2006.
13. J. Beutel, “Fast-prototyping Using the BTnode Platform,” in Design, Automation and Test inEurope, 2006. DATE ’06. Proceedings, 2006, pp. 1–6.
14. U. Maurer, A. Rowe, A. Smailagic, and D. P. Siewiorek, “eWatch: a wearable sensor and
notification platform,” in Wearable and Implantable Body Sensor Networks, 2006. BSN 2006.International Workshop on, 2006, pp. 4 pp.-145.
15. M. Laibowitz, J. Gips, R. AyIward, A. Pentland, and J. A. Paradiso, “A sensor network for
social dynamics,” in Information Processing in Sensor Networks, 2006. IPSN 2006. The FifthInternational Conference on, 2006, pp. 483–491.
16. A. Elsaify, P. Padhy, K. Martinez, and G. Zou, “GWMAC- A TDMA Based MAC Protocol for
a Glacial Sensor Network,” presented at the 4th ACM PE-WASUN 2007, 2007.
17. D. Lymberopoulos, N. B. Priyantha, and F. Zhao, “mPlatform: a reconfigurable architecture
and efficient data sharing mechanism for modular sensor nodes,” in Information Processing inSensor Networks, 2007. IPSN 2007. 6th International Symposium on, 2007, pp. 128–137.
18. R. B. Smith, “SPOTWorld and the Sun SPOT,” in Information Processing in Sensor Networks,2007. IPSN 2007. 6th International Symposium on, 2007, pp. 565–566.
19. J. Andersen, B. Lo, and Y. Guang-Zhong, “Experimental platform for usability testing
of secure medical sensor network protocols,” in Medical Devices and Biosensors, 2008.ISSS-MDBS 2008. 5th International Summer School and Symposium on, 2008, pp. 179–182.
20. A. T. Barth, M. A. Hanson, H. C. Powell, and J. Lach, “TEMPO 3.1: A Body Area Sensor
Network Platform for Continuous Movement Assessment,” in Wearable and ImplantableBody Sensor Networks, 2009. BSN 2009. Sixth International Workshop on, 2009, pp. 71–76.
Appendix A: Wireless Sensor Development Platforms 541
Appendix B: BSN Software and Development
Tools
Joshua Ellul, Benny Lo, and Guang-Zhong Yang
B.1 Introduction
Practical applications of Body Sensor Networks (BSN) give rise to programming
challenges that are not present in traditional computing systems. The typical
memory resources available on sensor nodes are extremely limited, typically
equipped with tens of kilobytes of program space and 10 KB of volatile memory.
Therefore, algorithm developers must ensure that memory is not used imprudently.
More challengingly, typical applications impose prolonged lifetimes, whilst sensor
nodes are deployed with extremely limited power resources. Therefore, software
developers must ensure that algorithms are highly efficient and that the processor
and any peripheral hardware are put into sleep modes as much as possible. Sensor
nodes are required to communicate with other nodes in order to relay sensed
information or to send updates or configuration messages into the network. There-
fore, nodes usually cannot sleep indefinitely and are required to follow wakeup
schedules so that they can communicate in predetermined communication win-
dows. Further programming complexity is increased due to internal clock drift
which sensor nodes are prone to, and therefore clocks must be corrected to
accommodate for such drift typically done using time synchronisation techniques.
The complexity does not end there; the wireless medium over which sensor nodes
communicate only allows one node to communicate at a time (within the same
transmission range). Therefore, Medium Access Control (MAC) protocols must be
implemented to avoid wireless collisions. Also, sensor networks aim to maximise
lifetime by optimising the route taken from sensor nodes to base stations to
consume the least amount of energy. A plethora of MAC and routing protocols
J. Ellul • B. Lo • G.-Z. Yang, PhD (*)
The Hamlyn Centre, Imperial College London, London SW7 2BY, UK
e-mail: [email protected]
G.-Z. Yang (ed.), Body Sensor Networks, DOI 10.1007/978-1-4471-6374-9,© Springer-Verlag London 2014
543
have been proposed that focus on different aspects including scalability,
dynamicity, responsiveness and density amongst other attributes.
The challenges that face sensor node application programming also stem from
the low level embedded programming expertise required. Wireless sensor nodes
typically comprise of a microcontroller, a wireless transceiver, a number of sensors
and other peripherals such as additional flash storage. Drivers must be implemented
for each hardware peripheral which typically communicate over SPI or I2C using a
strict communication protocol often involving low level registers. Such hardware
devices often utilise General Purpose Input/Output (GPIO) pins for status updates,
which are in turn wired up to microcontroller interrupts. Moreover, substantial
internal microcontroller peripherals are wired to interrupts. Thus, knowledge and
programming experience of interrupt based systems is required to program such
low level embedded systems.
Sensor node applications are predominantly developed in C or flavours of C such
as nesC [1]. Therefore, development challenges also include those faced by tradi-
tional low-level systems developed in C, including allocation and deallocation of
memory by the programmer, as well as no type safety mechanisms. The most
popular sensor network operating system, TinyOS, allows developers to code
applications in nesC which exposes an event based programming paradigm. The
abstraction layers provided are very low, and, as noted by [2], “it is often difficult toimplement even simple programs.”
As described above, the development learning curve for sensor networks is steep.
Higher-level languages providing higher abstractions can be used to lower the learning
curve substantially. Higher-level abstractions can help by hiding the lower-level
embedded systems and sensor networks specific requirements. Nodes can be put to
sleep automatically by underlying drivers; default routing and MAC protocols can be
used and swapped without the higher level developer having to change any code in
relation to this; drivers for different hardware peripherals can be used and then exposed
to thehigher level languagebyabstracting the communicationprotocols, interrupts and
register access. However, in using a higher-level language such as Java, the developer
is also relieved of memory management since this will be taken care of by a garbage
collector. Implicit type safety also ensures that the programmerwill not incorrectly cast
types. More so, the majority of the available workforce is already familiar with high
level languages, such as Java. Therefore, the gradient of the learning curve can be
drastically decreased be removing the requirement to learn a new language. It has been
shown that higher level languages such as Java provide a more efficient development
and maintenance environment compared to lower level languages such as C [3].
Therefore, by using a higher-level language, the development and maintenance costs
of BSNs can be reduced, and thus increase the successful adoption of such technology.
B.2 BSN Requirements and Issues
BSNs consist of a number of sensor nodes that can sense the environment, process
the sensed data and transmit (and receive) the processed data for an extended period
of time. The requirements and challenges inherent in a BSN can directly influence
544 J. Ellul et al.
programmability. Therefore, the main requirements and issues of BSNs will be
described here with a focus on how they affect ease of programming.
Body sensor nodes are most often equipped with a limited energy source and are
usually expected to operate for an extended period of time. A primary requirement
of BSNs lies in the fact that they are deployed in environments monitored in an
unobtrusive manner. This relies on miniaturisation of nodes and therefore battery
size, which in turn requires an energy efficient system. In order to meet the expected
lifetime, and given the limited battery source, the system must be as energy-
efficient as possible. This involves ensuring that the wireless transceiver, sensors
and any other devices are only used and turned on when they are required. This
becomes more complex when considering other aspects including MAC protocols,
routing protocols and time synchronisation amongst other factors. Programmers are
commonly required to explicitly turn different hardware components on and off,
and even in to different sleep modes. Such fine-grained control of hardware is often
intimidating to programmers since they are not familiar with such low level fine-
grained control. Computational efficiency on the other hand is often considered to
be of minor importance and therefore cheaper, more energy-efficient (and slower)
processors than those used in larger platforms can be used. However, computational
efficiency is often discarded without considering the impact it may have on quality
of service and energy expenditure. Computational inefficiency can impact energy
expenditure both directly and indirectly [4]. Therefore, programming environments
should be both as energy and computationally efficient as possible without requir-
ing extensive effort from the system developer.
Body sensor nodes communicate with each other over the same physical, wireless
medium. Therefore, protocols and overall system implementation must be able to
scale with the network size and limited bandwidth. Developers typically have to cater
for such low-level intrinsic properties when really, they should concentrate their
effort on application requirements. In addition to the work involved in deploying a
BSN, one must also keep in mind that like other computing platforms, sensor nodes
may be required to be updated from time to time due to various reasons including bug
fixes, new application requirements and even complete retasking of a network.
Therefore, software reconfiguration and reprogrammability is essential, however
this is often left up to the developer to implement.
The underlying theme from the above is that the low level internals of BSNs is
more often than not left up to application developers to implement, when really they
should be focusing on the application specific requirements. It was for this reason that
a new operating system was designed to facilitate ease of programming for BSNs.
B.3 Operating Systems for BSNs
The first task required to implement a BSN application is to choose an operating
system. The choice of operating systems will also greatly affect many aspects of the
development life cycle. Table B.1 provides a development-centric comparison of
Appendix B: BSN Software and Development Tools 545
popular operating systems typically used traditional for wireless sensor networks
and a new operating system specifically proposed for ease of development of BSNs.
The programming language and Application Programming Interface (API) are
prime factors that determine ease of developing applications. TinyOS [5] is a
popular operating system for wireless sensor networks. Applications are written
in nesC [1], an event-driven, component-based language. Although, the event-
based paradigm does couple well with microcontroller based interrupts, event
handling is non-trivial for those beginning programming. Also, the requirement to
learn a new programming language for only BSN development is unfavourable.
Contiki [6] and MANTIS OS [7] require applications to be programmed in
C. Although C is the primary language of choice for embedded systems devel-
opers, it does not provide high level abstractions that would be sufficient for
novice programmers. LiteOS [8] provides a UNIX-like operating system abstrac-
tions and requires applications to be programmed in LiteC++. The operating
systems provide extensive support for different platforms, networking protocols
and other low-level features which are useful to those conducting research in the
low-level wireless sensor networks field, however the abstraction provided is still
Table B.1 Operating systems for BSNs
Operating
system
Programming
paradigm Pros Cons
BSNOS Java Easy to use Not suitable for complex net-
working protocol research or
implementationSingle-threaded High-level programming
language
Currently only supports the BSN
platformIntegrated development
environment
TinyOS nesC Supports many hardware
platforms
Requires learning a new pro-
gramming languageEvent driven, TOS
thread support can
be added
Extensive code available Even simple applications can be
hard to implement
Does not support the BSN plat-
form out-of-the-box
Contiki C Supports many hardware
platforms
Requires C programming
experienceEvent driven and
protothread support Extensive code available Does not support the BSN plat-
form out-of-the-box
Mantis OS C Supports several
platforms
Requires C Programming
experienceMulti-threaded
Does not support the BSN plat-
form out-of-the-box
LiteOS LiteC++ Supports several
platforms
Does not support the BSN plat-
form out-of-the-boxEvents and multi-
threaded Easy to use
546 J. Ellul et al.
too low for non-electronics and computer scientists. BSNOS [9] is an operating
system targeted specifically to facilitate ease of programming for BSNs and is
further described in the next section.
B.4 BSNOS – An Operating System for BSN
Operating systems developed for wireless sensor networks and bare metal coding
have been popular choices for developing body sensor node applications. Expert
knowledge of C and embedded programming has thus been required to create BSN
applications, which even highly experienced programmers still find as a challeng-
ing task. Application deployment, and therefore data collection is usually therefore
delayed due to few such expert programmers being available.
BSNs face different challenges and are prone to different requirements than that
of traditional wireless sensor networks. WSN environments are typically much
larger than that of the body. Also, the human body is geometrically the same to
other body deployments (unlike environments where wireless sensor networks are
used). Thus, BSNs require networks of smaller sizes with known locations for node
placement. A BSN does not tend to change in size. A nodes placement on a body is
unlikely to move, although the body is. Body sensor nodes do not require long-
range communication and more often than not can communicate directly with all
other nodes. Therefore, body sensor networks do not require the complex MAC and
routing protocols, which are a primary requirement for most wireless sensor
networks.
A smaller sized network implies that BSNs are relieved from scalability issues
usually prone to larger networks. However, smaller sized networks also means that
nodes cannot rely on neighbouring nodes for redundancy. Therefore, BSN appli-
cations are required to be more robust and resilient to noise and errors. More so,
long sleep periods are a luxury that typical body sensor networks do not have since
if an event is missed it could be vital. Short sleep times in turn affect the lifetime of
the sensor node, which is already a challenge due to constrained battery sizes. That
said, most body sensor network deployments do not require extended lifetimes
since they are usually deployed temporarily to analyse or detect specific conditions
or applications.
BSNOS [9] is an operating system specifically targeted to the challenges and
requirements of BSNs with focus on ease of development for early stage pro-
grammers as well as scientists from other fields of research. Most wireless sensor
networks programming tools require C programming as a means of development.
BSNOS on the other hand, exposes a Java programming environment to lower
the learning curve required to develop BSN applications. To facilitate an
efficient execution platform, a run-time compiler similar to [10] is used in
BSNOS. Figure B.1 presents an overview of the BSNOS main components and
development tools.
Appendix B: BSN Software and Development Tools 547
User applications sit at the top of the software stack. The applications are loaded
on top of the BSNOS kernel, which is the main operating system component. The
BSNOS kernel is comprised of five main subcomponents. At the core of the kernel
lies the Scheduler. The Scheduler is responsible for scheduling execution of timers,
threads and events. Body sensor networks may require updates and bug fixes
occasionally. The Software Manager meets the requirement of software updates
by exposing routines to dynamically install and remove classes and functions.
The run-time environment exposes a subset of Java functionality including
object and array manipulation amongst other features. In order to provide an
efficient Java execution platform, a run-time compiler has been implemented.
One of Java’s major benefits is that it relieves developers from memory manage-
ment. When memory previously used by an application is no longer used, a check is
required to release such memory so that it can be used by other parts of the
application. This is the job of the Garbage Collector.
The kernel interacts with hardware drivers which communicate directly with the
underlying hardware including the microcontroller (Texas Instruments
MSP430F1611) and its associated peripherals, 32 Mb Flash storage (Adesto
AT45DB321D), a 2.4 GHz RF transceiver (Texas Instruments CC2420), a 3-Axis
digital magnetometer/compass (Honeywell HMC5843), a 3-axis digital gyroscope
(InvenSense ITG-3200) and a 3-axis accelerometer (Analog Devices ADXL330).
Since ease of use is one of the main driving factors for BSNOS an application
programming interface (API) that provides a very high level abstraction of the
underlying hardware is provided. A sample of the API made available is presented
in Table B.2.
Body Sensor Networks
User Application
BSNOS Kernel
Java Run-timeEnvironment
Run-timeCompiler
GarbageCollector
SoftwareManager Scheduler
Hardware Drivers
MPU
UART
USB to UART
SPI I2C ADC GPIO
Flash Radio3-axis
Magnetometer3-axis
Gyroscope3-axis
Accelerometer
BS
NO
S ID
E a
nd P
C T
ools
Fig. B.1 An overview of BSNOS and its main components
548 J. Ellul et al.
The high-level programming interface enables for BSN programs to be written
in not more than a few lines of code. A simple sample and send program is
demonstrated in Fig. B.2.
To further provide a platform allowing for ease of development of BSN appli-
cations an Integrated Development Environment (IDE), BSNOS IDE, is provided
along with BSNOS. The IDE is based on the Eclipse platform and bundled as a
single executable. The IDE, besides providing Code Completion, Import/Export
functionality and all other Eclipse based features, also provides an easy way to
create BSN specific applications including Projects Wizards for both Body Sensor
Nodes, base stations and PC based software; downloading software to sensor
nodes by the touch of a button and classes to easily browse functionality available
via BSNOS.
*More details on BSNOS and downloads are available from: http://www.
bsn-web.org/
public static void main() {while ( true ) {
BSN.performAccelSample();BSN.appendShortToRadio( (short) BSN.getAccelX() );BSN.appendShortToRadio( (short) BSN.getAccelY() );BSN.appendShortToRadio( (short) BSN.getAccelZ() );BSN.sendRadioMsg( (short) BSN.BROADCAST_ADDR );BSN.waitMS( (short) 20 );
}}
Fig. B.2 A simple sample and send program
Table B.2 BSNOS sample API
Module Function Description
Accelerometer void performAccelSample() Instructs the Accelerometer driver to acquire an
accelerometer reading
short getAccelX() Returns the X-axis reading for a previously
acquired accelerometer reading
Radio void appendShortToRadio
(short s)
Appends a 16-bit value to the radio message buffer
byte sendRadioMsg(short
dest)
Send a radio message comprised of the content in
the radio message buffer to the destination
address specified in the parameter
LEDs void toggleLed(byte ledNr) Toggles the state of the LED indicated by the
parameter
Timer void waitMS(short ms) Waits for the specified number of milliseconds
Appendix B: BSN Software and Development Tools 549
References
1. Gay D, Levis P, von Behren R, Welsh M, Brewer E, Culler D, editors. The nesC language:
A holistic approach to network embedded systems. The ACM SIGPLAN 2003 conference on
Programming language design and implementation; 2003.
2. Sugihara R, Gupta RK. Programming models for sensor networks: A survey. ACM Trans-
actions on Sensor Networks. 2008;4(2):8:1–8:29.
3. Butters AM. Total cost of ownership: A comparison of C/C++ and Java. 2007.
4. Ellul J. Run-time compilation techniques for wireless sensor networks: University
of Southampton; 2012.
5. Levis P, Madden S, Polastre J, Szewczyk R, Woo A, Gay D, et al., editors. TinyOS:
An operating system for sensor networks. Ambient Intelligence; 2004.
6. Dunkels A, Gronvall B, Voigt T. Contiki - a lightweight and flexible operating system for tiny
networked sensors. Proceedings of the 29th Annual IEEE International Conference on Local
Computer Networks 2004. p. 455–62.
7. Bhatti S, Carlson J, Dai H, Deng J, Rose J, Sheth A, et al. MANTIS OS: an embedded
multithreaded operating system for wireless micro sensor platforms. Mobile Networks and
Applications. 2005;10(4):563–79.
8. Cao Q, Abdelzaher T, editors. liteOS: a lightweight operating system for C++ software
development in sensor networks. Proceedings of the 4th international conference on Embed-
ded networked sensor systems; 2006.
9. Ellul J, Lo B, Yang G-Z. The BSNOS platform: a body sensor networks targeted operating
system and toolset. The 5th International Conference on Sensor Technologies and Applications
2011. p. 381–6.
10. Ellul J, Martinez K. Run-time compilation of bytecode in sensor networks. The 4th Interna-
tional Conference on Sensor Technologies and Applications 2010. p. 133–8.
550 J. Ellul et al.
Index
A
Absorption, 20, 21, 60, 157, 174, 282, 464,
482, 484
Acceleration, 20, 242, 244, 247–249, 253,
259, 349, 357, 358, 361, 362,
370, 383, 385, 393, 507, 509,
510, 514
Accelerometer, 10, 13, 18, 19, 32, 192, 238,
239, 251, 254, 305, 324, 325,
336–338, 349, 359, 361, 364–366,
370, 373, 379, 388, 393, 506, 510,
512–515, 524, 548, 549
Acetaminophen, 62, 131
Acknowledgement spoofing, 441
Activation plots, 370, 371, 373, 375
Active digital aura (ADA), 194
Activity recognition, 32, 350, 358, 359, 361,
364, 365, 384–387, 391, 393, 394
Acute response, 114
AC voltammetry, 94, 97, 98
Adaptive immune system, 407–409, 452, 454
Adaptivity, 282, 294, 295, 363, 396, 409
ADC. See Analogue-to-digitalconverter (ADC)
Aeronautical mobile telemetry (AMT),
211, 224
Affective sensing, 361
Affinity biosensors, 132
Air flow, 241, 242
AIS. See Artificial immune system (AIS)
Alzheimer’s disease, 10, 38
Ambient health sensors, 195
Ambient sensor networks (ASN), 195, 196
Ambient sensors, 12, 32, 195, 232, 387, 446
American Telemedicine Association
(ATA), 231
Amperometry, 43, 68, 79–82, 84, 86, 94, 95
Analogue
current-mode, 279, 287–290
implementation, 45, 367, 396
signal processing, 295, 478
voltage-mode, 279
Analogue-to-digital converter (ADC), 94, 476,
478, 539
Analyte, 57–63, 66, 70–73, 76, 79, 80, 84–86,
89, 91, 92, 97–99, 101, 104,
106–108, 117, 123, 125, 126, 132,
133, 136, 140–147, 475
Anechoic chamber, 177
Angiogenesis, 146, 147
ANN. See Artificial Neural Network (ANN)
ANS. See Autonomic nervous system (ANS)
ANT, 238
Antenna
ceramic, 537
design, 29–31, 161–165, 465, 537
dipole, 161
external, 177, 187
helical, 161
loop, 29, 164, 254
monopole, 161, 164
patch, 161–163, 178
PCB, 163
planar inverted F, 164
resonant, 161
testing, 165–168
wire, 162, 177
Application-specific integrated circuits
(ASIC), 280, 290–295, 464,
466, 478–480, 527, 528
Arc reversal, 418
Area Under the ROC Curve (AUC), 334
G.-Z. Yang (ed.), Body Sensor Networks, DOI 10.1007/978-1-4471-6374-9,© Springer-Verlag London 2014
551
ARM, 32, 170, 359, 393, 395, 438, 498,
522, 523, 529
cortex, 537
Artificial immune system (AIS), 439, 452
Artificial neural network (ANN), 363–373
Artificial pancreas, 141
Ascorbic acid, 58, 86, 136, 140
Asthma, 10
Atmel, 529–537, 539
Atrial fibrillation, 7, 8, 15
AUC. See Area Under the ROC Curve (AUC)
Authentication, 31, 45, 215, 221, 444–446,
448–450
Autonomic computing, 409, 410
Autonomic nervous system (ANS), 36, 195,
406, 407, 409, 455
Autonomic sensing, 31, 42, 45, 350, 392,
405–455, 521, 527
AWAIRS 1, 529
Axon, 97, 367
B
Backdoor, 444
Backward elimination, 331, 335, 336, 341
Bacteria, 39–41, 145, 439, 475
attacks, 409, 439–442
Baroreceptors, 37
Basal plane, 107, 134, 139
Baseband (BB), 204, 207
Base station, 156, 177, 180, 181, 187, 194, 197,
241, 446, 543, 549
Basic rate (BR), 202
BASUMA, 194
Battery(ies), 4, 14, 17, 23, 24, 28, 29, 31, 34,
35, 43, 44, 108, 156, 157, 159, 161,
181–183, 186, 187, 190, 197, 226,
228, 237, 238, 240–241, 248, 257,
261, 262, 266, 267, 269, 357, 411,
440, 443, 470, 471, 477–479,
485–487, 527, 539, 540, 545, 547
Battery monitor, 183
Baum-Welch re-estimation, 377, 379
Bayesian inferencing, 303, 343–345, 350
Bayesian networks
belief networks, 411–414, 418, 419, 455
dynamic, 32, 365, 378, 386
multiply sectioned Bayesian network, 434
Bayesian theory, 45, 344, 349
B-cells, 408, 409, 452, 454
Behaviour modification, 35, 527
Belief propagation, 46, 382, 412, 414–420, 455
nonparametric, 419
Belief updating, 414, 415
Big data, 36, 345–348
Binding, 20, 21, 38–40, 61, 62, 64–66,
117, 119, 120, 122, 123, 125–129,
132, 133, 145, 196, 213, 285, 287,
367, 452
Bioburden, 142
Biocompatibility, 5, 17, 21–23, 37, 42, 43,
65, 93, 100–106, 108, 118, 131,
135, 139–148, 162, 164, 179, 187,
454, 527
Biodegradability, 5, 31
Biofouling, 143, 144
Bio-inspired
design, 44, 274, 295, 405, 527
local processing, 294
sensing, 42, 455
Biological immune system (BIS), 406, 409,
451, 452, 454, 455
Biomechanical model, 498, 499, 517–518, 524
Biometric, 31, 444, 447–451
Biorecognition element, 147
Bioreporter, 477
Biosensor, 10, 14, 18, 21, 22, 26, 38, 42, 43,
55–108, 117–148, 192, 238, 273,
274, 280–294, 296, 358, 449, 527
BIS. See Biological immune system (BIS)
Blind source separation (BSS), 307–311, 360
Blood pressure, 6, 8–10, 15, 17, 18, 32, 37,
192, 194, 227, 230, 238, 301, 357,
406, 449
Blood volume pressure, 359, 364
Bluetooth, 4, 5, 199, 202–207, 210, 220–223,
231, 232, 238, 387, 532, 534,
535, 538
Bluetooth low energy (BLE)
bluetooth BR/EDR, 202, 204–207, 210, 220
bluetooth LE, 205–207, 220–222
bluetooth SMART, 538
Board connector, 539
Body attenuation, 29, 266
Body phantom, 165, 168, 178, 179
Bond-wires, 171, 172, 174, 176, 489
Bootstrap loader, 320
Boron-doped diamond, 91, 106
Bottom-up propagation, 415, 419–420
Bragg angle, 158
Branch and bound search, 331
BSN development kit, 46
BSNOS, 533, 546–549
BSN programming guide, 549
BSS. See Blind source separation (BSS)
BTnode, 529, 531
Buffer overflow attacks, 442
Butler-Volmer, 81–83
552 Index
C
Calibration, 57, 58, 62, 66, 69–72, 76, 78,
84, 91, 94, 99, 142, 143, 302,
305, 348, 349, 360, 364, 509,
519, 524
Cancer, 10, 39, 41, 56, 99, 100, 133, 382, 384
Capacitance, 20, 61, 91, 93, 94, 96, 98,
100, 103–105, 107, 136, 138,
169, 173, 176, 183, 245, 253,
254, 259, 261, 470
Capillary electrophoresis, 127
Carcinoembryonic antigen (CEA), 133
Cardiac arrhythmias, 10
Cardiac contraction, 37
Cardiomyocyte, 140
Carrier sense multiple access with collision
avoidance (CSMA/CA), 207, 210,
218, 219, 222, 425, 436
Catalytic sensor, 475
Cell concentration, 59
CENS Medusa MK-2, 529
Characteristic equation, 306
Characteristic impedance, 158
Chebyshev transform, 314
Chemomechanical sensors, 475
Chemoreceptors, 37
Chirp spread spectrum (CSS), 208, 209,
220–223
Chitosan, 135, 139
Chronic response, 144
Chronoamperometry, 85, 89, 91, 92
Cipher Block Chaining Message
Authentication Code
(CBC-MAC), 445
Ciphertext, 445
Circuit design, 43, 156, 259, 278, 472,
479–481
Circuit simulator, 480
CIT sensor node, 530
Class overlap, 372
Class-separation, 372, 396
Class-specific activation, 370, 371, 373, 375
Clustering
agglomerative, 317, 318
algorithms, 317–319
distance based, 317–320
Fuzzy c-means, 318
hierarchical, 318
ISODATA, 317, 318
k-Means clustering, 315, 317, 319
single linkage hierarchical, 318
tree network, 190
Cochlear implant, 35, 156
Codeblue, 194, 198
Coexistence, 202, 203, 211, 216, 219, 222–225
Cognitive activities, 357
Collision, 212, 219, 249, 425, 427, 440,
443, 543
Commercial Off-the-Shelf (COTS), 2, 537
Communication protocol, 42, 189–232, 463,
537–539, 544
Communication range, 198, 202, 215, 232, 547
Complementary metal-oxide-semiconductor
(CMOS), 133, 280, 466
Conductivity, 106, 107, 134, 157, 158, 179,
282, 364, 476
Conductometric sensors, 475
Conformational changes, 64, 125
Confusion matrix, 372
Contention–free periods (CFP), 210, 426
Context-aware sensing
context-aware applications, 355, 356,
363, 371
context-aware architectures, 355, 395
context-awareness, 355, 356, 358, 359
context recognition, 45, 360, 361, 363–385,
390–396
context transition, 363, 376
context-triggered action, 356
contextual adaptation, 356
contextual augmentation, 356
contextual reconfiguration, 355
contextual resource discovery, 356
contextual sensing, 356
Context toolkit, 296
Contiki, 535, 536, 546
Continua Health Alliance, 230–232
Continuous Phase Binary Frequency Shift
Keying (CP-2FSK), 217
Convergence, 312, 369, 370, 430, 431
Corrupting the routing information, 443
Counter mode encryption, 445
Counter with CBC-MAC (CCM), 445
Covariance matrix, 311, 316, 379, 508, 514
Creatinine, 10, 141, 286, 289
Cross-entropy evaluation, 331
Cryptography, 30, 31, 446–451, 453
CSS. See Chirp spread spectrum (CSS)
Cutset conditioning, 418
Cyclic voltammetry, 21, 76, 89, 92, 97, 98, 107
Cytochrome C Peroxidase (cCP), 124
Cytochrome P450cam, 124
D
DAC. See Digital-to-analogueconverter (DAC)
Data normalisation, 361–362, 380
Index 553
Data protection, 5
Data visualisation, 368
Decision trees, 364
metadecision trees, 364
Defibrillation pulse, 183–184
Deluge, 444
Dempster-Shafer’s method, 303, 344
Dendrites, 367
Dendrogram, 318
Diabetes mellitus, 8, 13, 14, 18
Diagnostic capsule, 466, 468, 471, 474, 478
Dielectric constant, 157, 164
Differential method, 418
Diffusion, 81–86, 91, 92, 100, 104, 105, 132,
136–138, 144, 146, 147, 283, 287,
288, 426, 427, 434, 465
Digital, 27, 28, 44, 86, 94, 96, 98, 147, 181,
240, 254, 267, 273–281, 287, 290,
291, 295, 464, 472, 476–479,
481–482, 499, 538, 539, 548
Digital Imaging and Communication
in Medicine (DICOM), 226
Digital-to-analogue converter (DAC), 293, 539
Dimensionality reduction, 320–326, 330, 350
Directed Acyclic Graphs (DAG), 392, 412
Direct electron transfer, 63, 131, 134, 135,
139, 140
Direct sequence spread spectrum (DSSS),
208, 209, 222, 223, 440
Discrete Wavelet Transform (DWT), 363, 366
Disease progression, 7, 358
Distance
Chebyshev, 314, 316
Euclidean, 315, 316, 321, 324, 368
Mahalanobis, 315, 316
metrics, 315–316
Minkowski, 315, 321
Distributed inferencing, 2, 32, 43, 45, 46, 314,
315, 367, 391–396, 419, 455
Distributed sensing, 1, 44, 303
Distributed sensor networks, 1, 303
DNA
detection, 291–294
sequencing, 119, 286
Domain information model (DIM), 226,
228, 229
Dopamine, 10, 86, 98, 99, 135, 136, 140
Drug delivery, 18, 21, 22, 33, 34, 141
DSSS. See Direct sequence spreadspectrum (DSSS)
DSYS25, 530
Duty cycle, 199, 210, 211, 223, 224, 238,
239, 274
Dynamic classes, 372
Dynamic map, 372, 373, 375
Dynamic range, 66, 71, 131, 277, 285, 392
E
Ear-worn activity recognition (e-AR), 9, 12,
35, 36
Eclipse, 549
Effective radiated power (ERP), 176
Effector, 22, 36, 406
Eigenvalue decomposition, 311
Electrically Erasable Programmable
Read-Only Memory (EEPROM),
529, 530, 532, 534, 536, 538
Electrocardiogram (ECG), 6–10, 17, 192, 204,
210, 211, 220, 227, 231, 238, 295,
301–303, 358, 385, 449
Electrodes
amperometric enzyme electrodes, 62
chemically modified electrodes, 134
ion selective electrodes, 61, 66–69,
71, 77–79
passivation, 143
pH electrodes, 16, 66, 73, 471
Electroencephalogram (EEG), 10, 192, 307,
358, 365
Electromagnetic, 60, 66, 71, 137, 156, 157,
178, 198, 199, 217, 241–245, 247,
256–258, 260–261, 266, 482,
484–486
Electromagnetic field, 30, 241, 482
Electromyogram (EMG), 192, 359, 364,
366, 478
Electronic Communications Committee
(ECC), 199, 200
Electronic health record (EHR), 230
Electronic nose, 465
Electron-transfer reaction, 80, 82
Electrostatic, 20, 61, 133, 183, 244–247, 249,
251–256, 259–260
Elliptic curve cryptography, 447
Ember, 531, 534
Emotion, 32, 357–360, 364
Encapsulation, 143–145, 488
Encryption, 215, 221, 444–446, 448, 450
Endoscopy, 16, 465, 466
Endoscopy capsule, 465–469
Energy modules, 269
Energy scavenging, 5, 42, 44, 238, 246–248,
251, 455
Enhanced data rate configuration (EDR), 202
EnOcean TCM120, 531
554 Index
Environmental noise, 32
Environmental sensitivity, 446
Enzymatic microbattery, 28
Episode, 15, 45, 316, 343, 350, 358, 362
Error correction, 181, 184, 187, 506
Estimation, 83, 106, 114, 217, 302, 303, 307,
310–312, 316, 317, 319, 335, 361,
365, 366, 376, 377, 379, 380, 383,
396, 414, 419, 435, 437, 497, 499,
506–515, 518–519, 522, 524
Estimation maximisation, 377, 414
E12 tag, 129
Euler angle, 500
European Conference of Postal
and Telecommunications
Administrators (CEPT), 199
European Telecommunications Standards
Institute (ETSI), 200, 231
Event detection, 5, 15
Evolutionary design, 121, 122
Excitatory, 367
Exhaustion and interrogation, 440
Expectation maximisation (EM), 377, 414
eyesIFXv2, 531
F
Fabrication, 19, 23, 27, 44, 74, 100, 134, 137,
268, 280, 281, 286
Factor graphs (FG), 45, 363, 380–384, 392,
396, 412, 419
Fading, 177, 184, 187
Fast Fourier transform (FFT), 280, 364,
450, 478
Fault tolerant sensing, 194, 303, 314, 342,
363, 392, 396, 455
architectures, 348
fault detection, 411–424
Feature detection, 312, 314–315
Feature extraction, 282, 295, 330, 331,
350, 360, 362, 363, 371, 372,
396, 434, 450
peak-based feature extraction, 362
Feature relevance, 327, 329–333
Feature selection, 45, 319, 326–343, 349, 350,
383, 385, 392
Feature space, 312, 315, 324, 338, 349,
362, 384
Federal Communication Commission (FCC),
158, 199, 200, 211, 232
Feed-through, 162, 175
Ferrocene, 63, 64, 124, 125, 137
Fibrinogen, 144
Fibrotic, 144
Field-effect transistors (FET)
ChemFET, 65, 284, 285, 488
EnFET, 285–286
GasFET, 285
ISFET, 21, 73, 79, 282–296, 476, 477,
488, 489
Fight/flight, 140, 406
Filter
extended Kalman filter (EKF), 510, 514
Kalman fitler (KF), 46, 508, 510–514, 524
unscented kalman filter (UKF), 46,
510–513, 524
Finite state machines (FSM), 378, 411
First-order Markov model, 364, 377
Fisher projection (FP), 321
Fisher’s algorithm, 361
Flash memory, 538
Fleck, 530, 532
Flip-chip, 182, 489
Fluorescence, 38, 39, 106, 125, 130
Foreign body, 60, 118, 144, 146
Forward selection, 328, 331, 336
Fourier coefficients, 314
Frames, 20, 210–212, 218, 239, 242, 244,
249, 252, 253, 261, 362, 376,
425, 429, 507
Frequency hopping (FH)
adaptive frequency hopping (AFH),
204, 205, 221, 223
frequency hopping/time-division-duplex
(FH/TDD), 204
Frequency-shift keying (FSK), 217
FRET, 64, 125
Fuel cells, 28, 240–241
Full function device (FFD), 209, 213
Fusion
competitive, 302
complementary, 302, 303
cooperative, 302, 303
decision-level, 45, 303, 304, 343–345
direct data, 303, 305–312, 348
feature-level, 303, 312–320, 343, 349
sensor, 42, 45, 301–350, 360, 363, 495,
498, 499, 506, 524
Fuzzy set
fuzzy logic, 274, 315, 343, 344, 364, 514
fuzzy membership, 317
G
Gas selective membranes, 61
Gas sensor, 475
Index 555
Gastrointestinal dysfunctions, 465
Gastro-oesophageal reflux disease (GORD),
16, 469, 470
Gaussian
distribution, 305, 310, 323, 365, 378, 379,
509, 511
sub-Gaussian, 310
super-Gaussian, 310
white Gaussian, 310
Gaussianmixture models (GMM), 387, 449, 450
GDSII, 482
Generalised eigenvector, 306
General packet radio services (GPRS), 4, 5, 197
General purpose input output (GPIO), 544
Generative Topographic Mapping (GTM), 321
Genetic, 56, 120, 125, 290, 293, 294, 328, 439
Glucoamylase, 125
Glucose, 8–10, 18, 21, 22, 28, 33, 37, 38, 56,
58, 61–63, 65, 101, 102, 131, 137,
140, 141, 144–147, 227, 241, 284,
285, 406
Glucose oxidase (GOx), 21, 61, 124, 125, 135,
137, 139, 140, 145, 146
Glutamine binding protein (QBP), 129, 130
GOx. See Glucose oxidase (GOx)Gradient descent, 414, 420, 421
Graphene, 65, 106–108, 134–136, 139–140
Guaranteed time slots (GTS), 210, 221
Gyroscope, 10, 20, 32, 364–366, 388, 506, 507,
509, 512–514, 548
H
Haemodynamic sensing, 303
Hard-failure, 411
Hardware abstraction
hardware adaptation layer, 320
hardware interface layer, 89, 198
hardware presentation layer, 83
Hardware description language (HDL),
481, 482
Health level seven (HL7), 225, 231
HealthService24 project, 197
Heart failure, 6, 8, 10, 17, 141
Heart rate, 7–10, 26, 32, 197, 230, 238,
357–359, 406
Heat flux, 13, 32, 241, 364
Heel strike, 242
HELLO flood attacks, 442
Hermeticity, 143
Hexa(histidine), 128
Hidden Markov model (HMM), 363, 373–380,
386, 390, 396
continuous density HMM, 365, 378
Higher-order cumulant, 310
Hilbert transform, 98, 99
HiperLAN/2, 207
Histidine tag, 128, 129
HMM. See Hidden Markov Model (HMM)
Hoaxes, 444
Hospital of the future, 11
Hydrogels, 18, 61, 62, 75, 101, 103, 106,
140, 142, 145, 146, 282, 284,
285, 287
Hydrogen peroxide, 62, 140, 144, 146
Hydrophobic surfaces, 129, 130
Hyper-plane, 319, 320, 383
Hypertension, 6, 8, 10, 14, 17, 18, 34, 141
I
iBadge, 529
I2C, 548
ICA. See Independent component
analysis (ICA)
IEEE 802.11
IEEE 802.11a, 199, 201
IEEE 802.11b, 199, 201, 222, 224, 225
IEEE 802.11g, 199
IEEE 802.11n, 199
IEEE802.15
IEEE 802.15.1, 202–207, 222, 223
IEEE 802.15.2, 203, 224
IEEE 802.15.3, 202, 207, 208, 222
IEEE 802.15.3c, 208
IEEE P802.15.3, 202, 207–208
IEEE 802.15.4
clear channel assessment (CCA), 224
contention access period, 218
contention-free period, 210
energy detection, 210, 224
frame format, 210, 211
full function device, 209
guaranteed time slots, 210, 221
link quality indication, 194, 197
reduced function device, 209, 213
superframe structure, 210
IEEE 802.15.5, 202, 203
IEEE 802.15.6, 202, 203, 215–224,
232, 538
IEEE 802.15.4a, 203
IEEE 802.15.4j, 211, 212, 220, 221,
224, 232
IEEE 1394, 207
IEEE 11073
IEEE 11073–10101, 227
IEEE 11073–10404, 228, 229
IEEE 11073–20601, 227
IEEE 11073 medical device
communication (MDC), 226
556 Index
IEEE P11073, 215
IEEE 11073 personal health device
communication (PHDC), 226–232
IEEE 11073-104zz, 227
Image sensor, 239, 282, 446, 478, 485, 495
Immobilization, 20, 21, 62, 64, 118–120, 122,
123, 127–130, 143
Immune system
cellular, 452
human, 407, 408, 451, 452, 454
humoral, 452
innate, 407–409, 451, 453, 454
Immunoglobulin A (IgA), 134
Immunoglobulin G (IgG), 134
iMote1, 529
iMote2, 531, 538
Impedance measurement, 104–168
Impedimetric, 131
Implantable cardioverter-defibrillator (ICD),
21, 183
Implantable devices, 14, 16, 21, 22, 28, 29, 65,
107, 144, 449, 527
Implanted cardiac defibrillators, 155, 200
In-body communication system, 29, 43, 156,
157, 165, 180, 187
Independent component analysis (ICA),
309–313, 364
Independent components, 310
Indirect motion, 360
Induction, 143, 156, 243, 326, 331, 332, 349,
484, 485
Inductive coupling, 26, 156–157, 486
Industrial, Scientific and Medical (ISM), 157,
160, 199, 201, 202, 204, 205, 222,
223, 425, 471, 472
Inertial, 238, 242–251, 253, 260, 261, 268,
269, 436, 498–499, 506, 509, 510,
514, 517–519, 524, 539
Inertial micro-generators, 242, 243
Infection control, 180
Infectious diseases, 10, 439
Inferencing, 32, 43, 45, 46, 303, 314, 315, 344,
350, 360, 367, 372, 373, 382, 385,
391–396, 414, 419, 420, 455
Inflammatory mediators, 38, 408
Inflammatory multiple sclerosis lesions, 39
Inflammatory response, 60, 85, 143–145, 147,
408, 452
Infomax, 311, 312
Information granularity, 362–363
Inhibitory, 367, 429, 430
Instance based learning, 316–317, 338, 340,
361, 364
Insulin, 9, 18, 33, 34, 141, 227, 406
Integrated development environment (IDE),
546, 549
Integrated sensors, 19, 474–478, 539
Interference, 22, 23, 57, 58, 91, 99, 202,
211, 216, 222–225, 232, 286,
295, 425, 468, 472, 478, 513–515,
521, 524
International Telecommunication Union
(ITU), 199
Interstitial fluid (ISF), 147
Iridium oxide film, 75, 76
Ischaemic heart disease, 10, 13
ISFET
ChemFET, 65, 284, 285, 488
CMOS-based, 44, 274, 280–294, 296
EnFET, 285–286
GasFET, 285
ISM. See Industrial, Scientific andMedical (ISM)
ISM telemetry bands, 471
Isometric mapping, 324–326
J
Jamming attack, 440
Joint Directors of Laboratories (JDL), 302
Joint probability distribution (JPD), 378, 412
K
Kernel density estimation, 317
k-Nearest neighbours, 317, 322, 364, 366
L
Laboratory-in-a-pill, 475, 476, 487
Laboratory-on-a-chip, 537
λ messages, 415, 417, 419
Large granular lymphocytes (LGLs), 408
Layout issues, 175
Leakage current, 96, 259, 277, 488
Learning rate, 312, 368–370, 421
Li-ion, 479, 486
Link budget, 168, 176, 184
Linker sequences, 120
Link layer (LL), 189, 205, 440
Link manager (LM), 204
LiteC++, 546
LiteOS, 546
Livestock monitoring, 3
Local area networks (LAN), 198, 231
Locally linear embedding (LLE), 322, 323
Index 557
Logical link control and adaptation
(L2CAP), 204–206
Long-term stability, 21, 107, 142, 143, 527
Loopy belief propagation, 418
Low energy configuration (LE), 202
Low Interference Potential Devices
(LIPD), 201
Low power operation, 199, 527
Low-power processing, 320, 350
Low-power transmitter, 176, 472
Lymnaea stagnalis, 87, 88
M
M2A capsule, 466
Machine learning, 311, 320, 326–329, 346,
348, 350, 391
Macrophage, 39, 144, 147, 407–409
Magnetoencephalography, 307
Magnetometer, 32, 359, 498, 506, 510,
512–515, 518, 548
Major histocompatibility complex, 409
Maltose, 125, 285
Maltose binding protein, 120
Manifold embedding, 315
MANTIS OS, 546
MAP explanation, 414
Markov chain, 374, 376
Markov networks, 412
Markov random fields, 412
Mass transport, 63, 80, 83, 84, 98, 107,
131–133, 136, 137
Matching network, 165, 168–177, 181, 183,
184, 187, 267
Materials, 20, 22–24, 31, 42, 46, 55, 57–63,
65, 69, 75, 80, 83, 86, 91, 100, 101,
103, 105–108, 117, 130, 134, 139,
144, 145, 148, 162, 164, 179, 182,
237, 241, 242, 245, 246, 254, 280,
281, 284, 464, 475, 477, 488,
514–516, 527
Maximum a posteriori, 343, 411, 511
Maximum likelihood estimation, 311, 376
Maximum weight spanning trees, 414
MBAN. See Medical Body Area
Networks (MBAN)
McCulloch-Pitts, 367
Mediators, 38, 62, 63, 124, 125, 131,
197, 408
Medical Body Area Networks (MBAN),
200, 201, 203, 211, 212, 232
Medical Device Radiocommunications
Service (MedRadio), 200
Medical Implant Communications Service
(MICS), 157, 159–161, 168, 174,
177, 181, 184, 200, 217, 219, 223
Medical Micro-Power Networks (MMNs), 200
Medium Access Controller (MAC), 181, 198,
202, 203, 207–212, 215, 219, 220,
425, 427, 538, 543–545, 547
MEMS. See Micro electro-mechanical
system (MEMS)
MEMS integration, 17
Mesh network, 190, 194, 232
Mesokurtic, 310
Message authentication code, 445
Message passing, 414–420, 455
Metabolic rate, 33, 358
Mica, 529
Mica2, 447, 529
Mica2Dot, 529
MicaZ, 530, 538
Microcontroller unit (MCU), 538, 539
Micro electro-mechanical system (MEMS),
3, 14, 17–21, 26, 27, 239, 245, 246,
248, 251, 256, 257, 259, 267–269,
282, 305, 349, 474, 475
Microfluidic, 20, 127, 291, 477
Microneedle, 147
Microneedle array, 18
Micropower, 279, 295, 484
Microscopic parasite, 439
Microsensor, 1, 75, 99–106, 280, 464, 474
Microspikes, 147
Microsystems, 46, 463–489
Miniaturisation, 1, 5, 14, 17, 19, 35, 37–39, 44,
86, 131–134, 237, 240, 242, 280,
463–465, 478, 499, 545
Misclassification, 349, 363, 372, 384, 420
Misdirection, 443
MITes, 530
MiWi®, 208
MobiHealth project, 197
Mobile body sensor network, 232, 419
Mobile phone, 4, 22, 164, 197, 220, 232, 267,
387, 539
Model learning, 372
Modelling, 29, 84, 97, 98, 120, 228, 295,
345, 357, 365, 382, 386, 389–391,
405, 417, 426, 496, 499
Model simplification, 418
Most Probable Explanation (MPE), 411
MoteTrack, 195
Motion artefacts, 5, 32, 45, 301, 358,
360, 425
Motion recognition, 357, 364
558 Index
Motion scavenging, 5
μAMPS, 259
Mucin-1, 133
μTESLA, 444–446Multidimensional scaling (MDS), 46, 321,
324, 432
Multilayer coatings, 146
Multiple target tracking, 382, 419
Multi-resolution, 372
Multi-sensor
calibration, 302, 348
fusion, 42, 45, 301–350, 360, 495
Multitasking, 5
μOS, 529Myocardial ischaemia, 14
N
Nafion films, 76
Nanoband electrodes, 137
Nanobiosensors, 130, 134
Nanocomposites, 131, 134, 139
Nanoelectrode, 131, 136–138
Nanoelectrode arrays, 137
Nanoparticles, 38, 39, 41, 105, 125, 131, 140
Nanoscale particles, 38, 39
Nanowire, 27, 108, 132, 134, 137, 138
Natural Killer cell, 408, 409
Navigation, 274, 359, 468
Near-field communications (NFC), 231
Negentropy, 310, 312
Neighbourhood function
Gaussian neighbourhood function, 369
time-varying neighbourhood
function, 369
Neovascularisation, 145, 146
Nernst diffusion layer, 136
nesC, 544, 546
Netlist, 482
Network(s)
ad hoc, 31, 98, 197, 446
authentication, 31
belief, 411–414, 418, 419, 455
scanning, 442
setup, 196, 424
singly-connected, 414–416, 418
topologies, 42, 43, 189–232, 301, 419,
424, 442
Network Monitoring Periods (NMP), 434–437
Neural networks
feed-forward, 320, 368
Kohonen (see Self-organising map)
Neuromorphic, 273, 274
Neuron, 36, 87, 88, 92, 276, 282, 367–373,
376, 396
Neuroprosthetic devices, 140
Neurostimulation, 34
Neurotransmitters, 80, 86, 88, 92, 98,
135, 367
Next generation sequencing, 127
Neyman-Pearson decision rules, 343
Nitric oxide, 62, 80, 86, 88, 106, 146
Nitrilotriacetate, 128
Node activation trajectories, 419, 427
Node expansion, 373, 396
Non-Gaussianity, 310
Non-invasive techniques, 465
Nonlinearity, 363, 396, 510
Non-overlapping channels, 207, 211, 224
Nordic, 205, 530–532, 537
Nymph, 529
O
Obesity, 8, 13, 387, 388
Offset biases, 305–308, 349
Oligonucleotide libraries, 20, 121, 141
On-off keying (OOK), 217
Open system interconnection (OSI), 189, 198,
226, 425
Operating system
embedded linux, 546
multithreaded operating System, 546
SOS, 531
TinyOS, 3, 544, 546
Optical imaging, 39
Optimal weighting coefficients, 306
Optimal averaging, 45, 305–307
Orientation, 10, 20, 46, 242, 251, 357, 361,
362, 391, 467, 468, 482, 499–515,
518, 519, 524
Oscillator, 27, 181, 239, 267, 428, 465,
466, 470
Over-fitting, 326, 349
Oxygen uptake, 358
P
Pacemaker, 21, 22, 26, 29, 148, 155, 157,
181–183, 200, 359
Packaging, 23, 29, 46, 464, 478, 487–489
Packet delivery ratio (PDR), 425, 434–438,
522, 523
Packet error rate (PER), 222–225
Pairwise key, 444, 446, 447
Pancreatic beta cell, 141, 296
Index 559
Parallel Sequence Spread Spectrum
(PSSS), 208
Parameter learning, 414
Parametric generator, 247, 250, 251
Parasitic effects, 173–174
Parasympathetic system, 406
Parkinson’s disease, 10, 21, 136, 140, 358
Paroxysmal arrhythmias, 14
Particle 2/29, 530
Parzen window, 317
Pathogens, 10, 38, 407, 409, 439, 451
Pattern classification, 316, 319, 320, 338, 383
Pattern recognition, 302, 303, 316, 320, 326,
350, 360, 384, 395
Peak current, 93, 104, 135, 139, 168, 187,
221, 485
Peer-to-peer network, 190, 194, 208, 221
Penetration depth, 158
Perceptron, 320, 329, 367, 368, 391
Peripheral nerve fibres, 406
Peripheral vascular disease, 8, 10, 18
Perpetual powering, 455
Personal digital assistant, 192
Personalised healthcare, 34–36, 198, 212
Pervasive computing, 355, 359, 385, 410
Pervasive healthcare, 14, 32, 35, 36, 232
Pervasive networks, 195
Pervasive patient monitoring, 18, 37, 42
Pervasive sensing, 44, 349, 357, 385–387, 389,
391, 392, 395, 410, 411, 527
pH, 16, 66, 70, 73, 74, 76–79, 86, 99,
101, 103, 104, 133, 282, 283,
285–288, 292–295, 464, 469–471,
475–477, 489
Pharmacological intervention, 358
Pharmacotherapy, 8, 33
π messages, 415–417, 419
Phosphate binding protein, 120, 126, 127
Photoplethysmograph (PPG), 32, 35, 449, 450
Physical barrier, 407, 451, 454
Physical design, 480, 481
Physical layer (PHY), 198, 202–204, 207, 208,
215, 216, 220, 221, 425, 440, 538
PHY protocol data unit (PPDU), 217
Physiological barrier, 451, 453, 454
Piconet, 204–208
Pico radio, 537
Piezoelectric, 6, 20, 27, 65, 243, 245–247,
256–258, 261–262, 366, 467
Piezoelectric discs, 29
Place and route, 482
Platelets, 143, 144, 146, 408
Platykurtic, 310
Pluto, 528, 530, 538
Point-of-care, 55, 60, 65, 77, 226, 290–294
Point-to-point network, 190
Polarisation, 125, 177, 178, 187
Polytree algorithm, 414, 418
Polyurethane, 79, 145
Portable electronic devices, 44
Post-operative monitoring, 10
Potentiometry, 43, 66–79, 94
Power budget, 161, 275, 277, 485, 537
Power consumption, 22–24, 26, 31, 181,
191, 200, 226, 228, 232, 239, 240,
276, 280, 288, 350, 443, 464, 471,
478, 538
Power electronics, 44, 258–262, 276
Power supply, 5, 14, 28, 30, 169, 180, 262, 287,
464, 486, 487, 537, 539–540
Pressure, 2, 6, 8–11, 15–19, 22, 23, 26, 32,
34, 37, 56, 156, 157, 192, 194,
227, 230, 238, 239, 282, 301, 303,
357–359, 364, 366, 406, 449, 465,
466, 469, 470, 475
Principal Component Analysis (PCA), 320,
321, 364, 417
Probability distribution, 315, 360, 374,
378, 382–384
Processors
ARM processors, 529, 531, 535, 537
ATmega 128L, 532–535
MSP430, 535, 537, 539
MSP430F149, 530–532
PXA 271, 531
StrongARM SA-100, 529
Projection pursuit, 311, 321
Propagation, 29, 30, 43, 46, 156, 158, 163,
177–179, 184, 199, 382, 412,
414–420, 425, 435, 455
Proprioception, 38
ProSpeckz, 530, 538
Prostate specific antigen (PSA), 65, 99, 133
Protein engineering, 42, 119, 120, 124,
125, 128
Protein immobilisation, 129
Proximate selection, 355
PSA. See Prostate specific antigen (PSA)
Psychiatric disorders, 359
Pulse-coupled oscillators (PCO), 428, 431
Q
Quadratic SNR, 306
Quality of Service (QoS), 5, 45, 46, 197,
207, 212, 220, 225, 431, 434,
435, 499, 521–524
Quarter wavelength line, 166, 167
560 Index
Quaternion, 46, 500–507, 509, 511–516, 524
Quorum sensing, 405
R
Radiation resistance, 164, 165, 167, 170
Radio Frequency Identification (RFID), 203,
359, 365, 471, 485
Radiotelemetry, 465, 466, 469
Radio transceiver, 26, 529–537, 540
Radio transmission power, 482
Random Access Memory (RAM),
529–536, 538
Random mutations, 121
Rational design, 118–121, 126
Reactive oxygen species, 144
Receiver operating characteristic (ROC),
45, 332–338, 349
Receiver tuning, 176–177
Reduced function device (RFD), 209, 213
Reduced graphene oxide (rGO), 134, 135, 139
Reduced Instruction Set Computer (RISC),
478, 530, 537
Reference and counter electrodes, 95
Renal failure, 10, 289
Rene, 6, 529
Respiration, 10, 21, 37, 227, 357, 451
Respiration sensors, 364
hall-effect respiration sensors, 359
Respiratory rate, 9, 37, 238
Return loss, 165
RFID. See Radio Frequency
Identification (RFID)
RFM TR1000, 529, 531
RF power, 25, 484
RFRAIN, 529
rGO. See Reduced graphene oxide (rGO)
Rheumatoid arthritis, 10, 358
RISE, 531
Routing
energy-aware routing, 431
hierarchical routing, 431
RSSI, 178
S
Sammon’s mapping, 432
Saturation of peripheral oxygen (SpO2),
192, 228, 229, 231
SAW filter, 177, 180
Search based method, 418
Secure Network Encryption Protocol
(SNEP), 444–445
Security Protocols for Sensor Networks
(SPINS), 444, 446
Segmentation, 204, 362, 363, 384
Selective binding and catalysis, 62
Selective forwarding, 440, 441
Selectivity, 58, 59, 61, 62, 66, 72–73, 77, 79,
86, 89, 92, 98, 131, 136, 140, 141
SELEX, 64, 122, 126, 127
Self
self-adaptation, 410, 524
self-assembly, 39, 62
self-configuration, 39, 410
self-healing, 31, 45, 410–424, 453, 455
self-integration, 410
self-management, 14, 409, 410
self-optimisation, 410
self-organisation, 194, 409, 411,
424–439, 455
self-* properties, 409, 411
self-protection, 409–411, 439–455
self-resonant frequency, 173, 174
self-scaling, 410
Self-organising map (SOM)
growing hierarchical SOM, 372
hierarchical SOM, 372
STSOM, 45, 372–374, 376, 396
Sensor(s)
biosensor, 10, 14, 18, 21, 22, 26, 38, 42–44,
55–108, 117–148, 192, 238, 273,
274, 280–294, 296, 358, 449, 527
calibration, 509, 524
chemical sensor, 55, 56, 61, 102, 118,
144, 281, 282, 464, 475, 477
electrochemical sensors, 43, 65–99, 130,
131, 134, 136–140, 282
failures, 295, 302, 347, 423, 433
fouling, 144
fusion, 45, 302, 303, 305, 312, 314, 343,
345, 347, 349, 350, 363, 498, 499,
506, 524
heat flux sensor, 32
implantable pressure sensor, 17
implantable sensors, 4, 5, 10, 11, 14–16, 21,
22, 24, 28–30, 38, 127, 143, 144,
146, 147, 356, 395, 439, 454
microsensors, 1, 75, 99–106, 280, 464, 474
nanoscale sensors, 128, 131, 132
optical fibre sensors, 65
optical sensors, 35, 78, 475
potentiometric sensors, 73, 78, 282, 475
skin conductance sensor, 359, 363, 364
Serial peripheral interface (SPI), 160, 293,
539, 544
Index 561
Serotonin, 86–88, 98, 99, 107, 135, 136, 140
Severinghaus type gas sensor, 285
Shimmer, 528, 532, 534, 535
Short-range devices, 45, 263
Short-term memory, 371
Short time window analysis, 362
Signal conditioning, 239
Signalling molecules, 59, 101
Signal transduction, 19, 21, 118, 119,
122–125, 129
Signal variations, 360, 362
Sinkhole attacks, 441
Skin conductance, 32, 359, 363, 364
Slotted aloha, 218, 219, 425, 426
Smart AtTIRE, 192
Smart Dust, 1, 2
Smart-its, 529, 530, 532
SNEP. See Secure Network Encryption
Protocol (SNEP)
SoC. See System-on-Chip (SoC)
Social interaction, 357, 385, 395, 405
Soft-failure, 411
Solar cells, 241
SOM. See Self-organising map (SOM)
Soma, 367
Source recovery, 307–312, 348
Spatio-Temporal Self-Organising Map
(STSOM), 45, 372–374, 376, 396
Specific absorption rate, 157
Specificity, 20, 119, 122, 123, 125, 126, 141,
142, 338, 360
SPICE, 480
SPINS. See Security Protocols for Sensor
Networks (SPINS)
SpO2. See Saturation of peripheral
oxygen (SpO2)
SpotOn, 529
Square wave voltammetry, 94
Standards Development Organisation
(SDO), 231
Star-mesh hybrid network, 190, 191
Star network, 190, 194
State transition, 378, 387
Static classes, 372
Static map, 372, 373, 375
Statistical moments, 310
Steady state techniques, 86, 92
Sterilisation, 64, 142, 144
Stochastic simulation algorithm, 418
StrepTag, 129
Streptavidin, 129, 130, 133
Stroke, 7, 8, 10, 39, 388, 519
Structure learning, 414
STSOM. See Spatio-Temporal Self-Organising
Map (STSOM)
Subject variability, 360
Substrate, 19–21, 23, 37, 38, 62, 63, 75, 79,
103, 108, 120, 124, 125, 132, 140,
147, 162, 163, 179, 182, 254, 256,
280, 285, 464, 474, 489
Subthreshold, 277, 278, 287
Support Vector Machine (SVM), 319, 320,
329, 338, 340, 363–366, 383, 384
Sybil attacks, 441
Symbolic probabilistic inference, 418
Symmetric key system, 446
Sympathetic innervation, 406
Sympathetic nervous system, 406
Synapse, 88, 367
Synthesis, 60, 64, 119, 122, 123, 125, 129,
133, 276, 280, 288–290, 295,
449, 482
System-on-Chip (SoC), 193, 291, 292, 463,
464, 472, 475, 477, 537
T
T-cells, 408, 409, 452–454
TDMA. See Time Division Multiple
Access (TDMA)
Telos, 530, 538
Temperature, 2, 9, 10, 13, 24, 32, 77, 81, 84,
87, 101, 180, 238–241, 254, 280,
282, 286, 291, 293, 357, 359, 451,
452, 465, 466, 469–471, 475, 476,
485, 509, 524, 539
Temperature sensor, 32, 254, 291, 293,
475, 476
Texas Instrument (TI), 209, 537, 548
Theophylline, 122, 126, 127, 129, 130
Thermal energy, 241
Thermoelectric sensors, 475
Thermometers, 227, 364, 476
3G, 4, 197
Thrombin, 122
Time Division Multiple Access (TDMA),
205, 222, 426, 443, 521
Time synchronisation corruption, 443
TinyOS. See Operating system
TinyOS network programming, 3, 529–535,
544, 546
Tissue damage, 140
562 Index
Tmote sky, 531, 538
Token passing algorithm, 380
Top-down propagation, 415, 416, 419
Touch Area Network (TAN), 231
Toxicity, 23, 131, 142, 240
Tracking, 19, 32, 175, 182, 267, 274, 338,
359, 363, 382, 387, 463, 495–499,
507, 519
Traffic analysis, 442
Training data, 316, 321, 326, 370, 371, 375,
377, 380, 384, 385, 395, 396
Transduction, 19, 21, 55, 60, 65, 118, 119,
122–125, 129, 144, 242–246, 248,
251, 256, 258, 261
Transient abnormalities, 411
Transient techniques, 89, 91, 92
Transition matrix, 374
Transition probabilities, 373, 374, 376, 377
Translinear circuits, 280, 288, 289, 295
Transmission, 13, 15, 17, 22, 26, 29, 58, 108,
157, 160, 167, 168, 181, 198, 199,
202, 204–207, 210, 217–219, 223,
224, 226, 228, 238, 239, 255, 267,
269, 274, 294, 301, 370, 425, 427,
429, 431, 432, 434, 436–441, 443,
449, 465, 466, 470, 472, 474,
482–486, 521–523, 543
Transmitter tuning, 168–170
Trellis-Coded Modulation (TCM), 207
Trimethylamine dehydrogenase, 124
Trojan horse, 444
Tumour, 10, 39, 41, 185, 382, 409
U
U3, 530
UbiMon project, 192
Ubiquitous monitoring, 359
Ultra-high-frequency (UHF), 199, 241
Ultra Low Power Active Medical Implants
(ULP-AMI), 200
Ultra-low power processing, 273–296
Ultra-small particles of iron oxide (USPIO), 39
Ultra-wideband (UWB)
frequency modulation UWB (FM-UWB),
216, 217, 219, 223
impulse radio UWB (IR-UWB), 216, 217,
220, 223
Unicast messages, 444, 446
Universal asynchronous receive/transmit
(UART), 539
Universal Mobile Telecommunication
systems (UMTS), 197
UNIX, 546
Urate, 131
Urea, 10, 141, 284, 285, 289
Urease, 286, 289
Uric acid, 62, 89, 141
USART. See Universal Synchronous/Asynchronous Receive/Transmit
(USART)
USB interface, 180
USB programmer, 207
V
Variable elimination, 418
Variational methods, 418
Variation between sensors, 360
Vascular disease, 6–8, 10, 18
Vascularisation, 102, 144, 146
VHF, 241
Viral infection, 409, 442–444
Virus, 409, 439, 442, 444, 451, 452, 454
Vital signs measurement, 9, 12
Viterbi algorithm, 377
Voltammetric sensors, 58, 83, 295, 475
Voltammetry, 21, 43, 79–94, 97, 98, 101,
107, 136
W
Wall effect, 144
Waveform statistics, 314
Wavelength, 21, 157, 158, 164, 166, 167,
267, 484
Wavelet coefficients, 365
Wavelet representation, 314
Weak inversion, 278, 287–289, 292, 295
WeC, 529
Well-being, 6–13, 15, 35, 385
Wheeler cap, 168
WiFi, 199, 267
Wilcoxon statistics, 334
Wireless communication, 1, 2, 24, 26,
29, 42–44, 155–187, 198, 199,
201–202, 222, 232, 237, 238,
411, 463, 464, 499, 527, 528,
537–538
WirelessHART, 208
Wireless Local Area Networks (WLAN),
201, 202, 207, 222, 224
Index 563
Wireless medical telemetry service (WMTS),
200, 201
Wireless PANs (WPAN)
high-rate, 202, 207, 208
low-rate, 202, 208
medium-rate, 202
Wireless regulation, 201
Wireless sensor microsystems, 46, 463–489
Wireless sensor network (WSN), 1–5, 12, 14, 15,
31, 42, 44, 45, 189, 192, 198, 231, 237,
419, 431, 439, 444, 455, 527–529,
533, 534, 537–540, 546, 547
Wormholes, 441
Worms, 444
Wrapper, 327, 331, 349
WSN. See Wireless sensor network (WSN)
X
XYZ node, 531, 538
Z
ZigBee
application support sub-layer, 212, 213
coordinator, 212, 213
end device, 213
medical profile, 214
network layer, 212, 431
profiles, 214–215
router, 213
security, 212
ZigBee Device Object (ZDO), 212–214
Zinc-air, 540
564 Index