====== Thema: MEXLEfirst – Infrastruktur für intelligente Module und verteilte Firmware-Updates ====== ==== Motivation/Hintergrund ==== {{drawio>studentische_arbeiten:MEXLEKoffer_SS25.svg}} Im Rahmen des [[https://wiki.mexle.org/mexle2020/mexlefirst#erstes_mockup_der_hardware|MEXLEfrist Projekts]] wird eine modulare und interaktive Lernumgebung für die Elektrotechnik entwickelt. Ein zentraler Bestandteil ist eine Hardware-Plattform, bei der verschiedene Module auf einem Modulträger eingesetzt und durch eingebettete Software sowie eine Server-/Web-Infrastruktur ergänzt werden. Für die Weiterentwicklung des Systems sind insbesondere verschiedene Softwaretechnische Fragestellungen noch offen: So sollen aufgesteckte 1x1-Module automatisch erkannt und ihrer Position auf dem Modulträger zugeordnet werden können. Zwar können intelligente Module bereits elektrisch kontaktiert und beispielsweise über I2C angesprochen werden, ihre räumliche Position auf dem System ist jedoch bislang nicht unmittelbar bekannt. Weiterhin soll die Firmware der verteilten Mikrocontroller im System effizient aktualisiert werden können. Hierfür bietet sich eine Over-the-air-Update-Infrastruktur an, bei der Firmware-Dateien vom Server über den ESP32 an die zuständigen Controller im System weitergegeben und über geeignete Programmierschnittstellen eingespielt werden. Das Projekt verbindet damit Elektronikentwicklung, Embedded Software, Kommunikationsschnittstellen und Systemintegration in einem praxisnahen Kontext. ==== Ziel ==== Ziel des Masterprojekts ist die Konzeption und prototypische Umsetzung zentraler Systemfunktionen für die nächste Ausbaustufe von MEXLEfirst. Im Mittelpunkt stehen: * die Identifikation und Positionszuordnung von 1x1-Modulen auf dem Modulträger, * der Aufbau einer Infrastruktur für Over-the-air-Firmware-Updates verteilter Mikrocontroller, * sowie die systematische Integration beider Funktionen in die bestehende MEXLE-Hardware- und Softwarearchitektur. ==== Aufgabenstellung ==== Im Rahmen des Projekts sollen insbesondere folgende Aufgaben bearbeitet werden: * Analyse des vorhandenen MEXLE-Systems und der relevanten Kommunikations- und Programmierschnittstellen. * Einarbeitung in die bestehende Hardware- und Softwarearchitektur des Modulträgers sowie der aufgesteckten Module. * Entwicklung eines Konzepts zur automatischen Identifikation und Positionsbestimmung von 1x1-Modulen auf dem Modulträger. * Entwurf und prototypische Umsetzung der dafür notwendigen Elektronik-Erweiterungen. * Entwicklung der zugehörigen Embedded-Software auf dem eingesetzten RP2354B bzw. kompatiblen Systemkomponenten. * Entwicklung eines Konzepts für Over-the-air-Updates der im System verteilten AVR-Mikrocontroller. * Implementierung einer Update-Kette, bei der Firmware-Dateien vom Server über den ESP32 an die zuständige Steuereinheit übertragen und anschließend über die UPDI-Schnittstelle auf AVR-Controller programmiert werden. * Untersuchung von Anforderungen an Robustheit, Fehlerbehandlung, Versionierung und Update-Sicherheit. * Integration und Test der entwickelten Funktionen im Gesamtsystem. * Dokumentation, Evaluation und Demonstration anhand eines funktionsfähigen Prototyps. ==== Betreuer/Ansprechpartner mit Kontaktdaten ==== * Betreuer: Prof. Tim Fischer, Ralf Ziegler * Bereich: TE MR ==== Zielgruppe ==== Für wie viele Studierende geeignet? * Geeignet für 1-2 Studierende Für welche Studiengänge geeignet? * ESE Master * ASE Master * Mechatronik Master ==== Hinweise / mögliche Schwerpunktsetzung ==== Das Projekt eignet sich besonders gut als gemeinsames Über-Projekt mit zwei eng gekoppelten Arbeitspaketen: * Arbeitspaket 1: Module Identification of 1x1 Modules * Arbeitspaket 2: Over-the-air Flashing of AVR Chips Damit ist sowohl eine Bearbeitung durch eine einzelne Person mit breitem Systemfokus als auch eine Aufteilung auf mehrere Studierende mit komplementären Schwerpunkten möglich.