Forum: PC Hard- und Software BananaPi, GnuRadio - Programm wird immer zu zeitig beendet


von Stefan (Gast)


Lesenswert?

Hi,

ich habe mit GnuRadio auf dem BananaPi mir ein kleines Programm 
gebastelt, welches per RTL-SDR (RTL2832u + R820T) auf 137,xx MHz die 
Noaa Satelliten empfängt. Das funktioniert soweit auch ganz gut. Das 
Programm wird von einem Lazarus-Programm zu gegebener Zeit getstartet. 
Ist die Zeit für den Satelliten um, so sendet das Lazarus-Programm per 
Shell ein "Killall python" Befehl, welches die Aufnahme beendet und 
danach aus der aufgenommenen Wave-Datei das Satellitenbild generiert, 
Landkarte darüber legt und auf die Homepage lädt.

Das Problem ist nun, dass die Aufnahmen nicht immer bis zum Ende 
aufgenommen werden, sondern das GnuRadio-Programm teils mitten in der 
Aufnahme unvermittelt abbricht, obwohl die Zeit für den KillAll-Befehl 
noch garnicht erreicht wurde. Entsprechend fehlen dann natürlich Teile 
des Satellitenbildes. Kann es sein, dass es Hintergrundprozesse unter 
Raspbian für BananaPi gibt, welche das System so stark auslasten (ausser 
der Aufnahme passiert während der Zeit nichts. Selbst mein 
Wetterstationsprogramm wird für die Zeit der Aufnahme beendet und danach 
wieder gestartet) dass das GnuRadio Programm abbricht? Was mir gerade 
durch den Kopf geht, ist der Punkt Strom. Bisher läuft das System über 
ein 2A Netzteil, wobei gesagt werden muss, dass das System auf einer 
Sata-Platte (160GB, 2,5", 5V/700mA) liegt und zusammen mit dem SDR-Stick 
bestimmt nicht wenig Strom zieht. Daher werde ich erstmal noch über den 
zweiten Micro-USB-Anschluss ein zweites 2A Netzteil dran hängen, in der 
Hoffnung das es daran lag.

Fallen Euch noch Dinge ein, die das GnuRadio-Programm zum Absturz 
bringen könnten? Die Bilder können hier: http://www.stenzis-hp.de/ unter 
dem Punkt "Satellitenbilder BananaPi" angeschaut werden.

Vielen Dank im Vorraus,

Stefan.

von Stefan (Gast)


Lesenswert?

Nachtrag: Ich habe jetzt am USB-OTG Anschluss ein zweites 5V/2A Netzteil 
am laufen. Mal schauen, ob die Aufnahmen nun zukünftig ohne vorzeitigem 
Ende laufen.

von michael (Gast)


Lesenswert?

Mit Programmen wie htop oder top kannst du dir den Speicherhunger sowie 
die CPU-Nutzung der laufenden Prozesse anschauen.
Bist du dir sicher, dass dein Lazarus-Projekt gnuradio immer zum 
richtigen Zeitpunkt killt? Du könntest zur Kontrolle einen Logger in 
dein Lazarus-Projekt einbauen, der bei jedem kill die Uhrzeit in eine 
log-Datei schreibt.
Mit uptime kannst du rauskriegen, wie lange das System schon läuft (um 
versehentliche Neustarts auszuschließen).

Viele Grüße
Michael

von Stefan (Gast)


Lesenswert?

Hallo Michael,

denke mal, das mit den Zeiten sollte stimmen. Das Lazarus-Programm prüft 
im Sekundentakt die aktuelle Zeit, mit der in einer Textdatei 
hinterlegten Zeit. Stimmen beide überein, wird der Kill-Befehl 
ausgeführt. Wegen Uptime, das System startet ja nicht gänzlich neu. Es 
wird nur das kleine GnuRadio Programm teils vorzeitig beendet. Wie 
gesagt, ich habe jetzt ein zweites Netzteil mit 2A am USB-OTG Anschluss. 
Zusammen mit den 2A für BananaPi und Sata-Platte am eigentlichen 
Strom-MicroUSB des Banana (vom Netzteilstecker geht ein Y Kabel ab. Ein 
Anschluss direkt an die Sata-Platte, der andere an den Micro-USB des 
Banana), ergeben sich somit 4A für das gesamte System, statt bisher 2A. 
Vielleicht waren die 2A einfach zu wenig (2A für Sata-Platte, SDR-Stick 
und BananaPi), wodurch der SDR-Stick hier und da mal Aussetzer hatte, 
was GnuRadio dann nicht gut fand und sich beendet hat.

Der Befehl TOP zeigt nur Hintergrundprozesse, wie Lautstärkeregelung, 
Uhr und derartiges, wenn alle Fenster zu sind. Denke, da werde ich nicht 
mehr viel optimieren können. Zeitsynchronisation wurde auch auf ntpdate 
per Crontab im Stundentakt geändert.

Auf jeden Fall danke ich Dir für die Vorschläge. Ich werde berichten ob 
das hinzufügen des zweiten Netzteils bringt.

Gruß Stefan.

von Stefan (Gast)


Lesenswert?

Update:

Bisher lief alles auf Raspbian, welches Lemaker für den Banana-Pi 
portiert hat. Allerdings habe ich nun hier: 
http://forum.golem.de/kommentare/opensource/raspberry-pi-2-ausprobiert-schnell-rechnen-langsam-speichern/ein-wenig-doof-..../89796,4043611,4046511,read.html 
Vierter Post von oben von Cubie2, erfahren das Raspbian nur einen von 2 
Prozessorkernen unterstützt. Daher habe ich mir nun Bananian 
installiert, welches ein Minimal-System ohne Desktop ist und mir LXDE 
darauf installiert. Zumindest wird beim booten schon mal angezeigt, dass 
beide Kerne Verwendung finden. Mal schauen ob sich darauf GNURadio 
genauso gut compilieren lässt wie auf Raspbian und ob sich durch die 
Nutzung beider Kerne, mein Problem von allein löst. Irgendwo aber 
schwache Leistung, dass ein für den BananaPi portiertes System dessen 
Hardware nicht in vollem Umfang unterstützt.

von Icke (Gast)


Lesenswert?

Hallo Stefan,

hast Du mittlerweile dein Projekt voranbringen können und Gnuradio unter 
Bananian zum Laufen gebracht?

Ich bin nämlich mit der selben oder ähnlichen Aufgabe am kämpfen und 
komme nicht richtig weiter.
Momentan hänge ich im Bereich "cmake" fest und bekomme stets die 
Fehlermeldung: "volk required but not found".
Der Versuch, volk zu installieren, ist bis jetzt gescheitert.

Über einen Tipp von dir, falls Du bereits erfolgreich warst, würde ich 
mich freuen. ;-)

