This repository holds the code for an advanced quiz buzzer system. More than just knowing who pressed a button first, we can tell the exact reaction times etc.
For the web-server
to run, you need to install a library for the audio
dependency.
sudo apt-get update && sudo apt-get install -y libasound2-dev node-typescript
For the devboard
, you need to configure a local-link ethernet connection with
you laptop's IP fixed to 192.168.100.2
.
The devboard
crate is built for the STM32H745I-DISCO. It contains the code
which will run on the board.
The web-server
provides both the backend with which the board communicates and
hosts the frontend that users interact with.
Running the web server
# Currently, you need to start from this path due to hardcoded paths.
cd web-server
# Start with default/dev config
cargo run --release
# Start with production config
RUN_MODE=prod cargo run --release
In the production config, you can navigate to http://192.168.100.1:8000/ to see the frontend.
For the rust-analyzer
to work in VS Code in the devboard
folder, we need
to add custom settings in Ctrl+Shift+P
->
Preferences: Open User Settings (JSON)
.
{
"rust-analyzer.checkOnSave.allTargets": false,
"rust-analyzer.checkOnSave.extraArgs": ["--target", "thumbv7m-none-eabihf"]
}