BLUNAA.COM

Projektdokumentation v3.9-FINAL Stand: Juni 2026

DJ · Producer · Technik · IoT · FPV · Amateurfunk · Berlin
Website (2 Plattformen) · Android-App · FPV-Tuning-Guide · Bildbibliothek

01Projektübersicht

BLUNAA.COM ist die persönliche Website von Blunaa – DJ, Producer und Technik-Enthusiast aus Berlin. Ausgeliefert werden zwei lauffähige Website-Varianten (serverloses HTML für Strato-Basic-Hosting und eine Flask/Python-Version mit SMTP-Mailversand), ergänzt um eine native Android-App und einen separaten FPV-Tuning-Guide.

🎧 Musik

SoundCloud-Widget (soundcloud.com/blunaa), Events von Resident Advisor, Galerie, Blog.

⚙ Technik

IoT mit ESP32, FPV-Drohnen (Betaflight 2025.12, ehem. 4.7), Amateurfunk (HF/VHF/UHF), Studio-Automation.

📱 Mobile-ready

Hamburger-Menü mit Android-touchend-Fix, Touch-optimierte Tap-Targets, responsive Layouts.

✉ Kontakt

Formular mit Client- und Server-Validierung, E-Mail-Versand über Strato SMTP (Flask-Version).

EigenschaftWert
Aktuelle Versionv3.9-FINAL
Letztes UpdateJuni 2026
Strato Upload (serverlos)blunaa-strato_v4.0.zip
Strato Upload (Flask)blunaa-flask_v4.0.zip
Android-Appblunaa-android-app_v1.0.zip
Mobile✓ Hamburger, Touch, Android touchend-Fix
E-Mail✓ Strato SMTP (Flask), mailto (HTML)
Impressum & AGB✓ Getrennte Seiten, eigener Menüpunkt
Personenbezogene Daten✓ Nur im Impressum (gesetzlich erforderlich)

02Versionshistorie

VersionDatumÄnderungen
v2.02026-06Serverlose Strato-Version, automatisierte Tests bestanden
v2.12026-06Strato-Fixes, passenger_wsgi, PDF-Setup-Anleitung
v2.42026-06Mobile-Optimierung, SMTP E-Mail, Impressum/AGB, docs.html eingeführt
v2.62026-06Android-touchend-Fix, ESP32 statt Raspberry Pi, Blunaa als DJ-Act, AGB als eigene Seite, Android-App v1.0
v3.02026-06docs.html komplett neu strukturiert + einheitliche Namenskonvention, Betaflight-4.6-Guide, Android-APK-Bauanleitung, neue Bildbibliothek (Original + 3 KI + 3 Web je Bild), "Blunaa" vollständig entfernt
v3.12026-06Betaflight 2025.12 (ehem. 4.7) Tuning Guide v2.0 mit v1→v2-Vergleich + Begründungen, 5x BLUNAA Logo/Header-Bild (transparente PNGs)
v3.22026-06Logo v4 (Split-Color) im Hero-Bereich eingebaut — ersetzt den reinen "BLUNAA"-Text in index.html und home_content.html (Flask)
v3.32026-06Neues Kapitel: ESC-Configurator & Bluejay Setup-Guide für Flylens 75 (PDF + CLI-Anleitung), eingeordnet vor dem PID-/Filter-Tuning-Guide (technische Voraussetzung)
v3.42026-06PID-Korrektur v3.0: erneute Recherche mit echten Werks-CLI-Dumps (Air65/75 Champion) zeigte v2.0-Werte waren zu hoch geschätzt — v3.0 korrigiert PID/Feedforward nach unten; FPV-Master-Guide (8-Phasen-Komplettanleitung inkl. Crossfire-Latenz + DJI-Goggles-3-Race-Mode) hinzugefügt
v3.52026-06PID-Update v4.0 basierend auf eigenen Blackbox-Flugdaten (5 Flüge) + CLI-Dump: tatsächlich geflogene Werte waren noch aggressiver als alle bisherigen Schätzungen; Motor-KV-Fehler korrigiert (14800KV → korrekt ca. 1960KV); Simplified-Tuning-Modus erstmals berücksichtigt
v3.62026-06Filter-Update v5.0 basierend auf echter Zeitreihen-Telemetrie (FFT-Analyse aus 5 CSV-Exporten via Blackbox Explorer): 530Hz-Gyro-Rauschpeak identifiziert und korrigiert; eine zunächst vermutete D-Term-Resonanz wurde nach genauerer Prüfung als Chirp-Test-Artefakt erkannt und transparent zurückgenommen
v3.72026-06Vollständiger CLI-Dump v6.0: zweite, unabhängige Dump-Datei bestätigt alle v4.0/v5.0-Werte; 3 Dokumentationsfehler korrigiert (dyn_notch_q, vbat_min_cell_voltage, mixer_type); vollständige Raten-Konfiguration erstmals übernommen statt Annahmen
v3.82026-06Korrigierter CLI-Diff v7.0: v6.0 fälschlich als "vollständiger Dump" bezeichnet — tatsächlich war es weiterhin eine Auswahl; v7.0 ist ein echter, programmatisch gegen die Original-Dump-Datei verifizierter Diff (27/27 Werte bestätigt) mit korrektem batch start/save; eigener Versionsfehler korrigiert (2025.12 = "4.6", nicht "4.7")
v3.92026-06FPV-Seite komplett neu aufgebaut: eigener "FPV Drohnen Hub" (fpv.html) mit 5 thematischen Unterseiten (ESC, Betaflight-Verlauf v1.0-v7.0, Telemetrie, Funkstrecke, Komplettanleitung); veraltete Hardware-Angaben ("5 Freestyle, DJI O3, ELRS") korrigiert; Flask-Version identisch nachgebaut (6 neue Routen); 28 automatisierte unittest-Tests (inkl. Regressionstests) hinzugefügt; Android-App auf v1.1 aktualisiert (automatisch kompatibel, kein Code-Update nötig)

