DOI: 10.48436/hzn2f-hbb79
title: Indoor MIMO Channel Measurements of the Near-Field to Far-Field Transition in FR3

description: Overview

This dataset provides detailed measurements of wireless channel sounding in the 6 GHz to 24 GHz frequency range, focused on the near-field to far-field transition in MIMO systems. the measurements were performed using virtual uniform linear arrays (ULAs) for Tx and Rx. All channel traces, including the ones for the noise estimation, are S21 parameters over frequency and were recorded using a vector network analyzer.

The dataset includes the following components:



channel.json.gz: The captured channel data in JSON format and compressed using GZIP.

noise.json.gz: A noise meaurement to judge system performance in the same format as the channel data, also a GZIP compressed JSON file.

demo.py: A Python script demonstrating how to interact with the dataset for analysis.

README.md: The readme file.


Dataset Components

The two main files of the dataset are the channel data file and the noise data file.Both are GZIP compressed, UTF-8/ASCII encoded, JSON files that are structured as key/value pairs.The values are always arrays with at least one dimension.

The channel traces in both files are complex numbers, split into two real-valued arrays in the JSON file, where the last two dimensions are MxN channel matrices.

Channel Data File: channel.json.gz

Dimensions

A list of shorthands for the dimensions of the arrays appearing in the channel data file.



P / 6: Rx positions, higher values are closer to the Tx

A / 9: Far-field factors, 0.1 - 10, higher values are more in the far-field

L / 6001: Frequency points

M / 9: MIMO channel Rx antennas/ports

N / 9: MIMO channel Tx antennas/ports

3: The cartesian coordinates of 3D space


JSON - Key/Value pairs

A list of key [value dimensions] for the entries in the channel data file.



frequency [L]: The frequency points in Hz

far_field_factor [A]: The far-field factors

room_size [3]: The bounding box size of the measurement environment in m

position_rx [P, A, M, 3]: The Rx antenna positions in m and room coordinates

rotation_rx [3, 3]: The rotation matrix for the transformation from room coordinates to Rx antenna local coordinates

position_tx [P, A, N, 3]: The Tx antenna positions in m and room coordinates

rotation_tx [3, 3]: The rotation matrix for the transformation from room coordinates to Tx antenna local coordinates

channel_real [P, A, L, M, N]: The real part of the channel transfer matrices

channel_imag [P, A, L, M, N]: The imaginary part of the channel transfer matrices.


Noise Data File: noise.json.gz

Dimensions

A list of shorthands for the dimensions of the arrays appearing in the noise data file.



R / 200: Measurement repetitions for statistical evaluation

L / 6001: Frequency points

M / 3: MIMO channel Rx antennas/ports

N / 3: MIMO channel Tx antennas/ports

3: The cartesian coordinates of 3D space


JSON - Key/Value pairs

A list of key [value dimensions] for the entries in the noise data file.



frequency [L]: The frequency points in Hz

room_size [3]: The bounding box size of the measurement environment in m

position_rx [M, 3]: The Rx antenna positions in m and room coordinates

rotation_rx [3, 3]: The rotation matrix for the transformation from room coordinates to Rx antenna local coordinates

position_tx [N, 3]: The Tx antenna positions in m and room coordinates

rotation_tx [3, 3]: The rotation matrix for the transformation from room coordinates to Tx antenna local coordinates

channel_real [R, L, M, N]: The real part of the channel transfer matrices

channel_imag [R, L, M, N]: The imaginary part of the channel transfer matrices.


Demo Code: demo.py

The demo code is a Python script designed to demonstrate how to load, process, and analyze the channel data.

Capabilities



Loading channel data and noise data from the GZIP compressed JSON files

Plot frequency- and delay-domain channel traces

Plot an analysis of the near-field to far-field transition

Plot the positions and orientations of Tx and Rx antennas

Plot the SNR over frequency, estimated from the noise data


Requirements

To run the demo code, the following Python setup is required:

python >= 3.12numpy >= 2.0.0matplotlib >= 3.9

The code was tested with these packages, however, it likely also works with previous versions.

Acknowledgment

This work has been funded by the Christian Doppler Laboratory for Digital Twin assisted AI for sustainable Radio Access Networks.The financial support by the Austrian Federal Ministry for Digital and Economic Affairs, the National Foundation for Research, Technology and Development and the Christian Doppler Research Association is gratefully acknowledged.

License

The data files channel.json.gz, noise.json.gz and README.md are licensed under CC BY 4.0. The code file demo.py is licensed under the MIT License.