Show a desktop notification when the AI TA finishes replying
Notify me when classmates post messages in the forum
Play an alert sound whenever there is a new notification
UeduPAD is a research-grade iOS app built on the Garmin Health Companion SDK, streaming beat-to-beat physiological signals from Garmin wearables to a phone or tablet in real time for classroom and research use. This manual explains the full workflow, from installation and sign-in, to watch pairing, live streaming, interval recording and upload, as well as multi-user measurement and data governance.
UeduPAD is a research-grade iOS app developed by the Uedu team, belonging to the Uedu Fit subsystem and built on Garmin Health Companion SDK. It connects to Garmin wearable devices via Bluetooth, reads beat-to-beat interval (BBI), heart rate, respiratory rate, stress and other physiological signals, and sends the data back to the Uedu platform after tagging it with the user's identity, becoming a source of population-level physiological data for multimodal learning analytics (MMLA).
UeduPAD is not an ordinary personal health app, but a physiological signal acquisition tool for classroom and research settings. It has two complementary data pathways:
| Path | Purpose | Corresponding page |
|---|---|---|
| Live streaming | Measurement in progress: heart rate / BBI / respiration rate / stress data are sent back to the platform in real time, by the second, for on-site monitoring and live analysis | Real-time data (Real-Time Data) |
| Interval recording and upload | Select a period of time, then upload the data already recorded by the watch afterwards for post-class review and research analysis | Choose Time (Choose Time) / Event (Event) |
Physiological signals collected by UeduPAD are written to Uedu Fit and Educational Omics Data Lake, and are PALM Physiologically-Aware Language Modelsone of the primary sources. The marketing and technology showcase introduction page is at /uedupad(In-site shell version /uedupad/intro)。
Before starting the measurement, please confirm that these three things are ready:
| Item | Description |
|---|---|
| iOS device | An iPhone or iPad (iOS 15 or later), with the UeduPAD App installed and Bluetooth enabled |
| Garmin watch | Supports devices with beat-by-beat interval (BBI) streaming, such as vívoactive 5. The watch must be charged, switched on and within Bluetooth range |
| Uedu account | One set of Uedu platform account credentials (email + password). If you do not yet have an account, you can click "Register" on the sign-in page, or register first at uedu.tw/signup |
Please wear the watch correctly on your wrist (snug, not too loose) and, during measurement, minimise vigorous hand movements to maintain the quality of the optical heart-rate and BBI signals. On iOS devices, please keep the app in the foreground during measurement and avoid auto-lock (see Chapter 5 for details).
After launching the App, the SDK will initialise first, the splash screen will briefly appear, and then the login screen will open.
If you do not yet have an account, click "Register" on the sign-in page; the app will open uedu.tw/signup to complete registration, then return here to sign in.
After logging in,you must first pair a watch before entering the main screen — when unpaired, the app will automatically pop up the device selection window.
One instance of the UeduPAD app pairs with and streams from one watch at a time. Multi-user synchronous measurement is achieved by 'each person using their own device and watch, and signing in separately'; the aggregated view is presented on the platform side (see Chapter 7), rather than one iPad connecting directly to multiple watches.
After entering the home screen, there are five tabs at the bottom:
| Pagination | Purpose |
|---|---|
| Live data Real-Time Data | Display the watch’s current heart rate, BBI, blood oxygen, respiration rate, steps, stress and acceleration, and stream second-by-second signals back to the platform in real time (see Chapter 5) |
| User information User Info | Display the login account, name and currently connected device name; switch interface language (Traditional Chinese / English); log out |
| My device My Device | View the status, battery level and synchronisation of paired devices |
| Choose time Choose Time | Create a timed recording interval and upload the watch-record data for that interval afterwards (see Chapter 6) |
| Activity Event | Create a multi-day recording schedule by "activity" (for example, a seven-day Python course), and upload it day by day (see Chapter 6) |
The 'Live Data' tab is the heart of on-site measurement. When entering this tab, the app automatically begins requesting a live data stream from the watch, and displays the following items on screen one by one:
While staying on this tab, the App will sample the current heart rate / BBI / respiration rate / stress at second-level intervals, package it as an event with millisecond timestamps and user identity, and upload it to the Uedu platform in real time.
Uploads use a 'first-in, first-out queue + local staging' design: each measurement event is first written to a local device file, and only removed from the queue after successful delivery to the platform (the server returns success); if there is no network at the time or the upload fails, the data is kept in the queue and automatically resent when the connection is restored, so it will not be lost.
When an App is sent to the background or the device enters standby, iOS pauses the live stream; it automatically resumes when returning to the foreground. Therefore, for formal measurements, please keep UeduPAD running in the foreground and do not switch to other Apps midway.
BBI and its derived HRV indicators (such as RMSSD and pNN50) are objective proxy indicators of cardiac autonomic activity.Before algorithmic validation in a specific context, these signals must not be directly equated with stress, emotion or learning state; all physiological and behavioural correspondences must be research-validated. Garmin wearable devices are consumer health products, not medical devices.
In addition to live streaming, UeduPAD can also select a period of time and upload the recorded data from the watch afterwards. This route is suitable for post-class review and batch collection, and is divided into two modes: "Select time" and "Activity".
You can use "Refresh" to update each item's status, or "Delete / Delete all records" to clear them.
The "Activities" tab uses one "activity" to cover collection over multiple consecutive days, which is especially suitable for measurements that span several weeks, such as a Python course:
Real-time streaming (Chapter 5) is second-by-second data at the moment of measurement, used for on-site monitoring; interval upload (this chapter) is data already recorded on the watch and retrieved afterwards, used for post-class review. The two can be used together: real-time streaming during class, then interval upload afterwards to complete the full record.
Every uploaded item is tagged with your logged-in user identity and a millisecond timestamp, so the platform can compare across individuals on the same time axis and align with classroom events.
Measurement for an entire class or group is completed by each participant using their own device:
The group-aggregation view of “one device to see the whole class” presents everyone’s data after it has been collected on the platform side (web dashboard), rather than a single device connecting directly to everyone’s watch via Bluetooth. The common workshop setup of “two people to a pair, one wearing the watch while the other monitors, then swapping over” also follows this model — the watch wearer logs in with their own account, and the data belongs to that person.
UeduPAD collects highly sensitive physiological data, and its governance aligns with Uedu's overall research ethics framework:
For the governance unit of the research team and the "participant-led authorisation" mechanism for research projects (mirror view, access logs, withdrawal at any time), see Uedu Labs laboratories and research projects overview. See how physiological signals are used by AI, PALM Physiologically-Aware Language Models Methodology. Research informed consent at Research Informed Consent CenterSign.
Real-time streaming measurements require a Garmin watch that supports BBI streaming (such as vívoactive 5). In workshop settings, if there are only a limited number of watches, those who do not get a watch can first watch the live demonstration or use a preloaded sample dataset, and then take turns to test it themselves.
Check in order: (1) whether the watch is connected (confirm on the "My devices" tab); (2) whether Bluetooth is on and the watch is within range; (3) whether the watch is fitted correctly to the wrist. Returning to the "Live data" tab will request the stream again.
When switched to the background, iOS will pause the live stream; it will resume automatically when you return to the foreground. Measured but unsent data are kept in the local queue and will not be lost. However, for continuous and complete measurement, please keep UeduPAD in the foreground during formal measurement.
Yes. Data is first stored in a local queue on the device and automatically resent when the network is restored. After a long offline measurement, return to a networked environment and keep the app in the foreground for a while to let the queue finish sending.
Real-time streaming means sending second-by-second data back to the platform at the moment of measurement, for on-site monitoring and real-time analysis; time/activity selection means uploading data already recorded by the watch back to the platform afterwards in segments, for post-class review and batch collection. The two can be used together.
No. One app streams one watch at a time. For multi-person measurement, each person should use their own device and account; the aggregate class-wide view is shown on the platform side (see Chapter 7).
Not recommended. BBI and HRV are objective surrogate indicators of cardiac autonomic activity; before algorithmic validation in a specific context, they should not be directly equated with stress, emotion or learning state. All physiological and behavioural correspondences must be interpreted only after research validation.