Bootloader 4

Die Unterscheidung zwischen Lizenzkunden und Originalkunden wird aufgegeben. Alle Images werden mit dem pro-key verschlüsselt. Die Images werden nun auch auf der MoBaCon-Webseite veröffentlicht (ist einfacher als sie per Mail rumzuschicken).

Der Updatemechanismus mit auf MAC-Adresse verschlüsselten Updates wird jedoch beibehalten.

Bootloader 3

Funktionsumfang

Flashen eines mit XTEA verschlüsselten Binaries welches im TFTP-Binärmodus übertragen wird. Das Auslesen des geflashten Images ist im Nachhinein nicht mehr möglich. Es ist nicht möglich, Images zu flashen, die nicht mit dem korrekten Schlüssel verschlüsselt wurden.

Es existieren derzeit zwei verschiedene Schlüssel, einer für Lizenzkunden (keypro_license.bin) und einer für Originalkunden (keypro_license.bin). Für spezielle Anforderungen können auch andere Schlüssel erzeugt werden.

Lizenzkunden

Diese Kunden haben bereits einen oder mehrere Netzer mit installiertem Bootloader 2. Dieser wurde bei Elektor oder MoBaCon im Shop gekauft. Mit der Lizenz (im Shop gekauft) erwirbt der Kunde ein Lizenz-File für einen Netzer. Dieser wird mit der MAC-Adresse identifiziert. Die MAC-Adresse muss vom Kunden bei der Bestellung mit angegeben werden!

Mit dem Lizenzfile kann ein Netzer von Bootloader 2 auf Bootloader 3 migriert werden. Im Anschluss kann jedes beliebige Image, welches mit dem richtigen Schlüssel verschlüsselt wurde aufgeflasht werden.

Originalkunden

Diese Kunden kaufen einen oder mehrere Netzer mit bereits installiertem Bootloader 3. Dieser wurde beim Elektronikladen oder MoBaCon im Shop gekauft.

Die Images für Originalkunden und Lizenzkunden unterscheiden sich, da sie mit verschiedenen Schlüsseln verschlüsselt werden! Das zugrundeliegende Hexfile ist jedoch das Gleiche. Ein kleiner Unterschied besteht dennoch: Der Versionsstring enthält bei der Lizenzversion zur besseren Unterscheidung noch ein lic.

Releasefiles

Das Release wird mittels des Shell-Scripts releasePro.sh im root des Netzer-Projektverzeichnisses erstellt. Das Script wird nur aufrufen, wenn auch ein Release ansteht. Sonst findet sich im Releases-Ordner der entsprechende Ordner für das neueste Release.

Folgende Files sind im Release enthalten:

  • txt-Files für die Dokumentation - sie sind mit den Files der Basis-Version identisch
  • boot3udate_MACless.hex - Ein Hex-Update von Bootloader 2 auf Bootloader 3 (unabhängig von der MAC-Adresse)
  • NetzerIObase.bin - Die verschlüsselte Basis-Version für Neukunden
  • NetzerIOpro.bin - Die verschlüsselte Pro-Version für Neukunden
  • NetzerIOpro_license.bin - die verschlüsselte Pro-Version für Lizenz-Kunden
  • NetzerIObase.hex - die unverschlüsselte Basis-Version für Neukunden
  • NetzerIOpro.hex - die unverschlüsselte Pro-Version für Neukunden
  • NetzerIOpro_license.hex - die unverschlüsselte Pro-Version für Lizenzkunden

Was nicht enthalten ist:

  • NetzerIObase_license.hex - die unverschlüsselte Basis-Version für Lizenz-Kunden macht keinen Sinn, da die Basisversion frei downloadbar ist und mit Boot 2 nach wie vor installiert werden kann.
  • NetzerIObase_license.bin - die verschlüsselte Basis-Version für Lizenz-Kunden macht keinen Sinn, da die Basisversion frei downloadbar ist und mit Boot 2 nach wie vor installiert werden kann.
  • Lizenz-Files - Diese müssen aufgrund des MAC-Stempels für jeden Kunden individuell generiert werden.

Update des Netzers für Lizenzkunden

Lizenz-Kunden, die über einen Netzer mit Bootloader 2 verfügen und eine Netzer-Lizenz erworben haben, müssen zunächst auf Bootloader 3 updaten. Dazu bekommen sie ein Hex-File mit dem Update. Dieses Hex-File wird speziell für die MAC-Adresse des zu lizensierenden Netzers zugeschnitten. Nur der korrekte Netzer ist danach mit pro- und base-Images für Lizenzkunden bespielbar.

Sollte fälschlicherweise eine Netzer mit der falschen MAC-Adresse beschrieben werden, hilft nur ein Löschen mit ICD!

Zunächst wird boot3 gebaut mit Referenz auf den Schlüssel keypro_license.key. Danach wird das update von boot2 auf boot3 ebenfalls mit Referenz auf den Schlüssel keypro_license.key gebaut. Es muss außerdem die MAC-Adresse für das Target-Device angegeben werden.

All das erledigt das Shell-Script “releaseProLicense.sh” im root des Netzer-Projektverzeichnisses. Die MAC-Adresse wird diesem Script als Kommandozeilenparameter übergeben in Form von XX-XX-XX-XX-XX-XX. Ergebnis des Shell-Scripts ist ein Intel-Hexfile. Der Filename enthält die MAC-Adresse des Ziel-Netzers um Verwechslungen vorzubeugen.

Das verschlüsselt Image (NetzerIOpro_license.bin) für die Pro-Version erhalten die Kunden per e-Mail.

Kunden führen nun die folgenden Flash-Befehle aus:

  1. Update auf Boot3:
    tftp 192.168.97.12 PUT boot3update_XX-XX-XX-XX-XX-XX.hex
  2. Installieren der Pro Version:
    tftp -i 192.168.97.60 PUT NetzerIOpro_license.bin

Schritt 2 wird auch dann ausgeführt, wenn Updates anliegen.

Update des Netzers für Originalkunden

Durch Aufruf des Shell-Sciptes “releasePro.sh” im root des Netzer-Projektverzeichnisses werden die Images Version 1.4 gebaut.

Es wird auch das Image für License-Kunden mitgebaut, das ist für einfacheres Deployment auf die Webseiten gedacht (nutzerabhängiger Download).

Außerdem wird boot3 mit dem richtigen Keyfile (keypro.key) gebaut und ein MAC-unabhängiges bootupdate gebaut (boot3update_MACless.hex). Alle(!) Netzer mit installierten boot2 können mittels diesem bootupdate auf Original boot3 gezogen werden. Anschliessend kann die base- oder pro-Version geflasht werden.

Update auf Boot3 (boot3udate_MACless.hex ist ein MAC-unabhängiges Update-File):

tftp 192.168.97.12 PUT boot3update_MACless.hex

Installieren der Pro-Version:

tftp -i 192.168.97.60 PUT NetzerIOpro.bin

Installieren der Base-Version:

tftp -i 192.168.97.60 PUT NetzerIObase.bin

In Other Languages
Translations of this page:
QR Code
QR Code Bootloader 4 (generated for current page)