Classroom participation is supposed to be simple: you raise your hand, the teacher sees it, and you speak.But in reality, it doesn’t work that way.
We’re a team of students who have sat in classes where raising a hand often meant… nothing. You’d be holding your arm up for minutes, just to see someone else called before you.It wasn’t about who needed help most. It was about who the teacher happened to notice. This wasn't fair and it wasn’t efficient.
So we imagined a different way: a button. Silent, discreet, connected.
We built CheckMate to give every student a fair voice in the classroom, with no shouting, no waving, no being ignored. Just click, and your group is added to a queue the teacher sees in real time. Order is respected. Tensions drop. And learning flows better.
⚙️ How It WorksEach group of students has one CheckMate device, powered by an Arduino MKR WAN 1310. When a button is pressed, the message is sent over LoRaWAN to The Things Network (TTN), which triggers a webhook that sends the request to a web server.
The web server receives the request and updates a live interface on the teacher’s computer, showing all pending student requests clearly and in the order they were made.
🖥️ FeaturesButton 1: Ask for help (code 1)
Button 2: Validate a step (code 2
Button 3: Cancel a request (code 3
)
Auto-reset: After 5 minutes, the LED turns off automatically
Live queue: Teacher sees student requests in order of arrival
Low-power: LoRaWAN for minimal energy usage and wide range
🔌 System ArchitectureStudent presses a button on the CheckMate device
Arduino MKR sends the request over LoRaWAN
TTN forwards the payload to a webhook
PHP server parses the payload and updates a MySQL database
The teacher’s interface fetches and displays the updated request list in real time
Web backend (PHP + MySQL):Webhook endpoint receives decoded TTN messages
Request data stored and updated in MySQL
Real-time dashboard (demandes.php
) displays queue
Comments