FPV Wifi Broadcasting HD Video - Thread zum Raspberry HD Videolink von Befi

Status
Nicht offen für weitere Antworten.
Jo, du startest den Receiver, der horcht auf eingehende Pakete und erwartet das das erste was er bekommt der Startheader des Streams ist, den bekommt er halt nur zuverlässig wenn der Transmitter danach gestartet wird. Mit dem Parameter 'ih' kann man die Kamera veranlassen die Header auch in Keyframes(?) nochmal mit zu senden. Man bräuchte dann aber noch nen Parser vor dem Player der sicherstellt das alles vor dem ersten Frame der einen Header enthält weg geschnitten wird. Darum funktioniert es nur manchmal wenn man den Receiver zur rechten Zeit einschaltet.
 
Ist ja eigentlich suboptimal, da bei kurzen Ausfällen das System nicht wieder selbst die Verbindung aufbaut.
 
Das würde für normale IP-Verbindungen zutreffen weil beim abbrechen der Verbindung der Stream zurückgesetzt würde. Spielt bei tx/rx aber keine Rolle weils eine verbindungslose Umsetzung von Wifi ist. Ist der Player erstmal initialisiert spielen Framedrops oder kaputte Frames keine Rolle mehr. Das ist das spezielle an Befi's Protokoll.
 
Naja, geh ich davon aus, das meine Bodenstation mal n Problem hat, bekomm ich den Stream nicht mehr ans laufen. Da wäre ne Art Redundanz cool, wie du schon sagtest, ne Art Keyframe und n Parser. Aber wer weiß, ob das der Latenz zuträglich ist, bzw wer könnte sowas coden...
 

just_different

Erfahrener Benutzer
Also bei mir ist es genau umgekehrt.

Zuerst den Sender TX an.. (so wie bei der Funke ja auch), dann den receiver, also RX. Dann klappt es bei mir auf Anhieb (wenn denn meine TX-Seite wieder funktioniert).

Starte ich RX zuerst, dann bekomme ich keine Verbindung aufgebaut. hatte ich ja schon mal so geschrieben.

So wie ich inzwischen ja auch lesen durfte, reden wir hier ohnehin über zwei unterschiedlichen Szenarien.
Ein mal das Image von....https://www.dropbox.com/sh/zg36kodn921gkqx/AADFbPXZe1bLEGkmbKCROZHta?dl=0, das ich derzeit nutze, und einmal das Image, das RonaldoFPV nutzt, das ist wohl das direkt von BEFI....

Das Prinzip ist wohl gleich, aber der Weg dorthin (Startscripts/Einbindung/Module/etc..) scheint wohl leichte Unterschiede zu haben.
 

ronaldofpv

Erfahrener Benutzer
Es ist identisch bloß die startscripte sind unterschiedlich.

Da das Image aus der Dropbox doch schon etwas älter ist , da gab es noch keine vorgefertigten Scripte.
 

moritzz06

Erfahrener Benutzer
Hat jemand vor den Kernel zu patchen um die Sticks im 2,3Ghz Band senden zu lassen? Wäre eigentlich die beste Lösung verglichen zu UHF Fernsteuerung oder 5,8Ghz Video.. Nur geht das über meine rudimentären Linuxkenntnisse weit hinaus..

Ansonsten, gibt es momentan ein funktionierendes 5Ghz System? Habe noch einen CSL Stick hier, aber 2 CSL Sticks haben ja wohl auch nicht gut funktioniert oder?

EDIT: Noch eine Frage zu der Anleitung hier: http://yo3iiu.ro/blog/?p=1301
Da ist beschrieben wie die Treiber geändert werden müssen, was nicht sehr kompliziert klingt. Wenn ich das auf dem Raspberry mit installiertem raspbian mache, warum muss ich dann den Kernel neu kompilieren? Kann ich nicht den Treiber direkt im System ändern?
 
Zuletzt bearbeitet:

rodizio

Erfahrener Benutzer
Der könnte was sein für 5.8Ghz:
http://www.aliexpress.com/store/pro...IBA-Smart-TV-300M-802/106046_32331082476.html

Hat auch 2 Antennenanschlüsse und 2.4/5.8Ghz. Nutzt den gleichen Treiber (ath9k_htc) wie der TPLink 722N von daher wahrscheinlich, dass der auf TX Seite auch gut funktioniert.

Ist wohl der gleiche wie dieser hier:
https://wikidevi.com/wiki/Panasonic_N5HBZ0000055


Der Treiber muss neu kompiliert werden, weil Du die Änderungen am Quellcode (=menschenlesbar) machst. Kompilieren heisst (vereinfacht) übersetzen in Maschinensprache.
 
Zuletzt bearbeitet:

kinderkram

