The EduBuzzer has software run in three parts:
- Firmware run on the ATMega controllers (for hardware control and radio communication)
- The firmware can run additional code inside a virtual machine for tasks like LED fading, meldoy beeping or even autonomous games.
- Middleware running natively on the computer (for serving the firmware, managing communication and for persistence)
- A Frontend running in a web browser (containing the game logic itself)
The communication through the whole software is described in the communication documentation.
there will be different software components involved
there is a firmware on each device
there will be a hostsoftware (webserver) that runs on the pc/laptop
there are positions open for
the webserver/serialcom (python)amir implements this job with java
- the webfrontent design (CSS)
- firmware and protocoldesign (AVR)
There is a proof-of-concept implementation of a serial controller and a simple voting game for debugging purposes in the repository. It demonstrates that the firmware can also do logins, handle disconnected clients and respond to events.