03Architektur & Struktur

Serverlose HTML-Version (Strato direkt)

blunaa-strato_v4.0/
├── index.html                          ← Hauptseite (13 Sektionen inline)
├── agb.html                            ← AGB als eigene Seite
├── docs.html                           ← Diese Dokumentation
├── doc_flylens75-betaflight46-tuning_v1.0.pdf
├── doc_flylens75-betaflight46-cli_v1.0.txt
├── doc_flylens75-bf2025-12-tuning_v2.0.pdf      (überholt, siehe v3.0)
├── doc_flylens75-bf2025-12-cli_v2.0.txt         (überholt, siehe v3.0)
├── doc_flylens75-bf2025-12-pid-correction_v3.0.pdf  (empfohlen)
├── doc_flylens75-bf2025-12-cli_v3.0.txt             (empfohlen)
├── doc_flylens75-esc-bluejay_v1.0.pdf
├── doc_flylens75-esc-bluejay_v1.0.txt
├── doc_flylens75-fpv-master-guide_v1.0.pdf      (Gesamt-Anleitung, 8 Phasen)
├── doc_android-apk-anleitung_v1.0.pdf
└── images/
    ├── img_hero-bg_orig.jpg
    ├── img_bio-portrait_orig.jpg
    ├── img_logo-header_v4-split.png   ← Hero-Logo (ersetzt Text)
    └── img_{motiv}_{orig|ai-v1..3|web-v1..3}.jpg

Flask/Python-Version (server-basiert)

blunaa-flask_v4.0/
└── v3-python/
    ├── app.py                    ← Flask-App: 15 Routen + APIs
    ├── mail_service.py           ← SMTP E-Mail-Versand (Strato)
    ├── passenger_wsgi.py         ← Strato Phusion Passenger
    ├── requirements.txt          ← flask, gunicorn, python-dotenv
    ├── templates/
    │   ├── base.html             ← Basis (Sidebar, Banner, Mobile, Footer)
    │   ├── pages/                ← 12 Seiten (inkl. agb.html, impressum.html)
    │   └── components/           ← 11 Inhalts-Komponenten
    └── static/
        ├── css/, js/
        └── images/                ← identische Bildbibliothek wie Strato-Version

Android-App

blunaa-android-app_v1.0/
├── app/src/main/
│   ├── java/com/blunaa/app/MainActivity.java   ← WebView-Logik
│   ├── res/layout, values, xml, mipmap-*       ← UI + Icons (5 Dichten)
│   └── AndroidManifest.xml
├── .github/workflows/build-apk.yml             ← Cloud-Build (GitHub Actions)
├── doc_android-apk-anleitung_v1.0.pdf           ← Einsteiger-Bauanleitung
└── README.md

04Funktionen (Features)

05Mobile-Responsiveness

Die Website ist vollständig mobile-optimiert. Die Sidebar verwandelt sich auf kleinen Bildschirmen in ein Overlay-Menü mit Hamburger-Button. Ein vorheriger Bug, bei dem Tippen auf Android-Geräten keine Reaktion zeigte, wurde behoben (siehe Box unten).

Android-Bug behoben: Menü-Links reagierten auf manchen Android-Geräten nicht auf Tippen, da nur click-Events registriert waren. Fix: zusätzliche touchend-Listener mit preventDefault()/stopPropagation() für Hamburger-Button, Overlay und alle Menü-Links.

Breakpoints

BreakpointLayout-Änderung
> 768pxDesktop: Sidebar fest links, Inhalte daneben
≤ 768pxTablet/Mobile: Sidebar als Overlay, Hamburger sichtbar
≤ 480pxMobile: Galerie einspaltig, Fun-Grid einspaltig

Touch-Optimierungen

Implementierung (Auszug)

function handleLinkTap(e) {
  e.preventDefault();
  e.stopPropagation();
  var target = document.getElementById(link.getAttribute('data-target'));
  closeMenu();
  setTimeout(function() {
    window.scrollTo({ top: targetTop, behavior: 'smooth' });
  }, 350);
}
link.addEventListener('click', handleLinkTap);
link.addEventListener('touchend', handleLinkTap, { passive: false });

06E-Mail-Versand (Strato SMTP)

In der Flask-Version wird das Kontaktformular per Strato SMTP direkt an booking@blunaa.com gesendet. In der serverlosen HTML-Version öffnet das Formular den lokalen E-Mail-Client (mailto:).

Strato SMTP Konfiguration

EinstellungWert
SMTP Hostsmtp.strato.de
Port587 (STARTTLS)
VerschlüsselungSTARTTLS (automatisch)
AuthentifizierungMAIL_USER + MAIL_PASS (Umgebungsvariable)

Setup in 2 Schritten

Schritt 1: Umgebungsvariablen setzen (z. B. in einer lokalen .env-Datei, die nicht mit ausgeliefert wird):

MAIL_USER=booking@blunaa.com
MAIL_PASS=DEIN_STRATO_EMAIL_PASSWORT
MAIL_FROM=booking@blunaa.com
MAIL_TO=booking@blunaa.com

Schritt 2: Testen:

python3 mail_service.py
curl -X POST http://localhost:5000/api/contact \
  -H "Content-Type: application/json" \
  -d '{"name":"Test","email":"test@test.de","subject":"Hallo","message":"Test"}'
Wichtig: Zugangsdaten niemals im Code oder in Git committen — ausschließlich über Umgebungsvariablen auf dem Strato-Server setzen.

Validierungs-Checks (Server-seitig)

07Impressum & AGB

Impressum und AGB sind seit v2.6/v3.0 strukturell getrennt:

Datenschutz-Hinweis: Außerhalb des gesetzlich vorgeschriebenen Impressums wird auf der gesamten Website und in allen Projektdateien ausschließlich der Künstlername "Blunaa" sowie die Kontaktadresse booking@blunaa.com verwendet. Details siehe Kapitel 15.

