Software
Das wichtigste zuerst
39C3 2025
Alle Daten für die Software findet ihr hier: Firmware Repo (PlatformIO): github.com/HazeCore/Nametag_Firmware
Firmware-Projekt
CCCamp 2023
Damit die Firmware einfach und schnell zu benutzen ist, habe ich das Projekt in “PlatformIO” aufgesetzt. PlatformIO ist ein Tool, das es ermöglicht, mit einer einheitlichen Konfiguration die Toolchain für viele verschiedene Mikrocontroller automatisiert zu installieren, um dann damit die Firmware zu kompilieren.
Das hat den Vorteil, dass man auch ohne viel Erfahrung mit der Toolchain schnell loslegen kann und sich primär nur mit dem Code beschäftigen kann. Einzige Voraussetzung dafür ist, dass PlatformIO installiert ist. Das ist mit wenigen Klicks erledigt und kann entweder global oder in einer IDE wie VSCode direkt installiert werden.
Programmierung des Microcontrollers
CCCamp 2023
Der Microcontroller der Attiny402-Serie auf dem Namensschild kann per UPDI direkt programmiert werden. Es gibt keinen Bootloader oder ähnliches. Dafür reicht schlicht und einfach der Speicher nicht aus.
Gleich zu Anfang: Keine Angst vor UPDI. Es ist zwar ein eigenes Protokoll, aber man kann sich problemlos selbst Programmer bauen. Ich habe zwei Varianten im Projekt. Eine mit einem Arduino Nano und eine mit einem FTDI Adapter. Beide sind in PlatformIO als Targets vorhanden.
Variante 1: Arduino Nano als Programmer
Vorteile:
- Einfach aufzubauen
- Massiv schneller beim Programmieren als über FTDI Adapter (ca. 8 mal schneller)
Benötigte Materialien:
- Arduino nano mit jtag2udpi Firmware
- Breadbord
- 1 kOhm Widerstand
- 4,7 kOhm Widerstand
Eine gute Beschreibung und Anleitung des Aufbaus gibt es im Internet z.B. hier! Ich versuche einige Widerstände dabei zu haben. Die groben Schritte sind dann:
- Arduino Nano mit der Firmware flashen
- 1K Widerstand zwischen den Reset Pin und den 5V Pin des Arduino Nano (verhindert ein Reset des Arduino Nano)
- 4,7k Widerstand zwischen D6 und den UPDI Pin des Namennschilds / ATTiny402
- Arduino Nano an den PC anschließen
- PlatformIO starten und beim Target “default” Upload auswählen
- PlatformIO kompiliert die Firmware, downloaded dazu alle benötigten Programme und beginnt den Upload
Euer Namensschild sollte jetzt neu geflashed sein! Bei Problemen nehmt gerne Kontakt auf. Ich versuche gerne weiter zu helfen.
Variante 2: FTDI Adapter als Programmer
Wenn man keinen Arduino nano zur Hand hat kann man auch einen generischen USB serial adapter (z.b. den ft232rl) nehmen. Wenn mich jemand richtig davon überzeugt, dass er Lust hat an der Firmware zu spielen, habe ich in meiner Tasche auch ein paar Adapter, die den FTDI direkt UPDI fähig machen. Diese sind zwar wesentlich langsamer als der Arduino nano aber dafür auch sehr viel komfortabler.

Wenn ich keine Adapter mehr habe, ist es auch hier möglich den Aufbau einfach nachzubauen:

Benötigte Materialien:
- FTDI Adapter (z.b. FT232RL)
- Breadbord
- 470 Ohm Widerstand
- Schottky Diode (z.B. SS14)
Nützliche Seite zum Aufbau: hier
Auch hier versuche ich ein paar passende Widerstände und Dioden dabei zu haben. Die groben Schritte sind dann:
- FTDI Adapter an den PC anschließen
- 470 Ohm Widerstand zwischen RX und UPDI Pin des Namensschilds / ATTiny402
- Schottky Diode zwischen TX und RX des FTDI (Achtung: Polung beachten! Die Diode muss von RX nach TX des FTDI Adapters zeigen)
- PlatformIO starten und beim Target “SerialUPDI” Upload auswählen
- PlatformIO startet kompiliert die Firmware, downloaded dazu alle benötigten Programme und beginnt den Upload
Selbe Leier wie oben: Wenn es nicht klappt, meldet euch gerne bei mir.