Skip to content

MRM-MB/LEVELUP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LevelUp ⬆️

LevelUp is a Group 3 web app that guides users through healthy sit–stand cycles using Cornell ergonomics research, awards points that can be redeemed for gift cards, and can optionally integrate hardware features like LED alerts and display text on an OLED display via a Raspberry Pi Pico W.

LevelUp Note

Highlights

  • Sit/stand scheduler with audible and visual cues
  • Wifi2ble simulator that mimics a LINAK desk
  • Daily point tracking with anti-gaming rules and feedback colors
  • Optional Rasberry Pi Pico W board integration (OLED + RGB LED status display)

Getting Started

For full setup instructions including local PHP, Docker stack, simulator ports, and Pico W hardware flashing, please refer to the SETUP.md guide.

🔑 Login Credentials

Once the application is running and seeded, you can log in with the following credentials:

Role Username Password
Admin admin LevelUp!Demo#2026
User maxmust123 LevelUp!User#2026

🧪 Live Demo

We are currently hosting both the LevelUp app and the Wifi2Ble simulator. Open the simulator first and keep it open (https://levelup-simulator.onrender.com/), then open https://levelup-app-div9.onrender.com/ (the LevelUp app), which reads from the hosted simulator.

What you can do in the demo

  • Log in as admin or user
  • View dashboards, rewards, stats, and profiles
  • Use the admin control dashboard to create/edit users and manage desks
  • Register and assign desks from the simulator
  • Run sit/stand cycles using the simulator API

What the demo does not include

  • Pico W hardware integration (OLED, RGB LED, pause button)

Demo Limitations

  • You can’t use the hosted demo and a Pico W at the same time (the demo can’t reach local hardware).
  • Demo data resets periodically (ephemeral storage), including demo users created through the admin account (see credentials above).

To use a Pico W Run the Laravel app locally or on a server in the same network as the Pico W, then set WIFI2BLE_BASE_URL to the Pico W’s URL. See SETUP.md for the Pico W setup steps.

Wifi2ble Simulator

The wifi2ble box simulator exposes the same API as a LINAK desk controller so you can test commands locally without moving a real desk. Run it when you want to validate commands, telemetry, and logging.

Points At A Glance

  • Daily cap: Earn up to 160 points per day
  • Minimum cycle: 15 minutes total, shorter cycles earn 0 points
  • Scoring: Weighted blend of ratio accuracy (70%, target 20 min sit : 10 min stand) and duration balance (30%, target ~30 min)
Health Score Points Feedback
90–100 +10 🟢 Perfect balance
70–89 +7 🟡 Great — minor tweaks optional
50–69 +4 🟠 Fair — adjust times
<50 or <15 min 0 🔴 Too short or imbalanced
Rewards Page

Points can be redeemed for gift cards in this page

Pico W Controls

Pause button

Pause button img

RGB LED transition indicator

RGB LED transition indicator
Pico W Display
  • OLED display – Shows the active user greeting, total points, and real-time sit/stand alerts so you can demo LevelUp away from the browser.
  • RGB LED – Glows purple while sitting, green while standing, and dims or pulses when the timer is paused.
  • Potentiometer – Connected to the Pico’s ADC to modulate LED brightness, turn the knob to match the lighting of your workspace or make demos camera-friendly.
  • Pause button (GP10) – Mirrors the in-app pause/resume toggle so you can control the timer from the hardware without touching the UI.

See SETUP.md for flashing instructions via Thonny.

👥 Contributors

Name GitHub Profile
Luigi Lucol24
Carolina chaeyrie
Gabriele Gabbo693
Lara Lara-Ghi
Mats mqts241
Manish -

About

Try a demo of the app here:

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors