HSC2011/Software: Unterschied zwischen den Versionen

aus Metalab, dem offenen Zentrum für meta-disziplinäre Magier und technisch-kreative Enthusiasten.
Wechseln zu: Navigation, Suche
(firmware: remove section, moved to firmware)
Zeile 5: Zeile 5:
 
* [[HSC2011/Firmware|Firmware]] run on the ATMega controllers (for hardware control and radio communication)
 
* [[HSC2011/Firmware|Firmware]] run on the ATMega controllers (for hardware control and radio communication)
 
** The firmware can run additional code inside a [[HSC2011/Virtual machine|virtual machine]] for tasks like LED fading, meldoy beeping or even autonomous games.
 
** The firmware can run additional code inside a [[HSC2011/Virtual machine|virtual machine]] for tasks like LED fading, meldoy beeping or even autonomous games.
* [[HSC2011/Middleware|Middleware]] running natively on the computer (for serving the firmware, managing communication and for persistence)
+
* [[HSC2011/Software/ygor|Middleware]] running natively on the computer (for serving the firmware, managing communication and for persistence)
 
* A [[HSC2011/Frontend|Frontend]] running in a web browser (containing the game logic itself)
 
* A [[HSC2011/Frontend|Frontend]] running in a web browser (containing the game logic itself)
  

Version vom 2. Mai 2011, 18:55 Uhr

< HSC2011

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

this webserver will provide a webinterface to the javascript application

there are positions open for

  • the webserver/serialcom (python) amir implements this job with java
  • the webfrontend application logic (javascript)
  • the webfrontent design (CSS)
  • firmware and protocoldesign (AVR)

PC server

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.