Next Article in Journal
Bidirectional Dual Active Bridge Converter with Extended Voltage Range for HEMS Applications
Next Article in Special Issue
Signal Synchronization for 5G NR Under Large CFOs Based on Convolutional Neural Network Combined with Long Short-Term Memory
Previous Article in Journal
A Thermal–Electrical Co-Modeling Method for Bond Wire Degradation Assessment of Power Modules Independent of Junction Temperature
Previous Article in Special Issue
Expensive Highly Constrained Antenna Design Using Surrogate-Assisted Evolutionary Optimization
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Implementation of a Wrist-Worn Wireless Sensor System with Machine Learning-Based Classification for Indoor Human Tracking

by
Thradon Wattananavin
and
Apidet Booranawong
*
Department of Electrical and Biomedical Engineering, Faculty of Engineering, Prince of Songkla University, Songkhla 90110, Thailand
*
Author to whom correspondence should be addressed.
Electronics 2026, 15(7), 1389; https://doi.org/10.3390/electronics15071389
Submission received: 5 February 2026 / Revised: 19 March 2026 / Accepted: 24 March 2026 / Published: 26 March 2026

Abstract

This work presents the development of a wrist-worn wireless sensor system for high-accuracy indoor human zone tracking. The proposed system employs machine learning techniques to combine data from multiple sources, including a Received Signal Strength Indicator (RSSI) from wireless signals, three-axis acceleration, and three-axis angular velocity. A prototype wearable wireless sensor device was implemented using a SparkFun Thing Plus-XBee3 microcontroller supporting the Zigbee/IEEE 802.15.4 standard at 2.4 GHz, integrated with a six-degree-of-freedom IMU sensor (MPU-6050). Experiments using one wrist-worn sensor as a transmitter and one base station as a receiver were conducted in a two-story residential building environment covering three zones (i.e., staircase area, living room, and dining room) under static and dynamic test scenarios. Classification performances of 33 machine learning classifiers with different data feature groups and window sizes were evaluated. The results demonstrate the achievement of wrist-worn wireless sensor system development. The system exhibits high communication reliability with a packet delivery ratio (PDR) of 99.99% and can efficiently track data signals in real time. Results indicate that using only raw RSSI data achieves 75.0% accuracy in classifying human zones. However, when statistical RSSI features and accelerometer data fusion are applied, accuracies significantly increase to 98.7% (static scenario, wide neural network with a window size of 25) and 99.6% (dynamic scenario, Fine k-NN). These results demonstrate the system’s potential for indoor human tracking applications.

1. Introduction

In an era of rapid technological advancement, indoor localization systems have emerged as a critical technology driving the development of diverse intelligent applications, particularly in intelligent indoor monitoring systems within smart residences. While the global positioning system (GPS) has gained widespread popularity and extensive use in outdoor environments, it faces significant limitations for indoor positioning due to complex environments comprising both stationary and mobile objects. These factors affect radio-wave propagation, leading to phenomena including attenuation, scattering, shadowing, and signal dead zones, which significantly reduce the accuracy of indoor localization [1].
In terms of research and development, indoor localization systems can be divided into two main categories: (1) coordinate-based localization, which is a mathematical problem focused on estimating the exact position of a target in coordinate form (x, y), and (2) zone-based localization, which is a classification approach focused on identifying predefined areas or zones, such as rooms or areas near points of interest, with contextual meaning, such as a stair zone, living room, or dining room [2,3]. For the context of indoor monitoring in residential settings, the second approach is appropriate and cost-effective in practice, as knowing only the room-level or zone-level location (e.g., falling in the bathroom or on the stairs) is sufficient for assistance response [2,3].
The development of zone-based localization systems has been driven by advances in several technological domains, including sensor technology, high-performance microcontrollers, wireless communication technology, and machine learning techniques, which have enhanced the accuracy of indoor localization and tracking. A review of related works presented in the literature is summarized in Table 1. Ahmadi et al. (2024) [4] presented a real-time indoor localization system by integrating Bluetooth Low Energy (BLE) beacons and wearable devices with machine learning algorithms to enhance room-level localization accuracy. Received Signal Strength Indicator (RSSI) data across different rooms were collected to evaluate the performance of six machine learning models: XGBoost, LightGBM, Random Forest (RF), k-Nearest Neighbor (k-NN), Support Vector Machine (SVM), and Multilayer Perceptron (MLP). XGBoost demonstrated the highest performance, with an accuracy of 91%. The system exhibited real-time operation capability with a total execution time of 1.35 s. Similarly, Chen et al. (2024) [5] introduced an energy-efficient room-level indoor localization system using energy-harvesting BLE tags combined with an algorithm called Dempster–Shafer Fingerprinting (DSFP). The system divided the indoor environment into two categories: “clear areas,” which use the DS algorithm for position estimation, and “fuzzy areas,” which employ fingerprinting-based localization combined with three machine learning algorithms—k-NN, RF, and SVM—to handle overlapping RSSI signals from multiple rooms. The system was tested in seven rooms, with one reference node installed per room and 10 target tags. The RSSI data were collected and processed with a window size of 10 and 50 training samples per room. Results showed that k-NN demonstrated the highest performance, with an accuracy above 99%.
Garcia-Paterna et al. (2021) [3] developed a low-cost room-level localization system using BLE technology combined with fingerprinting-based localization, where each room is designated as a class and the k-NN algorithm serves as the classifier. The system consists of BLE beacons installed at fixed positions and a BLE scanner carried by individuals, where the scanner creates a digital fingerprint from the average RSSI values received from each beacon. The system was tested in two scenarios: a townhouse and a university building. Experimental results demonstrated that the system could achieve an accuracy between 70% and 97.6% depending on the number of beacons used, with five beacons being optimal for homes, while the university scenario required 6–7 beacons. A zone-based indoor positioning system using Wi-Fi fingerprinting techniques to create continuous factory noise mapping was introduced in [2]. The system utilizes RSSI data from access points combined with six machine learning algorithms—k-NN, decision tree (DT), RF, SVM, Gaussian Naive Bayes (GNB), and MLP—to predict the zone locations. The system was tested in a factory, with six Cisco AP2800 routers installed operating in the 2.4 GHz and the area divided into 37 zones. The RSSI data were collected using a portable computer connected to a Wi-Fi receiver (TP-Link AC300). Performance evaluation employed 5-fold cross-validation to ensure model reliability. Results showed that the RF provided the highest performance with 91% accuracy, followed by k-NN at 84% and DT at 83%. The majority of errors (6–18%) resulted from misclassification to adjacent zones.
Isil Karabey Aksakalli (2025) [6] suggested an innovation in indoor localization by adding a distinctive feature called “room-to-room transition time” to traditional Wi-Fi fingerprinting-based localization. Unlike systems using BLE that require numerous beacons installed in each room, such a study leverages existing Wi-Fi infrastructure in buildings, eliminating the need for additional hardware installation investments. The authors collected data from three residential environments using ESP32 modules. Results confirmed that integrating room-to-room transition time with RSSI data improved room-level localization accuracy. Various machine learning algorithms showed different performance improvements, such as a wide neural network with a maximum increase of 12.47% (from 82.37% to 94.77%) and Ensemble Bagged Trees achieving 93.17% accuracy.
Finally, Anzum et al. (2018) [7] presented a zone-based indoor localization system using artificial neural networks to address inaccuracies in determining exact coordinates with Wi-Fi signals caused by multipath fading. The authors noted that most location-based services do not require precise coordinates, thus proposing the concept of “zone-fencing,” which focuses on identifying which zone users are in rather than finding exact (x, y) coordinates. The system employs fingerprinting-based localization by dividing the area into multiple zones and assigning Gray Codes to each zone, then collecting sample Wi-Fi signals from various access points in each zone to create a fingerprint database. A modified counter propagation network (CPN) artificial neural network was used for classification, consisting of three layers: the input layer for receiving RSSI values from access points, a Kohonen layer for data clustering, and a Grossberg layer for converting outputs to the Gray Codes of zones. The system was tested at the university, across four floors divided into 32 zones with 24 access points. Results showed that the modified CPN achieved a 91% accuracy for zone identification, with 8% of misclassified data assigned to adjacent zones and only 1% completely erroneous.
According to the above literature review, existing research has developed zone-based indoor localization systems utilizing BLE or Wi-Fi technologies with varying focal points. Previous research has demonstrated the potential of using RSSI-based fingerprinting methods with multiple reference nodes or access points for zone-based indoor localization, where most studies have typically utilized a single data source [3,4,5,7] or some incorporated multiple data sources [2,6]. For this work, the key novelties and contributions are as follows:
  • First, we implement a wrist-worn wireless sensor system for human tracking using the XBee3 micro board supporting Zigbee/IEEE 802.15.4 standards combined with the GY-521 sensor (MPU-6050), a low-cost and energy-efficient 6-DOF IMU. The system with a proposed communication protocol comprises one transmitter unit (i.e., a prototype wrist-worn wearable device) and one receiver unit functioning as a base station. Importantly, this system does not require reference nodes for target tracking, like several systems presented in the literature. Printed circuit boards (PCBs) were designed and manufactured, along with 3D-printed cases, resulting in a compact, lightweight, and practically usable wearable device. The system also features a graphical user interface (GUI) application developed in Python (version 3.12.1) for real-time data collection and display.
  • Second, a machine learning framework for human zone classification is proposed, where data fusion among RSSI, 3-axis acceleration data, and 3-axis angular velocity data regarding the effects of different feature sets and window sizes are considered for investigation. An evaluation of 33 classification models is explored under two distinct scenarios: a static scenario (stationary subject) and a dynamic scenario (moving subject), enabling comparative assessment of system performance under different usage conditions.
  • Third, experiments are conducted in a two-story residential building environment covering three zones (i.e., staircase area, living room, and dining room), as a real-world scenario. The system exhibits high wireless communication reliability and can efficiently monitor signals in real time, where the classification accuracy reaches nearly 100%. Thus, our system has the potential for further development toward indoor monitoring applications.
The remainder of this paper is organized as follows: Section 2 presents the hardware design and graphical user interface. Section 3 describes the experimental setup and machine learning application. Section 4 discusses the experimental results and analysis, and the final section concludes the article and discusses future work.

2. Hardware Design and Graphical User Interface (GUI)

2.1. Hardware Design