Erfahrener Benutzer
Naja, geh ich davon aus, das meine Bodenstation mal n Problem hat, bekomm ich den Stream nicht mehr ans laufen.
Umgekehrt wird ein Schuh draus. Wenn die Bodenstation ausfällt, reicht ein Reboot (ok, dauert ne gefühlt unendliche Minute).

Wenn die Airstation ausfällt, is Landen angesagt. Ich geb dem Sender immer ein bisschen Vorlauf. Der kümmert sich nich um etwaige Empfänger sondern sendet und sendet und ... Broadcasting eben.
 
@ moritzz06:

Die CSL Sticks taugen nur als Empfänger, wenn du 2 hast um so besser - nimm die doch gleich für Diversity...
Auf Sender Seite kann ich dir das Alfa AWUS051NH V2 empfehlen. Funktioniert bei mir super auf 5.8GHz.
 

bubu10

Erfahrener Benutzer
Moin meine Station ist soweit fertig läuft auch alles ausser das er ab und zu den TX stream nicht findet Nix passiert an der Station, obwohl der TX schön am senden ist laut blink licht .

Ich habe beide nach der Anleitung nachbar Forum gemacht von Schalonsus

Könntet ihr vieleicht mal eure scripts hier posten wäre super nett ,und wie geht das mit dem USB stick reinstecken und darauf die aufnahme blicke da nicht wirklich durch.

Bin leider noch nicht so bewandert in sachen linux aber wissens hunrig :).

Danke euch schon mal

Gruß Rene
 
@ cbl:
Ich habe überhaupt nichts gepatcht. Habe mir einfach ein frisches Raspian aufgesetzt und eben die Software von befi installiert. Nur die Startscripte habe ich noch etwas angepasst (Sendeleistung, Kanal, diverse Kleinigkeiten).
Im Moment kann ich noch nicht mal sagen welcher Treiber verwendet wird...
 

moritzz06

Erfahrener Benutzer
Ich habe noch mal eine Frage zum Treiber kompilieren. Also angenommen ich habe die beiden Treiber entsprechend der Anleitung geändert und möchte sie nun kompilieren und installieren.
Wenn ich alles verstanden habe, gehe ich so vor:
- build essentials und header installieren
- sudo make drivers/net/wireless/ath/ath9k/htc_drv_init.c
- sudo make install drivers/net/wireless/ath/ath9k/htc_drv_init.c

Ist das so richtig? Bei make muss immer der Dateipfad dazu, damit er auch weiß was kompiliert werden muss, richtig?
Dann werde ich vllt heute mal mein Glück versuchen, vorher wird aber noch ein Image gezogen. Die Chance dass es nicht klappt ist doch recht groß :/
 

moritzz06

Erfahrener Benutzer
Ich habe mal mein Glück versucht, aber bin leider nicht sehr weit gekommen..
Ich kann die ganzen Dateien, die hier genannt werden, gar nicht finden. Auch wenn ich in der von befinitiv verlinkten Firmware für den wn722 Stick suche, kann ich nichts passendes finden.

Jemand eine Idee?
 

just_different

Erfahrener Benutzer
Nur mal so an die Bastler unter uns, falls noch jemand die Idee gut findet....

Denn, wenn wir schon in Richtung Diversity gehen (wollen) und auf der Empfangsseite etwas an den Antennen machen wollen, das wir das Signal nicht zu schenll verlieren... das wäre DAS, eine wirklich geniale Idee, diese zu verknüpfen, und man hätte IMMER den optimalen Empfang für das Bild ud zugleich eine super Reichweite!

Arduino´s kosten ja nun wirklich nicht die Welt (zumindest aus China), und ein Gimbalmotor würde ich mir dafür auch noch leisten.
Nur bekomme ich die Software mit dem Arduino nicht hin... habe zwar jetzt seit zwei tagen einen hier liegen....aber das war es auch.

https://www.youtube.com/watch?v=YaQfUIShAOo

Ich finde die Idee schon länger interessant.
 

rodizio

Erfahrener Benutzer
Weiss nicht, ob sich der Aufwand lohnt. Habe mich in dem Zusammenhang schonmal gefragt, was wohl besser ist als Empfänger: Eine oder zwei gute circular Antennen (evtl. noch mit Tracker) oder ganz viele lineare billige. Bei analog Diversity ist es klar, da immer nur eine gleichzeitig empfängt, müssen alle Ante nen gut sein. Und da man meist eh nur ein 2-Fach diversity hat, am besten auch noch mit Tracker nachgeführt, weil die sonst nicht dahin zeigt wo das Flugzeug ist.

Bei wifibroadcast Diversity empfängt aber immer jede Antenne gleichzeitig, sodass jede zusätzliche Antenne was bringt, auch wenn sie einzeln nur ein schlechtes Bild liefern würde. Wifibroadast kann ja im Gegensatz zu analog sozusagen aus mehreren schlechten Bildern ein gutes Bild 'zusammenbauen'. Circular muss dann glaube auch nicht unbedingt sein, da Reflektionen bei Wifi soweit ich weiss nicht grossartig stören bzw. sogar von Vorteil sein können.

Und Sticks und Antennen kosten nix, für 40EUR kann man aus 4 CSL sticks ein 8-Fach Diversity bauen.

Theoretisch könnte man auch einen Würfel aus 5 Patch Antennen basteln, bei 90 Grad Abstrahlwinkel hat man da praktisch rundherum vollen Empfang und keine Topnull.

Oder ein paar Stück hiervon, 16$ mit Patchantenne dabei:
http://m.aliexpress.com/item/32271527623.html

Oder dieses Ding für 10$:
http://m.aliexpress.com/item/32356524161.html

Edit: Hahaha, diese Chinesen sind so geil. Wenn ich dere Englisch richtig deute, steht da echt drin, dass man das Ding auch dazu nutzen kann, anderer Leute WLAN zu knacken um umsonst zu surfen :)

"Applications :
1. Do you want to link your network to the world everywhere wirelessly and freely ( no payment )?
2. This gadget specailly used to decoding the password of the router netwrok, then you can enjoy the network degagely without any cost ."
 
Zuletzt bearbeitet:

just_different

Erfahrener Benutzer
@rodizio wenn ich das richtig verstanden habe, dann wird kein Bild wie ein Puzzle von Fragmenten zusammen gebastelt, sondern einfach entschieden, welches der ankommenden Pakete ist das, was in "Ordnung" ist und das wird so wie es ist genommen.

Es wird nichhts fehlendes von einem anderen Paket hinzugefügt oder sonstwie zusammen gerechnet (würde nur zu viel Delay bedeuten).

Daher ist es nicht wirklich soo verkehrt. Ob man jetzt 4-turn helicoils baut, oder nur 2-turns... oder noch andere Varianten nimmt, das ist ja nicht die Frage.
Ich denke, Diversity wollen ja mehr oder weniger viele machen, so wie ich auch. Inzwischen habe ich 4 der TP-link und eine Alfa, ohne externen Anschluss (die aber noch nicht geht). Mein B+, könnte auch 3 dieser 4 Antennen aufnehmen.
De PI "Entscheidet" ja ohnehin, von wo das bessere Signal kommt... warum das nicht an einen Arduino weiter leiten?
Der wiederum, "weiß" dann z.B. das kam von der rechten Antenne... und dreht den Gimbal Motor in die entsprechende Richtung.
Ist das Signal immer noch rechts besser, dann dreht er weiter, ist es in der Mitte besser, dann macht er nichts... usw..usw..

Ist die Frage, ob es zumindest einen Versuch Wert ist.
DIe Frage die für mich dabei offen ist, wie könnte man ohne zusätzliches Delay, die Infos vom Pi an den Arduino bekommen, bzw. was genau wäre dazu an Code notwendig, damit es klappen könnte?
Das könnte man ja z.B. an GPIO Outputs der Pi signalisieren, die dann auf Eingänge vom Arduino gehen.
Oder in einer Delux-Variante man sogar noch checkt, ob Oben oder Unten es besser ist (Überflug oder Hohe Steigraten)... na ja, dann wären wir bei 4-fach Diversity und damit ein 2-fach Gimbal.

Wer von den Codern findet die Idee denn auch gut, und hält es für machbar?
 
Das zu programmieren ist nicht schwer, es läuft ja eh schon ein Monitor Interface auf den Sticks, man kann dann mittels iw in ner Schleife oder airodump-ng schauen welcher stick den besten RSSI hat (simple Variante) oder, da Signalstärke nicht unbedingt was über Empfangsqualität aussagt, kann man schauen auf welchem Stick die geringste Fehlerquote bei den empfangenen Paketen liegt (geringfügig aufwendiger). Das lässt sich mit ein paar Zeilen Code erledigen. Im Prinzip kann auch der pi den Motor mittels Software-PPM steuern, ohne Arduino. Leider fehlt die Hardwareuhr, darum ist PPM/PWM auf dem pi nicht besonders genau. Dafür gibts bestimmt auch Aufsteckboards mit Hardware-PPM.

Ich finde aber die Diversity-Variante wesentlich weniger anstrengend (und leiser). Noch dazu steigt die Fehleranfälligkeit wenn man noch ne mechanische Komponente hinzufügt. 3 CSL-Sticks mit 6 2-turn Helicals (~75° Kegel bei -3db) sollten schon ne gute Abdeckung ergeben, oder mehr turns und schmalerer Kegel, evtl mit ner SPW für den Nahbereich. Oder auch Biquads und Yagis dazu. So nen Tracker würd ich unter diesen Umständen nur für extreme Richtantennen in Betracht ziehen, meterlange Yagis oder Schüsseln, aber da gehts dann um Reichweiten die eh nicht legal geflogen werden dürfen.
 
Status
Nicht offen für weitere Antworten.
FPV1

Banggood

Oben Unten