02 Umgebungseinrichtung (venv, Flash-Tools und Firmware)
Erledigen Sie diese Seite vor dem Start. Die Befehle setzen den Repository-Stammordner voraus – den Ordner
SR-Support, den Sie von GitHub heruntergeladen haben (ein entpacktes Zip kannSR-Support-mainheißen; es ist der Ordner, derfirmware/undtools/enthält). Jeder Python-Befehl läuft im Terminal mit aktiviertem.venv(2.3). Das Flashen der vorgebauten Firmware erfordert kein PlatformIO und keine Kompilierung; die Entwicklerumgebung (2.5) dient nur zum Ändern des Codes.
2.1 Anforderungen
- Windows, Linux oder macOS (jeder Befehl unten ist dort, wo es darauf ankommt, für alle drei angegeben);
- ein USB-Datenkabel (ein reines Ladekabel lässt das Board nicht erscheinen);
- ESP32-S3-DevKitC-1 (8 MB Flash).
2.2 Code und vorgebaute Firmware besorgen
Klonen Sie das Repository (oder entpacken Sie das mitgelieferte Archiv) und führen Sie spätere Befehle aus dem Repository-Stammordner aus:
bashgit clone https://github.com/Juxi-Technology/SR-Support.git cd SR-Support(Das Repository ist privat – fordern Sie zuerst Zugriff an.)
Das vorgebaute Image liegt in
firmware/releases/:Datei Zweck sr_support_b_ptk_factory.binHauptfirmware (bei 0x0 flashen; wird auch zur Zentrierung bei der Montage verwendet: bis zum Firmware-Nullpunkt einschalten, eoptional)SHA256SUMSPrüfsummen
2.3 Virtuelle Umgebung erstellen und aktivieren (.venv)
Alle PC-seitigen Python-Tools (esptool, PlatformIO, die MuJoCo-Tools) gehören in dasselbe projektlokale .venv, und dieses .venv muss im Ordner SR-Support erstellt werden, den Sie von GitHub heruntergeladen haben (ein entpacktes Zip kann SR-Support-main heißen; auch hier gilt: der Ordner, der firmware/ und tools/ enthält).
Wechseln Sie zuerst in diesen Ordner – die folgenden Befehle laufen dort:
Windows (PowerShell)
cd D:\Project\SR-Support # replace with where your SR-Support folder lives
py -3.12 -m venv .venv
.\.venv\Scripts\Activate.ps1- Nicht sicher, ob Sie am richtigen Ort sind? Führen Sie
diraus; es mussfirmware,tools,tutorialauflisten; - Ohne Python 3.12 verwenden Sie
py -3 -m venv .venv(3.10+ funktioniert); - Wenn PowerShell die Ausführung von Skripten verweigert, führen Sie
Set-ExecutionPolicy -Scope Process Bypassin diesem Fenster aus und aktivieren Sie erneut; .\.venv\Scripts\Activate.ps1ist das PowerShell-Aktivierungsskript, das venv erzeugt: Das führende.\bedeutet „das Skript im aktuellen Ordner ausführen“ und ist in PowerShell erforderlich (ein einfachesActivate.ps1wird nicht gefunden). Andere Shells verwenden ihre eigene Datei:- cmd.exe:
.venv\Scripts\activate.bat - Git Bash:
source .venv/Scripts/activate - Das venv verlassen Sie mit
deactivate
- cmd.exe:
Windows (cmd.exe)
cd /d D:\Project\SR-Support # cmd needs /d to change drive; plain cd D:\... stays on C:
py -3.12 -m venv .venv
.venv\Scripts\activate.batSo unterscheiden Sie die Shells: cmd-Prompts sehen aus wie
C:\...>, PowerShell wiePS C:\...>. Das Tutorial verwendet standardmäßig PowerShell; in cmd tauschen Sie einfach den Aktivierungsbefehl gegenactivate.bat, alles andere ist identisch. Administratorrechte sind nicht nötig.Die Aktivierungsdatei muss zur Shell passen: cmd verwendet
activate.bat, PowerShell verwendetActivate.ps1. Das Ausführen der.ps1aus cmd heraus aktiviert nicht das aktuelle Fenster (meist passiert nichts, oder es öffnet sich ein separates Fenster). Stellen Sie außerdem sicher, dass.venvzuerst existiert (dirmuss den Ordner.venvauflisten); falls nicht, führen Sie zuerstpy -3.12 -m venv .venvaus.
Linux / macOS
cd ~/SR-Support # replace with where your SR-Support folder lives
python3 -m venv .venv
source .venv/bin/activate- Nicht sicher, ob Sie am richtigen Ort sind? Führen Sie
lsaus; es mussfirmware,tools,tutorialauflisten.
Nach der Aktivierung zeigt der Prompt (.venv). Jeder Befehl unten und auf den späteren Tutorial-Seiten läuft in diesem aktivierten Terminal; aktivieren Sie nach dem Öffnen eines neuen Fensters erneut. Ohne Aktivierung verweisen pip / python auf die Systeminstallation, und Installationen oder Aufrufe schlagen fehl.
Bestätigen Sie, dass die Aktivierung funktioniert hat:
- Windows:
where python– die erste Zeile muss...\SR-Support\.venv\Scripts\python.exesein; - Linux / macOS:
which python– muss.../SR-Support/.venv/bin/pythonsein.
Bildschirm nach dem Aktivieren in cmd geleert? Das mitgelieferte
activate.batschaltet vorübergehend die Konsolen-Codepage um (chcp 65001), und manche Terminals zeichnen den Bildschirm neu – es ist kein neues Terminal. Wenn der neue Prompt mit(.venv)beginnt undwhere pythonin.venvzeigt, war die Aktivierung erfolgreich. Um den Neuaufbau zu vermeiden, verwenden Sie PowershellsActivate.ps1(es berührt die Codepage nicht) oder rufen Sie.venv\Scripts\python.exeohne Aktivierung auf.
Verzeichnisanforderung (wichtig):
.venvmuss im OrdnerSR-Support(dem Repository-Stammordner) liegen, niemals in einem Unterordner. Die Erstellungs-/Aktivierungsbefehle oben verwenden relative Pfade und müssen daher aus diesem Ordner ausgeführt werden – wechseln Sie nach dem Öffnen eines neuen Terminals zuerst dorthin (PowerShell:cd D:\Project\SR-Support; cmd:cd /d D:\Project\SR-Support, mit Ihrem Pfad), bevor Sie aktivieren, oder verwenden Sie einen absoluten Pfad wieC:\path\SR-Support\.venv\Scripts\Activate.ps1/source /path/SR-Support/.venv/bin/activate.Nach der Aktivierung können Sie in jeden beliebigen Unterordner
cden, undpython/pip/piozeigen weiterhin auf dieses.venv; die Pfadetools/...,firmware/...undhardware/v1/...des Tutorials sind jedoch relativ, also führen Sie sie aus dem OrdnerSR-Supportaus. Das venv ist an den Pfad gebunden, an dem es erstellt wurde: Nach dem Verschieben oder Umbenennen des Repositorys löschen Sie.venvund erstellen es neu.
2.4 Flash-Tools (alle Kunden – eines wählen)
Ein vorgebautes Image ist eine einzelne Binärdatei, die bei 0x0 geflasht wird – kein PlatformIO, kein Toolchain-Download. Stellen Sie sicher, dass das Terminal im Ordner SR-Support ist und der Prompt (.venv) zeigt.
A. Windows-GUI: Espressif Flash Download Tool
- Öffnen Sie die offizielle „Other Tools“-Seite von Espressif und laden Sie die Flash Download Tools herunter: https://www.espressif.com/en/support/download/other-tools
- Starten Sie es; wählen Sie ESP32-S3, laden Sie
firmware/releases/sr_support_b_ptk_factory.binunter der Adresse0x0, wählen Sie den Port und klicken Sie auf START.
Das Flash Download Tool gibt es nur für Windows; unter Linux/macOS verwenden Sie unten esptool.
B. Windows / Linux / macOS: esptool (Kommandozeile)
pip install esptoolLangsames Netzwerk in China – verwenden Sie einen Mirror:
pip install esptool -i https://pypi.tuna.tsinghua.edu.cn/simpleFlashen (COM27 ist Ihr Port; Linux /dev/ttyACM0, macOS /dev/tty.usbmodem*):
python -m esptool --chip esp32s3 -p COM27 -b 460800 write_flash 0x0 firmware/releases/sr_support_b_ptk_factory.binWenn die Verbindung fehlschlägt, wechseln Sie in den Download-Modus: BOOT halten, RST antippen, BOOT loslassen.
2.5 PlatformIO (nur Entwickler – Build aus dem Quellcode)
Überspringen Sie dies, außer Sie ändern den Code. Hinweis: PlatformIO (einschließlich der PlatformIO-Erweiterung für VS Code) lädt bei der ersten Verwendung die espressif32-Plattform und die Xtensa-Toolchain herunter (~1 GB von der PlatformIO-Registry und GitHub). In vielen Netzen in China ist das langsam oder schlägt fehl und erfordert einen Proxy/VPN; die VS-Code-Erweiterung vermeidet den Download nicht.
Mit dem Terminal im Ordner SR-Support und aktivem (.venv):
pip install platformioUnter Windows können Sie auch tools/install_platformio.ps1 ausführen, das in dasselbe .venv installiert. Prüfen Sie:
pio --versionÄltere Tutorial-Versionen installierten PlatformIO in ein separates
.venv-pio; jetzt liegt es im einzigen.venv. Wennpionach dem Upgrade nicht gefunden wird, führen Siepip install platformioim aktivierten.venvaus (oder starten Sietools/install_platformio.ps1erneut); das alte.venv-piokann gelöscht werden.
2.6 PC-seitige Tools und MuJoCo-Umgebung (Zwilling / Nullpunkt / Protokolle)
Für das Flashen nicht erforderlich. Installieren Sie dies, wenn Sie das Nullpunkt-Werkzeug mit Pfeiltasten, den MuJoCo-Live-Zwilling (tools/live_twin.py), die Simulationswiedergabe oder die Protokoll-Tools verwenden. Installieren Sie mit dem Terminal im Ordner SR-Support und aktivem .venv die Abhängigkeiten (pyserial, numpy, MuJoCo 3.1+, gymnasium):
pip install -r tools/requirements.txtUnter Windows können Sie auch tools/install_tools_env.ps1 ausführen (erstellt/verwendet .venv wieder und installiert denselben Satz). Bei langsamem Netzwerk in China hängen Sie den Tsinghua-Mirror -i https://pypi.tuna.tsinghua.edu.cn/simple an; die erste Installation lädt einige hundert MB herunter.
Prüfen: Führen Sie den Umgebungs-Selbsttest aus (er lädt MuJoCo und führt Schritte aus, nicht nur Importe)
python tools/env_check.pyDie letzte Zeile muss env check: PASS sein, mit einer Ausgabe wie:
[ok] mujoco 3.16.0
[ok] model hardware\v1\robot_v1.xml: nq=9 nv=8 dt=0.0002s, 200 steps stable ...Ohne angeschlossenes Board ist [--] no serial port found informativ und beeinträchtigt PASS nicht.
Unter Linux bedeutet ein GLFW/OpenGL-Fehler beim Öffnen des MuJoCo-Fensters, dass Systembibliotheken fehlen: Installieren Sie
libgl1undlibglew-dev(z. B.sudo apt install libgl1 libglew-dev). Die MuJoCo-Wheels für Windows/macOS enthalten alles Nötige. Die Simulationtraining/b_lineund die Wiedergabe verwenden dieselbe Umgebung – nichts Zusätzliches zu installieren.
2.7 Board anschließen und serielle Schnittstelle bestätigen
- Schließen Sie das Board über USB-C an; unter Windows lesen Sie die COM-Nummer im Geräte-Manager ab, unter Linux ist es üblicherweise
/dev/ttyACM0(fügen Sie Ihren Benutzer der Gruppedialouthinzu), unter macOS üblicherweise/dev/tty.usbmodem*; - Merken Sie sich den Port – jedes
COM27auf späteren Seiten ist dieser Wert; - Ein serieller Monitor oder
hw_monitor.pybelegt den Port; schließen Sie ihn vor dem Flashen.
2.8 Checkliste
- [ ] Das Terminal befindet sich im Repository-Stammordner und der Prompt zeigt
(.venv)(prüfen mitpwd/Get-Location); - [ ]
firmware/releases/sr_support_b_ptk_factory.binexistiert und verifiziert (sha256sum -c firmware/releases/SHA256SUMS); - [ ]
python -m esptool versionfunktioniert, oder das Flash Download Tool öffnet sich; - [ ] Die serielle Schnittstelle des Boards ist sichtbar;
- [ ] (Entwickler)
pio --versionfunktioniert; - [ ]
python tools/env_check.pygibtenv check: PASSaus.
Fahren Sie erst fort, wenn die benötigten Punkte erfüllt sind.