We develop a point-to-point wireless sensor system [8] consisting of two sensor nodes: the first sensor node functions as a transmitter node (Tx), and the second sensor node serves as a base station (BS) for receiving data while it is connected to a computer, as the central processing unit. The selected microcontroller board is the SparkFun Thing Plus-XBee3 Micro [9], manufactured by SparkFun Electronics (Niwot, CO, USA), as shown in Figure 1. This selection was based on the evaluation of technical specifications that align with system requirements across three main purposes. The first purpose concerns cost and energy efficiency: the board supports the Zigbee/IEEE 802.15.4 standard at 2.4 GHz [10,11,12] with an integrated chip antenna, satisfying the requirements for low-cost, low-power wireless network systems. The second purpose is power management: the board features an integrated power management system that supports charging and operation with lithium–polymer (LiPo) batteries, making it suitable for wearable device applications requiring continuous operation. The third purpose concerns processing capability: the board utilizes an ARM Cortex-M4 processor, which provides sufficient processing performance for acceleration signal analysis and classification, as confirmed by previous studies [9]. Additionally, with its compact size (58.42 × 22.86 mm), it is suitable for wearable device development, allowing users to move freely without feeling burdened by the device. The specifications of the XBee3 Micro board are shown in Table 2.
The sensor used in this work is the GY-521 sensor utilizing the MPU-6050 chip, which is a 6-degree-of-freedom (DOF) inertial measurement unit (IMU) consisting of a tri-axial accelerometer and tri-axial gyroscope, as shown in Figure 1. This sensor offers measurement flexibility with four adjustable acceleration measurement ranges: ±2 g, ±4 g, ±8 g, and ±16 g, and four adjustable angular velocity measurement ranges: ±250°/s, ±500°/s, ±1000°/s, and ±2000°/s. It supports connection to the microcontroller board via I2C (Inter-Integrated Circuit). The specifications of the GY-521 sensor are also shown in Table 2.
Since the GY-521 sensor was employed with specified measurement ranges of ±2 g for acceleration and ±250°/s for angular velocity, the ax, ay, az, gx, gy, and gz signals and their corresponding axes were carefully verified. During the design phase, an IMU calibration procedure was performed. Each parameter (ax, ay, az, gx, gy, and gz) was sampled at 4 ms intervals, and five consecutive readings were acquired to compute an average value, thereby obtaining a smoother and more reliable measurement. This averaged value was treated as the raw data. The raw data were subsequently compensated using the offset values to generate corrected data. During the testing phase, all sensor outputs were processed based on the calibration results obtained in the design phase. In addition, the device placement on the subject and the orientations of the accelerometer and gyroscope axes were clearly marked to ensure measurement consistency and repeatability. As illustrated in Figure 1, the wearable device was attached to the human wrist using a watch strap.
We note that before each test, the wearable device attached to the participant’s wrist was carefully inspected to ensure that it was positioned at the center of the wrist. The same watch strap length was used for all tests, and the sensor was secured to maintain proper alignment with the wrist. In addition, the directions of ax, ay, az, gx, gy, and gz, as well as the RSSI values and all sensor readings, were verified. Prior to testing, while the participant’s hand was placed on the table, the RSSI and the ax, ay, az, gx, gy, and gz values were confirmed to be consistent with those obtained during the calibration phase. Therefore, consistent measurement and data collection were ensured, while the device’s wearing position was carefully controlled.
As mentioned above, the wrist-worn wearable device developed in this study is based on the XBee3 Micro platform, supporting the Zigbee/IEEE 802.15.4 standard and suitable for low-cost and low-power wireless networking applications. As summarized in Table 2, the key specifications of the microcontroller include an operating voltage range of 2.6–3.6 VDC, a transmit current of 40 mA at +3.3 V and +8 dBm output power, a receive current of 17 mA, and a power-down current of 2 µA at 25 °C. Additionally, the transmit power is configurable and can be set to −5 dBm, −1 dBm, +2 dBm, +5 dBm, or +8 dBm, depending on the required communication range and energy-consumption constraints. Owing to its low-power-consumption characteristics, the device is well suited for continuous-monitoring applications.
The power consumption of the proposed wrist-worn system was estimated based on the specifications of the XBee3 module (40 mA transmit, 17 mA receive) and the GY-521 sensor (0.5 mA). With a transmission interval setting of 100 ms and a packet duration of 20 ms (20% duty cycle), the weighted average current consumption of the system is approximately 26.70 mA. Using a 1000 mAh LiPo battery with an 80% efficiency factor, the estimated practical battery life is approximately 29 h, sufficient for more than one full day of continuous monitoring.
According to the existing works, it was found that sensor installation positions vary, including on the waist, wrist, ankle, thigh, and chest. Convenience and wearing comfort are the most important criteria for deciding sensor placement positions, with the positions with the highest user acceptance being the wrist, ankle, and waist, respectively. For ease of use in daily life and user acceptance, this work chooses to develop a wearable device at the wrist as the primary position.
Figure 2 shows the electronic circuit development process from initial device connection (breadboard view) to finished printed circuit board (PCB) production. We selected Fritzing software (version 0.9.3) for the electronic circuit design due to its suitable interface for prototype development and support for exporting industry-standard files. The development process begins with designing the breadboard connection, which shows the connection of the SparkFun Thing Plus-XBee3 Micro board with the GY-521 sensor through four connection wires: VCC (power supply), GND (ground), SDA, and SCL (for I2C protocol). Next, PCB layout design is conducted, positioning devices and connection paths appropriately for the specified size. This work specified the PCB dimensions as 40 × 90 mm and double-sided, with important design parameters including a trace width of 24 mil (0.61 mm) and a PCB thickness of 1.6 mm. After the circuit design, Gerber files are generated. The final step is PCB production by sending the Gerber files to commercial manufacturing services such as JLCPCB (https://jlcpcb.com). The result is a double-sided PCB (top layer and bottom layer), as shown in Figure 2.
Electronic components on the PCB are shown in Figure 3, consisting of five components: (1) an MSK-12D19 on–off switch, (2) a JST PH2.0 (through-hole) horizontal connector and a JST PH2.0 (SMD) connector, (3) a GY-521 sensor, (4) an XBee3 Micro board, and (5) a lithium–polymer (LiPo) battery. For the power source, we selected a 1000 mAh lithium–polymer battery due to its characteristics, suitable for wearable devices requiring sufficient power and compact size. The lithium–polymer battery has a voltage of 3.7 V, which is suitable for operation with the XBee3 Micro board that has an integrated power management circuit, allowing battery charging through the USB port without removing the battery from the device. 3D models of a case box designed with Tinkercad software (https://www.tinkercad.com), FlashPrint software (version 5.8.7) for print-file preparation, and a FlashForge Adventurer 4 3D printer used for case production are also illustrated in Figure 3.
For the base station node, the development process is also shown in Figure 4. The electronic components consist of four main parts: (1) an XBee3 Micro board, (2) a JST PH2.0 Right-Angle (SMD) connector, (3) an MSK-12D19 on–off switch, and (4) a 1000 mAh lithium–polymer battery. A 3D model of the device case is designed with Tinkercad software, where this case design considers electronic component protection, ventilation, and access to charging ports and control switches. The FlashPrint software used for print-file preparation, the 3D printer, and the 3D printing results, displaying the completed case for both the front and rear of the device, are also demonstrated in the figure.

2.2. Graphical User Interface (GUI)

A graphical user interface is developed to support users for real-time data monitoring. This work selects the PyCharm program (version 2023.2.6) with the Python language as the main development platform due to its high flexibility and complete functionality with diverse libraries for data analysis and machine learning. The GUI development is designed under the name “Acceleration Monitor,” which has a graphical interface for displaying real-time data from wearable devices, as shown in Figure 5.
The Acceleration Monitor application has the following main components:
  • Number ➀, communication settings panel: The COM port (automatically detects available ports) baud rate values of 1200, 2400, 4800, 9600, 19,200, 38,400, 57,600, 115,200 (default value), 230,400, 460,800, and 921,600 bps; transmit power (Tx power) with options of −5 dBm, −1 dBm, +2 dBm, +5 dBm, and +8 dBm; sampling rate in milliseconds; and number of data packets are available for setting.
  • Number ➁, data display selection panel: Users can select data to display through checkboxes, including acceleration values in the x, y, and z axes (Ax, Ay, and Az), angular velocity values in the x, y, and z axes (Gx, Gy, and Gz), and RSSI value. This selection affects real-time graph display, with default selections of Ax, Ay, Az, Gx, Gy, and Gz.
  • Number ➂, connection control button: The “Connect” button is for connecting to sensor nodes, and the “Disconnect” button is used for canceling the connection. These buttons allow users to conveniently control connection status, with a sound notification when connection is successful.
  • Number ➃, real-time graph display: The application uses a tab system displaying two main graph sections. The first tab, named “Acceleration & Angular Velocity” consists of dual graphs, with the left graph showing acceleration data in g units, display range −2 to 2 g, while the right graph shows angular velocity data in °/s (degrees per second) units, display range −300 to 300°/s. The second tab, named “RSSI” displays a signal strength graph in dBm units, with a display range of −90 to −10 dBm. The x-axis of all graphs shows the number of data samples (samples).
  • Number ➄, log data display: This is located at the bottom of the application, displaying received data in real time.
  • Number ➅, data management button: The “Export as CSV” button is for exporting collected data in CSV file format, which is important for data analysis and machine learning model training.

3. Experiments and Machine Learning Application

3.1. Experiments and Data Collection

The experiment was conducted in a two-story residential building with a total area of approximately 69.13 square meters (8.40 × 8.23 m). The ground floor of the building consists of various rooms, including a kitchen, utility room, laundry room, dining room, living room, and toilet. We defined three primary observation zones: Zone 1 at the stairway area (with Label 1), Zone 2 in the living room (Label 2), and Zone 3 in the dining room (Label 3). The test was divided into two experimental scenarios: a static scenario and a dynamic scenario.
The system consists of two wireless sensor nodes according to the design in Section 2.1. The first sensor node functions as a transmitter node (Tx ID1) installed on the wrist of a male volunteer (age 38 years, height 165 cm, weight 57 kg). The second node functions as a base station (BS ID0) for receiving data and connecting to a computer for processing, as shown in Figure 6. The parameter settings were defined as follows: a transmit power of +8 dBm [9]; an acceleration measurement range of ±2 g and an angular velocity measurement range of ±250°/s, to be suitable for human movement signals in daily activities; and a sampling rate of 10 Hz (every 100 ms) [9], to obtain data with sufficient resolution for human tracking analysis. We further ensured that no signal interference from Wi-Fi channels or other wireless devices occurred during the experiments by first monitoring the spectrum using Wi-Fi analyzer software.
We note that in the current implementation, the wearable device (transmitter) transmits only the raw sensor measurements (ax, ay, az, gx, gy, gz) to the base station. The RSSI values are acquired at the base station, and all machine learning algorithms are executed on a computer. Consequently, the computational burden is offloaded from the embedded device to the computer. However, if data processing were to be performed directly on the transmitter or on a resource-constrained end device (e.g., the base station), the computational complexity would need to be carefully evaluated. This consideration is critical, as it directly influences device energy consumption, network lifetime, and real-time performance.

3.1.1. Wireless Communication Protocol

The communication protocol between the transmitter node (Tx) and base station (BS) is designed with the base station serving as the control unit. When data collection is required, the base station sends a unicast request packet to the transmitter node with a matching node ID, specifying the required parameters, including transmit power, sampling rate, and number of data packets. Upon receiving the request packet, the transmitter node establishes a connection and immediately transmits reply packets containing the node ID, packet sequence number, acceleration values (Ax, Ay, and Az), and angular velocity values (Gx, Gy, and Gz). The base station records the RSSI value from each received data packet for analysis.

3.1.2. Experimental Scenario 1: Static Scenario

In a static scenario as shown in Figure 7, the man who stays or fixes in each point of the test area will be tracked. Fingerprint data, including (Ax, Ay, and Az), (Gx, Gy, and Gz), and RSSI, are collected in the main areas:
  • Zone 1 stairway: 17 data collection points (Z11–Z117) covering all 16 stair steps;
  • Zone 2 living room: 31 data collection points (Z21–Z231) distributed throughout the area;
  • Zone 3 dining room: 20 data collection points (Z31–Z320) covering the main usage area.
At each point, the volunteer stood still for sufficient time for the system to collect 2500 packets, resulting in a total of 170,000 data samples from all 68 data collection points. Each packet of data consists of the main parameters, including the node identification number, packet sequence, acceleration values, angular velocity values, and RSSI measured at the base station. All of the data were stored in CSV file format for use in data analysis. We note that all 68 measurement points were selected to ensure coverage of the entire testing area and all designated zones. Although incorporating additional test points could further enhance the robustness of the training dataset, certain locations were not feasible due to environmental constraints, such as obstacles, tables, and furniture.
As shown in Figure 7, the base station node is placed on a computer desk in the living room. This location is centrally positioned between the dining area and the stairway zone. As described in Section 3.1, the transmit power of the wearable device is set to +8 dBm (maximum power), ensuring that the communication range covers the entire test area, with RSSI values remaining above the receiver sensitivity threshold of −103 dBm. Since the installation location of the base station can influence both communication reliability and classification performance, careful consideration must be given to its placement. The placement of the base station is a critical design consideration, as it directly influences energy consumption, network lifetime, latency, and communication reliability. The optimal location depends on the specific application requirements, network topology, and environmental constraints. In many scenarios, positioning the base station at the geometric center of the network is advantageous, as it minimizes the average communication distance, promotes balanced energy consumption among nodes, and consequently extends the overall network lifetime. However, the final placement decision should account for several key factors, including the energy-consumption characteristics, deployment area geometry, delay and latency requirements, and practical constraints such as accessibility for maintenance.
We note that during our development process, the proposed system was evaluated using a healthy subject to ensure both performance and safety. Prior to participation, the subject read and signed an informed consent form and was familiarized with the experimental setup and procedures. All experimental protocols were conducted in strict accordance with ethical principles for research involving human participants, following the guidelines of the World Medical Association (WMA) Declaration of Helsinki. However, the study did not involve any invasive or medical procedures. Human tracking was monitored in a noninvasive manner by collecting signals from a standard commercial 2.4 GHz wireless device operating in the Industrial, Scientific, and Medical (ISM) band, which is available for general use (e.g., Wi-Fi).

3.1.3. Experimental Scenario 2: Dynamic Scenario

In a dynamic scenario, the parameter settings are the same as in the static case. The volunteer walked along a predefined path, starting from the dining room, moving through the living room, and going up the stairs to the second floor, following the path shown by green arrows in the building floor plan, as shown in Figure 8. The line-of-sight (LoS) and non-line-of-sight (NLoS) communications of the TX and base station also impact wireless radio signals and RSSI data, since two floors are taken into consideration for testing. This experiment was repeated 20 times on different days and at different times.
We note that to improve the generalizability and robustness of the proposed system, future evaluations should include a more diverse group of participants, considering factors such as age, weight, gender, physical condition, and walking style. Additional subjects will be recruited to conduct experiments and collect data under varied environmental conditions. Furthermore, the system should be designed to accommodate environmental variations, including changes in obstacles, interior layouts, and overall building configurations.

3.2. Machine Learning Application

The computer will process all of the data gathered from the static and dynamic scenarios mentioned above to track humans. Feature extraction and classification are covered in detail in the following description of our proposed machine learning framework for human zone tracking, as in Figure 9.

3.2.1. Feature Extraction and Data Preparation for Testing

For feature extraction, this work uses the sliding window technique to transform raw data into statistical features. The system is designed to support three data types: RSSI and data from the GY-521 sensor, which is a 6-DOF IMU consisting of a tri-axial accelerometer and a tri-axial gyroscope. The selection of sliding window size was designed to be appropriate for the characteristics of each experimental scenario. For the static scenario, the system tests multiple window sizes from 25 to 100 samples (25, 50, 75, and 100) to analyze the effect of window size on classification accuracy. For the dynamic scenario, a sliding window size of 25 samples is used, corresponding to a period of 2.5 s (at a 10 Hz sampling rate) to obtain the appropriate resolution for movement tracking and zone classification.
We note that, in this study, the sliding window method was adopted because of its simplicity and ease of implementation. However, a more advanced approach, such as an adaptive window technique that dynamically adjusts the window size according to the signal characteristics, could be employed for further testing and evaluation.
  • Feature Extraction of RSSI Data:
The RSSI data is the primary data for position identification, using the principle that each position and path in the area has a unique signal fingerprint. In the static scenario, although RSSI has variance due to environmental factors, it displays characteristic statistical distribution patterns for each point. In the dynamic scenario, it displays variation patterns consistent with movement paths. From raw RSSI data, the system extracts 11 statistical features, as shown in Table 3. The extracted statistical features consist of three main types: basic statistics, distribution statistics, and robust statistics. Details of each feature group are as follows:
  • Basic features: Maximum, minimum, and mean values provide information about signal boundaries and central tendency. Maximum and minimum values show signal limits, while the mean shows the central tendency of the data.
  • Distribution features: Standard deviation (SD) and range help identify signal variance at each position.
  • Robust statistics features: Median, interquartile range (IQR), and percentiles (10th, 25th, 75th, and 90th percentiles) help reduce the effects of noise and outliers.
  • Feature Extraction of Acceleration Data:
The GY-521 sensor provides three-axis acceleration data important for human movement patterns and postures, which can help distinguish positions and zones with different movement characteristics, such as walking on flat ground versus walking up and down stairs. For each axis (ax, ay, and az), the system extracts 11 features similar to RSSI, totaling 33 features for all axes (F12–F22 for ax, F23–F33 for ay, and F34–F44 for az). Table 4 illustrates feature details for each x-axis.
In addition to extracting features from each axis, the system also calculates the signal vector magnitude (SM), which combines data from all three axes into a single value. Using signal vector magnitude helps reduce the effects of rotation or holding the device at different angles and provides information about overall movement intensity. After calculating SM, two additional statistical features are also extracted: the mean and the SD of the SM, as shown in Table 5.
  • Feature Extraction of Gyroscope Data:
Gyroscope data from the GY-521 sensor provides information about angular velocity, which reflects rotation patterns and directional changes in movement. These features are useful for distinguishing activities with different rotation- or direction-change characteristics. Gyroscope feature extraction is conducted in the same manner as acceleration data, extracting 11 statistical features for each axis (gx, gy, and gz), totaling 33 features (F48–F58 for gx, F59–F69 for gy, and F70–F80 for gz). Table 6 demonstrates the feature details.
  • Data Preparation for Testing:
In this work, feature integration from multiple data sources was employed. RSSI data provide information about the signal fingerprints of each area, while tri-axial accelerometer and tri-axial gyroscope data capture movement and activity context. The classification performance was then evaluated under both static and dynamic scenarios using different feature groupings, as described below.
In the static scenario, three feature groups are tested.
  • Group 1 (RSSI_F): Raw RSSI and RSSI features, totaling 12 features (1 raw RSSI + 11 statistical features).
    Group 2 (RSSI_F+A+G): Combined features, totaling 18 features, consisting of 12 features from group 1, 3 features from raw acceleration data (ax, ay, and az), and 3 features from raw gyroscope data (gx, gy, and gz).
    Group 3 (RSSI_F+A): Combined features, totaling 15 features, consisting of 12 features from Group 1 and 3 features from raw acceleration data (ax, ay, and az).
In the dynamic scenario, five feature groups are tested.
  • Groups 1–3: Same as the static scenario
    Group 4 (RSSI_F+A_F+G_F): Combined features, totaling 90 features, consisting of 12 RSSI features (1 raw RSSI + 11 statistical features), 39 acceleration features (3 raw + 36 statistical features), and 33 gyroscope features (3 raw + 36 statistical features).
    Group 5 (RSSI_F+A_F): Combined features, totaling 51 features, consisting of 12 RSSI features (1 raw RSSI + 11 statistical features) and 39 acceleration features (3 raw + 36 statistical features).

3.2.2. Classification

As mentioned above, the machine learning classification system presented in this work is shown in Figure 9. The process begins with feature extraction, as described in Section 3.2.1. For the classification step, we evaluate 33 sub-models across 9 classifier groups, as shown in Table 7, using 10-fold cross-validation. For both the static and dynamic scenarios, we divide the dataset; 80% for training and 20% for testing. In the decision step, the system provides classification results as numbers 1–3 or zones 1–3, where number 1 represents the stairway area, number 2 represents the living room, and number 3 represents the dining room. Finally, the evaluation step uses performance indicators: classification accuracy (training accuracy (%), and testing accuracy (%)), prediction speed (obs/s), training time (s), model size (compact) (MB), and the confusion matrix.
As mentioned earlier, there are 33 sub-models from 9 classifiers to be applied. The concepts of four interesting classifier groups (which show the best results in this work) are summarized below.
  • Decision trees are fundamental algorithms that have gained significant popularity due to several key advantages, including high interpretability, rapid training and prediction speed, and memory-efficient operation. In terms of mathematical principles, decision trees construct decision rules by hierarchically partitioning the feature space into rectangular regions using split criteria aimed at minimizing the impurity of child nodes. This process enables clear data classification through a decision-making process.
  • k-NN is an instance-based learning algorithm characterized by the absence of pre-constructed model equations. It classifies new data by considering the k closest “neighbors” in the training dataset. The working principle of k-NN employs a majority voting method from the k nearest data points to the data being classified. The performance of k-NN depends on three main factors: (1) the number of neighbors (k), (2) the distance metric, and (3) the distance weighting. As shown in Table 7, k-NN classifiers have six operational variants: fine, weighted, medium, cubic, cosine, and coarse. The Fine variant considers only the nearest neighbor (k = 1) and measures distance using the Euclidean method, while the Weighted variant considers 10 neighbors (k = 10), using Euclidean distance measurement combined with distance-weighted importance.
  • Ensemble Learning is a technique used to solve data mining problems such as classification, clustering, and anomaly detection, with the objective of reducing model dependency on specific datasets or particular data characteristics. The key principle of Ensemble Learning is to combine multiple “weak learners,” typically decision trees, to create a higher-performance model. MATLAB (version R2024b) presents the main methods of Ensemble Learning, including Bagging (Bootstrap Aggregation), Boosting, Random, and Subspace, each with distinctly different concepts and operational mechanisms. As in Table 7, classifiers using Ensemble Learning techniques can be categorized into five main variants: Subspace k-NN, Bagged Trees, Boosted Trees, RUSBoosted Trees, and Subspace Discriminant, each with unique strengths and model combination methods suitable for different data characteristics.
  • NN consists of three main components: the input layer, hidden layer, and output layer, working together to process data. During training, the NN continuously adjusts weights to maximize model performance and achieve accurate classification. In MATLAB, the neural networks used are feedforward fully connected networks, also known as Multilayer Perceptrons (MLP). A critical challenge in using NNs is determining the appropriate architecture, which comprises the number of layers and nodes in each layer. MATLAB provides presets of standard structures designed according to the network’s width and depth for selection, as shown in Table 7.

4. Experimental Results and Discussion

4.1. Measured Signals

An average RSSI in each zone measured from the static scenario is demonstrated in Figure 10. The results show a distinctive spatial signature pattern, where the position closest to the base station (living room) has the highest average RSSI of −49.91 dBm and highest stability with the lowest SD of 5.44 dBm (Table 8). Meanwhile, the stairway and dining room areas have lower average RSSIs of −67.08 and −64.08 dBm, respectively, and higher SDs of 8.79 and 8.04 dBm, respectively. According to the RSSI signal variation in indoor environments, the stairway and dining room areas cannot be separated by RSSI consideration.
Figure 11 shows the packet delivery ratio (PDR) values as the ratio between the number of packets received at the BS and the number of packets sent from the Tx. Results show that our proposed wireless system has a high reliability, with the stairway and living room areas having 100% PDR, while the dining room has 99.98%, resulting in an average PDR of 99.99%. This result confirms the stability of using the SparkFun Thing Plus-XBee3 Micro board for this tracking application, with minimal data loss ensuring no impact on classification performance.
Figure 12a,b illustrate examples of three-axis acceleration and RSSI signals recorded simultaneously during two tests (i.e., Test #1 and Test #5 in the dynamic scenario). As illustrated in Test #1, samples 1–180, samples 181–529, and samples 530–730 are signals measured from the dining room, the living room, and the stairway area, respectively. The results here show that the acceleration signals during human walking in the dining room and the stairway area are different. Therefore, including acceleration data for classification may help distinguish between the stairway area and dining room. Figure 12b shows the RSSI values, which gradually increase when moving from the dining room to the living room and gradually decrease when moving from the living room to the stairway area, because the base station sensor node is installed in the living room. However, as seen in Figure 12b, the RSSIs collected from the dining room and the stairway area are in the overlap range.

4.2. Classification Performance

This section presents the performance results of 33 machine learning sub-models used to classify three primary zones—the stairway area, living room, and dining room—under both static and dynamic scenarios.

4.2.1. Static Scenario

Figure 13 and Table 9 present the performance results of all 33 classifiers for the static scenario using only raw RSSI data without any statistical feature extraction. This is a baseline for evaluating the impact of feature extraction and sensor data fusion in subsequent steps. The results reveal that the Ensemble classifier group, including Boosted Trees, RUSBoosted Trees, and Bagged Trees, along with Medium Trees and Fine Trees from the Tree group and wide neural network from the neural network group, achieved the highest performance with equal testing accuracies of 75.0%. However, Fine Trees stands out distinctly in terms of prediction speed (840,000 obs/s) and shortest training time (10.3 s) with a small model size (0.009 MB), making it highly suitable for resource-constrained systems.
The neural network classifier group demonstrated test accuracies ranging from 74.2% to 74.8%, lower than the Ensemble and Trees groups. The main disadvantage of this group is the longer training time (1160.5 to 3024.2 s), making them unsuitable for applications requiring rapid training or frequent model updates. Despite the longer training time, neural networks offer significant advantages in prediction speed (460,000–700,000 obs/s) and compact model size (0.005–0.008 MB), which are crucial properties for deployment on IoT or wearable devices with limited memory and that demand fast processing. The SVM group exhibited significantly varying performance depending on the kernel function employed. Fine Gaussian SVM achieved a testing accuracy of 74.8%, approaching the Ensemble group. However, significant limitations include the large model size (2 MB) and long training time (2299.9 s). In contrast, Linear SVM, Quadratic SVM, and Cubic SVM achieved lower test accuracies (15.5–29.8%). Similarly, all k-NN classifier members showed significantly lower test accuracies below 60% (25.0–56.3%), with Cosine k-NN performing worst at 25.0%. Furthermore, k-NN has limitations of model size (4–7 MB) and low prediction speed (260–540 obs/s).
These results clearly indicate that using raw RSSI data alone has limitations for accurate indoor zone classification. Although the best classifier achieved 75.0% accuracy, this is insufficient for real-world applications in many scenarios requiring high accuracy. The main limitation arises from the inherent characteristics of RSSI signals experiencing multipath fading, shadowing, and interference. These phenomena cause RSSI values in different zones to overlap, preventing most classifiers from learning clearly distinguishable patterns between zones.
Table 10 demonstrates significant performance improvements when using statistical features extracted from RSSI using a 25-sample sliding window technique, corresponding to a 2.5 s time window at a 10 Hz sampling rate, extracting 11 statistical features. Combined with raw RSSI data, this yields a total of 12 features. The model achieving the highest performance is Bagged Trees from the Ensemble classifier group, with a 83.4% testing accuracy, an 8.4% increase compared to using raw RSSI (75.0%). However, the trade-off to consider is the significantly increased training time (687.27 s versus 54.2 s for raw RSSI) and larger model size (44 MB versus 0.405 MB).
The neural network classifier continues to deliver outstanding performance with consistent improvements across all sub-models. The wide neural network achieved the highest accuracy in this group at 82.0% (a 7.0% increase from raw RSSI). The limitation of neural networks remains their long training time (2593.4–6079.6 s). However, the significant advantage is the consistently small model size (0.009–0.019 MB), mostly considerably smaller than other sub-models. Fine Gaussian SVM demonstrated performance improvement, with a 81.8% test accuracy (7.0% increase from raw RSSI at 74.8%). Fine Trees also provides a good balance between performance and resource utilization, achieving a 81.4% testing accuracy with the highest prediction speed (300,000 obs/s), faster than Bagged Trees (24,000 obs/s), and a small model size of 0.027 MB, 1629 times smaller than Bagged Trees.
These experimental results clearly demonstrate that extracting statistical features from RSSI is a crucial step in improving indoor zone classification performance. Statistical features enable the extraction of meaningful information that better captures the unique characteristics of each zone compared with raw data. The average accuracy improvement of 11.5% further highlights the effectiveness of the feature extraction process.
Table 11 demonstrates the improvements in accuracy when combining raw data from the GY-521 sensor, a 6-DOF IMU comprising acceleration data (ax, ay, and az) and gyroscope angular velocity data (gx, gy, and gz), with 12 statistical features extracted from RSSI (RSSI features), resulting in a total of 18 features (12 RSSI features + 6 IMU raw data). The results show significant performance increases compared to using group 1 data.
Bagged Trees remains the highest-performing classifier with a 98.7% testing accuracy; a 15.3% increase from group 1 data. This improvement results from acceleration and gyroscope data capturing unique movement patterns in each zone, such as standing still on flat surfaces (living room, dining room) producing different measured values than standing on stairs. The Bagged Trees training time increased to 4588.6 s, but model size decreased to 13 MB compared to group 1 (44 MB), indicating that adding data from other sensors helps models learn patterns more clearly. The neural network classifier showed impressive performance improvements. The wide neural network achieved a 98.4% test accuracy (a 16.4% increase from group 1’s 82.0%). The persistent trade-off is significantly increased training time compared to group 1. The significant advantage remains the small model size (0.010–0.024 MB), increasing only slightly from group 1 (0.009–0.019 MB) despite 50% more features, making neural networks still the most suitable choice for devices with severely limited memory, such as wearable health monitoring devices or low-power IoT sensors. We note that the k-NN classifier group exhibited outstanding and remarkable improvements. Weighted k-NN achieved an accuracy as high as 95.2% (a 23.1% increase from group 1’s 72.1%), Medium k-NN achieved 94.6% (a 22.8% increase from 71.8%), and Fine k-NN achieved 94.5% (a 26.8% increase from 67.5%). However, significant k-NN limitations persist: a large model size (22 MB) and low prediction speed (260–540 obs/s).
These results confirm that multi-sensor data fusion is important for improving indoor zone classification performance. Data from the GY-521 sensor helps increase data dimensionality, capable of better capturing environmental differences in each zone.
Experimental results using RSSI features combined with acceleration data without including gyroscope data (total of 15 features) are shown in Figure 14 and Table 12. The results show that the k-NN classifier provided outstanding performance. Weighted k-NN could achieve a testing accuracy of 98.8%, which is 3.6% higher than using group 2 data at 95.2%. Following this are Bagged Trees and the wide neural network, both achieving an equal testing accuracy of 98.7%, which matches or slightly exceeds group 2 data usage (98.7% and 98.4%, respectively). This finding clearly demonstrates that acceleration data alone can provide sufficiently good performance that is, in some cases, better than that from combination with gyroscope data. This phenomenon can be explained by the characteristics of static scenarios, wherein users stand still or move very little, resulting in gyroscope data having values close to 0°/s in all zones due to no significant rotation or direction changes, thus not providing useful information for zone classification.
We note that other sub-models in the k-NN group also showed good performance. Fine k-NN and Medium k-NN achieved equal test accuracies of 98.5%. However, significant k-NN limitations persist: a large model size, although reduced compared to group 2 from 22 MB to 19 MB, means it is still unsuitable for devices with limited memory. The wide neural network achieved a 98.7% testing accuracy, matching or slightly exceeding that of group 2 (98.4%) (0.3% increase), with a small model size (0.021 MB), but the training time increased to 24,935 s.
The impact of varying window sizes on zone classification performance in the static scenario is shown in Figure 15 and Table 13. Four different window sizes were evaluated: 25, 50, 75, and 100 samples, corresponding to time intervals of 2.5, 5.0, 7.5, and 10.0 s, respectively. This investigation was conducted across three feature groups: group 1 (RSSI_F: 12 features), group 2 (RSSI_F+A+G: 18 features), and group 3 (RSSI_F+A: 15 features), where the wide neural network was selected for presentation.
Results indicated that all three feature groups demonstrated an increasing trend in testing accuracy as the sliding window size increased. Group 1 exhibited a testing accuracy of 82.0% at a window size of 25, progressively improving to 84.5%, 86.8%, and 87.9% at window sizes of 50, 75, and 100, respectively, representing an overall performance improvement of 5.9%. Group 2 demonstrated a more impressive improvement, starting with an accuracy of 98.4% (25-sample window) and increasing to 99.1%, 99.4%, and ultimately 99.6% (for window sizes of 50, 75, and 100, respectively). Finally, group 3 exhibited the most remarkable testing accuracy performance, starting at 98.7% and increasing to 99.3%, 99.5%, and ultimately 99.6%. Notably, group 3 achieved equal or superior accuracy compared to group 2 across all window sizes, despite utilizing fewer features (15 versus 18 features).
As shown in Table 13, the training time for the wide neural network increased substantially with window size, particularly for group 2, which required up to 41,667 s (approximately 11.6 h) for a 100-sample window, compared to 13,630 s (approximately 3.8 h) for a 25-sample window. However, a significant advantage is that the model size remained remarkably small (0.019–0.024 MB) regardless of window size. The results here also indicated that by using a window size of 25 with the feature group 2, the classification accuracy could reach nearly 100%.

4.2.2. Dynamic Scenario

In the dynamic scenario, experimental results from 33 sub-models for feature group 5 (i.e., RSSI_F+A_F) are illustrated in Figure 16. We note that since feature group 4 (i.e., RSSI_F+A_F+G_F), with a higher number of features, provided the same performance as mentioned in the previous section, feature group 5 is then demonstrated and focused on. Results show that the Fine k-NN model (K = 1, Euclidean Distance) achieved the highest performance with a 99.4% training accuracy and a 99.6% testing accuracy. Consequently, this model was selected for comparative performance analysis across all five feature groups with a window size of 25, as illustrated in Figure 17. Other models demonstrating comparable performance included Bagged Trees, Weighted k-NN, wide neural network, and Cubic SVM, all achieving training accuracies exceeding 98%.
Figure 17 clearly confirms the importance of multi-sensor data fusion. Group 1 (RSSI_F) achieved a testing accuracy of 93.0%. When incorporating data from group 2 (RSSI_F+A+G), it exhibited a testing accuracy of 92.5%. Group 3 (RSSI_F+A), which incorporated only raw 3-axis accelerometer data, achieved a testing accuracy of 92.4%, comparable to group 2. A significant transformation occurred when statistical feature extraction techniques were applied. Group 4 (RSSI_F+A_F+G_F) achieved a testing accuracy of 99.5%, representing a significant 6.5% improvement over group 1. Meanwhile, group 5, which combined statistical features from RSSI and accelerometer data, achieved the highest testing accuracy of 99.6%, representing a 6.6% improvement over group 1.
The confusion matrix for feature group 1 is also illustrated in Figure 18. Results revealed that Zone 1 (staircase area) achieved 92.2% accuracy with a total error of 7.8%, consisting of misclassifications as Zone 2 (living room) at 2.5% and Zone 3 (dining room) at 5.3%. Zone 2 (living room) demonstrated the best performance with 94.5% accuracy and a total error of 5.5%. Zone 3 (dining room) achieved 91.4% accuracy with a total error of 8.6%, consisting of misclassifications as Zone 1 (staircase area) at 5.7% and Zone 2 at 2.9%. The results here indicate that when using only RSSI features for classification, a high error rate is present at Zone 1 (staircase area) and Zone 3 (dining room). However, when applying the features in group 5 with acceleration features, as shown in Figure 19, the zone classification accuracies were significantly improved. The staircase area achieved 99.5% accuracy with 0.5% total error. Zone 2 (living room) achieved 99.6% accuracy with 0.4% total error. Finally, Zone 3 (dining room) exhibited the highest performance, with 99.7% accuracy with 0.3% total error.

5. Conclusions

This work presents the implementation and evaluation of a wrist-worn wireless sensor system for indoor zone classification. The system employs machine learning techniques to fuse data from RSSI, 3-axis acceleration, and 3-axis angular velocity. A total of 33 classifiers were evaluated under both static and dynamic scenarios. Experimental results show the achievement of wrist-worn wireless sensor system development with a high communication reliability of 99.99% PDR, where the system can efficiently track data signals in real time. In addition, classification results for the static scenario demonstrate the importance of feature extraction and data fusion. Using RSSI data with statistical feature extraction combined with 3-axis accelerometer data fusion achieved a testing accuracy of 98.7% (wide neural network model with 25-sample window). For the dynamic scenario findings, with RSSI and acceleration features, system accuracy significantly increased to 99.6% (Fine k-NN model). The findings show the potential for real-world applications, such as indoor safety monitoring. However, it should be noted that the experimental results presented in this study were obtained from a healthy adult participant in a three-zone residential environment. Therefore, generalization of these findings to other populations, including individuals of different ages, body types, and physical conditions, requires further validation with dedicated experiments.
This research has limitations, specifically the restriction of zone classification to three zones, which may affect deployment in more complex environments. Additionally, this study conducted experiments on two-story residential buildings. To further ensure the system’s communication reliability and classification accuracy, experimental data from multi-story residential buildings should also be incorporated. Thus, future research should focus on testing the system in more diverse environments to assess system robustness and adaptability. Second, in realistic scenarios, human movement trajectories are inherently random. Therefore, designing multiple distinct and intersecting movement paths to comprehensively evaluate the system’s performance is essential. Third, investigating multi-user scenarios by developing algorithms capable of distinguishing and tracking multiple users moving simultaneously is a possible research direction. Finally, integrating data from other sensor types, such as magnetometers or pressure sensors, to add data dimensions and improve the accuracy of zone classification and human activity tracking systems should be considered.

Author Contributions

Conceptualization, T.W. and A.B.; methodology, T.W. and A.B.; investigation, T.W. and A.B.; writing—original draft preparation, T.W. and A.B.; writing—review and editing, T.W. and A.B.; supervision, A.B. All authors have read and agreed to the published version of the manuscript.

Funding

Funding was supported by the National Science and Technology Development Agency and Prince of Songkla University.

Institutional Review Board Statement

Since this study did not involve any invasive or medical procedures, ethics approval was not required. Additionally, the 2.4 GHz band is available for communication and testing in accordance with the regulations of the National Broadcasting and Telecommunications Commission (NBTC), Thailand. The study was also conducted in accordance with the principles of the Declaration of Helsinki.

Informed Consent Statement

The analysis of the recorded data was conducted using completely anonymous data. The experimental study did not involve any invasive or medical procedures. All subjects gave their informed consent prior to the collection and acquisition of the data, which was carried out in compliance with the ethical principles of the Helsinki Declaration. Also, the participants’ identities were kept confidential.

Data Availability Statement

The data used in the current study are available by the authors upon request.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Nessa, A.; Adhikari, B.; Hussain, F.; Fernando, X.N. A Survey of Machine Learning for Indoor Positioning. IEEE Access 2020, 8, 214945–214965. [Google Scholar] [CrossRef]
  2. Xiao, L.; Yazdi, P.G.; Thiede, S. A zone-based Wi-Fi fingerprinting indoor positioning system for factory noise mapping. J. Intell. Manuf. 2025, 1–20. [Google Scholar] [CrossRef]
  3. García-Paterna, P.J.; Martínez-Sala, A.S.; Sánchez-Aarnoutse, J.C. Empirical Study of a Room-Level Localization System Based on Bluetooth Low Energy Beacons. Sensors 2021, 21, 3665. [Google Scholar] [CrossRef] [PubMed]
  4. Ahmadi, N.; Mulyawan, R.; Adiono, T. Real-Time Indoor Localization System Based on Wearable Device, Bluetooth Low Energy (BLE) Beacons, and Machine Learning. IEEE Access 2024, 12, 166486–166494. [Google Scholar] [CrossRef]
  5. Chen, Y.; Wang, Y.; Zhao, Y. A Room-Level Indoor Localization Using an Energy-Harvesting BLE Tag. Electronics 2024, 13, 4493. [Google Scholar] [CrossRef]
  6. Aksakalli, I.K.; Bayındır, L. Enhancing Indoor Localization with Room-to-Room Transition Time: A Multi-Dataset Study. Appl. Sci. 2025, 15, 1985. [Google Scholar] [CrossRef]
  7. Anzum, N.; Afroze, S.F.; Rahman, A. Zone-Based Indoor Localization Using Neural Networks: A View from a Real Testbed. In Proceedings of the 2018 IEEE International Conference on Communications (ICC), Kansas City, MO, USA, 20–24 May 2018; pp. 1–7. [Google Scholar] [CrossRef]
  8. Reich, O.; Hubner, E.; Ghita, B.; Wagner, M.F.; Schafer, J. A Survey Investigating the Combination and Number of IMUs on the Human Body Used for Detecting Activities and Human Tracking. In Proceedings of the 2020 World Conference on Computing and Communication Technologies (WCCCT), Warsaw, Poland, 13–15 May 2020; pp. 20–27. [Google Scholar] [CrossRef]
  9. Booranawong, A.; Sukveeraphan, S.; Pan, L.; Jindapetch, N.; Phukpattaranont, P.; Saito, H. A real-time system for monitoring and classification of human falls on stairs using 2.4 GHz XBee3 micro modules with a tri-axial accelerometer and KNN algorithms. Egypt. Inform. J. 2025, 30, 100643. [Google Scholar] [CrossRef]
  10. Sahraoui, H.; Dahani, A.; Tigrine, A.; Bouhamdi, M.; Dine, K.; Abdelhamid, C.; Mostefai, L. Design and implementation of a medical platform for real-time and remote ECG monitoring using digimesh wireless sensor network technology. Res. Biomed. Eng. 2023, 39, 959–976. [Google Scholar] [CrossRef]
  11. Haque, K.F.; Abdelgawad, A.; Yelamarthi, K. Comprehensive performance analysis of zigbee communication: An ex-perimental approach with XBee S2C module. Sensors 2022, 22, 3245. [Google Scholar] [CrossRef] [PubMed]
  12. Akbar, M.S.; Hussain, Z.; Sheng, M.; Shankaran, R. Wireless body area sensor networks: Survey of MAC and routing protocols for patient monitoring under IEEE 802.15.4 and IEEE 802.15.6. Sensors 2022, 22, 8279. [Google Scholar] [CrossRef] [PubMed]
Figure 1. Prototype wrist-worn wearable device for indoor human tracking.
Figure 1. Prototype wrist-worn wearable device for indoor human tracking.
Electronics 15 01389 g001
Figure 2. Steps in developing electronic circuits from device connection to printed circuit board (PCB) production.
Figure 2. Steps in developing electronic circuits from device connection to printed circuit board (PCB) production.
Electronics 15 01389 g002
Figure 3. Wearable device development: (a) electronic components, (b) 3D model of a case box, (c) FlashPrint 5 software for print-file preparation, (d) a Flashforge Adventure 4 3D printer, and (e) a completed prototype device with wrist strap.
Figure 3. Wearable device development: (a) electronic components, (b) 3D model of a case box, (c) FlashPrint 5 software for print-file preparation, (d) a Flashforge Adventure 4 3D printer, and (e) a completed prototype device with wrist strap.
Electronics 15 01389 g003
Figure 4. Base station node development: (a) electronic components, (b) 3D model of a case box, (c) FlashPrint 5 software for print-file preparation, and (d) a Flashforge Adventure 4 3D printer.
Figure 4. Base station node development: (a) electronic components, (b) 3D model of a case box, (c) FlashPrint 5 software for print-file preparation, and (d) a Flashforge Adventure 4 3D printer.
Electronics 15 01389 g004
Figure 5. Graphical user interface for displaying real-time data.
Figure 5. Graphical user interface for displaying real-time data.
Electronics 15 01389 g005
Figure 6. A wrist-worn wireless sensor system and wireless communication protocol.
Figure 6. A wrist-worn wireless sensor system and wireless communication protocol.
Electronics 15 01389 g006
Figure 7. Building floor plan and fingerprint data collection points in a static scenario.
Figure 7. Building floor plan and fingerprint data collection points in a static scenario.
Electronics 15 01389 g007
Figure 8. Building floor plan and a human movement path in a dynamic scenario.
Figure 8. Building floor plan and a human movement path in a dynamic scenario.
Electronics 15 01389 g008
Figure 9. Machine learning framework for zone-based classification: (a) for the static scenario test; (b) for the dynamic scenario test.
Figure 9. Machine learning framework for zone-based classification: (a) for the static scenario test; (b) for the dynamic scenario test.
Electronics 15 01389 g009
Figure 10. Average RSSI in each zone of the static scenario.
Figure 10. Average RSSI in each zone of the static scenario.
Electronics 15 01389 g010
Figure 11. PDR in each zone of the static scenario.
Figure 11. PDR in each zone of the static scenario.
Electronics 15 01389 g011
Figure 12. (a) Three-axis acceleration signals and (b) RSSI values in the dynamic scenario.
Figure 12. (a) Three-axis acceleration signals and (b) RSSI values in the dynamic scenario.
Electronics 15 01389 g012aElectronics 15 01389 g012b
Figure 13. Training and testing accuracies of 33 classifiers using raw RSSI data in the static scenario.
Figure 13. Training and testing accuracies of 33 classifiers using raw RSSI data in the static scenario.
Electronics 15 01389 g013
Figure 14. Training and testing accuracies of 33 classifiers using group 3 data (i.e., RSSI_F+A) with a 25-sample sliding window in the static scenario.
Figure 14. Training and testing accuracies of 33 classifiers using group 3 data (i.e., RSSI_F+A) with a 25-sample sliding window in the static scenario.
Electronics 15 01389 g014
Figure 15. Testing accuracy of the wide neural network model across different sliding window sizes (25–100 samples) for feature groups 1–3 in the static scenario.
Figure 15. Testing accuracy of the wide neural network model across different sliding window sizes (25–100 samples) for feature groups 1–3 in the static scenario.
Electronics 15 01389 g015
Figure 16. Training and testing accuracies of 33 classifiers for feature group 5 (i.e., RSSI_F+A_F) in the dynamic scenario.
Figure 16. Training and testing accuracies of 33 classifiers for feature group 5 (i.e., RSSI_F+A_F) in the dynamic scenario.
Electronics 15 01389 g016
Figure 17. Testing accuracy of the Fine k-NN sub-model for feature groups 1–5 in the dynamic scenario.
Figure 17. Testing accuracy of the Fine k-NN sub-model for feature groups 1–5 in the dynamic scenario.
Electronics 15 01389 g017
Figure 18. Confusion matrix for zone classification using feature group 1 with the Fine k-NN sub-model in the dynamic scenario.
Figure 18. Confusion matrix for zone classification using feature group 1 with the Fine k-NN sub-model in the dynamic scenario.
Electronics 15 01389 g018
Figure 19. Confusion matrix for zone classification using feature group 5 with the Fine k-NN sub-model in the dynamic scenario.
Figure 19. Confusion matrix for zone classification using feature group 5 with the Fine k-NN sub-model in the dynamic scenario.
Electronics 15 01389 g019
Table 1. A summary of related works and this work.
Table 1. A summary of related works and this work.
Ref.
Year
Wireless TechnologyInput DataHardwareTest AreasNo. of Classification ModelsNo. of Zones/RoomsAccuracy
[4]
2024
BLE and Wi-FiRSSI- BLE Beacons (iBKS 105) = 10
- ESP32-based wearable device = 1
- Raspberry Pi 4 model B = 1
Building
207 m2
610XGBoost, LightGBM 91%
[5]
2024
BLE and Wi-FiRSSI- ESP32-C3 (anchor nodes) = 7
- BLE tag with solar panel (target) = 1
Building
2000 m2
37k-NN 99%
[3]
2021
BLERSSITerraced house scenario
- BLE beacons (iBKS 105) = 2–6
- Dell laptop or Raspberry Pi 4 = 1

The basement floor of the university building
- BLE beacons (iBKS 105) = 2–10
- Dell laptop or Raspberry Pi 4 = 1
Terraced house
160 m2




Building
970 m2
1






1
10






16
k-NN 97.6%






k-NN 92.7%
[2]
2025
Wi-FiRSSI and Sound level (dB)- Cisco AP2800 Wi-Fi router = 6
- ThinkPad P16v laptop with TP-Link AC300 = 1
- Noise sensor = 1
Learning Factory
800 m2
69, 18, 27, 37, and 39RF 91%
[6]
2025
Wi-FiRSSI, room-to-room transition time- ESP32-DevKitC = 1
- Breadboard = 1
- MicroSD card module = 1
- SD card = 1
- Smartphone = 1
- Access Point = 58, 63, 41
- Computer = 1
Home
195 m2, 145 m2, and 130 m2
346Wide Neural Network 94.7%
[7]
2018
Wi-FiRSSI- Access point = 24
- Smart device = 1
Building332Modified CPN 91%
This workZigbee/IEEE 802.15.4
- Hardware design and development
- Proposed wireless communication protocol
RSSI, 3-axis acceleration, and 3-axis angular velocity- SparkFun Thing Plus-XBee3 Micro with GY-521 (Wearable device) = 1
- SparkFun Thing Plus-XBee3 Micro (Base station) = 1
- ASUS ViviBook S15 = 1
Home
~69 m2
with 2 floors
333 *Static scenario
Wide Neural Network
98.7–99.3%

Dynamic scenario
Fine k-NN
99.6%
* Considering stair area.
Table 2. Specifications of SparkFun Thing Plus-XBee3 Micro microcontroller and GY-521 sensor [9].
Table 2. Specifications of SparkFun Thing Plus-XBee3 Micro microcontroller and GY-521 sensor [9].
Microcontroller Board Specifications
MicrocontrollerSilicon Labs EFR32MG SoC
Flash memory1 MB (32 KB available for MicroPython)
RAM128 KB
Operating frequency band2.4 GHz (2.4–2.4835 GHz)
RF data rate250 Kbps
Indoor/Urban rangeUp to 200 feet (60 m)
Outdoor/Line-of-sight rangeUp to 4000 feet (1200 m)
Transmission power−5 dBm, −1 dBm, +2 dBm, +5 dBm and +8 dBm
Receiver sensitivity−103 dBm
Serial communicationUART, I2C
Operating voltage2.6 VDC–3.6 VDC
Operating current (transmit, normal)40 mA @ +3.3 V, +8 dBm
Operating current (receive, normal)17 mA
Power-down current2 µA @ 25 °C
Number of channels16 channels (11–26)
Power managementSupports LiPo battery charging
Dimensions58.42 × 22.86 mm
GY-521 Sensor Specifications
ChipMPU-6050
Acceleration measurement range±2 g, ±4 g, ±8 g and ±16 g
Angular velocity measurement range±250°/s, ±500°/s, ±1000°/s, and ±2000°/s
ADC resolution16 bits
Serial communicationI2C
Operating voltage2.375 V–3.46 V
Operating current (normal)500 µA
Operating current (low power)10 µA @ 1.25 Hz, 20 µA @ 5 Hz,
60 µA @ 20 Hz and 110 µA @ 40 Hz
Dimensions16 × 20 mm
Table 3. List of features for RSSI data.
Table 3. List of features for RSSI data.
Feature IndexFeature DescriptionEquation
-Raw RSSI signals R S S I i ; i = 1 l a s t   s a m p l e
F1Maximum value of RSSI signals M a x i = m a x R S S I k : k i w + 1 , i , i w
F2Minimum value of RSSI signals M i n i = m i n R S S I k : k i w + 1 , i , i w
F3Moving average of RSSI signals M o v i = 1 w k = i w + 1 i R S S I k , i w
F4SD of RSSI signals S D i = 1 w k = i w + 1 i R S S I k M o v i 2 , i w
F5Range of RSSI signals R a n g e i = M a x i M i n i
F6Median of RSSI signals M e d i a n i = R S S I ~ w + 1 / 2 , i f   w   i s   o d d R S S I ~ w 2 + R S S I ~ w 2 + 1 2 , i f   w   i s   e v e n , i w
F7IQR of RSSI signals I Q R i = Q 75 i Q 25 i , i w
Q 75 i = 75th percentile in window i
Q 25 i = 25th percentile in window i
F810th percentile of RSSI signals P 10 i = p e r c e n t i l e R S S I k : k i w + 1 , i , 10 , i w
F925th percentile of RSSI signals P 25 i = p e r c e n t i l e R S S I k : k i w + 1 , i , 25 , i w
F1075th percentile of RSSI signals P 75 i = p e r c e n t i l e R S S I k : k i w + 1 , i , 75 , i w
F1190th percentile of RSSI signals P 90 i = p e r c e n t i l e R S S I k : k i w + 1 , i , 90 , i w
Note: R S S I ~ j → the j-th order statistic of the sorted data R S S I k : k i w + 1 , i in ascending order j 1 ,   2 ,   ,   w .
Table 4. List of features for acceleration data in the x direction.
Table 4. List of features for acceleration data in the x direction.
Feature IndexFeature DescriptionEquation
-Raw acceleration signals (ax) a x i ; i = 1 l a s t   s a m p l e
F12Maximum value of ax M a x i = m a x a x k : k i w + 1 , i , i w
F13Minimum value of ax M i n i = m i n a x k : k i w + 1 , i , i w
F14Moving average value of ax M o v i = 1 w k = i w + 1 i a x k , i w
F15SD of ax S D i = 1 w k = i w + 1 i a x k M o v i 2 , i w
F16Range of ax R a n g e i = M a x i M i n i
F17Median of ax M e d i a n i = a x ~ w + 1 / 2 ,   i f   w   i s   o d d a x ~ w 2 + a x ~ w 2 + 1 2 , i f   w   i s   e v e n ,   i w
F18IQR of ax I Q R i = Q 75 i Q 25 i , i w
Q 75 i = 75th percentile in window i
Q 25 i = 25th percentile in window i
F1910th percentile of ax P 10 i = p e r c e n t i l e a x k : k i w + 1 , i , 10 , i w
F2025th percentile of ax P 25 i = p e r c e n t i l e a x k : k i w + 1 , i , 25 , i w
F2175th percentile of ax P 75 i = p e r c e n t i l e a x k : k i w + 1 , i , 75 , i w
F2290th percentile of ax P 90 i = p e r c e n t i l e a x k : k i w + 1 , i , 90 , i w
Note: a x ~ j → the j-th order statistic of the sorted data a x k : k i w + 1 , i in ascending order j 1 ,   2 ,   ,   w .
Table 5. List of features for acceleration data.
Table 5. List of features for acceleration data.
Feature IndexFeature DescriptionEquation
F45Signal vector magnitude (SM) S M i = a x 2 + a y 2 + a z 2 ; i = 1 l a s t   s a m p l e
F46Moving average of SM M o v i = 1 w k = i w + 1 i S M k : k i w + 1 , i ; i w
F47SD of SM S D i = 1 w k = i w + 1 i S M k M o v i 2 : k i w + 1 , i ; i w
Table 6. List of features for gyroscope data.
Table 6. List of features for gyroscope data.
(a)
Feature Index for axEquation for ax
- g x i ; i = 1 l a s t   s a m p l e
F48 M a x i = m a x g x k : k i w + 1 , i , i w
F49 M i n i = m i n g x k : k i w + 1 , i , i w
F50 M o v i = 1 w k = i w + 1 i g x k , i w
F51 S D i = 1 w k = i w + 1 i g x k M o v i 2 , i w
F52 R a n g e i = M a x i M i n i
F53 M e d i a n i = g x ~ w + 1 / 2 ,   i f   w   i s   o d d g x ~ w 2 + g x ~ w 2 + 1 2 , i f   w   i s   e v e n ,   i w
F54 I Q R i = Q 75 i Q 25 i , i w
Q 75 i = 75th percentile in window i
Q 25 i = 25th percentile in window i
F55 P 10 i = p e r c e n t i l e g x k : k i w + 1 , i , 10 , i w
F56 P 25 i = p e r c e n t i l e g x k : k i w + 1 , i , 25 , i w
F57 P 75 i = p e r c e n t i l e g x k : k i w + 1 , i , 75 , i w
F58 P 90 i = p e r c e n t i l e g x k : k i w + 1 , i , 90 , i w
(b)
Feature IndexEquation
F81 S M i = g x 2 + g y 2 + g z 2 ; i = 1 l a s t   s a m p l e
F82 M o v i = 1 w k = i w + 1 i S M k : k i w + 1 , i ; i w
F83 S D i = 1 w k = i w + 1 i S M k M o v i 2 : k i w + 1 , i ; i w
Note: g x ~ j → the j-th order statistic of the sorted data g x k : k i w + 1 , i in ascending order j 1 ,   2 ,   ,   w .
Table 7. List of classifiers and sub-models tested in experiments.
Table 7. List of classifiers and sub-models tested in experiments.
Classifier GroupsSub-ModelsModel Hyper-Parameters
1. Tree(1) Fine TreeMaximum number of splits: 100
Split criterion: Gini’s diversity index
Surrogate decision splits: off
(2) Medium TreeMaximum number of splits: 20
Split criterion: Gini’s diversity index
Surrogate decision splits: off
(3) Coarse TreeMaximum number of splits: 4
Split criterion: Gini’s diversity index
Surrogate decision splits: off
2. Discriminant(1) Quadratic DiscriminantCovariance structure: full
(2) Linear DiscriminantCovariance structure: full
3. Naïve Bayes(1) Kernel Naïve BayesDistribution name for numeric predictors: Kernel
Distribution name for categorical predictors: Not applicable
Kernel type: Gaussian
Support: Unbounded
Standardize data: yes
(2) Gaussian Naïve BayesDistribution name for numeric predictors: Gaussian
Distribution name for categorical predictors: Not applicable
4. SVM (1) Fine Gaussian SVMKernel function: Gaussian
Kernel scale: value
Box constraint level: 1
Multiclass coding: one-vs-one
Standardize data: yes
(2) Cubic SVMKernel function: Cubic
Kernel scale: Automatic
Box constraint level: 1
Multiclass coding: one-vs-one
Standardize data: yes
(3) Medium Gaussian SVMKernel function: Gaussian
Kernel scale: value
Box constraint level: 1
Multiclass coding: one-vs-one
Standardize data: yes
(4) Quadratic SVMKernel function: Quadratic
Kernel scale: Automatic
Box constraint level: 1
Multiclass coding: one-vs-one
Standardize data: yes
(5) Coares Gaussian SVMKernel function: Gaussian
Kernel scale: value
Box constraint level: 1
Multiclass coding: one-vs-one
Standardize data: yes
(6) Linear SVMKernel function: Linear
Kernel scale: Automatic
Box constraint level: 1
Multiclass coding: one-vs-one
Standardize data: yes
5. Efficient Linear(1) Efficient Logistic RegressionLearner: Logistic regression
Solver: Auto
Regularization: Auto
Regularization strength (Lambda): Auto
Relative coefficient tolerance (Beta tolerance): 0.0001
Multiclass coding: one-vs-one
(2) Efficient Linear SVMLearner: SVM
Solver: Auto
Regularization: Auto
Regularization strength (Lambda): Auto
Relative coefficient tolerance (Beta tolerance): 0.0001
Multiclass coding: one-vs-one
6. k-NN(1) Fine k-NNNumber of neighbors: 1
Distance metric: Euclidean
Distance weight: Equal
Standardize data: yes
(2) Weighted k-NNNumber of neighbors: 10
Distance metric: Euclidean
Distance weight: Squared inverse
Standardize data: yes
(3) Medium k-NNNumber of neighbors: 10
Distance metric: Euclidean
Distance weight: Equal
Standardize data: yes
(4) Cubic k-NNNumber of neighbors: 100
Distance metric: Minkowski (cubic)
Distance weight: Equal
Standardize data: yes
(5) Cosine k-NNNumber of neighbors: 10
Distance metric: Cosine
Distance weight: Equal
Standardize data: yes
(6) Coarse k-NNNumber of neighbors: 100
Distance metric: Euclidean
Distance weight: Equal
Standardize data: yes
7. Kernel(1) SVM KernelLearner: SVM
Number of expansion dimensions: Auto
Regularization strength (Lambda): Auto
Kernel scale: Auto
Multiclass coding: one-vs-one
Standardize data: yes
Iteration limit: 1000
(2) Logistic Regression KernelLearner: Logistic Regression
Number of expansion dimensions: Auto
Regularization strength (Lambda): Auto
Kernel scale: Auto
Multiclass coding: one-vs-one
Standardize data: yes
Iteration limit: 1000
8. Ensemble(1) Subspace k-NNEnsemble method: Subspace
Learner type: Nearest neighbors
Number of learners: 30
Subspace dimension: 6
(2) Bagged TreesEnsemble method: Bag
Learner type: Decision tree
Maximum number of splits: 135,999 *, 10,673 **
Number of learners: 30
Number of predictors to sample: select all
(3) Boosted TreesEnsemble method: AdaBoost
Learner type: Decision tree
Maximum number of splits: 20
Number of learners: 30
Learning rate: 0.1
Number of predictors to sample: select all
(4) RUSBoosted TreesEnsemble method: RUSBoost
Learner type: Decision tree
Maximum number of splits: 20
Number of learners: 30
Learning rate: 0.1
Number of predictors to sample: select all
(5) Subspace DiscriminantEnsemble method: Subspace
Learner type: Discriminant
Number of learners: Null
Subspace dimension: 6
9. Neural Network(1) Wide Neural NetworkNumber of fully connected layers: 1
First layer size: 100
Activation: ReLU
Iteration limit: 1000
Regularization strength (Lambda): 0
Standardize data: yes
(2) Medium Neural NetworkNumber of fully connected layers: 1
First layer size: 25
Activation: ReLU
Iteration limit: 1000
Regularization strength (Lambda): 0
Standardize data: yes
(3) Trilayered Neural NetworkNumber of fully connected layers: 3
First layer size: 10
Second layer size: 10
Third layer size: 10
Activation: ReLU
Iteration limit: 1000
Regularization strength (Lambda): 0
Standardize data: yes
(4) Bilayered Neural NetworkNumber of fully connected layers: 2
First layer size: 10
Second layer size: 10
Activation: ReLU
Iteration limit: 1000
Regularization strength (Lambda): 0
Standardize data: yes
(5) Narrow Neural NetworkNumber of fully connected layers: 1
First layer size: 10
Activation: ReLU
Iteration limit: 1000
Regularization strength (Lambda): 0
Standardize data: yes
Note: * static scenario, ** dynamic scenario.
Table 8. Average and SD of RSSI in each zone for the static scenario.
Table 8. Average and SD of RSSI in each zone for the static scenario.
ZonesAverage RSSI (dBm)SD of RSSI (dBm)
Stairway−67.088.79
Living room−49.915.44
Dining room−64.088.04
Table 9. Performance comparison of 33 classifiers using raw RSSI data in the static scenario.
Table 9. Performance comparison of 33 classifiers using raw RSSI data in the static scenario.
ModelsTraining Accuracy (%)Testing Accuracy (%)Prediction Speed
(obs/s)
Training Time
(s)
Model Size
(Compact) (MB)
Boosted Trees75.275.0120,000.035.60.260
Medium Trees75.275.0680,000.023.80.008
RUSBoosted Trees75.175.0120,000.077.30.260
Bagged Trees75.175.0120,000.054.20.405
Fine Trees75.175.0840,000.010.30.009
Wide Neural Network75.175.0550,000.04329.10.008
Fine Gaussian SVM75.074.82100.02299.92
Bilayered Neural Network74.774.8700,000.01687.30.007
Medium Neural Network74.674.8460,000.01863.90.005
Trilayered Neural Network74.474.2570,000.03024.20.008
Narrow Neural Network74.174.8490,000.01160.50.005
Kernel Naïve Bayes73.973.7940.0719.24
SVM Kernel73.473.3290,000.0104.50.025
Coarse Gaussian SVM73.373.02100.02503.43
Logistic Regression Kernel72.775.030,000.0139.30.025
Medium Gaussian SVM72.572.22300.02236.92
Efficient Linear SVM71.871.7640,000.012.90.030
Coarse Tree71.371.1660,000.021.80.004
Efficient Logistic Regression70.169.9590,000.015.20.031
Subspace Discriminant68.468.156,000.038.60.090
Linear Discriminant68.468.1550,000.019.70.003
Gaussian Naïve Bayes68.167.8800,000.010.40.003
Quadratic Discriminant68.167.8550,000.017.40.004
Coarse k-NN56.556.324,000.023.87
Weighted k-NN54.654.331,000.026.57
Medium k-NN54.654.338,000.020.27
Cubic k-NN54.654.323,000.032.47
Fine k-NN54.454.242,000.016.67
Subspace k-NN54.454.22500.0345.5195
Linear SVM29.015.5780,000.020,829.00.013
Quadratic SVM25.829.837,000.030,699.00.417
Cubic SVM25.618.3150,000.031,144.00.107
Cosine k-NN25.025.04800.0114.14
Table 10. Performance comparison of 33 classifiers using group 1 data (i.e., RSSI_F) with a 25-sample sliding window in the static scenario.
Table 10. Performance comparison of 33 classifiers using group 1 data (i.e., RSSI_F) with a 25-sample sliding window in the static scenario.
ModelsTraining Accuracy (%)Testing Accuracy (%)Prediction Speed
(obs/s)
Training Time
(s)
Model Size
(Compact) (MB)
Bagged Trees83.383.424,000.0687.2744
Wide Neural Network82.082.0240,000.06079.600.019
Fine Gaussian SVM81.581.81500.06090.208
Fine Trees81.481.4300,000.0936.550.027
Medium Neural Network80.981.1250,000.03818.500.009
Trilayered Neural Network80.981.0250,000.05663.500.011
Logistic Regression Kernel80.680.421,000.01056.300.042
SVM Kernel80.380.721,000.01845.600.042
Bilayered Neural Network80.280.6220,000.03182.700.009
Boosted Trees79.779.759,000.0761.010.305
RUSBoosted Trees79.279.351,000.0798.150.305
Narrow Neural Network79.278.6210,000.02593.400.007
Medium Trees79.079.0280,000.0933.640.008
Medium Gaussian SVM78.278.21400.04667.5010
Coarse Gaussian SVM76.476.21300.04248.8011
Coarse k-NN76.176.1950.0789.3316
Kernel Naïve Bayes75.475.160.09091.5050
Coarse Tree74.574.1290,000.0931.850.005
Weighted k-NN72.272.11200.0766.3116
Linear SVM72.072.1210,000.010,960.000.020
Medium k-NN71.971.81100.0792.7816
Cubic k-NN71.971.8180.04244.816
Efficient Logistic Regression71.671.6290,000.0465.930.037
Cosine k-NN70.870.61300.0785.9116
Subspace Discriminant68.869.031,000.077.710.143
Linear Discriminant68.568.5210,000.0683.500.008
Gaussian Naïve Bayes68.168.1270,000.012.2840.010
Fine k-NN67.767.51200.0796.1016
Quadratic SVM66.568.114,000.022,670.009
Subspace k-NN65.664.8650.03182.00370
Efficient Linear SVM65.670.3290,000.0239.210.037
Cubic SVM64.556.816,000.024,112.007.0
Table 11. Performance comparison of 33 classifiers using group 2 data (i.e., RSSI_F+A+G) with a 25-sample sliding window in the static scenario.
Table 11. Performance comparison of 33 classifiers using group 2 data (i.e., RSSI_F+A+G) with a 25-sample sliding window in the static scenario.
ModelsTraining Accuracy (%)Testing Accuracy (%)Prediction Speed
(obs/s)
Training Time
(s)
Model Size
(Compact) (MB)
Bagged Trees98.798.723,000.04588.613
Wide Neural Network98.498.4210,000.013,630.00.024
Medium Neural Network97.597.6130,000.014,794.00.010
Trilayered Neural Network97.397.4160,000.010,614.00.012
Bilayered Neural Network96.997.2110,000.012,105.00.010
Fine Gaussian SVM95.896.03900.08797.610
Weighted k-NN95.195.2460.04623.022
Medium k-NN94.794.6480.04905.222
Fine k-NN94.494.5470.033,217.022
Cubic SVM94.494.229,000.023,107.04
Narrow Neural Network93.994.0120,000.016,250.00.009
Cubic k-NN93.092.8260.04894.822
Cosine k-NN92.993.0440.04896.622
Fine Trees92.992.6190,000.03103.40.034
Medium Gaussian SVM92.692.65700.06082.25
SVM Kernel92.392.210,000.07850.10.058
Coarse k-NN92.392.1540.04902.122
Logistic Regression Kernel91.591.29500.04894.40.058
Subspace k-NN91.191.81100.018,372.0474
Boosted Trees90.890.641,000.04590.70.329
Quadratic SVM87.186.918,000.025,727.07
Medium Trees86.586.1220,000.03100.30.011
RUSBoosted Trees86.085.541,000.018,370.00.329
Coarse Gaussian SVM85.585.54500.03098.89
Linear SVM81.681.5160,000.011,485.00.023
Linear Discriminant80.180.2150,000.016.6360.013
Coarse Tree78.978.5190,000.03098.20.006
Kernel Naïve Bayes78.678.460.014,116.075
Subspace Discriminant77.977.323,000.0117.590.186
Efficient Logistic Regression77.677.8210,000.020,531.00.040
Efficient Linear SVM75.878.8180,000.017,880.00.040
Gaussian Naïve Bayes75.875.9150,000.015,564.00.014
Table 12. Performance comparison of 33 classifiers using group 3 data (i.e., RSSI_F+A) with a 25-sample sliding window in the static scenario.
Table 12. Performance comparison of 33 classifiers using group 3 data (i.e., RSSI_F+A) with a 25-sample sliding window in the static scenario.
ModelsTraining Accuracy (%)Testing Accuracy (%)Prediction Speed
(obs/s)
Training Time
(s)
Model Size
(Compact) (MB)
Weighted k-NN98.798.8780.04696.219
Bagged Trees98.798.724,000.04651.413
Wide Neural Network98.698.7240,000.024,935.00.021
Fine k-NN98.698.5820.04728.219
Medium k-NN98.598.5780.04726.219
Fine Gaussian SVM98.498.53000.010,574.02
Cubic k-NN98.398.3270.04720.019
Cosine k-NN98.198.2840.04722.019
Medium Neural Network97.497.5200,000.026,163.00.010
Trilayered Neural Network97.397.3210,000.021,940.00.011
Subspace k-NN97.397.3740.029,465.0440
Bilayered Neural Network96.997.2200,000.023,353.00.010
Coarse k-NN96.897.0820.04724.219
SVM Kernel95.895.515,000.019,136.00.044
Logistic Regression Kernel95.295.014,000.016,325.00.044
Narrow Neural Network93.793.4160,000.027,632.00.008
Medium Gaussian SVM93.493.41700.07697.14
Fine Trees92.992.7290,000.011.7690.033
Boosted Trees90.890.644,000.04659.10.317
Cubic SVM90.691.423,000.044,665.03
Quadratic SVM87.187.116,000.028,650.06
Medium Trees86.586.1220,000.02728.30.010
RUSBoosted Trees86.085.550,000.029,462.00.317
Coarse Gaussian SVM85.985.914,000.04730.18
Linear SVM81.581.5210,000.010,849.00.021
Linear Discriminant80.080.1180,000.014.2940.010
Coarse Tree78.978.5240,000.02725.90.006
Kernel Naïve Bayes78.678.477.013,650.062
Subspace Discriminant78.378.723,000.0136.350.170
Efficient Logistic Regression77.677.9230,000.08015.70.039
Gaussian Naïve Bayes75.775.8180,000.02731.80.012
Efficient Linear SVM73.677.0230,000.05135.00.038
Table 13. Performance results of the wide neural network model across different sliding window sizes for feature groups 1–3 in the static scenario.
Table 13. Performance results of the wide neural network model across different sliding window sizes for feature groups 1–3 in the static scenario.
ModelsWindow SizesGroupTraining Accuracy (%)Testing Accuracy (%)Prediction Speed
(obs/s)
Training Time
(s)
Model Size
(Compact) (MB)
Wide Neural Network25182.082.0240,000.06079.60.019
298.498.4210,000.013,630.00.024
398.698.7240,000.024,935.00.021
50184.584.5260,0005750.80.019
299.099.1250,00011,207.00.024
399.299.3200,00018,548.00.021
75186.486.8180,00010,217.00.019
299.499.4220,00012,241.00.024
399.599.5250,00011,085.00.021
100188.287.9310,0004974.60.019
299.599.663,00041,667.00.024
399.699.6250,00020,471.00.021
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Wattananavin, T.; Booranawong, A. Implementation of a Wrist-Worn Wireless Sensor System with Machine Learning-Based Classification for Indoor Human Tracking. Electronics 2026, 15, 1389. https://doi.org/10.3390/electronics15071389

AMA Style

Wattananavin T, Booranawong A. Implementation of a Wrist-Worn Wireless Sensor System with Machine Learning-Based Classification for Indoor Human Tracking. Electronics. 2026; 15(7):1389. https://doi.org/10.3390/electronics15071389

Chicago/Turabian Style

Wattananavin, Thradon, and Apidet Booranawong. 2026. "Implementation of a Wrist-Worn Wireless Sensor System with Machine Learning-Based Classification for Indoor Human Tracking" Electronics 15, no. 7: 1389. https://doi.org/10.3390/electronics15071389

APA Style

Wattananavin, T., & Booranawong, A. (2026). Implementation of a Wrist-Worn Wireless Sensor System with Machine Learning-Based Classification for Indoor Human Tracking. Electronics, 15(7), 1389. https://doi.org/10.3390/electronics15071389

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop