LevelUp is a 3rd-semester project developed at the University of Southern Denmark (SDU) in collaboration with the Danish company LINAK by a 6-student team. The LINAK case focuses on desk usage supervision: collecting, visualizing, and analyzing desk usage data for health, occupancy, and maintenance. Building on that, our team proposed a well-being scenario and integrated the Cornell 20:10 rhythm plus a points-and-rewards gamification layer to motivate consistent sit-stand habits.
The solution combines a Laravel web app, a MySQL database, and a desk simulator to coordinate desk control and user activity. For setup steps (including Pico W configuration), please refer to the GitHub README. For diagrams, architecture details, and implementation notes, please refer to the project report below.
Tech stack: Laravel (MVC), PHP, MySQL, JavaScript, Blade, CSS, MicroPython, plus Dockerfile and Shell for setup scripts. The Pico W firmware uses MicroPython, flashed via Thonny.
Key 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 Raspberry Pi Pico W integration (OLED + RGB LED status).
Clock transition in the web app
Hosted Demo (Desk Simulator + App)
Open the simulator first, keep it running, then open the app (it reads from the hosted simulator).
Open the simulator · Open the LevelUp app
Demo limits: No Pico W hardware, ephemeral storage (data does not persist), and you cannot use the hosted demo with a Pico W. For Pico W use, run the app locally and set WIFI2BLE_BASE_URL (see SETUP.md).
Hardware Integration (Raspberry Pi Pico W)
If you have a Raspberry Pi Pico W, you can connect it while running the app locally. It syncs with the web app to fetch and display data and supports remote control. The firmware runs on MicroPython and is flashed with Thonny. It provides real-time feedback via OLED status, RGB indicators, and a pause button.
Project Report
For a detailed look at the problem analysis, design choices, and implementation details, please refer to the project report.