espargos-0007
Dataset: Passive target with four synchronized ESPARGOS antenna arrays in a lab room
A passive target is moving in a lab room, with four time- and phase-synchronous ESPARGOS arrays in the corner of the room and four transmitters on the ceiling. Great for bistatic / passive Radar experiments.
16.562 MHz
Signal Bandwidth
53
OFDM Subcarriers
1255677
Data Points
21061.0 s
Total Duration
17.4 GB
Total Download Size
32
Number of Antennas
Indoor
Type of Environment
2.472000 GHz
Carrier Frequency
Global
Phase Synchronization
3D Tachymeter
Position-Tagged
802.11n
WiFi Standard
Passive
Target Type
Experiment Setup
Data Analysis
Receiver Array Setup
ESPARGOS 1: espargosnorth
ESPARGOS 2: espargoswest
ESPARGOS 3: espargossouth
ESPARGOS 4: espargoseast
Transmitters
0a:ee:f5:00:00:01
.0a:ee:f5:00:00:02
.0a:ee:f5:00:00:03
.0a:ee:f5:00:00:04
.Python: Import with TensorFlow
#!/usr/bin/env python3
import tensorflow as tf
raw_dataset = tf.data.TFRecordDataset(["tfrecords/espargos-0007-empty-room.tfrecords", "tfrecords/espargos-0007-spiral-ccw-1-part1.tfrecords", "tfrecords/espargos-0007-spiral-ccw-1-part2.tfrecords", "tfrecords/espargos-0007-randomwalk-1.tfrecords", "tfrecords/espargos-0007-meanders-nw-se-1.tfrecords", "tfrecords/espargos-0007-meanders-sw-ne-1.tfrecords", "tfrecords/espargos-0007-radial-1.tfrecords", "tfrecords/espargos-0007-randomwalk-2.tfrecords", "tfrecords/espargos-0007-meanders-e-w-1.tfrecords", "tfrecords/espargos-0007-spiral-ccw-2.tfrecords", "tfrecords/espargos-0007-human-helmet-meanders-nw-se-1.tfrecords", "tfrecords/espargos-0007-human-helmet-meanders-sw-ne-1.tfrecords", "tfrecords/espargos-0007-human-helmet-randomwalk-1.tfrecords", "tfrecords/espargos-0007-human-helmet-standing-center-1.tfrecords", "tfrecords/espargos-0007-human-helmet-circle-1.tfrecords", "tfrecords/espargos-0007-circle-1.tfrecords"])
feature_description = {
"csi": tf.io.FixedLenFeature([], tf.string, default_value = ''),
"mac": tf.io.FixedLenFeature([], tf.string, default_value = ''),
"pos": tf.io.FixedLenFeature([], tf.string, default_value = ''),
"rssi": tf.io.FixedLenFeature([], tf.string, default_value = ''),
"time": tf.io.FixedLenFeature([], tf.string, default_value = ''),
}
def record_parse_function(proto):
record = tf.io.parse_single_example(proto, feature_description)
# Channel coefficients for all antennas, over all subcarriers, complex-valued
csi = tf.ensure_shape(tf.io.parse_tensor(record["csi"], out_type = tf.complex64), (4, 2, 4, 53))
# MAC address of transmitter
mac = record["mac"].numpy()
# Position of transmitter determined by a tachymeter pointed at a prism mounted on top of the antenna, in meters (X / Y / Z coordinates)
pos = tf.ensure_shape(tf.io.parse_tensor(record["pos"], out_type = tf.float64), (3))
# Received signal strength indicator (in dB) for all antennas
rssi = tf.ensure_shape(tf.io.parse_tensor(record["rssi"], out_type = tf.float32), (4, 2, 4))
# Timestamp of measurement, seconds since UNIX epoch
time = tf.ensure_shape(tf.io.parse_tensor(record["time"], out_type = tf.float64), ())
return csi, mac, pos, rssi, time
dataset = raw_dataset.map(record_parse_function, num_parallel_calls = tf.data.experimental.AUTOTUNE)
# Optional: Cache dataset in RAM for faster training
dataset = dataset.cache()
Configuration Variants and Pointcloud
:
Pointcloud Download and Usage Instructions
For this dataset, we provide a pointcloud of the environment, which was generated using a 3D scanning device. You may find the pointcloud useful for visualization purposes or to reconstruct and verify 3D models. Pointclouds can be viewed and edited with applications like CloudCompare.
The tachymeter was used to create a pointcloud scan. While it is stationed in the middle of the measurement area for the pointcloud scan, it was stationed elsewhere while the robot / person was moving. The coordinate system of the pointlcoud is the same coordinate system that was also used for the rest of the dataset (datapoint positions, antenna array positions, transmitter positions).
The pointcloud is available for download as a .pts
file.
PTS files are simple text files with the following format:
- The first line contains the number of datapoints in the scan
- The other lines contain
(x, y, z)
coordinates, reflection intensity and(r, g, b)
color, e.g.:
x y z i r g b
6.9912 -19.5173 14.7111 -546 183 190 174
6.9930 -19.5178 14.7112 -505 162 171 154
6.9888 -19.5181 14.7098 -570 193 200 184
6.9902 -19.5111 14.7109 -578 184 191 173
How to Cite
Please refer to the home page for information on how to cite any of our datasets in your research. This particular dataset is currently not public. Please contact us if you want to cite this dataset in any of your publications.
A Note on WiFi Subcarriers, Bandwidth and Interpolation
WiFi has a concept of "guard" subcarriers, which act as guard bands that protect against interference with systems on neighboring WiFi channels. This means that not all subcarriers get driven (i.e., not all subcarriers contain useful QAM symbols), some subcarriers simply carry zeroes. If these subcarriers are at the edge of the considered spectrum, CSI from these guard subcarriers is simply not included in the dataset. This explains the odd (non-power of two) number of subcarriers. Therefore, even if we colloquially refer to WiFi bandwidths as "20MHz" or "40MHz", the bandwidth that is really occupied by the active OFDM subcarriers is lower. For "missing" subcarriers in the center of the bandwidth (DC subcarrier in the case of 20MHz bandwidth, guard subcarriers in the case of 40MHz bandwidth), linear interpolation is used to assign realistic values to them.
A Note on Synchronization
To make sense of the measured CSI data, please take into account:- All ESPARGOS synchronized in phase and time: All receive antennas in all ESPARGOS antenna arrays are synchronized in time and phase. The only unknown quantities are the time of transmission and the phase of transmission.
Download
This dataset consists of 16 files. Descriptions of these files as well as download links are provided below.
espargos-0007-empty-room
The transmitters are sending packets, the ESPARGOS arrays are recording CSI, but there is no movement inside the room (except for the first few and last few seconds, while the measurement is started / stopped). The measurement area is empty, no humans inside the room, no passive target. Please note that this file does NOT contain position data, so you will need to adapt the source code for importing this file.
File Size
Data Points
Duration
No position information contained in this file.


