Aaaaaaaaaha! Der Multifunktionshund!
Infrastruktur und technische Umsetzung Hack’n’Sun
Besprechen, wie wir HacknSun dieses Jahr technisch umsetzen wollen.
Siehe ggf. auch Sommerfreizeit 2023 auf EduGit
- bei dem Campdays (22/23 April)
- 03.04. 20 Uhr
- 04.04. 20 Uhr
- 05.04. 20 Uhr
- 06.04. 20 Uhr
- 11.04. 20 Uhr
- 12.04. 20 Uhr
- 03.04. 19 Uhr
- 04.04. 19 Uhr
- 05.04. 19 Uhr
- 06.04. 19 Uhr
- 11.04. 19 Uhr
- 12.04. 19 Uhr
0 Teilnehmer
Da ich das ganze - schon wieder - verpennt habe, können wir den ersten Termin leider nicht mehr nehmen.
Das Treffen findet am Mittwoch, dem 12.04.2023 um 20 Uhr statt
@lukasw @krfl9500 Passt das für euch auch? Tut mir leid, dass ich den ersten Termin verpennt habe!
BBB-Raum: Technische Umsetzung HnS
Agenda: Sign in · GitLab
Ich fürchte, dass ich nicht teilnehmen kann (wir sind in England und ich habe keine Ahnung, wie es mit WLAN aussieht). Wenn ihr nichts von mir hört bedeutet das, dass ich kein Internet habe.
Workshopplanung
Wir wollen wieder ein Workshop-Porgramm anbieten. Hier soll die Workshop-Planung dokumentiert werden.
Rahmenbedingungen
- Wir haben 4 Slots
- Jeder Slot geht 3 Stunden
- Beachtung der lessons learned
Vorschläge für Workshops
- Spiele programmieren mit PyGame
- Modular
- In 3h haben wir ein spielbares Spiel, welches aber erweiterbar ist
- Wetterstation
- Nur löten - Die Teilnehmenden bekommen das fertige Programm
- Nur programmieren - Die Teilnehmenden bekommen ein fertig gelötetes Set
- Die Teilnehmenden löten in einem Slot das Set, in einem zweiten Programmieren sie
Matrix-Lampe- Spiele programmieren mit RenPy
- Lötsets von Blinkyparts
- LED-Matrix mit ESP
niceGuy
Herausforderungen
- gute anwendbare Templates (PyGame)
- “Wir geben alles vor” vs. “Die Teilnehmenden müssen zuviel selbst machen”
- Wir benötigen eine fertige Platine (Wetterstation und Lampe)
- Wir brauchen genug Lötkolben (Wetterstation/Lampe, Lötkits)
- RenPy muss debuggt werden
Todos
PyGame (@robert , @mwinter, @krfl9500, @pinguin )
-
Templates fertigstellen
-
Dokumentation der Templates
-
Alle Funktionen gut erklären
- Wie passe ich die Templates an?
- Was kann jede Funktion?
- Wie wende ich die Funktion an? (Input/Output)
-
Grafiken und Sounds zusammenstellen
- CC-0-Lizenzen an die entsprechenden Bilder schreiben (Rest ist schon dokumentiert)
-
Workshop durchgehen
-
Dokumentation jemand fachfremdem geben
Wetterstation und Löten
- Platine für Wetterstation/Lampe designen (@mwinter, @macked47, @krfl9500 )
- 5 Lötkolben organisieren (@mwinter , @benni, @tteichler )
- Platinenentwürfe bestellen
- Funktionsreferenz (z.B. für mytrix) erstellen
- Lötanleitung überarbeiten
- Platinenentwürfe testen
- Platinen überarbeiten
- Fehlende Teile bestellen
- Platinen bestellen
- Termin mit Timo Schindler von blinkingparts (@nik)
- Lötkits bestellen
RenPy
- RenPy debuggen (@nik )
- Konzept Entwicklung Storyboard
- Kurzanleitung RenPy
- Zusatz: Herausfinden wie man Ren’Py-Spiele für Android/iOS baut ohne mit Error-Messages zugespammt zu werden
LED-Matrix
- ggf. Steckbrücken löten
- MicroPython und library flashen
- Beispiele für Anzeigen überlegen (Inspirationen bei BlinkenRocket )
- statische
- dynamische
- Übersichtsblatt über Bits&Bytes und Display-Matrix erstellen
- Bitmap-Font vorbereiten
- Bibliothek ausprobieren: µfrabuled
- Demoprogramm erstellen
- Funktionsreferenz der Bibliothek
Sonstiges
- niceGUI ausprobieren (@pinguin , @codecraft , @lukasw )
- Didaktisches Konzept für die Workshops entwickeln (@mwinter, @robert, @nik)
Testliste vor den Vorbereitungstagen
- PyGame-Templates
- Alles außer Geschosse
- Geschosse
- Elektronik Wetterstation
- Basisprogramm Wetterstation
- Elektronik LED-Matrix
- Basisprogramm LED-Matrix
- Demo-Programm RenPy
Benötigtes Material
- Technische Leitung
- Notebook für jeden Teilnehmenden
- Debian-Pakete: Thonny, pygame, pytmx, Tiled, git
- RenPy als SDK (Ren'Py 8.1.1)
- Alle User in Gruppe dialout
- openjdk-8 als default java & javac (zum Bauen von APKs aus RenPy)
- Alle Repos (unter Git-Repos) bitte den TN zur Verfügung stellen
- sonstige:
- IOT-WLAN
- Matrix-Accounts für ESPs
- 2 Beamer
- Notebook für jeden Teilnehmenden
- Organisatorische Leitung
- Lötkits
- 10 Lötkolben
- Sonstiges
- Platinen für ESPs
Git-Respos
PyGame
RenPy
Wetterstation
LEDMatrix
Tutoren
Pygame
RenPy
Wetterstation
LED-Matrix
Springer
Session-Ergebnis 20.05.2023
Allgemeines
- Frontale Einführung kurz halten
- Gute Dokumentation
- Früh Teilnehmende selbst Arbeiten lassen
- Bei Fragen → Zeigen wie es geht, Teilnehmenden Umsetzung überlassen
Spieleprogrammieren
Promised Skills (TN wissen/können folgendes)
- Was ist Import?
- Variablen/(Datentypen)
- If-Else-Verzweigungen
- Schleifen aller Art
- Was sind Klassen/Funktionen?
- Wie funktioniert Tiled?
- Grundlagen pygame (Wie erstelle ich einen Bildschirm? Was sind Surfaces? Wie verarbeite ich Benutzereingaben? Sprites?)
- Wie finde ich Musik/Grafiken für mein Spiel?
Aufbau
- Gemeinsamer Beginn
- Ca. 10 Min für Booten/Thonny zeigen/ Anmeldung/Beginn etc
- Zeigen des Main-Templates & Tiled
- Teilnehmenden an selber Programmieren bringen
- Ein Objekt in Tiled hinzufügen (Klasse gibt es schon)
- Interaktion mit dem Objekt
Seite der Kollision ist egal
Seite der Kollision ist nicht egal - Ein Objekt hinzufügen (Klasse gibt es noch nicht)
- Insg. Allerhöchstens 1h
- Beginn der Programmierung
- Wie arbeiten ich mit der Doku?
- Wie passe ich die vorgebenen Klassen an?
- Danach: Selbstständig programmieren
Änderungen an den Hilfsmitteln
- Templates werden in der Anwendung stark vereinfacht
- Importieren, nur noch Parameter durchgeben
- Das Main-Template läuft schon ohne Änderungen
- Wir geben den TN eine Dokumentation für die Templates mit.
- Wir stellen Tileset, Musik, Sounds & sprites zur Verfügung
Nutzung der Pakete
- Wir binden Tiled stärker ein (Einfügen von Spielern/Gegnern/Objekten geht über Tiled)
Wetterstation
Promised Skills (TN wissen/können folgendes)
- Löten
- Grundlagen MicroPython
- Nutzung der mytrix-Bibliothek
Wir behalten das Konzept von letzten Jahr bei. Ändern werden wir allerdings folgendes:
- Mehr Lötkolben
- Fertige Platinen
- Verschiedene/Mehr Bausätze anbieten
LED-Matrix
- Grundlagen
- Elektronik + Microcontroller
- Was ist ein Programm
- Was sind Bits und Bytes
- Löten
- MicroPython ausprobieren
- statische Dinge anzeigen
- dynamisch Dinge anzeigen
RenPy
Fokus: Kreative Arbeit
- Skript entwickeln
- Kurze übersicht über den Aufbau und die Befehle
- Kinder basteln lassen
Meine Oma hat am 10. Juli (dem ersten Tag von Hack’n’Sun) Geburtstag und wird 80 Jahre alt. Daher würde ich sehr gerne zu ihrem Geburtstag. Klappt das? Braucht ihr mich da für irgendetwas?
Ich wäre abends auch wieder da.
Ich würde mich gerne mal online treffen um am Pygame-Workshop zu arbeiten. Stimmt dafür bitte einmal hier ab, wann ihr könntet.
- Montag, 29., 15:00
- Montag, 29., 17:00
- Montag, 29. 19:00
- Dienstag, 30., 17:00
- Dienstag, 30., 19:00
- Mittwoch, 31., 17:30
- Mittwoch, 31., 19:00
- Donnerstag, 1., 19:00
0 Teilnehmer
niceGUI ausprobieren: Das haben wir am Campday ausprobiert. Mit vorbereiteter Anleitung geht das gut, aber alles sich von Hand zu erarbeiten ist doch etwas schwierig.
Dann lass uns doch hier Montag um 17:00 nehmen (BBB-Raum).
4 Beiträge wurden in ein neues Thema verschoben: Vorbereitungstreffen Hack’n’Sun
Es könnte bei mir hiermit kollidieren.
Im Anschluss an das Vorbereitungstreffen am 18. Juni findet das virtuelle Kennenlerntreffen statt (siehe Hack’n’Fun-Chatraum). Wer sein Workshop-Team noch unterstützen und virtuell dabei sein kann, ist sehr willkommen.
Erkentnisse aus dem Gespräch mit Timo Schindler am 10.06.2023
Wie lange brauchen Personen ohne Löterfahrung für das Löten einfacher Kits?
- Eine Stunde bei unerfahrenen
Welche Kits von blinkingparts bieten sich für Lötanfänger an?
RGB-Einhorn
RGB-Axolotl
RGB-Rakte
Welche Verbesserungen gibt es noch an dem Platinen-Layout für die Wetterstation?
- Steckbrücke für Jumper bei der Stromversorgung
- Kondensatoren zur Spannungsstabilisierung
- Elko 10uF
- Keramik 100nF
- Widerstände (68Ω) für die Leds auf die Platine
- 2-Schicht-Design
- komplette obere Ebene mit +5V oder +3.3V
Wir können für die Bestellung einen Rabatt-Code nutzen
Notizen zur Vorbereitung
Themen an den Vorbereitungstagen
Die folgenden Meetings müssen an den Vorbereitungstagen stattfinden:
- Ablaufplanung (Uhrzeiten, usw.) – ganzes Team
- Einführung gewaltfreie Kommunikation (und Gesprächsführung) – ganzes Team
- Was machen wir wenn xy schief läuft? - Jedes Workshopteam
Anforderungen an Teams zum Aufbau und Ablauf
Organisatorische Leitung
- Serverraum und Materiallager getrennt. Vorschlag: Serverraum im großen Saal oben, Materiallager/Office im Kaminraum
- Dauerhafter Frontdesk im/am Kaminraum
Technische Leitung
- Einhaltung von Sicherheitsregeln und Grundordnung
Didaktische Leitung
Pädagogische Leitung
Inhalte für Infoscreens
- Ansprechpartner mit Themenbeispielen und Fotos
- Zeitabläufe und Angebote
- Erinnerung an die wichtigsten Regeln
Alex und ich kommen am 10. vielleicht eine Stunde zu spät, weil unser Vater vorher noch einen Arzttermin hat und wir den passenden Zug eventuell nicht bekommen. Das sollte kein zu großes Problem sein, oder?