Posts by mollo

    Hallo Peppy,

    ich hoffe, Sie habe trotz Corona ein schönes Weihnachtsfest gehabt und freuen sich schon auf 2021 mit einer baldigen Coronaimpfung.

    Danke auch für die neue Version des Players.


    Die Codeänderung aus #749 funktioniert im Airplay-Modus nicht und ich gebe erstmal auf, die Lautsprecher der alten Stereoanlage zu nutzen.


    Zur Zeit verwende ich den Constable Player mit Adafruit LCD und einer IR Fernbedienung.

    Die Lautsprecher sind über einen kleinen Verstärker am Audio-Ausgang angeschlossen.

    Da ich meistens nur Radio höre, wird fast nur per Fernbedienung geschaltet.


    Ich versuche noch mal meine Wishlist aus #52 zu präzisieren:

    Adafruit TFT Backlight on/off:

    Da ich keinen HifiBerry nutze, würde ich gerne mit der Mute Taste das Backlight aus und einschalten. Mit der Power Taste sollte das Backlight nur ausgeschaltet werden.


    Meine eigenen Versuche den off Befehl in peppy.py einzufügen scheiterte.

      On: sudo sh -c 'echo "1" > /sys/class/backlight/soc\:backlight/brightness'

    OFF: sudo sh -c 'echo "0" > /sys/class/backlight/soc\:backlight/brightness'


    Wo die Mute Taste der Fernsteuerung verarbeitet wird, habe ich nicht gefunden.


    Mute sollte mit den Num. Tasten, KEY_Left/RIGHT/UP/DOWN beendet werden, ohne den Bildschirm einzuschalten.

    Der Bildschirm wird mit Mute auch wieder eingeschaltet.


    0-9 Tasten:

    Ich habe mir einen eigenen Genre Ordner ‚MyStations‘ angelegt und würde hier gerne die Tasten 0-9 zur Auswahl der ersten 10 Sender nutzen.

    Das sollte dann auch für die ersten Einträge aller anderen Ordner gelten.


    Sleeptimer aus #51, #52

    Sleeptimer sollte eine Taste auf der Fernsteuerung sein, die den Ausschaltzeitpunkt (Mute + Hintergrundbeleuchtung aus + Ansage per Text2Speetch) in 10 Min Steps erhöht.

    Während der Sleeptimer läuft kann der Timer weiter in 10 Min. Schritten erhöht werden.


    Der Player wird nicht heruntergefahren sondern mit Mute wird Ton und Backlight ausgeschaltet.


    Beendet wird der Timer mit Senderwechsel und Mute d.H der Sleeptimermuß ggf. neu gestartet werden.


    Vielleicht können Sie sich ja nochmal mit meinen Wünschen beschäftigen.

    Schon jetzt mit allen guten Wünschen fürs neue Jahr

    Thomas

    Mit:

    sudo -H -u shairport-sync alsamixer -D default

    erscheint der alsamixer und ich kann die Headphone Lautstäke regeln.

    Grüße

    Thomas

    Hallo Peppy,

    Danke für die schnelle Antwort,

    players.txt und shairport-sync.conf sind auch nach der Installation unverändert und gleichen Ihren obrigen Links.

    Mir fällt nur der Fehler bei folgendem Kommando auf:

    sudo -H -u shairport-sync alsamixer -D equal

    ALSA lib control.c:1375:(snd_ctl_open_noupdate) Invalid CTL equal

    cannot open mixer: No such file or directory


    Kann dieser Hinweis weiterhelfen?

    Mit freundlichen Grüßen

    Thomas

    Frage zu AirPlay, Shareport-sync und Equalizer


    Nach einem neuen Anlauf den Peppy Player Constable Headless per IR Fernbedienung zu nutzen, habe ich gleich wieder eine Frage:

    Ich habe meinen RPi 3+ mit dem Peppy Player über den 3,5 Klinkenstecker an meine alte Stereoanlage angeschlossen.

    Bei der Wiedergabe eines Internetradios kann man mit dem Equalizer Bässe wegregeln, die Höhen betonen, so dass ein Klang die bei dem alten UKW Radio erzeugt wird.

    Wenn ich nun aber vom iPad über AirPlay Internetsende oder Podcasts hören möchte

    werden der Basse viel zu stark wiedergeben und der Equalizer wird nicht angesprochen.


    Gibt es einen Tipp wie man die shareport-sync Ausgabe auch über den Equalizer leiten kann?


    Grüße aus Hamburg

    Thomas


    Hallo Peppy,
    habe mal wieder das WebRadio (Constable Edition) installiert und bin begeistert.
    Ich nutze ein Adafruit 3,5" LCD Display und frage mich warum
    der Touchscreen ohne Kalibrierung funktioniert?
    Meine eigenen Versuche mit Python scheitern gerade an der Touchscreen-Kalibrierung


    Grüße aus Hamburg
    Thomas

    Wishlist:

    Sleeptimer ist bei mir eine Taste auf der Fernsteuerung, die den Ausschaltzeitpunkt (Mute + Hintergrundbeleuchtung aus + Ansage per Text2Speetch) in 10 Min Steps erhöht. Unterbrochen wird der Timer z.B. bei erneutem Senderwechsel und muß ggf. neu gestartet werden.

    Bildschirmschoner, per Taste auf der Fernsteuerung einschalten und zwischen Clock, Slideshow und Weather umschalten.

    Beschreibungen in den verschiednen Quelldateien würden den Aufwand zum Verständnis des ganzen Players erleichtern.

    Leider beherrsche ich Python nur so nach der try and error Methode. Auch komme ich mit Objektorientierter Programmierung nicht zurecht. Würde mir aber eine Beschreibung des Plugins der Bildschirmschoner anschauen. Vielleicht könnten diese Beschreibungen auch anderen helfen.

    Grüße, Thomas

    Bin ich mit einer Wishlist hier richtig?

    Von den im Forum erwähnten Internet Radio Programmen mit TFT Anzeige gefällt mir das Peppy WebRadio wegen der übersichtlichen Screens sehr gut.

    Bedient wird bei mir meistens über eine IR Fernsteuerung.

    Dazu habe ich einige Wünsche:

    Einen über IR einstellbaren Sleeptimer, der auch die Hintergrundbeleuchtung des Adafruit PiTFT 3.5“ Touch Screens steuert.

    Über IR umschaltbare Screensaver Seiten: Wetter, Diashow.

    Die Möglichkeit eigene Screensaver Seiten wie Kalender, Benzinpreise, Fahrplan einzufügen.

    Dazu würde ich mir in den verschiedenen Programmteilen eine kurze Beschreibung wünschen.

    Für die Anpassung an eine andere IR Fernsteuerung suchte ich länger nach den Zusammenhängen und möglichen Kommandos.

    Grüße, Thomas

    Hallo Herr Kaiser,

    leider scheitere ich an der Einbindung des Quimat 3,5'' Zoll Touchbildschirms.

    Ich kann nur über den Web-Browser des PC's auf Volumio zugreifen. Auf dem TFT Schirm am PC

    wird nur sehr klein ein Logon angezeigt.

    Was muß in Volumio definiert werden?

    Könnest Du eine kurze Anleitung hier hinterlassen?

    Grüße, Thomas

    Mit apt-get bekomme ich die podget Version 0.7.3, bei der MOST_RECENT= nicht funktioniert.
    https://sourceforge.net/p/podg…thread/60947950/?limit=25

    Die neuste Version kann man down laden von:
    https://sourceforge.net/projec…iles/podget/podget-0.8.5/
    Ein Download über Windows holt podget-0.8.5.tar.gz
    Dies Datei kann ich per FTP auf gepackt oder entpackt auf meine RPi bringen.
    Auf dem RPi habe ich entpackt:



    Aber was nun?

    In INSTALL steht:



    Hiermit kann ich nun nichts anfangen.
    Wie muss podget nun installiert werden?
    Ich bitte um Tipps und Hilfe zur Installation.
    Sollte podget vorher deinstalliert werden?
    Grüße,
    Thomas

    Code
    cat /usr/share/alsa/alsa.conf


    Automatisch zusammengefügt:[hr]
    amixer
    Simple mixer control 'Headphone',0
    Capabilities: pvolume pswitch pswitch-joined
    Playback channels: Front Left - Front Right
    Limits: Playback 0 - 151
    Mono:
    Front Left: Playback 68 [45%] [-15.63dB] [on]
    Front Right: Playback 68 [45%] [-15.63dB] [on]
    Simple mixer control 'Mic',0
    Capabilities: pvolume pvolume-joined cvolume cvolume-joined pswitch pswitch-joined cswitch cswitch-joined
    Playback channels: Mono
    Capture channels: Mono
    Limits: Playback 0 - 32 Capture 0 - 16
    Mono: Playback 23 [72%] [34.36dB] [off] Capture 0 [0%] [0.00dB] [on]
    Simple mixer control 'Auto Gain Control',0
    Capabilities: pswitch pswitch-joined
    Playback channels: Mono
    Mono: Playback [on]

    Files

    • alsa.txt

      (9.32 kB, downloaded 180 times, last: )

    Mit:

    Code
    amixer set PCM,0 -- 10%-


    become become ich amixer: Unable to find simple control 'PCM',0

    Angeregt durch amixer controls
    numid=6,iface=MIXER,name='Headphone Playback Volume'
    konnte ich die Lautstärke für den MPD/MPC und den aplay output gemeinsam ändern:

    Code
    [b]amixer cset numid=6  50%[/b]


    numid=6,iface=MIXER,name='Headphone Playback Volume'
    ; type=INTEGER,access=rw---R--,values=2,min=0,max=151,step=0
    : values=76,76
    | dBminmax-min=-28.37dB,max=-0.06dB


    Wie man hier die Schrittweise die Laurstärke ändert, habe ich nicht rausgefunden.

    Ich verstehe nicht, wie die Lautstärkeregelung für den USB-Audiocontroller
    über die verschieden Kommandos funktioniert.
    MPD/MPC client.setvol(+5)
    aplay
    getrent geändert werden kann.

    Mein Internetradio Python Programm regelt die Lautstärke über
    eine Infrarot-Fernsteuerung (LIRC) und ‚from mpd import MPDClient‘
    mit den Commands: client.setvol(+5) oder client.setvol(-5)
    Als Lautsprecher ist ein aktiver Lautsprecher an einem USB-Audiocontroller angeschlossen.

    Da ich keine LCD Display mehr verwende, werden die Sendernamen über pico2wave
    Auf dem Lautsprecher ausgegeben.


      

    Während der Senderansage wird die Audiolautstärke auf 0 geregelt, so daß nur der Sendername zu hören ist.

    aplay –l
    **** Liste der Hardware-Geräte (PLAYBACK) ****
    Karte 0: ALSA [bcm2835 ALSA], Gerät 0: bcm2835 ALSA [bcm2835 ALSA]
    Sub-Geräte: 8/8
    Sub-Gerät #0: subdevice #0
    Sub-Gerät #1: subdevice #1
    Sub-Gerät #2: subdevice #2
    Sub-Gerät #3: subdevice #3
    Sub-Gerät #4: subdevice #4
    Sub-Gerät #5: subdevice #5
    Sub-Gerät #6: subdevice #6
    Sub-Gerät #7: subdevice #7
    Karte 0: ALSA [bcm2835 ALSA], Gerät 1: bcm2835 ALSA [bcm2835 IEC958/HDMI]
    Sub-Geräte: 1/1
    Sub-Gerät #0: subdevice #0
    Karte 1: Set [C-Media USB Headphone Set], Gerät 0: USB Audio [USB Audio]
    Sub-Geräte: 0/1
    Sub-Gerät #0: subdevice #0

    amixer controls
    numid=5,iface=MIXER,name='Headphone Playback Switch'
    numid=6,iface=MIXER,name='Headphone Playback Volume'
    numid=3,iface=MIXER,name='Mic Playback Switch'
    numid=4,iface=MIXER,name='Mic Playback Volume'
    numid=7,iface=MIXER,name='Mic Capture Switch'
    numid=8,iface=MIXER,name='Mic Capture Volume'
    numid=9,iface=MIXER,name='Auto Gain Control'
    numid=2,iface=PCM,name='Capture Channel Map'
    numid=1,iface=PCM,name='Playback Channel Map'

    Mein Problem ist nun, daß ich nicht weiß, wie ich die aplay Lautstärke regeln kann.
    Z.Z. muss ich den die Grundeinstellung des Lautsprechers für den Sendernamen einstellen und
    kann den Radiostring nur noch geringfügig regeln.

    Meine Frage ist: Wie kann ich die aplay Lautstärke unabhängig regeln?
    Oder kann ich den durch pico2wave erzeugten tempfile auch anders ausgeben.

    Grüße,
    Thomas

    Für mein Internetradio mit einem 20x4 LCD Display, IR Fernsteuerung und
    Rotation Encoder habe ich mir ein LCD Display mit i2c Controller aus China gekauft.
    Das Displaydas funktioniert ohne Probleme, aber der Blickwinkel ist eine Katastrophe.
    Ich muss senkrecht von vorne drauf sehen um die Sender usw. lesen zu können.
    Ich habe ein „Adafruit i2c 16x2 RGB LCD Pi Plate“ ausprobiert und kann da schräg
    von oben/unten bestens lesen.
    Eine Platine mit Schaltern ist nicht erwünscht und 16x2 Zeilen reichen nicht..
    Nun suche ich ein 20x4 LCD Display mit i2c Controller und großem Blickwinkel.
    Kann mir einer der Leser ein preiswertes Display oder eine Alternative empfehlen?
    Grüße,
    Thomas

    Nach dem Lesen einiger Blogeinträge und Links:
    Laufendem Skript Parameter übergeben Hier wird eine Client Server Lösung beschrieben.
    Python in einfachen Beispielen : Socketprogrammierung
    Socket Programming HOWTO — Python 2.7.9 documentation
    habe ich mein Internet-Radio auf 3 Python Scripts aufgeteilt:
    tmadio_client.py Hier werden über eine Fernsteuerung (LIRC) die Sender ausgewählt.
    mpd_client.py Hier wird per ‘client.send_idle’ und ‘events = client.fetch_idle’ bei einem
    mpd event laufender Sender und laufende Titel abgefragt und an den LCD_Server übergeben.
    So können sowohl die Änderungen über die Fernsteuerung, Tastatur und die Änderungen
    per iPad (MPoD) angezeigt werden.
    lcd_server.py Hier werden Sender und Infos auf dem LCD Display angezeigt


    Nun möchte ich noch die Titelzeile von links nach rechts scrollen, weiß aber nicht, wie die Scroll Routine abgebrochen werden kann.
    Im mpd_client.py Script ist es nicht möglich während des Wartens auf eine mpd Event etwas anders, z:B. eine Scroll Routine ablaufen zu lassen.
    Wobei ich zugeben muss, dass ich mpd Client nicht richtig verstanden habe.
    while True:
    ...
    client.send_idle ()
    events = client.fetch_idle ()


    Ich könne das Scrollen auch in die lcd_server.py Routine verlegen, weiß aber auch hier nicht, wie das Scrollen abgebrochen wird,
    wen vom Client die Zeile3 (nur diese wird gescrollt) erneut übertragen wird.
    (Die Scroll-Zeilen sind unten eingefügt)


    Kann mir hier noch mal jemand mit einer Idee weiterhelfen.
    Vielen Dank schon mal im Voraus.
    Thomas

    Vielen Dank für die Tipps. Ich habe mal einen kleinen Test mit client.send_idle () gemacht:


    Das Ergebnis:


    Wenn man dann nur den [‚player‘] output weiterverarbeitet, kann man gut damit leben.


    Die nächste Frage ist nun, wie ich
    client.send_idle ()
    events = client.fetch_idle ()
    in ein vorhandenes Programm einsetzen kann, denn eigentlich sollte man nicht mit einem 2ten Programm auf
    ein LCD zugreifen.
    Das vorhandene Programm:


    Noch mal wieder einen schönen Dank im Voraus
    Thomas

    Ich habe mir ein kleines Pyhton Programm geschrieben um verschiedene Radioprogramme aus dem Internet
    über meinem Raspberry Pi zu empfangen. Die Senderanzeige erfolgt über ein LCD Display und
    die ganze Bedienung über eine alte Infrarot Fernsteuerung (LIRC).
    Wenn nun die MPod App meines iPads auf die Adresse des RPi’s zugreift, kann ich die über MPC geladenen
    Stationen sehen und verändern.
    Ich würden nun gerne diese Sender-Änderung auch auf dem am RPi angeschlossenen LCD aktualisieren,
    die sich sonst nur über die IR-Fernsteuerung ändert.
    Man könnte z.B. über eine regelmäßige ‚MPC current‘ den laufenden Sender abfragen und ggf. aktualisieren,
    das finde ich aber nicht optimal.
    Der bessere Weg wäre, wenn ich irgendwo abfragen könnte, ob vom MPod/iPad eine MPD/MPC Aktion eingeleitet wird.


    Ich wäre sehr dankbar über eine Idee.


    Grüße,
    Thomas