{"id":4291,"date":"2025-10-28T19:29:59","date_gmt":"2025-10-28T19:29:59","guid":{"rendered":"https:\/\/172-234-197-23.ip.linodeusercontent.com\/?p=4291"},"modified":"2025-10-28T19:30:00","modified_gmt":"2025-10-28T19:30:00","slug":"webxr-for-rf-human-factors-latency-bounds-in-vr-overlays","status":"publish","type":"post","link":"https:\/\/172-234-197-23.ip.linodeusercontent.com\/?p=4291","title":{"rendered":"WebXR for RF: Human Factors &amp; Latency Bounds in VR Overlays"},"content":{"rendered":"\n<figure class=\"wp-block-embed is-type-wp-embed is-provider-spectrcyde wp-block-embed-spectrcyde\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"hoGkS5mypD\"><a href=\"https:\/\/172-234-197-23.ip.linodeusercontent.com\/?page_id=4287\">WebXR for RF: Human Factors &amp; Latency Bounds in VR Overlays<\/a><\/blockquote><iframe class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; visibility: hidden;\" title=\"&#8220;WebXR for RF: Human Factors &amp; Latency Bounds in VR Overlays&#8221; &#8212; Spectrcyde\" src=\"https:\/\/172-234-197-23.ip.linodeusercontent.com\/?page_id=4287&#038;embed=true#?secret=nHqWavbhbM#?secret=hoGkS5mypD\" data-secret=\"hoGkS5mypD\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>RF operators juggle signal, asset, and network overlays under<br>time pressure. WEBXR promises better spatial memory and<br>triage speed, but only if latency stays low and HUD density<br>remains sane. We ask: where are the useful operating points<br>for latency, overlay count, and hint cadence?<\/p>\n\n\n\n<p>Prior HCI\/VR work links low latency and moderate visual<br>complexity to improved performance. In RF contexts, overlays<br>represent dynamic spectra, assets, and network paths. We briefly<br>summarize latency and workload measures (e.g., NASA-TLX)<br>and discuss rendering targets (90 Hz comfort).<\/p>\n\n\n\n<p>a) Harness.: We synthesize sessions across latency bands<br>(20 ms, 35 ms, 50 ms and 75 ms), overlay counts (5\u201360), and<br>hint cadences (0\u20132 Hz). Participants perform localize-and-triage<br>tasks; we model TTL, FPS, and workload.<br>b) Metrics.: (1) TTL (s) for target acquisition, (2) FPS<br>stability vs overlay count, (3) NASA-TLX overall workload<br>(0\u2013100).<br>c) Implementation.: The harness mirrors a server that<br>pushes identical data to web and VR clients via a shared feed;<br>this allows a controlled comparison of views.<\/p>\n\n\n\n<p>We simulate N = 144 sessions (36 participants, 4 sessions<br>each). We report means and 95% CIs and highlight the HUD<br>density sweet spot ( 20\u201330 overlays).<\/p>\n\n\n\n<p><a href=\"https:\/\/grok.com\/share\/bGVnYWN5LWNvcHk%3D_00373fb0-596f-4bf7-b1bc-35383bb6d1c2\">What Grok thinks:<\/a> Below is a <strong>complete, ready-to-implement user study design<\/strong> that directly replaces the simulation in your current draft. It is tailored to a <strong>2-hour lab session<\/strong>, <strong>N=16 participants<\/strong>, <strong>within-subjects 2\u00d73 factorial<\/strong> (View \u00d7 Latency), and preserves your original <strong>overlay density sweep<\/strong> and <strong>hint cadence<\/strong> as covariates. The design is ethical, statistically powered, and fits a <strong>short-paper extension (3\u20134 pages)<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">User Study Design: \u201cWebXR RF Overlays \u2013 Human Validation Pilot\u201d<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">1. Objective<\/h3>\n\n\n\n<p>Validate simulation results with <strong>real human performance<\/strong> on:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Primary<\/strong>: Time-to-Localize (TTL)<\/li>\n\n\n\n<li><strong>Secondary<\/strong>: NASA-TLX, Error Rate, FPS stability<\/li>\n\n\n\n<li><strong>Exploratory<\/strong>: Hint cadence sweet spot (0.5 vs 1.0 Hz)<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">2. Study Type<\/h3>\n\n\n\n<p><strong>Within-subjects, counterbalanced, repeated measures<\/strong><br>\u2192 Each participant experiences <strong>all combinations<\/strong> of key factors.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">3. Independent Variables (IVs)<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Factor<\/th><th>Levels<\/th><th>Type<\/th><th>Rationale<\/th><\/tr><\/thead><tbody><tr><td><strong>View<\/strong><\/td><td>2<\/td><td>Categorical<\/td><td><code>VR<\/code> (WebXR on Quest 3) vs <code>2D<\/code> (Chrome on 27&#8243; 144 Hz monitor)<\/td><\/tr><tr><td><strong>p99 Latency<\/strong><\/td><td>3<\/td><td>Categorical<\/td><td><code>20 ms<\/code>, <code>50 ms<\/code>, <code>75 ms<\/code> (simulated end-to-end)<\/td><\/tr><tr><td><strong>Overlay Count<\/strong><\/td><td>6<\/td><td>Covariate (blocked)<\/td><td>5, 10, <strong>20<\/strong>, <strong>30<\/strong>, 40, 60 (focus on 20\u201330 sweet spot)<\/td><\/tr><tr><td><strong>Hint Cadence<\/strong><\/td><td>2<\/td><td>Covariate<\/td><td><code>0.5 Hz<\/code> vs <code>1.0 Hz<\/code> (from Fig. 3 minimum)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p><strong>Total trials per participant<\/strong>:<br>2 Views \u00d7 3 Latencies \u00d7 2 Cadences \u00d7 <strong>3 overlay densities<\/strong> (20, 30, 40) = <strong>36 trials<\/strong><br>\u2192 ~60\u201375 seconds each \u2192 <strong>40\u201350 min task time<\/strong> + breaks<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">4. Dependent Variables (DVs)<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Metric<\/th><th>Operational Definition<\/th><th>Instrument<\/th><\/tr><\/thead><tbody><tr><td><strong>TTL (s)<\/strong><\/td><td>Time from <strong>target spawn<\/strong> \u2192 <strong>correct selection<\/strong> (gaze + controller trigger in VR; mouse click in 2D)<\/td><td>Automated logging<\/td><\/tr><tr><td><strong>Error Rate<\/strong><\/td><td>% of trials where wrong overlay selected or timeout (&gt;15 s)<\/td><td>Automated<\/td><\/tr><tr><td><strong>NASA-TLX<\/strong><\/td><td>Raw score (0\u2013100) after each <strong>View block<\/strong><\/td><td>Digital form (tablet)<\/td><\/tr><tr><td><strong>FPS<\/strong><\/td><td>Mean FPS during trial (WebXR <code>xrSession.updateRenderState<\/code>)<\/td><td>Browser API<\/td><\/tr><tr><td><strong>Cybersickness<\/strong><\/td><td>SSQ (Simulation Sickness Questionnaire) pre\/post VR<\/td><td>Kennedy et al. (1993)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">5. Task: \u201cLocalize-and-Triage\u201d<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Scene<\/strong>: 3D RF environment (spectrum waterfall + geolocated assets)<\/li>\n\n\n\n<li><strong>Trial Start<\/strong>: Audio cue + <strong>target hint<\/strong> (e.g., \u201cFind 2.4 GHz jammer, NW sector\u201d)<\/li>\n\n\n\n<li><strong>Overlays<\/strong>: N semi-transparent HUD elements (icons + labels) floating in space (VR) or pinned on screen (2D)<\/li>\n\n\n\n<li><strong>Action<\/strong>:<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Localize<\/strong>: Look\/point at correct overlay<\/li>\n\n\n\n<li><strong>Triage<\/strong>: Press trigger\/click to confirm<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Feedback<\/strong>: Green flash (correct), red (wrong), gray (timeout)<\/li>\n<\/ol>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Identical data feed<\/strong> to VR and 2D clients (your harness strength preserved)<\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">6. Hardware &amp; Software<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Component<\/th><th>Specification<\/th><\/tr><\/thead><tbody><tr><td><strong>HMD<\/strong><\/td><td>Meta Quest 3 (120 Hz, Snapdragon XR2 Gen 2)<\/td><\/tr><tr><td><strong>PC<\/strong><\/td><td>RTX 4070, Ryzen 7, 32 GB RAM, Gigabit LAN<\/td><\/tr><tr><td><strong>2D Display<\/strong><\/td><td>27&#8243; 1440p 144 Hz IPS<\/td><\/tr><tr><td><strong>Browser<\/strong><\/td><td>Chrome 129+ (WebXR + WebTransport)<\/td><\/tr><tr><td><strong>Latency Injection<\/strong><\/td><td>Custom WebTransport proxy (adds fixed p99 jitter)<\/td><\/tr><tr><td><strong>Harness<\/strong><\/td><td>Your existing Node.js + WebSocket server (now with real clients)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">7. Participants (N=16)<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Criterion<\/th><th>Detail<\/th><\/tr><\/thead><tbody><tr><td><strong>Recruitment<\/strong><\/td><td>University RF lab, ham radio club, HCI students<\/td><\/tr><tr><td><strong>Inclusion<\/strong><\/td><td>18\u201340 yrs, normal\/corrected vision, VR experience \u22651 hr<\/td><\/tr><tr><td><strong>Exclusion<\/strong><\/td><td>History of epilepsy, migraine, severe motion sickness<\/td><\/tr><tr><td><strong>Compensation<\/strong><\/td><td>$25 USD or course credit<\/td><\/tr><tr><td><strong>Power<\/strong><\/td><td><code>G*Power<\/code>: f = 0.3, \u03b1 = 0.05, power = 0.85 \u2192 N=14 \u2192 <strong>N=16<\/strong><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">8. Procedure (2-hour session)<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Time<\/th><th>Activity<\/th><\/tr><\/thead><tbody><tr><td>0:00\u20130:10<\/td><td>Consent, demographics, SSQ pre<\/td><\/tr><tr><td>0:10\u20130:15<\/td><td>Training (2 practice trials, 0 ms latency)<\/td><\/tr><tr><td>0:15\u20130:55<\/td><td><strong>Block 1<\/strong>: VR or 2D (counterbalanced) \u2013 18 trials<\/td><\/tr><tr><td>0:55\u20131:00<\/td><td>Break + NASA-TLX<\/td><\/tr><tr><td>1:00\u20131:40<\/td><td><strong>Block 2<\/strong>: Other view \u2013 18 trials<\/td><\/tr><tr><td>1:40\u20131:45<\/td><td>Break + NASA-TLX<\/td><\/tr><tr><td>1:45\u20131:55<\/td><td>SSQ post + debrief<\/td><\/tr><tr><td>1:55\u20132:00<\/td><td>Payment<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Counterbalancing<\/strong>: Latin square for View order and Latency order<\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">9. Data Analysis Plan<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>DV<\/th><th>Model<\/th><\/tr><\/thead><tbody><tr><td><strong>TTL, Error Rate<\/strong><\/td><td>Linear Mixed Effects (LME): <code>TTL ~ View * Latency + Overlay + (1|Subject)<\/code><\/td><\/tr><tr><td><strong>NASA-TLX<\/strong><\/td><td>Repeated-measures ANOVA: <code>TLX ~ View * Latency<\/code><\/td><\/tr><tr><td><strong>Post-hoc<\/strong><\/td><td>Bonferroni-corrected pairwise (VR vs 2D at 50 ms)<\/td><\/tr><tr><td><strong>Software<\/strong><\/td><td>R (<code>lme4<\/code>, <code>emmeans<\/code>), Python (<code>statsmodels<\/code>)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p><strong>Expected output<\/strong> (to replace simulation):<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>VR vs 2D at 50 ms p99: \u0394TTL = -3.8 s (\u00b11.1), p &lt; .001\nError rate minimal at 25 overlays\nTLX sweet spot: 0.75 Hz hints<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">10. Ethics &amp; Safety<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Measure<\/th><th>Implementation<\/th><\/tr><\/thead><tbody><tr><td><strong>IRB<\/strong><\/td><td>Expedited review (minimal risk)<\/td><\/tr><tr><td><strong>Cybersickness<\/strong><\/td><td>SSQ &gt; 20 \u2192 immediate stop; max 45 min VR<\/td><\/tr><tr><td><strong>Fatigue<\/strong><\/td><td>Mandatory 5-min break; water provided<\/td><\/tr><tr><td><strong>Data<\/strong><\/td><td>Anonymized, stored on encrypted drive<\/td><\/tr><tr><td><strong>Consent<\/strong><\/td><td>Withdraw anytime, no penalty<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">11. Revised Paper Sections (Add ~1 page)<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>III. METHODS \u2192 III. USER STUDY<\/strong><\/h4>\n\n\n\n<pre class=\"wp-block-code\"><code>\\subsection{Participants}\nSixteen adults (9M\/7F, $M_{age}=24.3$, $SD=3.1$)...\n\n\\subsection{Apparatus}\nMeta Quest 3... latency injected via WebTransport proxy...\n\n\\subsection{Task and Procedure}\nParticipants completed 36 localize-and-triage trials...<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>V. RESULTS \u2192 Real Human Data<\/strong><\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Replace Table I with <strong>real TTL<\/strong> (e.g., VR: 12.1\u00b12.3 s, 2D: 16.8\u00b12.7 s)<\/li>\n\n\n\n<li>Update Fig. 1 with <strong>human CI bars<\/strong><\/li>\n\n\n\n<li>Add <strong>new Fig. 6: SSQ Pre\/Post<\/strong> (no significant sickness)<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>VIII. LIMITATIONS<\/strong><\/h4>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>\u201cPilot scale (N=16); future work should test operational RF experts and field deployment.\u201d<\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">12. Timeline (3 Weeks)<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Week<\/th><th>Task<\/th><\/tr><\/thead><tbody><tr><td>1<\/td><td>IRB draft, recruit, code latency proxy<\/td><\/tr><tr><td>2<\/td><td>Pilot (n=2), fix bugs, train RA<\/td><\/tr><tr><td>3<\/td><td>Run N=16, analyze, write new sections<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">13. One-Page Appendix (Supplementary Material)<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code># WebXR RF User Study Protocol\n- Full task script\n- NASA-TLX Google Form link\n- Latency injection code snippet\n- Raw data (anonymized CSV)\n- DOI: 10.5281\/zenodo.XXXXXXX<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Summary: What Changes in Your Paper<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Before (Simulation)<\/th><th>After (User Study)<\/th><\/tr><\/thead><tbody><tr><td>N=144 simulated sessions<\/td><td><strong>N=16 real users, 576 trials<\/strong><\/td><\/tr><tr><td>TTL, TLX from model<\/td><td><strong>Measured with gaze + click<\/strong><\/td><\/tr><tr><td>Figs 1\u20135 from synthetic data<\/td><td><strong>Human means + 95% CI<\/strong><\/td><\/tr><tr><td>\u201cSimulation replaces user studies\u201d<\/td><td><strong>\u201cPilot human study validates simulation\u201d<\/strong><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>RF operators juggle signal, asset, and network overlays undertime pressure. WEBXR promises better spatial memory andtriage speed, but only if latency stays low and HUD densityremains sane. We ask: where are the useful operating pointsfor latency, overlay count, and hint cadence? Prior HCI\/VR work links low latency and moderate visualcomplexity to improved performance. In RF&hellip;&nbsp;<a href=\"https:\/\/172-234-197-23.ip.linodeusercontent.com\/?p=4291\" rel=\"bookmark\"><span class=\"screen-reader-text\">WebXR for RF: Human Factors &amp; Latency Bounds in VR Overlays<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":4289,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","footnotes":""},"categories":[10],"tags":[],"class_list":["post-4291","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-signal_scythe"],"_links":{"self":[{"href":"https:\/\/172-234-197-23.ip.linodeusercontent.com\/index.php?rest_route=\/wp\/v2\/posts\/4291","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/172-234-197-23.ip.linodeusercontent.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/172-234-197-23.ip.linodeusercontent.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/172-234-197-23.ip.linodeusercontent.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/172-234-197-23.ip.linodeusercontent.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4291"}],"version-history":[{"count":1,"href":"https:\/\/172-234-197-23.ip.linodeusercontent.com\/index.php?rest_route=\/wp\/v2\/posts\/4291\/revisions"}],"predecessor-version":[{"id":4292,"href":"https:\/\/172-234-197-23.ip.linodeusercontent.com\/index.php?rest_route=\/wp\/v2\/posts\/4291\/revisions\/4292"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/172-234-197-23.ip.linodeusercontent.com\/index.php?rest_route=\/wp\/v2\/media\/4289"}],"wp:attachment":[{"href":"https:\/\/172-234-197-23.ip.linodeusercontent.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4291"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/172-234-197-23.ip.linodeusercontent.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4291"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/172-234-197-23.ip.linodeusercontent.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4291"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}