# Alpine coaster admin & app – Diagnostics for alpine coasters

> A Flutter app and web portal for controlling and diagnosing around ten alpine coasters worldwide – with Bluetooth sync to up to 40 sleds at once.

Objectbay GmbH · 2024 · https://www.geraldgmainer.com/en/projects/rodelbahn

## Context

An alpine coaster is made up of many vehicles with their own electronics: battery, brake, belt lock, sensors. Technicians need to see the state of every sled and test its functions – right at the vehicle and, where possible, remotely.

## My role

- **Flutter app** for technicians and installers – diagnostics, function tests, status
- **Bluetooth communication** with up to 40 vehicles at once
- **Prioritisation, error handling** and offline support
- **Web portal** – work on the admin web with React Refine, Spring Boot and Keycloak

## Decisions

- **40 vehicles over Bluetooth:** A phone holds only a few Bluetooth connections at a time. The app therefore decides which sled has priority right now, works through the rest in order and handles dropped connections instead of leaving the technician to deal with them.
- **Works without a network:** The app works offline: diagnostics and tests run straight over Bluetooth, and the data is synced as soon as a connection is back.
- **Remote diagnostics:** In the web portal installers see the state of the sleds remotely and start diagnostics – with roles and permissions through Keycloak. That saves trips to the site.

## Key facts

- coasters worldwide: ~10
- vehicles at once over Bluetooth: 40
- diagnostics without network, sync after: Offline

## Stack

Flutter, Bluetooth (BLE), React Refine, Spring Boot, PostgreSQL, Keycloak