Aufruf

VersionURL / Position
HTML (serverlos)Sidebar → "Impressum" → scrollt zu #sec-impressum
HTML (serverlos)Sidebar → "AGB" (letzter Punkt) → agb.html
FlaskGET /impressum → templates/pages/impressum.html
FlaskGET /agb → templates/pages/agb.html

08Deployment & Upload

Option A: Serverlos (empfohlen für Strato Basic)

ZIP: blunaa-strato_v4.0.zip

  1. ZIP entpacken
  2. WinSCP öffnen → Strato FTP/SFTP Verbindung (Port 22)
  3. index.html + agb.html + docs.html → Root /html/
  4. images/ Ordner → /html/images/
  5. Browser: http://blunaa.com aufrufen

Option B: Flask/Python (für SMTP E-Mail)

ZIP: blunaa-flask_v4.0.zip

cd ~/blunaa
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
export MAIL_PASS="DEIN_PASSWORT"   # Umgebungsvariable statt .env-Datei
gunicorn --bind 0.0.0.0:5000 app:app

Option C: Android-App

ZIP: blunaa-android-app_v1.0.zip — siehe Kapitel 10 & 11 für Details.

09Wichtige CLI-Befehle (Web)

Flask starten

cd v3-python
python3 -m venv venv && source venv/bin/activate
pip install -r requirements.txt
python3 app.py

E-Mail testen

python3 mail_service.py

Health-Check

curl http://localhost:5000/api/health

Alle Routen prüfen

python3 -c "
import app
for rule in app.app.url_map.iter_rules():
    print(rule)
"

10Android-App – Übersicht

Native Android-App auf WebView-Basis, die blunaa.com lädt – mit eigenem Icon auf dem Homescreen, statt eines Browser-Tabs.

WebView mit Mobile-UA

Lädt https://blunaa.com mit mobilem User-Agent, damit das Mobile-Layout der Website greift.

Externe Links → Browser

SoundCloud, Instagram, RA, Facebook, GitHub etc. öffnen automatisch den System-Browser, nicht die App.

Erzwungenes HTTPS

network_security_config.xml blockiert unverschlüsseltes HTTP zu blunaa.com vollständig.

Zurück-Navigation

Android-Zurück-Taste navigiert in der WebView-Verlaufshistorie, statt die App sofort zu schließen.

EigenschaftWert
App-NameBlunaa
Packagecom.blunaa.app
Min. Android-Version7.0 (API 24)
Ziel-VersionAndroid 14 (API 34)
App-Version1.0
Icon-Dichtenmdpi, hdpi, xhdpi, xxhdpi, xxxhdpi (5 Stück)
Wichtig zum APK-Build: In dieser Arbeitsumgebung steht kein Android SDK, kein Gradle und kein Internetzugriff zum Nachladen von Build-Abhängigkeiten zur Verfügung. Eine fertig kompilierte APK kann hier deshalb nicht direkt erzeugt werden. Das vollständige, build-fertige Projekt liegt bei – Kapitel 11 erklärt Schritt für Schritt, wie daraus selbst eine APK gebaut wird (lokal mit Android Studio oder automatisiert in der Cloud mit GitHub Actions).

11APK selbst bauen – Einsteiger-Guide

Vollständige Schritt-für-Schritt-Anleitung als separates PDF beigelegt: doc_android-apk-anleitung_v1.0.pdf. Kurzüberblick der zwei beschriebenen Wege:

Weg A: Android Studio (lokal, empfohlen für Einsteiger)

  1. Android Studio kostenlos von developer.android.com/studio herunterladen und installieren
  2. Projektordner blunaa-android-app über "Open" öffnen
  3. Gradle-Sync abwarten (lädt automatisch alle Abhängigkeiten)
  4. Build → Build Bundle(s) / APK(s) → Build APK(s)
  5. Fertige Datei: app/build/outputs/apk/debug/app-debug.apk

Weg B: GitHub Actions (Cloud-Build, ohne lokale Installation)

Das Projekt enthält bereits eine fertige Workflow-Datei (.github/workflows/build-apk.yml), die bei jedem Hochladen automatisch eine APK in der Cloud baut – kein eigener Computer mit Android Studio nötig.

# Kurzfassung des automatischen Workflows
on: push                    # startet bei jedem Hochladen
java-version: 17            # wird automatisch eingerichtet
./gradlew assembleDebug     # baut die APK
upload-artifact             # APK steht danach zum Download bereit

Installation auf dem Handy

Hinweis für 2026: Für eine offizielle Play-Store-Veröffentlichung verlangt Google inzwischen eine Entwickler-Identitätsbestätigung ("Android Developer Verification"). Für die private Installation per APK-Datei (Sideloading), wie hier beschrieben, ist das nicht erforderlich.

13ESC-Configurator & Bluejay Setup — Flywoo Flylens 75 HD O4 2S

Komplett-Anleitung verfügbar: Dieses Kapitel und das nachfolgende Betaflight-Kapitel (13) sind Teil einer durchgehenden Einrichtungs-Anleitung. Wer alle Phasen (ESC → Betaflight → Crossfire/Jumper T15 → Latenz → DJI Goggles 3 Race Mode → PID → Testflug → Optimierung) in einem Stück durchgehen möchte, findet das als doc_flylens75-fpv-master-guide_v1.0.pdf (9 Seiten, 8 Phasen).

Bevor das PID-/Filter-Tuning in Kapitel 14 sinnvoll ist, muss die ESC-Firmware auf dem GOKU F405 BGA 12A 4-in-1 ESC korrekt konfiguriert sein. Der Stack läuft ab Werk meist mit Stock-BLHeli_S (Version 16.7, eingefroren, ohne RPM-Telemetrie). Bluejay ist die von Betaflight offiziell empfohlene Open-Source- Ersatzfirmware für diese Busy-Bee-ESCs und schaltet bidirektionales DShot frei — die technische Grundvoraussetzung für den RPM-Filter im nachfolgenden PID-Guide.

