Beiträge von firstfacility

    Hallo Forum,

    ich habe auf meinen Rpi B ein Problem mit den USB Sound und meinem Mikro. Ich habe inzwischen schon einige USB Soundkarten und Mikros versucht, aber leider ohne Erfolg. Ich habe die Hardware auf meinem Laptop getestet und sie läuft, also kann ich wohl einen Hardwaredefekt ausschließen.

    Die Karte wird erkannt :

    Code
    Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
    Bus 001 Device 004: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter
    Bus 001 Device 006: ID 0d8c:013c C-Media Electronics, Inc. CM108 Audio Controller

    Die CM108 Usb Soundkarte soll auch auf dem Rpi laufen, hier im Forum haben schon einige User diese Karte im Gebrauch.

    Ein Auszug meiner alsa-base.conf:

    Code
    # Keep snd-usb-audio from beeing loaded as first soundcard
    options snd-usb-audio index=0
    options snd_bcm2835 index=1
    # Prevent abnormal drivers from grabbing index 0
    options bt87x index=-2
    options cx88_alsa index=-2
    options snd-atiixp-modem index=-2
    options snd-intel8x0m index=-2
    options snd-via82xx-modem index=-2

    Dann habe ich noch eine .asoundrc mit folgendem Inhalt erstellt:

    Ok die Ausgabe von amixer -l :

    Code
    **** Liste der Hardware-Geräte (CAPTURE) ****
    Karte 0: Device [USB PnP Sound Device], Gerät 0: USB Audio [USB Audio]
      Sub-Geräte: 1/1
      Sub-Gerät #0: subdevice #0

    Ich finde das schaut soweit ganz gut aus doch wenn ich die Karte anspreche wird es schwierig. Ein "mp3-decoder -a plughw:0 test.mp3" läuft perfekt, und ich habe eine Soundausgabe. Jedoch wenn ich aplay test.wav eingebe bleibt die Soundausgabe stumm.

    Auch ein :
    arecord -d 10 -f cd -t wav -D plughw:0,0 test.wav
    aplay test.wav
    läuft leider nicht. Die LED blinkt zwar an der USB Soundkarte bei der Aufnahme doch leider keinen Sound. Mit dem Alsamixer habe ich die Laustärke geprüft.

    Hätte jemand eine Idee was ich tun könnte ?

    schöne Grüsse
    Frank

    Hallo Forum,
    ich versuche grade folgendes Problem zu lösen. Ich starte ein Script in diesem Script werden zwei Programme ausgeführt die wiederum zwei Unterprozesse starten. Nach einiger Zeit sollten alle Prozesse beendet werden:

    tue dies > Prozess 1000
    > Subprozess 2000
    tue das Prozess 3000
    > Subprozess 4000
    warte 60 sek
    kill 1000,2000,3000,4000
    Exit
    Hierzu würde sic ein oder mehrere Pidfiles anbieten oder ? Also so in der Art:

    Geht nur leider nicht der erste Haupt-Prozess wird erfasst, die Subs und der zweite Hauptprozess nicht. Wie könnte man das lösen?

    Geht das vielleicht in python einfacher ? Hierzu gibt es auch den subprozess mit dem ich "tue dies" und "tue das" anstoßen kann. Würden da die weiteren Prozesse gekillt ?

    Gruß
    Frank

    Hallo Forum,
    ich habe hier ein Problem auf meinen Rpi Tv zu streamen mit dem VLC Player. Folgendes soll er machen :
    PiAUISuite ist installiert und ich würde gern die TV über die Sprachsteuerung aufrufen. Hierzu habe ich in der commands.conf entsprechende Einträge gemacht zB

    ~Nachrichten==/var/www/bin/n24.sh &

    Mit dem Entsprechenden Sprachbefehl " Nachrichten" wird die Datei aufgerufen und ausgeführt.

    [code}

    home/pi/vlc/vlc --x11-display 0.1 --vout omxil_vout --video-on-top --no-video-title-show /var
    /www/bin/urln24 # http://192.168.11.100/web/stream.m3u…1:C00000:0:0:0:
    [/code]

    Führe ich die Datei als User pi aus läuft alles jedoch mit der PiAUISuite bekomme ich einen Fehler:
    http access error: 192.168.11.100:80

    Ich führe die PiAUISuite als User pi aus von daher dürfe er das auch ausführen können.
    Hätte jemand eine Idee was ich tun könnte ?

    schöne Grüße

    Frank

    Hallo Forum,

    ich würde gern Temperaturen bis ca. 300 Grad C mit den Rpi messen und verarbeiten. Klar, ein Ansatz kenne ich zB ein passender KTY Fühler über einen DA Wandler an den Rpi. Aber ich hätte gern etwas digitales, nur unsere 1wire oder Dhl laufen nur bis 125 Grad also ungeeignet. Hätte jemand eine Idee ?

    Gruß
    Frank

    Ich habe die Sache nun etwas anders aufgebaut. Ich habe aus meinem Server Script nun sechs einzelne gemacht und rufe sie nacheinander auf. Ich dache erst das ich dadurch zu viel Traffic mache aber wenn ich eine SSH Verbindung nutze geht es. Dann mache ich daraus sechs Variablen und schon geht's auch in Pygame.
    Eine Frage hätte ich jedoch noch zum Thema Pygame ich zeige zur Zeit die Temps durch :

    Code
    font = pygame.font.SysFont( "Times New Roman,", 12)
    text = font.render(wasch, True, white)
    screen.blit(text, (0, 80))

    Wenn nun ein neuer Wert geschrieben wird verschwindet der alte nicht, wie kann ich den alten wert löschen so dass nur der neue angezeigt wird ?


    Naja diese 'temp0 bis temp6' Sache ist halt unschön und hardcoded... Leider weiß ich nicht wie die Ausgabe des 'temps.py' Script aussieht - das wäre hilfreich um weitere Optimierungen vorzunehmen


    hm, ich dachte über "try" könnte man das machen. Also bei dem Vorschlag den ich von dir bekommen habe es über pygame zu machen bekomme ich eine Ausgabe:
    (u'', u'', u'', u'', u'', u'')
    Mein Script auf dem Server gibt :
    19.69
    24.81
    3.56
    34.25
    22.94
    aus.


    Das Script läuft auf dem Server.


    Ich muss gestehen, dass es meine ersten Gehversuche mit pygame sind, ich hätte nie gedacht danach zu suchen .......... sogar es für meine Anwendung zu nutzen. Aber ich glaube es lohnt sich noch etwas näher damit zu beschäftigen. Ich habe es noch nicht versucht aber der Vorschlag gefällt mir sehr gut.
    Zu dem Dictionary habe ich eben mal die Anleitung gelesen, habe jedoch noch nicht verstanden wo der Vorteil liegt. Ich werde mich aber damit noch beschäftigen.
    Bisher schon mal besten Dank für deine Hilfe

    Gruß
    Frank


    Auch beim Threading bekommst Du Werte mit einem return zurück. Dazu würde ich allerdings ne Klasse bauen und die Werte mit ner Methode in eine Liste packen. Ich würde auch erst in der Klasse die Methode threaden.


    ja klar ein return temp1 habe ich versucht ging aber nicht, also ein dann mal anders:
    Wenn ich richtig verstehe
    ich definiere eine Klasse leite eine Methode ab in der ich die Werte in eine Liste packe und die Liste dann im Pygame Teil wieder auslese ?
    Das wäre ja so ähnlich wie Andreas geschrieben hat, die Werte in eine Datei zu schreiben, und dann wieder auszulesen.

    Hallo Forum,
    ich möchte aus einem Thread einige Variablen definieren. Zum Ablauf ich habe auf einem anderen Raspi einige 1 Wire Sensoren die ich über ssh abrufe. Hierzu läuft ein anderes Python Script dass mir die Werte liefert. Da im Anschluss Pygame läuft habe ich die Abfrage in einen Thread gepackt. Es schaut zur Zeit so aus:

    Innerhalb des Threads bekomme ich alle 30 Sek. meine Werte soweit kein Problem ( 30 Sek nur zum testen später wird der Abstand natürlich größer) Pygame wird auch aufgebaut auch das ist ok. Nur würde ich gern im Pygame Teil die "temp0-5" als Variablen nutzen. Wie kann ich die Werte global nutzbar machen ? hätte jemand einen Tipp für mich ?
    schöne Grüße
    Frank


    Erstens gilt der Weg als stark suboptimal - wenn externe Aufrufe, dann mit dem `subprocess` Modul. Und zweitens brauchst du dafür so wie so keine externen Aufruf, wenn du das mit der `show()` Funktion auf aus `Image`-Klasse des Pillow-Moduls machen würdest.

    Ja der Einwand ist mehr als berechtigt, vor allem weil der Prozess ja wieder beendet werden muss, und das wäre bei mir dann mit Killall .
    Ich habe bisher `Show´ nur in Verbindung mit statischen Aufrufen benutzt. Hier ist es jedoch eine Variable also ( "%s.jpg" % cover ) da bekomme ich den Aufruf nicht, hin ich bekomme immer ein "Syntax error" Das wird sicher gehen nur habe ich es noch nicht gefunden.

    der Zugriff auf das Display :0 läuft erst später nicht wären des Bootvorgangs da wird nur das Script geladen. Was mir grade aufgefallen ist das ich per ssh Client (Windows) auch keinen Zugriff auf das Display :0 bekommen. Versuch doch mal xli - Display :0 auszuführen, da scheint es doch ein Rechteproblem zu geben.

    Hallo Forum,
    ich habe ein kleines Script geschrieben bei dem ich mir auf dem X-Server ein Bild ausgeben lasse:
    os.system("xli -display :0 Datei")
    Führe ich das Script als root aus läuft es.
    Starte ich es in der rc.local mit "/usr/bin/python3 var/www/callmon/callmon.py & "
    bekomme ich einen Fehler "Can´t open Display :0"
    Starte ich mit "os.system("xli -display :1 Datei")" geht es. Display :1 ist der VLC Server.
    Also ich starte mein Script in der rc.local als Root oder ? Und root darf Display :0 nutzen ?

    Hätte jemand eine Idee ?

    Gruß

    Frank

    Ich habe nochmal komplett umgestellt da ich nicht auf den Fehler gekommen bin.

    Als Ausgabe Cover kommt richtig, aber die Schleife läuft nicht.... leider.
    Ich habe mir das folgendermaßen gedacht:
    1. keine Soundausgabe > cover und newcover gleich
    2. Sound > cover und newcover nicht gleich Cover.jpg wird geladen
    3. Sound wird beendet > cover und newcover gleich .......... da verlassen sie mich

    Kann mir jemand helfen ?

    Gruß
    Frank

    Hallo Forum,
    ich habe den Airplayer für den Raspi installiert und möchte gern die Mediendatei auswerten und Cover ausgeben.
    AirPlay mit dem Raspberry Pi - Shairport Installation

    Die Datei wird so vom Programm genutzt das die Daten über Interpret Titel Albumname und auch der Name der Datei das dazugehörigen Covers. Der Shairport holt sich selbstständig das cover.jpg, dass ich mit meinem Script auf den Xserver anzeigen möchte. Weiterhin auch noch Titel und Interpret. Wenn ich mir die Datei mit "cat now_playing" ist sie solange leer bis etwas abgespielt wird. Erst dann tauchen die oben genannten Daten aus. ich habe nun mein Script wie folgt aufgebaut:

    Die Ausgabe der prints läuft wie gewollt, dh sie sind leer solange nichts abgespielt wird und die Ausgabe lautet im Betrieb:

    Das Problem ist allerdings das die Zeile "os.system("xli -quiet -display :1 -title Airplay -geometry +0+200 %s > /dev/null &" % c
    over)" nur beim ersten mal aufgerufen wird und nicht aktualisiert und auch nicht am Schluss beendet. Nach jedem Titel müsste der Teil neu geladen werden bzw. wenn kein neuer Titel mehr kommt das Progamm gekillt werden. Geht aber leider nicht , was habe ich falsch gemacht ?

    Gruß

    Frank