Skip to content
This repository was archived by the owner on Oct 19, 2026. It is now read-only.

DisasterMesh v0.9.0-alpha (Vorabversion)

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 17 Oct 10:47
· 30 commits to main since this release
b11387b

⚠️ Kein zertifiziertes Notrufsystem. In Lebensgefahr immer 112 wählen. Vorabversion, auf echter Hardware nicht abgenommen.

Änderungen

  • Standard-Funkprofil vereinheitlicht auf das MeshCore-Preset EU/UK (Narrow): 869,618 MHz, 62,5 kHz, SF8, CR 4/8. Neu: -D LORA_CR=8 global in platformio.ini – bisher bekamen nur die eigenen Profile CR 4/8, die übrigen Geräte der Matrix fielen auf CR 4/5 zurück. Sendeleistung unverändert (nicht erhöht), Syncword MeshCore-Standard.
  • Doku (firmware/MeshCore/docs/cli_commands.md, ERSTE_SCHRITTE.md, T3S3_V13_WINDOWS.md, REPEATER_WINDOWS.md, SCHWARZES_BRETT.md): Standardwerte 869.618,62.5,8,8.
  • Flyer 0.9.0-alpha neu erzeugt (Druck-PDF mit QR-Codes zu Download und Demo, Digital-PDF mit klickbaren Links) mit dem Generator tools/flyer/flyer.py (Konfiguration tools/flyer/flyer.json, Version aus VERSION, schreibt auch docs/flyer/flyer.html); beide PDFs hängen am Release.
  • Fußzeile der Weboberfläche (und damit PortalPage.h) zeigt jetzt „MeshCore v1.18.0 · DisAHRsterRadio 0.9.0-alpha“ statt v1.17.1 / 0.8.0; Demo-Firmwarekennung v1.18.0-ahr0.9.0-alpha.
  • Zentrale Version: Datei VERSION ist die einzige Quelle. tools/version.py schreibt Fußzeile, Demo, Firmwarekennung aller Profile, README, package.json/-lock, Flyer-HTML und Projektseite; --check läuft in CI (Tests + Firmware) und bricht bei Abweichungen ab (tests/version.test.py).
  • CI: nach tools/embed_web.py prüft git diff --exit-code, dass PortalPage.h/PortalAssets.h eingecheckt zur Weboberfläche passen (auch im Job sx1276-boards und T3-S3).
  • Doku: englische Kurzfassung (Boards, MeshCore 1.18), T3S3_V13_WINDOWS.md, VALIDIERUNG.md, dist/LESEN.md aktualisiert; STARTPAKET.md verlinkt keine abgelaufenen/anmeldepflichtigen Artefakte mehr als aktuelle Downloads.
  • Projektfamilie: eine gemeinsame Tabelle mit allen fünf Repositorys (erzeugt mit tools/projektfamilie.py).
  • Automatische Releases: Workflow release.yml baut bei jedem Tag v* die drei Boards (T3-S3, T3 V1.6.1, Heltec V2) mit tools/package.sh, packt je Board DisasterMesh-<Version>-<Board>.zip mit …-factory.bin, teile/ (bootloader, partitions, boot_app0, firmware, spiffs), SHA256SUMS und deutscher ANLEITUNG.md, prüft alles mit tools/verify_release.py (Abbruch bei fehlender/leerer Datei, falscher Prüfsumme, fehlender Version) und veröffentlicht eine Vorabversion mit Text aus diesem CHANGELOG (tools/release_notes.py) plus Flyern. Probelauf ohne Veröffentlichung bei PRs, die die Paketierung ändern.
  • Freier Speicher (Heap): /api/state meldet zusätzlich diagnostics.heapWarn (Standard 40 KB, HEAP_WARN_BYTES). Gerätediagnose zeigt RAM in KB; liegt freier RAM oder Minimum unter der Schwelle, erscheint ein roter Hinweis, die Statuszeile wird rot mit ⚠. Seriell alle 30 s [HEAP] frei … | Minimum … | groesster Block …, unter der Schwelle mit WARNUNG: wenig freier Speicher.
  • Karten verkleinert: tools/shrink_geojson.py (Gegenstück zu HaldenFunk/tools/shrink_maps.py für GeoJSON) – alle fünf Pakete zusammen 6,2 → 3,8 MB (Heimersheim 2,4 → 1,5 MB, Dernau 1,3 → 0,7 MB, Altenahr 0,9 → 0,5 MB, Sinzig 0,7 → 0,4 MB, Ahrtal 0,97 → 0,81 MB). Koordinaten ~1 m, Douglas-Peucker, unbenutzte OSM-Eigenschaften an Linien/Flächen entfernt; Punkte und POIs vollständig. Paketrevisionen auf 2026-10-17-klein1 angehoben (Handys laden neu). Vorher/Nachher-Screenshots aller Pakete verglichen; Test tests/maps_shrink.test.py.

Schlanke TTGO-/T3-V1.6.1-Profile

  • T3 V1.6.1 / TLora V2.1-1.6 wurde ohne Optimierung gebaut (-O0): Die Upstream-Variante LilyGo_TLora_V2_1_1_6 entfernt mit build_unflags = -Os die Optimierung, dabei fällt auch das -Os aus build_flags weg. disaster_ttgo_wifi (inkl. _wifi_sd, disaster_tlora_v2_1_sx1276_wifi), disaster_ttgo_repeater, disaster_ttgo_room übernehmen dieses build_unflags nicht mehr → -Os wie bei allen anderen Boards.
  • Die ~15 Sensorbibliotheken aus sensor_base (INA3221/219/226/260, AHTX0, BME280/680, BMP280/085, SHTC3, SHT4x, LPS22HB, MLX90614, VL53L0X, MicroNMEA, BSEC) werden für diese Profile nicht mehr gebaut ([dm_classic_slim] in firmware/MeshCore/platformio.local.ini: eigene lib_deps, lib_ignore). ENV_INCLUDE_* waren schon aus; der Sensorcode fällt beim Kompilieren weg, Batterie-Telemetrie bleibt. T3-S3-Profile (GPS) unverändert.
  • Flash (App-Partition 1,9 MB, min_spiffs.csv): disaster_ttgo_wifi 85,1 % → 65,6 % (1 672 453 → 1 289 693 Bytes), _wifi_sd 87,1 % → 67,2 %, Repeater 44,4 % → 29,5 %, Room 43,4 % → 29,3 %. Auf Hardware noch nicht geprüft.

Pakete

Board Datei
LILYGO T3-S3 V1.3 (SX1262) DisasterMesh-0.9.0-alpha-t3s3.zip
LILYGO T3 V1.6.1 (SX1276) DisasterMesh-0.9.0-alpha-t3-v161.zip
Heltec WiFi LoRa 32 V2 (SX1276) DisasterMesh-0.9.0-alpha-heltec-v2.zip

Jedes Paket enthält …-factory.bin (komplett an 0x0 flashen, z. B. mit https://espressif.github.io/esptool-js/), die Einzelteile unter teile/, SHA256SUMS und eine deutsche ANLEITUNG.md. Antenne zuerst anschrauben! Update ohne Datenverlust: nur teile/firmware.bin an 0x10000.

Automatisch gebaut vom Workflow „Release“ aus dem Tag v0.9.0-alpha (Pietwars/DisasterMesh); vor der Veröffentlichung auf Vollständigkeit und Prüfsummen geprüft.