Vollständiges Dokument: doc_flylens75-esc-bluejay_v1.0.pdf (3 Seiten, Betaflight-Farbschema) + doc_flylens75-esc-bluejay_v1.0.txt (vollständige CLI- und Konfigurationsanleitung mit Begründungen).

Warum Bluejay statt Stock-BLHeli_S?

Empfohlene Konfiguration (Kernwerte)

ParameterEmpfehlungBegründung
FirmwareBluejayOffiziell von Betaflight empfohlen für Busy-Bee-ESCs
PWM-Frequenz48 kHzBester Mittelweg Laufruhe/Auflösung bei O4+Crossfire-Last auf dem Stack
Min. Startup Power1025Bluejay-Standardwert, auf vergleichbarem 75mm-Whoop bestätigt
Max. Startup Power1100Bluejay-Wiki "Migrating from BLHeli_S"-Empfehlung, getestet
Demag CompensationStandard / OffNur bei echten Desync-Symptomen auf "High" erhöhen
Motor TimingAutoSicherste Wahl; manuelle Werte nur für erfahrene Tuner

Betaflight-seitige Pflicht-Nacharbeit nach dem Flash

set dshot_bidir = ON
set motor_pwm_protocol = DSHOT300
set motor_poles = 12
save
Wichtige Warnung: Startup Power nicht pauschal weiter erhöhen "gegen Desyncs" — zu hohe Werte können zu Motor-Stottern, Überhitzung und ESC-Schäden führen. Bei Desync-Problemen zuerst Dynamic Idle in Betaflight korrekt konfigurieren (siehe Kapitel 14) — das gilt in Betaflight 4.5+ als die modernere, sauberere Lösung gegenüber reiner ESC-seitiger Demag-Kompensation.

13FPV Drohnen Hub — Website-Struktur

Die FPV-Inhalte sind seit v3.9 nicht mehr als knappe Sektion auf der Hauptseite untergebracht, sondern als eigener Bereich mit Hub-Seite und 5 thematischen Unterseiten — sowohl in der Strato- als auch der Flask-Version identisch.