Gruß
Icke

von Vancouver (Gast)


Lesenswert?

Moin,

falls es jemandem hilft:

Ich habe ein ähnliches Projekt auf einem BananaPro realisiert, auch mit 
GnuRadio und RTL2832 (Noxon). Allerdings geht es bei mir nicht um die 
NOAA-Satelliten sondern um AIS und ADS-B, beides funktioniert 
einwandfrei. AIS ist deutlich stressiger für die Banane und erzeugt eine 
dauerhafte Load von ca. 3.4, vermutlich weil auf beiden AIS-Frequenzen 
gleichzeitig getrackt wird.

Gelegentlich hatte ich das Problem, dass im AIS-Betrieb das System 
sporadisch abstürzt und neu bootet. Die Ursache war tatsächlich die 
Spannungsversorgung, die bedingt durch ein zu langes USB-Kabel ein wenig 
wackelich war. Mit einem kurzen Kabel geht es problemlos.

Unterwegs versorge ich das Teil aus einem USB- Powerpack vom Aldi (ich 
glaube 7.2Ah), damit läuft AIS ziemlich genau 4 Stunden, dann ist 
Feierabend.

Als System verwende ich Armbian, das ist definitiv das Beste, was mir 
bananenmäßig bisher begegnet ist.

Frage zum NOAA-Receiver: Welche Antenne verwendest Du? Hast Du eine 
Quadrifilar-Antenne?

von Stefan (Gast)


Lesenswert?

Hallo,

ich habe heute zufällig diesen Thread wieder entdeckt. Der Empfang läuft 
über einen SDR-Stick (RTL2832u + R820T) und einer QFH-Antenne für 
137MHz, welche ich mir selbst gebaut habe. Die Problematik des 
vorzeitigen beendens des GNUradio-Programms besteht leider noch immer. 
Ich habe inzwischen schon mit allem möglichen experimentiert. Kürzeres 
Kabel, aktiver USB-Hub mit eigenem Netzteil, andere Programme 
automatisch beenden wenn Satellit empfangen wird, ... Bisher hat nichts 
geholfen. Mal schafft es das Programm so lange zu laufen, bis es durch 
das Steuerprogramm beendet wird und ein anderes mal, beendet sich das 
GNURadio-Programm vorzeitig selbst. Zu bewundern sind die Satbilder 
(Inzwischen auch die des russischen Meteor) unter 
http://wetterstation-hohenwalde.de/ .

Gruß Stefan.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.