Shoulder Angle Dashboard

Reads the ESP /angle API and classifies shoulder abduction against clinical ranges.

Device logic: 5 s averaging + 2 confirmations on-board; data is shown live here.

Waiting for IP

When you press Enter or click Start, the page will poll /angle every second. CORS is open on the device.

Last update: —

Live Angle

Angle
--
Signed pitch (deg)
Abs Angle
--
Absolute pitch (deg)
Vibration hits (last 1s)
--
SW-18010P pulse count (angle above threshold)
Vibration analog
--
ADC raw on AO (GPIO4)
Pending condition
--
Current 5s average classification (waiting for 2 hits)
Confirmed condition
--
After two consecutive matches
Analysis window: 5 s Required hits: 2 Limit: 100° Vibration hits: --
WiFi: -- Device IP: --
Prediction (client-side)
--
Uses the last 10 samples (abs angle avg) to suggest likely state

Angle Trend (last 60 samples)

Streaming absolute angle; rescales automatically.
Local check
--
Client-side classification (mirrors device ranges)

Condition Ranges (abduction limits)

Condition Range (deg) Notes

Ranges mirror the Arduino classification so the web view matches on-device logic.

What each state means

  • Deltoid Paralysis: 0–15° · arm barely lifts.
  • Post-Stroke weakness/spasticity: 20–70° · poor control.
  • Rotator Cuff Tear (Supraspinatus): 30–60° active lift capped.
  • Frozen Shoulder: 40–80° stiff; above 90° painful.

More ranges

  • Shoulder Impingement: 60–120° painful arc; rarely past 100°.
  • Cervical Radiculopathy: 45–90° nerve weakness with neck pain.
  • Severe Osteoarthritis: 30–90° mechanical pain limits lift.
  • Above 120°: likely functional; below 30–40° investigate severe limits.

How this page works

Doctor Panel

Not logged in

Login/register to see device history, improvement, and add physio exercises for each device IP.

Login

Register