Empty Room: The room is empty, no passive target and no human inside the room.
espargos-0007-spiral-ccw-1-part1
The robot with the passive target follows a trajectory that is the shape of a counterclockwise spiral, first part.
File Size
Data Points
Duration







Robot as Target: The passive target is a large trashcan (height around 0.68m, diameter around 0.43m) wrapped in aluminium foil on top of a robot. The recorded position is the position of the retroreflector on the pole (compare to photos).
espargos-0007-spiral-ccw-1-part2
The robot with the passive target follows a trajectory that is the shape of a counterclockwise spiral, second part.
File Size
Data Points
Duration







Robot as Target: The passive target is a large trashcan (height around 0.68m, diameter around 0.43m) wrapped in aluminium foil on top of a robot. The recorded position is the position of the retroreflector on the pole (compare to photos).
espargos-0007-randomwalk-1
The robot with the passive target follows a pseudorandom trajectory inside the measurement area.
File Size
Data Points
Duration







Robot as Target: The passive target is a large trashcan (height around 0.68m, diameter around 0.43m) wrapped in aluminium foil on top of a robot. The recorded position is the position of the retroreflector on the pole (compare to photos).
espargos-0007-meanders-nw-se-1
The robot with the passive target follows a northwest-southeast meander pattern (relative to the north / east / south / west array naming scheme).
File Size
Data Points
Duration







Robot as Target: The passive target is a large trashcan (height around 0.68m, diameter around 0.43m) wrapped in aluminium foil on top of a robot. The recorded position is the position of the retroreflector on the pole (compare to photos).
espargos-0007-meanders-sw-ne-1
The robot with the passive target follows a southwest-northeast meander pattern (relative to the north / east / south / west array naming scheme).
File Size
Data Points
Duration







Robot as Target: The passive target is a large trashcan (height around 0.68m, diameter around 0.43m) wrapped in aluminium foil on top of a robot. The recorded position is the position of the retroreflector on the pole (compare to photos).
espargos-0007-radial-1
The robot with the passive target follows radial pattern, continuously moving from the center of the measurement area to its border and back to the center again.
File Size
Data Points
Duration







Robot as Target: The passive target is a large trashcan (height around 0.68m, diameter around 0.43m) wrapped in aluminium foil on top of a robot. The recorded position is the position of the retroreflector on the pole (compare to photos).
espargos-0007-randomwalk-2
The robot with the passive target follows a pseudorandom trajectory inside the measurement area.
File Size
Data Points
Duration







Robot as Target: The passive target is a large trashcan (height around 0.68m, diameter around 0.43m) wrapped in aluminium foil on top of a robot. The recorded position is the position of the retroreflector on the pole (compare to photos).
espargos-0007-meanders-e-w-1
The robot with the passive target follows a east-west meander pattern (relative to the north / east / south / west array naming scheme).
File Size
Data Points
Duration







Robot as Target: The passive target is a large trashcan (height around 0.68m, diameter around 0.43m) wrapped in aluminium foil on top of a robot. The recorded position is the position of the retroreflector on the pole (compare to photos).
espargos-0007-spiral-ccw-2
The robot with the passive target follows a trajectory that is the shape of a complete counterclockwise spiral.
File Size
Data Points
Duration







Robot as Target: The passive target is a large trashcan (height around 0.68m, diameter around 0.43m) wrapped in aluminium foil on top of a robot. The recorded position is the position of the retroreflector on the pole (compare to photos).
espargos-0007-human-helmet-meanders-nw-se-1
A person is walking around, following a trajectory of northwest-southeast meanders inside the measurement area.
File Size
Data Points
Duration







Person as Target: The passive target is a walking person. The recorded position is the position of the retroreflector mounted to a helmet the person is wearing.
espargos-0007-human-helmet-meanders-sw-ne-1
A person is walking around, following a trajectory of southwest-northeast meanders inside the measurement area.
File Size
Data Points
Duration







Person as Target: The passive target is a walking person. The recorded position is the position of the retroreflector mounted to a helmet the person is wearing.
espargos-0007-human-helmet-randomwalk-1
A person is walking around, following a pseudorandom trajectory inside the measurement area.
File Size
Data Points
Duration







Person as Target: The passive target is a walking person. The recorded position is the position of the retroreflector mounted to a helmet the person is wearing.
espargos-0007-human-helmet-standing-center-1
A person is standing still in the middle of the measurement area.
File Size
Data Points
Duration







Person as Target: The passive target is a walking person. The recorded position is the position of the retroreflector mounted to a helmet the person is wearing.
espargos-0007-human-helmet-circle-1
A person is walking in circles inside the measurement area.
File Size
Data Points
Duration







Person as Target: The passive target is a walking person. The recorded position is the position of the retroreflector mounted to a helmet the person is wearing.
espargos-0007-circle-1
The robot with the passive target is driving in circles inside the measurement area.
File Size
Data Points
Duration







Person as Target: The passive target is a walking person. The recorded position is the position of the retroreflector mounted to a helmet the person is wearing.