# spike-prime-connect

spike-prime-connect ist das Tool, mit dem wir Programme auf unseren Roboter hochladen.

Wir haben sehr lange die inoffizielle [VSCode Extension für SPIKE Prime](https://github.com/PeterStaev/lego-spikeprime-mindstorms-vscode) verwendet, allerdings war dies mit comPYner nicht mehr möglich. (Seit dem fix von [\#65](https://github.com/PeterStaev/lego-spikeprime-mindstorms-vscode/issues/65) ist es möglich, wir sind allerdings nicht wieder gewechselt. Mittlerweile unterstützt die VSCode Extension SPIKE Legacy auch nicht mehr)  
Daher haben wir [spike-prime-connect](https://github.com/GSG-Robots/spike-prime-connect) entwickelt.

spike-prime-connect ist ein CLI-Tool, mit dem man SPIKE Prime und MINDSTORMS Robot Inventor Hubs steuern kann, sofern SPIKE Legacy/v2 installiert ist.  
Man kann mit nur einem Befehl auf einem verbundenen Hub

- Programme hochladen, verschieben und löschen
- Programme starten und beenden
- Diverse Geräteinformationen auslesen
- Ausgaben lesen
- Die REPL starten
- Den Hub neustarten und ausschalten

Beim Hochladen von Programmen verwendet spike-prime-connect im Hintergrund [comPYner](https://github.com/GSG-Robots/comPYner "comPYner"), sodass importierte Dateien automatisch mit-hochgeladen werden. Mehr Informationen dazu, warum wir comPYner nutzen und wie es funktioniert sind [hier](https://bookstack.gsg-robots.de/books/eigenes-tooling/page/compyner "comPYner") zu finden.  
spike-prime-connect stellt comPYner dabei so ein, dass alle auf SPIKE Prime Hubs vorhandenen Module standartmäßig ausgeschlossen sind und Variablennamen möglichst kurz gehalten werden. Das Umbennen der Variablen kann mit `--debug` verhindert werden.

#### Links


- [GitHub](https://github.com/GSG-Robots/spike-prime-connect)
- [PyPI](https://pypi.org/project/spike-prime-connect/)
- [Website (Generell zu Programmierung)](https://gsg-robots.de/open-source/)