SeiteStrato-URLFlask-RouteInhalt
FPV Hubfpv.html/fpvÜbersicht, Hardware-Specs, Versionsverlauf-Timeline
Komplettanleitungfpv-komplettanleitung.html/fpv/komplettanleitung8-Phasen-Übersicht mit Verweisen auf alle Themenseiten
ESC & Bluejayfpv-esc.html/fpv/escFirmware-Flash, Konfigurationstabelle
Betaflight-Tuningfpv-betaflight.html/fpv/betaflightAufklappbarer Versionsverlauf v1.0–v7.0
Telemetriefpv-telemetrie.html/fpv/telemetrieFFT-Diagramme, Blackbox-Befunde
Funkstreckefpv-funkstrecke.html/fpv/funkstreckeCrossfire/Jumper T15, Latenz, Race Mode
Korrigierte Altlasten: Die bisherige FPV-Sektion auf der Hauptseite enthielt veraltete, falsche Hardware-Angaben ("5" Freestyle Build, 2306er Motoren, DJI O3, 6S LiPo, ELRS") — diese bezogen sich auf einen anderen, früheren Build und passten nicht zum tatsächlich dokumentierten Flylens 75 HD O4 2S. Korrigiert auf die echte Hardware (GOKU F405 BGA, ROBO 1003, DJI O4, TBS Crossfire, 2S).

Design-Entscheidung: eigenständiges dunkles Theme

Die FPV-Unterseiten nutzen bewusst ein eigenständiges, dunkleres Farbschema (statt der Sidebar-Navigation der Hauptseite) — passend zum technischen, Betaflight-CLI-nahen Charakter der Inhalte, mit aufklappbaren Versions-Akkordeons für den Tuning-Verlauf, damit die Seite trotz sieben Versionen übersichtlich bleibt.

14Betaflight Tuning Guide — Flywoo Flylens 75 HD O4 2S

Vollständiger PID- und Filter-Tuning-Guide für den Flywoo Flylens 75 HD O4 2S (GOKU F405 BGA · ROBO 1003 · 1611-3 Props · TBS Crossfire · DJI O4 Air Unit). Liegt in sechs Versionen vor: v1.0 für Betaflight 4.6, v2.0 für Betaflight 2025.12, v3.0 — eine evidenzbasierte PID-Korrektur von v2.0, v4.0 — basierend auf eigenen Blackbox- Flugdaten (Konfiguration), v5.0 — basierend auf echter Zeitreihen-Telemetrie (FFT-Analyse) und v6.0 — vollständiger, verifizierter CLI-Dump (vormals teils fälschlich als "4.7" bezeichnet (offiziell auch "4.6" genannt) — Betaflight ist seit Ende 2025 auf ein kalenderbasiertes Versionsschema YYYY.M.PATCH umgestiegen). PID-Tuning und Filter-Tuning stehen in allen Dokumenten bewusst am Anfang.

Korrektur des Motor-KV-Werts: In den Dokumenten v1.0 bis v3.0 wurde der Motor mit 14800KV angegeben. Die eigene RPM-Telemetrie aus einem Blackbox-Log zeigt den tatsächlichen Wert: ca. 1960KV. Diese Korrektur betrifft nur die Dokumentation, nicht die CLI-Werte für Motor-Pole-Zahl (12, weiterhin korrekt).
Wichtige Korrektur zu v6.0: v6.0 wurde fälschlich als "vollständiger Dump" beschrieben — tatsächlich war es ebenfalls nur eine (größere) Auswahl an Parametern, kein wirklich vollständiger, sicher ohne Vorwissen einspielbarer Dump. Außerdem stellte sich heraus, dass die ursprünglich hochgeladene Dump-Datei selbst unvollständig/abgeschnitten war (kein batch end, kein abschließendes save).
v7.0 — Echter, programmatisch verifizierter CLI-Diff: Jeder einzelne der 27 geänderten Parameter wurde einzeln gegen die tatsächliche Dump-Datei geprüft (nicht nur behauptet) — alle 27 Werte zu 100% bestätigt. Korrekt mit batch start/save umschlossen. Enthält nur echte Änderungen, keine Parameter, die im Original-Dump gar nicht existieren (z.B. wurde yaw_lpf_hz bewusst weggelassen, da es im Original-Dump fehlt). Außerdem wurde ein eigener Fehler korrigiert: Betaflight 2025.12 heißt offiziell auch "4.6", nicht "4.7" wie in v1.0-v6.0 geschrieben. v7.0 ist die aktuell empfohlene, geprüfte Version.
v5.0 (überholt) — Analyse echter Zeitreihen-Telemetrie (FFT): Aus 5 CSV- Exporten (Blackbox Explorer) wurde per Frequenzanalyse ein klar isolierter Gyro-Rauschpeak bei ~530Hz auf allen 3 Achsen identifiziert, der vom bisherigen Filter nur teilweise gedämpft wurde. Methodisch wichtig: eine zunächst vermutete D-Term-Resonanz bei ~101Hz erwies sich nach genauerer Prüfung als Chirp-Test-Artefakt (kein echtes Filterproblem) — diese Korrektur wurde transparent zurückgenommen.
v4.0 (überholt) — Analyse der Blackbox-Konfiguration: Ein hochgeladenes Blackbox-Log (5 Flüge) und ein CLI-Dump zeigten, dass die tatsächlich geflogene Konfiguration noch aggressiver war als jede bisherige Empfehlung (P 45-47, Feedforward 120-125!) — und dass Simplified Tuning (RPY) aktiv war, was die bisherigen Guides nicht berücksichtigt hatten. Positiv: der empfohlene Chirp Signal Generator wurde bereits korrekt für alle 5 Flüge genutzt.
Transparenter Hinweis zur v3.0-Korrektur: Eine erneute, vertiefte Recherche mit anderen Quellen als zuvor (echte Werks-CLI-Dumps vergleichbarer 65-75mm-2S-Whoops) ergab, dass die PID- und besonders die Feedforward-Werte in v2.0 systematisch zu hoch angesetzt waren — orientiert an 5"-Freestyle-Logik, die für diese viel leichtere Quad-Klasse nicht passt. v3.0 korrigiert das nach unten, näher an echten Werks-Tunes.

v6.0 — Gefundene Dokumentationsfehler (durch zweiten Dump entdeckt)

ParameterFälschlich dokumentiert (v1.0-v5.0)Tatsächlich korrekt
dyn_notch_q350300
vbat_min_cell_voltage300320
mixer_typeQUADX (angenommen)LEGACY

v6.0 — Vollständige Raten-Konfiguration (erstmals verfügbar)

ParameterTatsächlich geflogenBisherige Annahme (v1.0-v5.0)
roll/pitch/yaw_rc_rate5 / 5 / 57 / 7 / 7
roll/pitch_expo55 / 5515 / 15
roll/pitch/yaw_srate25 / 25 / 2567 / 67 / 67
Entscheidung zu den Raten: Da die Telemetrie-Analyse (v5.0) keine Hinweise auf Steuerungsprobleme zeigte, werden die tatsächlich geflogenen Raten in v6.0 unverändert übernommen, statt sie durch unbestätigte Annahmen zu ersetzen.

v5.0 — Filter-Korrektur aus FFT-Analyse (historisch, in v6.0 übernommen)

Parameterv4.0v5.0 (korrigiert)Begründung (datenbasiert)
gyro_lpf2_static_hz500450Senkt Grenzfrequenz unter den gemessenen 530Hz-Rauschpeak
gyro_lpf2_typePT1PT2Steilere Flanke für gezieltere Dämpfung des Peaks
gyro_lpf1_static_hz0 (aus)200Zusätzlicher LPF1 aktiviert, da Peak auf allen 3 Achsen gleich auftritt
yaw_lpf_hzStandard (~100)90Yaw zeigte in allen 5 Flügen die schwächste Filterwirkung
dterm_lpf1/lpf2unverändertunverändertFFT zeigt Chirp-Artefakt, kein echtes Filterproblem — keine Änderung gerechtfertigt
Methodische Transparenz: Diese Tabelle zeigt auch eine zurückgenommene Korrektur (D-Term-Filter), um offen zu dokumentieren, dass nicht jeder FFT-Auffälligkeit ein echtes Tuning-Problem zugrunde liegt — manche Muster sind Artefakte der Testmethode selbst (hier: des Chirp-Sweeps).
Kritische Änderung in Betaflight 2025.12: Die interne, herstellerseitige Gyro-Ausrichtung wurde entfernt. Nach dem Flashen auf 2025.12 im Setup-Tab unbedingt prüfen, dass der virtuelle Quad auf Kippen korrekt reagiert — sonst Absturzgefahr beim Erstflug.
v1.0 (Betaflight 4.6): doc_flylens75-betaflight46-tuning_v1.0.pdf + doc_flylens75-betaflight46-cli_v1.0.txt
v2.0 (Betaflight 2025.12, überholt): doc_flylens75-bf2025-12-tuning_v2.0.pdf + doc_flylens75-bf2025-12-cli_v2.0.txt
v3.0 (PID-Korrektur, überholt): doc_flylens75-bf2025-12-pid-correction_v3.0.pdf + doc_flylens75-bf2025-12-cli_v3.0.txt
v4.0 (Konfigurations-Analyse, überholt): doc_flylens75-bf2025-12-realdata_v4.0.pdf + doc_flylens75-bf2025-12-cli_v4.0.txt
v5.0 (FFT-Telemetrie-Analyse, überholt): doc_flylens75-bf2025-12-telemetry_v5.0.pdf + doc_flylens75-bf2025-12-cli_v5.0.txt
v6.0 (überholt, fälschlich als "vollständig" bezeichnet): doc_flylens75-bf2025-12-fulldump_v6.0.pdf + doc_flylens75-bf2025-12-cli_v6.0.txt
v7.0 (echter verifizierter Diff, empfohlen): doc_flylens75-bf2025-12-diff_v7.0.pdf (27/27 Werte einzeln gegen Original-Dump geprüft) + doc_flylens75-bf2025-12-diff_v7.0.txt

PID-Werte — tatsächlich geflogen vs. v4.0 (aktuell empfohlen)

ParameterTatsächlich geflogen (Blackbox)v4.0 (korrigiert)Begründung
p_roll / d_roll / f_roll45 / 30 / 12038 / 27 / 65Reale Werte übertrafen sogar die in v2.0 erkannten Überschätzungen
p_pitch / d_pitch / f_pitch47 / 34 / 12540 / 30 / 70Gleiche Begründung, proportional zu Roll
dyn_idle_min_rpm0 (deaktiviert)30Wichtig für 2S-Whoop-Stabilität bei Low-Throttle
pid_process_denom2 (nur 4kHz)1 (volle 8kHz)Schnellerer PID-Loop für reaktionsfreudigeres Verhalten
crsf_use_negotiated_baudOFFONStabilere Telemetrie ohne Steuerlatenz-Nachteil
Methodisch positiv: Der Chirp Signal Generator (debug_mode=50) wurde tatsächlich für alle 5 aufgezeichneten Flüge korrekt genutzt — die im FPV-Master-Guide empfohlene, datenbasierte Tuning-Methode wurde also bereits richtig angewendet.

Historische Version: PID-Werte Profil 0 — Korrektur v2.0 → v3.0

Diese Tabelle bleibt als Zwischenschritt- Dokumentation erhalten. Aktuell empfohlen ist v4.0 (siehe oben).

Parameterv2.0 (überschätzt)v3.0 (korrigiert)Begründung
p_roll / d_roll / f_roll44 / 30 / 9036 / 26 / 55Echte Werks-CLI-Dumps (BetaFPV Air65/75 Champion) zeigen deutlich niedrigere Werte für diese Quad-Klasse
p_pitch / d_pitch / f_pitch48 / 34 / 9538 / 28 / 58Gleiche Begründung, proportional zu Roll
feedforward_smooth_factor2260Näher am echten Werks-Wert (65); bei niedrigerem FF mehr Glättung sinnvoll
anti_gravity_gain9080Zurück auf konservativeren, praxisbestätigten Wert
Filter-Werte bleiben unverändert zwischen v2.0 und v3.0 — diese waren nachvollziehbar durch Betaflight-2025.12-Verbesserungen begründet und nicht von der PID-Fehleinschätzung betroffen.

Was hat sich in Betaflight 2025.12 geändert?

FeatureBedeutungRelevanz
Neue Gyro-AusrichtungHersteller-Preset entfernt, Nutzer muss selbst prüfenKritisch
Verbesserte Filter-InitialisierungSauberere RPM-/Tiefpassfilter-Platzierung beim StartPositiv
FF Rise/Decay-SteuerungPräziseres Feedforward, direkt am Whoop spürbarPositiv
Chirp Signal GeneratorNeues Tuning-Tool: automatisierte Testoszillationen für BlackboxTuning-Hilfe
Configurator nur noch PWAapp.betaflight.com statt Desktop-DownloadWorkflow

PID-Werte Profil 0 — Vergleich v1.0 → v2.0 (historische Referenz, überholt)

Diese Tabelle zeigt die ursprüngliche v2.0-Anpassung gegenüber v1.0. Die v2.0-Werte selbst wurden in v3.0 (siehe oben) korrigiert — diese Tabelle bleibt nur als historische Dokumentation der Entwicklung erhalten.

Parameterv1.0 (BF 4.6)v2.0 (BF 2025.12)Begründung der Änderung
p_roll / d_roll / f_roll42 / 28 / 8544 / 30 / 90Sauberere Filterinit erlaubt mehr P/D; FF Rise/Decay nutzbar machen
p_pitch / d_pitch / f_pitch46 / 32 / 9048 / 34 / 95Gleiche Begründung, proportional zu Roll
p/i/d/f_yaw42/65/0/85unverändertYaw-Achse unkritisch bei Whoops
anti_gravity_gain8090Stabilerer I-Term in 2025.12 → weniger Bounce-Back-Risiko
feedforward_boost1518Neue Rise/Decay-Verbesserung gezielt ausnutzen

Filter-Tuning — Vergleich v1.0 → v2.0

Parameterv1.0v2.0Begründung
rpm_filter_q5004502025.12 platziert Notches präziser, etwas mehr Bandbreite möglich
gyro_lpf1_static_hz150160PT1/PT2/PT3-Filter-Init-Fix in 2025.12 → weniger Filterung nötig
dterm_lpf1_dyn_min_hz7585Weniger D-Term-Lag auf dem reaktionsschnellen 2S-Antrieb
dyn_notch / rpm_harmonicsunverändertGrundstrategie bleibt: RPM-Filter für Motorrauschen, Dynamic Notch nur für Rahmenresonanzen

Neues Tuning-Tool: Chirp Signal Generator (nur 2025.12)

Wichtigster Workflow-Grundsatz (gilt für beide Versionen)

15Bildbibliothek (Original + Alternativen)

Alle Bilder folgen ab v3.0 der einheitlichen Namenskonvention: img_{bereich}-{motiv}_{typ}.jpg

ℹ Die Original-Bilder im Projekt sind programmatisch generierte, abstrakte Grafiken im Blunaa-Farbschema — keine Fotos realer Personen oder Orte. KI-Varianten (ai-v1..v3) sind ebenfalls programmatisch generiert. Web-Alternativen müssen vor Nutzung auf blunaa.com auf Lizenzen geprüft werden (Empfehlung: unsplash.com, pexels.com, pixabay.com für lizenzsichere Bilder).

Dateiübersicht Bildbibliothek

MotivOriginalKI-Varianten (im ZIP)Web-VariantenGröße
bio-portrait img_bio-portrait_orig.jpg ai-v1, ai-v2, ai-v3 ✓ web-v1..3 → PDF-Liste 600×750
hero-bg img_hero-bg_orig.jpg ai-v1, ai-v2, ai-v3 ✓ web-v1..3 → PDF-Liste 1920×1080
gallery-dj-setup img_gallery-dj-setup_orig.jpg ai-v1, ai-v2, ai-v3 ✓ web-v1..3 → PDF-Liste 900×600
gallery-fpv img_gallery-fpv_orig.jpg ai-v1, ai-v2, ai-v3 ✓ web-v1..3 → PDF-Liste 900×600
gallery-hamradio img_gallery-hamradio_orig.jpg ai-v1, ai-v2, ai-v3 ✓ web-v1..3 → PDF-Liste 900×600
gallery-iot img_gallery-iot_orig.jpg ai-v1, ai-v2, ai-v3 ✓ web-v1..3 → PDF-Liste 900×600
gallery-studio img_gallery-studio_orig.jpg ai-v1, ai-v2, ai-v3 ✓ web-v1..3 → PDF-Liste 900×600
gallery-vinyl img_gallery-vinyl_orig.jpg ai-v1, ai-v2, ai-v3 ✓ web-v1..3 → PDF-Liste 900×600
Logo eingebaut (v3.2): img_logo-header_v4-split.png (Variante v4, Split-Color) ersetzt seit v3.2 den reinen "BLUNAA"-Textheader im Hero-Bereich — sowohl in index.html als auch in home_content.html (Flask). Die anderen 4 Logo-Varianten (v1, v2, v3, v5) liegen weiterhin zur freien Wahl bei.

Beiliegende Dokumente zur Bildbibliothek

16Dateiübersicht & Namenskonvention (v3.0)

Namenskonvention v3.0 — verbindlich für alle Projektdateien ab Juni 2026:
blunaa-{plattform}_v{X.X}.zip · doc_{thema}_v{X.X}.pdf · img_{bereich}-{motiv}_{typ}.jpg

Download-Pakete (aktuelle Versionen)

Dateiname (Namenskonvention v3.0)InhaltVersionStatus
blunaa-strato_v4.0.zip Serverlose HTML-Website für Strato-FTP-Upload v4.0 ✓ Aktuell
blunaa-flask_v4.0.zip Flask/Python-Website mit SMTP E-Mail und allen Templates v4.0 ✓ Aktuell
blunaa-android-app_v1.0.zip Android-WebView-App (build-fertiges Gradle-Projekt + APK-Guide) v1.0 ✓ Aktuell
blunaa-images_v1.0.zip Bildbibliothek: 8 Originale + 24 KI-Varianten (benannt nach Konvention v3.0) v1.0 ✓ Aktuell
blunaa-logos_v1.0.zip 5x BLUNAA Logo/Header-Bild (transparente PNG, ersetzt Hero-Textüberschrift) v1.0 ✓ Aktuell

Beiliegende Dokumente

DateinameInhaltVersion
doc_projektdokumentation_v3.0.htmlDiese Datei — Projektdokumentation komplettv3.0
doc_flylens75-esc-bluejay_v1.0.pdfESC-Configurator & Bluejay Setup-Guide (3 Seiten, BF-Design)v1.0 NEU
doc_flylens75-esc-bluejay_v1.0.txtVollständige ESC/Bluejay CLI- und Konfigurationsanleitungv1.0 NEU
doc_flylens75-betaflight46-tuning_v1.0.pdfBetaflight 4.6 PID+Filter-Guide (5 Seiten, BF-Design)v1.0
doc_flylens75-betaflight46-cli_v1.0.txtVollständiges Betaflight 4.6 CLI-Skript zum Einfügenv1.0
doc_flylens75-bf2025-12-tuning_v2.0.pdfBetaflight 2025.12 Guide mit v1→v2-Vergleichstabelle (PID-Werte durch v4.0 überholt)v2.0 überholt
doc_flylens75-bf2025-12-pid-correction_v3.0.pdfPID-Korrektur basierend auf echten Werks-CLI-Dumps (durch v4.0 überholt)v3.0 überholt
doc_flylens75-bf2025-12-cli_v3.0.txtKorrigiertes CLI-Skript v3.0 (durch v4.0 überholt)v3.0 überholt
doc_flylens75-bf2025-12-realdata_v4.0.pdfAnalyse der Blackbox-Konfiguration (5 Flüge), durch v5.0-Telemetrieanalyse überholtv4.0 überholt
doc_flylens75-bf2025-12-cli_v4.0.txtCLI-Skript v4.0 (durch v5.0 überholt)v4.0 überholt
doc_flylens75-bf2025-12-telemetry_v5.0.pdfFFT-Frequenzanalyse aus 5 echten CSV-Exporten (durch v6.0 verifiziert/übernommen)v5.0 überholt
doc_flylens75-bf2025-12-fulldump_v6.0.pdfWar fälschlich als "vollständiger Dump" beschrieben — durch v7.0 korrigiert/ersetztv6.0 überholt
doc_flylens75-bf2025-12-cli_v6.0.txtCLI-Skript v6.0 (durch v7.0 ersetzt)v6.0 überholt
doc_flylens75-bf2025-12-diff_v7.0.pdfEchter, programmatisch verifizierter CLI-Diff (27/27 Werte gegen Original-Dump geprüft)v7.0 EMPFOHLEN
doc_flylens75-bf2025-12-diff_v7.0.txtCLI-Diff mit korrektem batch start/save, sicher einspielbarv7.0 EMPFOHLEN
doc_flylens75-bf2025-12-cli_v5.0.txtFinales CLI-Skript basierend auf echter Zeitreihen-Telemetriev5.0 EMPFOHLEN
doc_flylens75-esc-bluejay_v1.0.pdfESC-Configurator & Bluejay Setup-Guide (3 Seiten, BF-Design)v1.0
doc_flylens75-fpv-master-guide_v1.0.pdfGesamt-Anleitung: ESC→Betaflight→Crossfire→Latenz→Race-Mode→PID→Testflug (9 Seiten, 8 Phasen)v1.0 NEU
doc_flylens75-bf2025-12-cli_v2.0.txtVollständiges Betaflight 2025.12 CLI-Skript mit Inline-Begründungenv2.0 NEU
doc_android-apk-anleitung_v1.0.pdfSchritt-für-Schritt APK-Bauanleitung für Einsteiger (4 Seiten)v1.0
doc_web-bildquellen_v1.0.pdfWeb-Bildvorschläge je Motiv + Lizenz-Empfehlungenv1.0
doc_web-bildquellen_v1.0.txtDieselben Infos als Plaintextv1.0
doc_dsgvo-loeschungsanfragen_v1.0.txtDSGVO-Löschanfragen an 10 Datenmakler (fertige Briefe)v1.0

Wichtige Einzeldateien in den ZIPs

DateiVersionLetzte Änderung
index.htmlv4.0Android-touchend-Fix, ESP32, AGB-Trennung, kein blauer Rahmen
agb.htmlv1.0Neue eigenständige AGB-Seite mit je 1 Zurück-Button oben + unten
app.pyv4.015 Routen, /agb hinzugefügt, doppelte /impressum-Route entfernt
base.html (Flask)v2.0AGB als separater Menüpunkt, Android touchend-Fix
technik_content.htmlv1.1Raspberry Pi → ESP32 (Bug-Fix nach Test [14])
gallery_content.htmlv1.1Raspberry Pi → ESP32 (Bug-Fix nach Test [14])
MainActivity.javav1.0WebView mit Mobile-UA, externe Links → Browser, HTTPS-Erzwingung

17Datenschutz / DSGVO-Status

Stand Juni 2026: Auf der gesamten Website und in allen Projektdateien (außer dem gesetzlich vorgeschriebenen Impressum) wird ausschließlich der Künstlername "Blunaa" und die E-Mail-Adresse booking@blunaa.com verwendet — kein bürgerlicher Name außerhalb des Impressums.

Was wurde bereinigt?

Rechtlicher Hinweis (§5 TMG)

⚠ Das Impressum führt aktuell nur den Künstlernamen "Blunaa" statt eines bürgerlichen Klarnamens. §5 TMG verlangt für geschäftsmäßige Telemedien den vollständigen bürgerlichen Namen des Verantwortlichen. Diese Entscheidung wurde durch den Betreiber bewusst getroffen und das damit verbundene Abmahn-Risiko ist ihm bekannt.

DSGVO-Löschungsanfragen

Broker / PlattformKategorieStatus
Facebook / MetaSoziales NetzwerkBrief erstellt → manuell versenden
Google LLCSuchdienst / AggregatorBrief erstellt → manuell versenden
SoundCloud GmbHMusikplattformBrief erstellt → manuell versenden
Instagram / MetaSoziales NetzwerkBrief erstellt → manuell versenden
Mixcloud Ltd.MusikplattformBrief erstellt → manuell versenden
Resident Advisor (RA)DJ-PlattformBrief erstellt → manuell versenden
QRZ.com (Hamdata LLC)Amateurfunk-RegisterBrief erstellt → manuell versenden
GitHub Inc. (Microsoft)Code-HostingBrief erstellt → manuell versenden
BundesnetzagenturBehörde / FunkregisterBrief erstellt (ggf. nur Auskunft möglich)
Strato AGWebhostingBrief erstellt → manuell versenden

Vollständige Briefvorlagen: doc_dsgvo-loeschungsanfragen_v1.0.txt

18BLUNAA_STATE – Projekt-Flag

Internes State-Flag-System für lückenlose Fortsetzung aller Aufgaben ohne erneute Vollprüfung. Befehl zum Fortfahren: BLUNAA_CONTINUE

Befehl: BLUNAA_CONTINUE — gibt sofort den aktuellen State aus und macht an der nächsten offenen Aufgabe weiter. Alle Zwischenergebnisse mit Versionsnummer werden mitgeführt.

Aktueller State (v1.15 – 17.06.2026)

TaskBeschreibungStatus
[01]Mobile Menü Android-Fix (touchend)
[02]Raspberry Pi → ESP32 (index.html + app.py)
[03]Blunaa als erster DJ-Act (4 Events)
[04]Blauer Hero-Rahmen entfernt
[05-07]AGB getrennt, eigene Seite, Menüpunkt
[09-10]Flask: AGB-Nav + Android-touchend-Fix
[12]docs.html BLUNAA_STATE eingebaut
[13]Android-App erstellt (13 Dateien, 5 Icons)
[14]Alle Tests bestanden, 1 Bug gefunden + repariert
[17-20]Betaflight 4.6 Guide (PDF + CLI-Skript + docs)
[22]Android-APK-Bauanleitung PDF (4 Seiten)
[24]docs.html komplett neu strukturiert (16 Kapitel)
[25a]24 KI-Bildvarianten generiert (3x je 8 Motive)
[25b-c]Web-Bildvorschläge: Tabelle PDF + TXT
[26]"Blunaa" vollständig entfernt
[27]Finale ZIPs mit Namenskonvention v3.0

State-Flag Format

╔══════════════════════════════════════════════════════════════╗
║  BLUNAA_STATE vX.X – TT.MM.JJJJ                            ║
║  Fortsetz-Befehl: BLUNAA_CONTINUE                           ║
╠══════════════════════════════════════════════════════════════╣
║  ✅ ERLEDIGT / 📦 ZWISCHENERGEBNISSE / 🔲 OFFEN             ║
╚══════════════════════════════════════════════════════════════╝