Skip to content

Extend and update#18

Open
Zwer2k wants to merge 87 commits intotimotto:mainfrom
Zwer2k:extend-and-update
Open

Extend and update#18
Zwer2k wants to merge 87 commits intotimotto:mainfrom
Zwer2k:extend-and-update

Conversation

@Zwer2k
Copy link
Copy Markdown

@Zwer2k Zwer2k commented Sep 21, 2025

Pull Request: Umfangreiche Erweiterungen der ArduMower Modem Firmware

Hallo Tim,

ich habe einige umfangreiche Erweiterungen an deiner Modem-Firmware vorgenommen. Es ist einiges zusammengekommen, ist aber nicht so gut strukturiert wie dein Code! 😊

Wichtiger Hinweis zur Hardware: Ich musste schnell feststellen, dass der ESP32 für diese Erweiterungen nicht mehr ausreicht. Bereits nach dem Svelte-Update auf V5 reichte der Speicher nicht mehr aus. Daher bin ich auf ESP32-S3-N16-R8 umgestiegen - das ist die Mindestvoraussetzung, falls du oder jemand anderes testen möchte.
Ich verwende PlatformIO, daher hab ich entsprechend platformio.ini angelegt.
Es gibt zwar hier und da noch ein paar Abstürze, aber insgesamt funktioniert es recht gut.
Hab mir zum Schluss etwas von der AI helfen lassen, auch bei diesem Changelog 😊

📊 Übersicht der Änderungen:

  • 149 Dateien geändert
  • +9.471 Ergänzungen
  • -6.865 Löschungen
  • 93 Commits mit umfangreichen Tests

🚀 Neue Hauptfunktionen:

1. Vollständiges Logging-System (NEU)

  • Implementierung von Modem-Log und Mäher-Konsole
  • Echtzeit-Log-Streaming zur Web-Oberfläche
  • Getrennte Log-Kanäle für Modem und Roboter
  • Konfigurierbare Log-Level über Web-UI
  • Effiziente Ringbuffer-Implementierung
  • Senden von Befehlen an den Mäher über Konsolen-Interface
image image

2. Karten-Visualisierung (sehr rudimentär ohne Rover-Position) (NEU)

  • Anzeige der von AM-APP übertragenen Karte (Karte wurde von Tim implementiert, war bisher versteckt)
  • Parsing von Kartendaten aus AT-Befehlen
  • Chunked-Transfer für effiziente Datenübertragung
  • Zwischenspeicherung der Karte im Modem-Speicher
  • Echtzeitdarstellung von Perimeter, Ausschlüssen, Wegpunkten und Dockpoints
image

3. STM32-basierte Mäher-OTA-Updates (NEU)

  • Over-the-Air Updates der Mäher-Firmware (nur STM32)
  • Getrennte Behandlung von Modem- und Mower-Firmware
  • Fortschrittsüberwachung und Fehlerbehandlung
  • Ferngesteuerte Neustart-Funktionen

4. Web-Oberfläche mit Svelte 5

  • Update des Svelte-Frameworks auf Version 5 und SvelteKit
  • Aufteilung des Dashboards in spezialisierte Bereiche:
    • Status-Dashboard: Echtzeit-Mäherstatus und Steuerung (sehr rudimentär, muss noch erweitert werden)
    • Kartenansicht: Darstellung der aktuell gemähten Karte
    • Terminal-Dashboard: Live-Konsolen-Interaktion
    • Log-Dashboard: Echtzeit-Log-Überwachung
  • Responsive Design für mobile Geräte optimiert

5. Vollständiges WebSocket-Kommunikationssystem (NEU)

  • WebSocket-Implementierung für Echtzeitkommunikation
  • Bidirektionale Echtzeitkommunikation
  • Automatische Wiederverbindung und Retry-Logik
  • Chunked-Datenübertragung für große Payloads
  • Umfassende Fehlerbehandlung und Wiederherstellung
image

Viele Grüße und vielen Dank für die tolle Grundlage! 🙏

felixganzer and others added 30 commits May 8, 2022 11:41
- mower ca controll by PS4 controller
- settings page is extended
- Manual navigation with joysticks
   Joystick left = fast movements,
   Joystick right = slow movements,
   Cross + R2 = linear movements + rotation on the spot,
   triangle = start automatic mowing,
   Rectangle = stop automatic mowing,
   circle = mowing motor on/off,
   Cross = skip next mowing point,
   L1 = reduce mowing speed,
   R1 = increase mowing speed
- Configuration via the web interface
- Manuelle Navigation mit Joysticks
   Joystick links = schnelle Bewegungen,
   Joystick rechts = langsame Bewegungen,
   Kreutz + R2 = lineare Bewegungen + Drehung auf der Stelle,
   Dreieck = starte automatisches Mähen,
   Rechteck = stoppe automatisches Mähen,
   Kreis = Mähmotor an/aus,
   Kreuz = Nächsten Mähpunkt überspringen,
   L1 = Mähgeschwindigkeit reduzieren,
   R1 = Mähgeschwindigkeit erhöhen
@Zwer2k
Copy link
Copy Markdown
Author

Zwer2k commented Sep 21, 2025

Noch ein Screenshot von dem Update-Dialog

image Wie bereits erwähnt: Aktuell nur Update von STM32 basierten Rover möglich.

Jurij Retzlaff added 3 commits September 23, 2025 23:32
bugfix: Tabs are not displayed correctly in the terminal.
bugfix: The firmware upload dialog is displayed in the wrong place.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants