Abstract
Wearable devices come in various forms. In addition to those designed for specific body parts, such as wristwatch, eyeglass, and ring devices, there are also wearable devices that can be attached to arbitrary body positions, such as instant tattoo-type and bandage-type devices. When a wearable device is attached to an arbitrary position on the body, it must recognize its attachment position to adjust its functionality and processing accordingly. In this paper, we propose a method for estimating the attachment position of a wearable device with an unknown position using pulse wave sensors mounted on both a device with a known position and one with an unknown position. Because the arrival time of pulse waves varies with distance from the heart, the time difference between pulse wave peaks at the wrist and another body part can be used to infer the attachment position. The proposed method estimates the device's attachment position by comparing pulse wave peak detection times between the wrist and the unknown body part. For evaluation, data were collected from 12 body positions: forehead, mouth, left ear, right ear, left upper arm, right upper arm, left wrist, right wrist, left finger, right finger, left toe, and right toe. The proposed method was evaluated under two conditions: using data collected on the same day and on different days. The results showed that when the number of target body parts was two, the maximum F1 score was 1 for both data acquired on the same day and on different days. In contrast, when all 12 body parts were used as targets, the maximum F1 score was 0.58 for data acquired on the same day and 0.29 for data acquired on different days.
1 Introduction
With the widespread adoption of wearable devices, it has become possible to acquire data from sensors mounted on them and to recognize human states, activities, and modes of transportation. Sensors mounted on wearable devices include accelerometers, gyroscopes, pulse wave sensors, electromyogram (EMG) sensors, and electrocardiogram (ECG) sensors. Application examples include a fall detection system for older adults using accelerometers and gyroscopes () and an upper-arm-worn wearable system that combines an accelerometer, heart rate, and temperature sensors to continuously monitor physiological changes associated with exercise and heat exposure ().
Wearable devices come in various forms, such as wristwatches, eyeglasses, and rings, which are worn on specific body parts. On the other hand, devices can also be attached to arbitrary body parts, such as instant tattoo devices () and bandage devices (). When a wearable device is worn on an arbitrary body part, it must recognize its attachment position to adapt its functions accordingly. Specifically, in human activity recognition, if the device's attachment positions at the time of collecting training and test data differ, recognition accuracy significantly decreases (). In addition, LEDs, displays, vibrations, or sounds are used when notifying users. The output method should vary depending on the device's attachment position. For instance, if the device is near the ear, it should use sound; if it is in a location visible to the eyes, it should use an LED or display; and if it is positioned elsewhere, it should employ vibration. Furthermore, robots that move on the body have also been developed. Robots such as Rovables () (magnetic wheels) and SkinBot () (suction cups) move on the body and must estimate their positions during motion. However, SkinBot is unable to estimate its position. Rovables, on the other hand, utilize dead reckoning, a position estimation algorithm that determines the current position based on the previous position. To effectively use dead reckoning, it is crucial to accurately calculate the initial position. In environments where wearable devices may be attached to various body parts, it is important to have a method for estimating each device's attachment position.
Research on estimating the attachment position of wearable devices can be categorized into studies that detect and correct deviations in the sensor data and studies that estimate the attachment position. One study (Bayati et al., ) corrects deviations of several centimeters by altering sensor values and recognizes human activity without changing the machine-learning model. However, while deviations of several centimeters can be corrected, large deviations spanning joints cannot, leading to a decrease in recognition accuracy. In device position estimation, some methods use accelerometers (; ; ). However, accelerometer-based methods require the user to perform specific actions, such as walking. Although walking is common in daily life, requiring the user to walk for position estimation may still be inconvenient when the device needs to estimate its position immediately after being attached, while the user is stationary, or continuously during use. To solve this problem, a method has been proposed that uses an ECG and a photoplethysmogram (PPG) to estimate the device's attachment position (). Since ECG and PPG are measured in a stationary state, the user does not need to perform specific actions, such as walking. Although an ECG can be measured using the Apple Watch, the user must touch the crown with their hand. ECG is not generally available on commercially available wearable devices.
This paper proposes a method to estimate the attachment position of a wearable device at an unknown position using PPG signals from a wearable device at a known position. A wrist-worn smartwatch is assumed to be a known-position device. The farther a body part is from the heart, the later the pulse wave arrives; conversely, the closer a body part is to the heart, the earlier the pulse wave arrives. Therefore, the difference in arrival time of pulse waves measured at the wrist and an arbitrary body part varies depending on the arbitrary body part. The proposed method estimates the device's attachment position by comparing the peak detection times of pulse waves at the wrist and the unknown body part. This paper makes the following contributions:
The proposed method uses only the PPG sensor, which is installed in most commercially available smartwatches.
The user only needs to attach the device and does not need to perform a specific action, such as walking.
It enables continuous estimation of the device's attachment position even if the device position changes during use.
The rest of the paper is organized as follows: Section 2 introduces related research, Section 3 explains the proposed method, Section 4 conducts the evaluation experiment of the proposed method, Section 5 discusses the results, Section 6 introduces the device created using the proposed method, and finally, Section 7 concludes this study.
2 Related work
This section introduces studies on human activity recognition accuracy based on sensor positions, on wearable device position estimation, and on smartphone storage position estimation.
2.1 Human activity recognition accuracy based on sensor positions
() asked 10 participants to store smartphones in the shirt pocket, pants pocket, and waist, and collected acceleration data during actions such as lying down, sitting, standing up, walking, running, and jumping. Activity recognition was conducted using acceleration data obtained from each body part. The results showed that applying a classification model for one body part to other parts led to an average decrease of approximately 47% in recognition accuracy. This research demonstrated the need to construct models for each body part when performing activity recognition.
2.2 Wearable device position estimation
() asked 25 participants to wear accelerometers on ten body parts: head, chest, both upper arms, both forearms, waist, both thighs, and both shins, and estimated the device position from daily activities such as walking. Support Vector Machine achieved an average accuracy of 89%.
2.3 Smartphone storage position estimation
() asked 15 participants to store mobile devices in three positions: hand, backpack, and clothing pocket, and measured acceleration data during daily activities such as walking and running. Using Random Forest, acceleration data achieved an average estimation accuracy of 77.34%. When both accelerometers and gyroscopes were used, the average estimation accuracy reached 85%.
As described above, many studies on wearable device position estimation and smartphone storage position estimation require specific actions, such as walking. While research exists that estimates device position solely from the difference in peak detection times between ECG and pulse wave, without requiring specific actions, continuous ECG measurement is difficult because measuring ECG on an Apple Watch requires the user to keep touching the crown. In this paper, we propose a method to estimate device position without requiring specific actions, such as walking, using only pulse wave sensors on various wearable devices.
3 Proposed method
This section explains the method for estimating the position of wearable devices using pulse wave data from both known and unknown positions.
3.1 Overview
An overview of the proposed method is shown in Figure 1. This paper assumes that the user wears a device on the wrist at the known attachment position. The user wears another device on an unknown body part, whose position is estimated. The two devices are connected via Bluetooth. The proposed method consists of five processes: time synchronization, pulse wave measurement, pulse wave peak detection, calculation of the difference in peak detection times, and position estimation. Each of these processes is described in detail in the following sections.
Figure 1
3.2 Time synchronization
The device position is estimated by calculating the difference in pulse wave peak times of the two devices. The timestamps of the pulse wave data sensed by each device must be synchronized first. The time synchronization process is illustrated in Figure 2. Let T1 be the time when Device 1 (on the unknown body part) sends a sync request to Device 2 (on the known body part), and let T2 be the time when Device 2 receives the sync request. Then, let T3 be the time when Device 2 sends a sync response to Device 1, including T2 and T3. When Device 1 receives the sync response at time T4, the time lag Tlag between the two devices can be calculated according to Equation 1.
By subtracting the calculated time lag Tlag from the time on Device 1, Device 1's time can be synchronized with that of Device 2. In the proposed method, time synchronization is performed once before each pulse wave measurement. For each pulse wave measurement, the time difference between the synchronized timestamps of both devices was verified to be 0 ms. Since the proposed method uses histogram bins with a width of 0.01 s, this level of accuracy is considered sufficient.
Figure 2
3.3 Pulse wave measurement
The user attaches a device with a PPG on the wrist (as a known position) and another device with a PPG on one of the predefined candidate positions (as an unknown position). The pulse wave data contains noise, such as power-supply noise, as shown in Figure 3. The FFT power spectrum of the pulse wave with noise shows high-frequency components above 5 Hz that do not contain the pulse wave's fundamental components. To remove high-frequency noise, a 5th-order Butterworth low-pass filter with a cutoff frequency of 5 Hz was applied using zero-phase filtering. The cutoff frequency was set to 5 Hz to eliminate 60 Hz power-line noise while preserving pulse-wave data. The pulse wave data after noise removal, along with its FFT power spectrum, show successful removal of high-frequency noise above 5 Hz. These processes are executed on each device.
Figure 3
3.4 Pulse wave peak detection
The find_peaks function from the SciPy package in Python is used to detect the peaks in the pulse wave data. By setting the distance argument in find_peaks, at most one peak within the specified number of consecutive samples is detected. Also, by setting the height argument, only peaks exceeding the specified height are detected, thereby reducing the influence of noise and baseline fluctuations. () have reported that a typical resting heart rate is approximately 60 to 110 beats per minute, and the interval between pulse wave peaks ranges from about 1 to 0.54 s. The distance was set to the number of samples obtained in 0.5 s, and the height was set to the mean amplitude of the filtered PPG samples in each measurement window, separately for each sensor. No preliminary dataset was used to determine this threshold.
3.5 Calculation of the difference in peak detection times
The wrist device transmits its peak detection times to the device at an unknown position. The device at an unknown position estimates its position. The time difference is calculated for pairs of peaks on the wrist and unknown-position devices, and time differences within 0.20 s are detected, as shown in Figure 4. The reason for setting 0.20 s is that the peak of the pulse wave at the unknown body part is detected within −0.20 to 0.20 s from the peak detection time at the wrist. As a basis for this, the research by () found that pulse wave velocity ranged from 3.8 to 16.3 m/s among 1,455 subjects. Additionally, according to the survey by (), in a male with a height of 170 cm, the distance from the heart to the wrist is approximately 0.7 m, and the distance from the heart to the toe is approximately 1.3 m. Thus, compared to the peak detection time at the wrist, the pulse wave peak detection time at the heart is 0.18 s earlier, and the peak detection time at the toe is 0.16 s later. Therefore, the pulse wave peak detection time difference is calculated using the pair with the minimum time difference, whose peak detection time difference is within −0.20 to 0.20 s.
Figure 4
Specifically, let Tw(i) (i = 1, 2, …, Nw) be the pulse wave peak detection times on the wrist, and Tu(j) (j = 1, 2, …, Nu) be those on the unknown body part. A pair is formed if their absolute time difference is the minimum and is within 0.20 s. Here, Nw and Nu represent the number of elements stored in Tw and Tu, respectively. To form the pair with the minimum absolute time difference within 0.20 s, for a given peak detection time on the wrist, the corresponding j′ that minimizes the absolute difference with all Tu(j) is found using Equation 2. A pair is formed between and only if .
Additionally, using the formed pair, the time difference d concerning the wrist peak detection time is calculated using Equation 3:
This process is repeated for all peak detection times Tw(i) (i = 1, 2, ..., Nw), and an array D(k) (k = 1, 2, ..., ND) containing the peak detection time differences is generated. Here, ND is the number of formed pairs.
3.6 Position estimation
Histograms of the time-difference data (differences in peak detection times) for each body part are created in advance as training data. At the time of estimation, the device at an unknown position creates a histogram of its time difference data as test data. In this paper, histograms with a bin width of 0.01 s over the range of –0.20 to 0.20 s are created, resulting in 40 bins.
Next, the distance between the test data histogram and each training data histogram is calculated using the Kullback–Leibler divergence (KL divergence) (). KL divergence is a measure of the difference between two probability distributions. When the KL divergence value is 0, the two distributions are identical. The more different the distributions are, the larger the KL divergence becomes in the positive direction. Specifically, let P and Q be the training and test data histograms, respectively. The KL divergence between P and Q is calculated by Equation 4:
Here, Pi and Qi represent the frequency of the i-th bin in histograms P and Q, respectively. If Pi or Qi is 0, the calculation may result in a log(0) or division-by-zero error. The division-by-zero error can be avoided by adding a constant to each histogram bin. To evaluate the stability of KL divergence, we varied the added constant from 1 to 10−7 in steps of 10−1. As a result, we confirmed that using a constant of 0.001 or smaller yields stable outcomes. Therefore, the proposed method adopts 0.001 as the added constant. The body part with the minimum dKL(P||Q) is taken to be the device position.
4 Evaluation experiment
This section describes the experiment conducted to evaluate the estimation accuracy of the device position using the proposed method. Since pulse waves vary with the time of measurement, two experiments were conducted to investigate the effect of the data-acquisition date on position accuracy: (Experiment 1) using data acquired on the same day, and (Experiment 2) using data acquired on different days. According to the research by (), there is individual variability in pulse wave velocity, which is related to vascular stiffness. When compared by age, older adults with hardened arteries have faster pulse wave propagation velocity than younger individuals with more elastic arteries. In the proposed method, it is also assumed that pulse wave velocity varies among individuals and that the distribution of time difference data differs accordingly. This paper estimated the attachment position using training and test data from the same person.
4.1 Hardware
The device configuration implemented in this paper is shown in Figure 5. The device comprises a reflective-mode pulse wave sensor with a green LED (PulseSensor.com)1 connected to an ESP32-DevKitC V4 (ESP32, Espressif Systems).2 Two ESP32s communicate via Bluetooth and are each wired to a separate PC. Pulse wave data is transmitted to each PC via the corresponding ESP32, where it is processed for evaluation. Pulse wave data is measured via an AD conversion on the ESP32 at approximately 960 Hz.
Figure 5
4.2 Experiment 1
Estimation accuracy was evaluated using data collected on the same day.
4.2.1 Data collection and setup
Five subjects (A–E, all male; average ± SD age: 22.2 ± 0.4 years, height: 173.7 ± 6.2 cm, weight: 63.8 ± 7.8 kg) participated in the experiment. The target body parts were 12 positions shown in Figure 6: (1) forehead, (2) mouth, (3) left ear, (4) right ear, (5) left upper arm, (6) right upper arm, (7) left wrist, (8) right wrist, (9) left finger, (10) right finger, (11) left toe, and (12) right toe. Each subject wore one pulse wave sensor on the left wrist and another on one of the 12 body parts and stood upright with their arms at their sides for measurement. Two 1-min measurements were taken on the same day for each body part, totaling 1 min × 2 times × 12 body parts × 5 subjects = 120 min of data.
Figure 6
To investigate the effect of the lengths of the training data and test data on the estimation accuracy, the pulse wave data were divided into segments of length Ltrain seconds for the training data and Ltest seconds for the test data. Here, Ltrain and Ltest were set to 5, 10, 15, 30, and 60 s, and all combinations of the segmentation conditions (Ltrain, Ltest) were evaluated.
For each combination of segmentation conditions, estimation accuracy is evaluated by varying the number of body parts from 2 to 12 and calculating accuracy for all possible combinations. Let N∈{2, 3, …, 12} denote the number of body parts, and let Sk⊆S (k = 1, …,12CN) denote all possible sets of N body parts selected from a set of 12 body parts S. The results for Sk are aggregated to construct a single confusion matrix, from which the F1 score for each body part Fp(Sk) is calculated, where p∈Sk is a body part. Then, the average F1 score across body parts for Sk is calculated using Equation 5.
While fixing N, the average F1 score over 12CN combinations is calculated by Equation 6.
F(N) is obtained for an arbitrary pair of training data and test data. At last F(N) are obtained for all combinations of the segmentation condition (Ltrain, Ltest) and the accuracy Fmean(N) is obtained by averaging all F(N). For example, when the segmentation condition is (5,5), the number of combinations of selecting 5-s training data from 1-min data is 60/5 = 12. Similarly, the number of combinations for selecting 5-s testing data from 1-min data is 12. Since we collected two 1-min data sets, there are two ways to choose a 1-min data set for training or testing. The number of combinations of the segmentation condition (5,5) is 12 × 12 × 2 = 288. The estimation accuracy for N is obtained by averaging F(N) over 288 combinations. For the other segmentation conditions, the estimation accuracy is obtained in the same manner.
In addition, the best-performing body-part combination is found by calculating F(Sk) for all combinations of the segmentation conditions (Ltrain, Ltest). Then, the average for each identical combination of body parts is calculated as Fcomb(Sk), and its maximum value is defined as the best accuracy Fmax(N) for a given number of body parts N.
The above procedure was repeated while varying N, and Fmean(N) and Fmax(N) were calculated for each N and each segmentation condition (Ltrain, Ltest), respectively. In this way, the average accuracy and maximum accuracy of the proposed method were evaluated for pulse wave data acquired on the same day.
4.2.2 Results
The line graphs in Figure 7 show Fmean(N) for each segmentation condition (Ltrain, Ltest). The horizontal axis and the vertical axis in each graph show the number of body positions N and Fmean(N), respectively. The lines with different colors show the results of each test subject (A–E). The error bars indicate the standard deviations computed over all F1 scores included in the calculation of Fmean(N), namely over all body-part combinations and all train/test data combinations. Fmean(N) closer to 1 means the better result. Under all segmentation conditions, Fmean(N) tended to increase as the number of target body parts N decreased. The highest accuracy was obtained when the number of target body parts N = 2 and (Ltrain, Ltest) = (60, 60), where Fmean(N) reached 0.94. Reducing the number of target body parts may have eliminated the different body parts with similar distributions, thereby suppressing misclassification. In addition, under the condition where Ltrain was fixed, the accuracy improved as Ltest increased. On the other hand, although an improvement in accuracy was also observed when Ltest was fixed, and Ltrain was increased, the degree of improvement was smaller than that observed when Ltest was increased. These results indicate that a certain level of accuracy can be maintained even with short training data.
Figure 7
Figure 8 shows Fmax(N) for each segmentation condition (Ltrain, Ltest). How to read each graph is the same as Figure 7. The error bars indicate the standard deviations computed over the train/test data combinations for the body-part combination that achieved the highest mean F1 score. Similar to Fmean(N), Fmax(N) tended to increase as the number of target body parts N decreased. The highest accuracy was obtained when the number of target body parts N = 2 and (Ltrain, Ltest) = (60, 60), where Fmax(N) reached 1. In addition, when Ltrain and Ltest are increased, an improvement in accuracy was observed. Furthermore, Fmax(N) = 1 is achieved for the classification of up to five body parts in all subjects, and Subject C achieved Fmax(N) = 1 even for the classification of up to eight body parts. These results indicate that, by appropriately selecting target body parts, there exist combinations that can be classified with 100% accuracy.
Figure 8
4.3 Experiment 2
Estimation accuracy was evaluated using data collected on different days.
4.3.1 Data collection and setup
Ten subjects (A–C and F–L, all male; average ± SD age: 22.5 ± 0.8 years, height: 171.8 ± 6.3 cm, weight: 60 ± 10.1 kg) participated in the experiment. Subjects A–C were the same individuals as Subjects A–C in Experiment 1. The 12 target body parts were the same as those in Experiment 1, and the sensor attachment method was also identical to that used in Experiment 1. For each body part, a 1-min measurement was conducted once per day over five different days, totaling 1 min × 5 measurements × 12 body parts × 10 subjects = 600 min of data.
Data acquired on one day were used for training, and data acquired on a different day were used for testing. All possible combinations were evaluated. Following the same procedure as in Experiment 1, Fmean(N) and Fmax(N) were calculated for each segmentation condition and each data acquisition timing condition.
4.3.2 Results
Figure 9 shows Fmean(N) for each segmentation condition (Ltrain, Ltest). The horizontal axis and the vertical axis in each graph show the number of body positions N and Fmean(N), respectively. The lines with different colors show the results of each test subject (A–C and F–L). The error bars indicate the standard deviations computed over all F1 scores included in the calculation of Fmean(N), namely over all body-part combinations and all train-day/test-day combinations. Fmean(N) closer to 1 means the better result.
Figure 9
Under all segmentation conditions, Fmean(N) tended to increase as the number of target body parts N decreased. The highest accuracy was obtained when the number of target body parts N = 2 and (Ltrain, Ltest) = (60, 60), where Fmean(N) reached 0.79. Reducing the number of target body parts may have eliminated the different body parts with similar distributions, thereby suppressing misclassification. In addition, under the condition where Ltrain was fixed, the accuracy improved as Ltest increased. On the other hand, although an improvement in accuracy was also observed when Ltest was fixed, and Ltrain was increased, the degree of improvement was smaller than that observed when Ltest was increased. These results indicate that a certain level of accuracy can be maintained even with short training data.
Figure 10 shows Fmax(N) for each segmentation condition (Ltrain, Ltest). The error bars indicate the standard deviations computed over the train-day/test-day combinations for the body-part combination that achieved the highest mean F1 score. Similar to Fmean(N), Fmax(N) tended to increase as the number of target body parts N decreased. The highest accuracy was obtained when the number of target body parts N = 2 and (Ltrain, Ltest) = (60, 60), where Fmax(N) reached 1. In addition, when Ltrain and Ltest are increased, an improvement in accuracy was observed under some conditions. Subject F achieved Fmax(N) = 1 for classification of up to three body parts. In contrast to Experiment 1, however, there was no number of body parts for which Fmax(N) = 1 was achieved commonly across all subjects.
Figure 10
5 Discussion
This section discusses the evaluation results, examines the limitations of the proposed method, and compares it with related work.
5.1 Different positions with similar time difference distributions
In both Experiments 1 and 2, no substantial improvement in Fmean(N) was observed for many subjects, even when Ltrain and Ltest were increased. In contrast, the estimation accuracy improved as the number of target body parts decreased. To examine this tendency, the distributions of the time difference data obtained in Experiments 1 and 2 are shown for each subject in Figures 11, 12, respectively. The horizontal axis shows the body parts (see Section 4.2.1) and the vertical axis shows the time difference between the wrist and each body part. These figures indicate that the distributions of the time difference data were similar among multiple body parts, such as the (5) left upper arm and (6) right upper arm. Therefore, reducing the number of target body parts likely decreased confusion between body parts with similar distributions, thereby improving estimation accuracy. On the other hand, even when the lengths of the training and test data were increased, the influence of body parts with similar distributions of time differences remained substantial, potentially leading to misclassification.
Figure 12
Figure 11
In addition, the distributions on different days in Figure 12 are more widely spread than those in the data acquired on the same day shown in Figure 11. In Experiment 2, even when the number of target body parts was reduced, the distributions of time difference data remained similar for some body parts, which may have led to lower estimation accuracy than in Experiment 1. Furthermore, this decrease in accuracy may also have been caused by shifts in the distributions of the time difference data due to day-to-day variations in pulse wave velocity. To further improve estimation accuracy, it is necessary to develop a method for aligning distributions across data acquired on different days, for example, by correcting the distributions of time-difference data.
It is also conceivable that the distribution can be altered by changing the posture during data acquisition from an upright posture to other postures. For example, examining distributions in non-upright postures such as sitting, lying prone, or raising an arm may provide useful insights. Furthermore, given variations in skin thickness and noise from body movement, analyzing the pulse wave's amplitude and waveform for each body part may enhance position estimation accuracy.
5.2 User dependence
The time-difference distributions observed in this study varied across users. Therefore, models trained on data from other users may not generalize well to a new user without calibration. In the proposed method, each user is required to collect their own pulse wave data for training. This user-dependent nature is one of the main limitations of the proposed method. However, this limitation does not necessarily preclude practical use cases. Many wearable devices, such as smartwatches and personal health-monitoring devices, are owned and repeatedly used by the same user. In such scenarios, user-specific training data can be collected during an initial setup or calibration phase and reused during subsequent operation. Thus, the proposed method is more suitable for personalized wearable systems than for fully user-independent deployment. In addition, some applications do not require discrimination among all possible body positions. For example, when adapting notification modalities, it may be sufficient to distinguish among a limited number of functional body-position categories, such as near-ear, visible, and vibration-feedback positions. Similarly, on-body robots may require only an approximate or initial position rather than fine-grained classification of all candidate body parts. Our experimental results showed that the estimation accuracy improved as the number of target body parts decreased, suggesting that the proposed method can be effective when the set of possible attachment positions is limited in advance.
Nevertheless, reducing the need for user-specific training data remains an important direction for future work. If users share similar pulse-wave propagation characteristics, data from one user may be partially transferable to another. Pulse wave velocity is related to vascular properties through models such as the Moens–Korteweg equation (), and can also be assessed using indices such as baPWV (), which measures the propagation time between the upper arm and ankle. In future work, we will investigate methods for normalizing or correcting time-difference distributions using pulse-wave-velocity-related information, with the aim of reducing the amount of user-specific training data required.
5.3 Comparison with related work
We compared the proposed method with the work by () that used PPG and ECG. In the related work, an average F1 score of 0.805 was achieved for attachment position estimation across 15 body parts, including the same body parts as those used in our study, as well as the nose, neck, and waist. In contrast, our method achieved a maximum Fmean(2) of only 0.79, indicating lower estimation accuracy. Our approach enables continuous pulse wave measurement with widely available PPG sensors, offering greater applicability than ECG-based methods, which are less suited to continuous monitoring.
6 Prototype device
This section introduces the device implementing the proposed method. The device is shown in Figure 13. One pulse wave sensor (manufactured by PulseSensor.com), identical to that used in the evaluation experiments, was connected to an ESP32 via a wired connection, and two 1.5-V AA alkaline batteries were used as the power supply. When the developed device is attached to an arbitrary body part, it displays the classification result using the red and green LEDs mounted on the device. Specifically, the red LED corresponds to the left upper arm, and the green LED corresponds to the left finger. For example, when the device is attached to the left finger, the green LED lights up, as shown in Figure 14.
Figure 13
Figure 14
7 Conclusion
In this paper, we proposed a method for estimating the position of a wearable device using the difference in pulse wave peak times measured at the wrist and at an arbitrary body part. The results showed that when the number of target body parts was 2, the maximum F1 score was 1 for both data acquired on the same day and on different days. In contrast, when all 12 body parts were used as targets, the maximum F1 score was 0.58 for data acquired on the same day and 0.29 for data acquired on different days.
We plan to investigate how body posture influences time difference distributions to enhance accuracy. Additionally, we will collect data from participants of different genders and ages to assess the effects of gender and age on estimation accuracy. Furthermore, our goal is to develop a user-independent method that utilizes time difference distributions from other users.
Statements
Data availability statement
The raw data supporting the conclusions of this article will be made available by the authors, without undue reservation.
Ethics statement
The studies involving humans were approved by Ritsumeikan University Research Ethics Review Committee. The studies were conducted in accordance with the local legislation and institutional requirements. The participants provided their written informed consent to participate in this study.
Author contributions
RK: Writing – original draft. KM: Writing – review & editing.
Funding
The author(s) declared that financial support was not received for this work and/or its publication.
Acknowledgments
The content of this manuscript has been presented in part at the Proceedings of the 2025 ACM International Symposium on Wearable Computers (ISWC '25) ().
Conflict of interest
The author(s) declared that this work was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.
Generative AI statement
The author(s) declared that Generative AI was used in the creation of this manuscript. The author(s) used a generative AI tool only for language polishing of the manuscript. The author(s) reviewed and edited the output and take full responsibility for the content of the manuscript.
Any alternative text (alt text) provided alongside figures in this article has been generated by Frontiers with the support of artificial intelligence and reasonable efforts have been made to ensure accuracy, including review by the authors wherever possible. If you identify any issues, please contact us.
Publisher’s note
All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.
Footnotes
2.^https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32/esp32-devkitc/index.html
References
1
AtallahL.LoB.KingR.YangG.-Z. (2011). Sensor positioning for activity recognition using wearable accelerometers. IEEE Trans. Biomed. Circuits Syst. 5, 320–329. doi: 10.1109/TBCAS.2011.2160540
2
AvramR.TisonG. H.AschbacherK.KuharP.VittinghoffE.ButznerM.et al. (2019). Real-world heart rate norms in the health eHeart study. NPJ Digit. Med. 2:58. doi: 10.1038/s41746-019-0134-9
3
BayatiH. Millánm J. R ChavarriagaR. (2011). “Unsupervised adaptation to on-body sensor displacement in acceleration-based activity recognition,” in 2011 15th annual international symposium on wearable computers (San Francisco, CA), 71–78. doi: 10.1109/ISWC.2011.11
4
CoskunD.IncelO. D.OzgovdeA. (2015). “Phone position/placement detection using accelerometer: impact on activity recognition,” in 2015 IEEE tenth international conference on intelligent sensors, sensor networks and information processing (Singapore). doi: 10.1109/ISSNIP.2015.7106915
5
DementyevA.HernandezJ.FollmerS.ChoiI.ParadisoJ. (2017). “SkInBot: a wearable skin climbing robot,” in UIST'17 adjunct: adjunct proceedings of the 30th annual ACM symposium on user interface software and technology (Québec City, QC), 5–6. doi: 10.1145/3131785.3131796
6
DementyevA.KaoH.-L. C.ChoiI.AjiloD.XuM.ParadisoJ. A.et al. (2016). “Rovables: miniature on-body robots as mobile wearables,” in UIST '16: proceedings of the 29th annual symposium on user interface software and technology (Tokyo), 111–120. doi: 10.1145/2984511.2984531
7
FujinamiK.KouchiS.XueY. (2012). “Design and implementation of an on-body placement-aware smartphone,” in 2012 32nd international conference on distributed computing systems workshops (Macau), 69–74. doi: 10.1109/ICDCSW.2012.52
8
GordonC. C.BlackwellC. L.BradtmillerB.ParhamJ. L.BarrientosP.PaquetteS. P.et al. (2014). 2012 Anthropometric Survey of U.S. Army Personnel: Methods and Summary Statistics. Technical Report, U.S. Army Natick Soldier Research, Development and Engineering Center.
9
GoslingR. G.BudgeM. M. (2003). Terminology for describing the elastic behavior of arteries. Hypertension41, 1180–1182. doi: 10.1161/01.HYP.0000072271.36866.2A
10
HenpraserttaeA.ThiemjarusS.MarukatatS. (2011). “Accurate activity recognition using a mobile phone regardless of device orientation and location,” 2011 international conference on body sensor networks (Dallas, TX), 41–46. doi: 10.1109/BSN.2011.8
11
KaoH.-L. C.HolzC.RosewayA.CalvoA.SchmandtC. (2016). “Duoskin: rapidly prototyping on-skin user interfaces using skin-friendly materials,” in ISWC '16: proceedings of the 2016 ACM international symposium on wearable computers (Heidelberg), 16–23. doi: 10.1145/2971763.2971777
12
KostikisN.RigasG.KonitsiotisS.FotiadisD. I. (2021). Configurable offline sensor placement identification for a medical device monitoring Parkinson's disease. Sensors21:7801. doi: 10.3390/s21237801
13
KoteraR.MuraoK. (2025). “Estimating the position of a wearable device using pulse wave peak time differences with a smartwatch,” in Proceedings of the 2025 ACM international symposium on wearable computers (New York, NY), 61–67. doi: 10.1145/3715071.3750408
14
KullbackS.LeiblerR. A. (1951). On information and sufficiency. Ann. Math. Stat. 22, 79–86. doi: 10.1214/aoms/1177729694
15
KunzeK.LukowiczP.JunkerH.TrösterG. (2005). Where am I: recognizing on-body positions of wearable sensors. Locat. Context Aware. 3479, 264–275. doi: 10.1007/11426646_25
16
MikaelL. R.PaivaA. M. G.GomesM. M.SousaA. L. L.JardimP. C. B. V.VitorinoP. V. O.et al. (2017). Vascular aging and arterial stiffness. Arq. Bras. Cardiol. 109, 253–258. doi: 10.5935/abc.20170091
17
PhamS.YeapD.EscaleraG.BasuR.WuX.KenyonN. J.et al. (2020). Wearable sensor system to monitor physical activity and the physiological effects of heat exposure. Sensors20:855. doi: 10.3390/s20030855
18
PierleoniP.BelliA.PalmaL.PellegriniM.PerniniL.ValentiS. (2015). A high reliability wearable device for elderly fall detection. IEEE Sens. J. 15, 4544–4553. doi: 10.1109/JSEN.2015.2423562
19
RasoF. M.CockcroftJ.McenieryC. Yasmin (2010). Determinants of pulse wave velocity in healthy people and in the presence of cardiovascular risk factors: ‘establishing normal and reference values'. Eur. Heart J. 31, 2338–2350. doi: 10.1093/eurheartj/ehq165
20
SztylerT.StuckenschmidtH.PetrichW. (2017). Position-aware activity recognition with wearable devices. Pervasive Mob. Comput. 38, 281–295. doi: 10.1016/j.pmcj.2017.01.008
21
TomiyamaH.ShiinaK. (2020). State of the art review: Brachial-Ankle PWV. J. Atheroscler. Thromb. 27, 621–636. doi: 10.5551/jat.RV17041
22
VahdatpourA.AminiN.SarrafzadehM. (2011). “On-body device localization for health and medical monitoring applications,” in 2011 IEEE International Conference on Pervasive Computing and Communications (Seattle, WA), 37–44. doi: 10.1109/PERCOM.2011.5767593
23
YamamotoY.HaradaS.YamamotoD.HondaW.ArieT.AkitaS.et al. (2016). Printed multifunctional flexible device with an integrated motion sensor for health care monitoring. Sci. Adv. 2:e1601473. doi: 10.1126/sciadv.1601473
24
YoshidaK.MuraoK. (2019). “Estimating load positions of wearable devices based on difference in pulse wave arrival time,” in ISWC '19: proceedings of the 2019 ACM international symposium on wearable computers (London), 234–243. doi: 10.1145/3341163.3347743
Summary
Keywords
photoplethysmography, position estimation, PPG, pulse wave, smartwatch, wearable device
Citation
Kotera R and Murao K (2026) A position estimation method of a wearable device using pulse wave peak time differences with a smartwatch. Front. Comput. Sci. 8:1841980. doi: 10.3389/fcomp.2026.1841980
Received
29 March 2026
Revised
17 May 2026
Accepted
12 June 2026
Published
09 July 2026
Volume
8 - 2026
Edited by
Franca Delmastro, National Research Council (CNR), Italy
Updates
Copyright
© 2026 Kotera and Murao.
This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.
*Correspondence: Kazuya Murao, murao@fc.ritsumei.ac.jp
Disclaimer
All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article or claim that may be made by its manufacturer is not guaranteed or endorsed by the publisher.