Home of the Squeezebox™ & Transporter® network music players.
Page 2 of 2 FirstFirst 12
Results 11 to 16 of 16
  1. #11
    Junior Member
    Join Date
    Nov 2017
    Posts
    4

    Hardware-Tasten an GPIO für Play...

    Ich hoffe, dass das jetzt nicht schon zu off-topic wird!

    Ich hab's mir nochmals genauer angesehen. Ich brauchte die Hardware-Tasten unbedingt, da ich vorhandene Tasten benutzen wollte. Konkret ging es um den Einbau in eine vorhandene Stereoanlage. Sorry, dass ich das nicht gleich geschrieben habe.

    Elektronisch ist das kein Problem.....bin ja Elektroniker. Aber außer ein paar kleinen Skripte habe ich mit Python noch nicht viel gemacht.

    Wie dem auch sei, die "Play-Taste" habe ich nun realisiert und es funktioniert.

    In der config.py habe ich noch folgende Zeilen eingefügt:
    Code:
    ## GPIO <--> Button wiring
    start_button = 21
    Und in der hd44780.py folgendes vor der main-Schleife ergänzt:
    Code:
    def lms_set_value(mac,set,value):
        tn = telnetlib.Telnet(config.lms, config.cliport)
        print (config.mac + " " + set + " " + value + " \n")
        tn.write(config.mac + " " + set + " " + value + " \n")
        tn.write("exit\n") 
    
    GPIO.add_event_detect(config.start_button, GPIO.FALLING, bouncetime=200)

    In der Scheife wird am Ende vor dem "Sleep" noch die Abfrage eingefügt:
    Code:
            if GPIO.event_detected(config.start_button):
               lms_set_value(config.mac, 'play', '')
    Eigentlich gar nicht schwer...aber im Selbststudium sehr Zeitraubend.

    Die anderen Tasten sollten dann kein Problem mehr darstellen.

    Danke für die anderen Ansätze!

  2. #12
    Senior Member
    Join Date
    Jan 2016
    Location
    Germany
    Posts
    102
    Ich habe vor längerer Zeit auch mal mit dem Script experimentiert, gescheitert bin ich am Scrollen.
    Wenn ich in die Schleife eine weitere Funktion eingefügt habe, lief alles sehr flüssig, solange die Anzeige nicht gescrollt hat.
    Lief durch die Anzeige gerade ein Scrolltext, dann hat das Script oder die Anzeige stur auf das Ende des Scrollens gewartet, bis weitere Funktionen abgearbeitet wurden. Das hat die Bedienung sehr nervig gemacht. Aber vielleicht hast Du ja mehr Erfolg.

  3. #13
    Senior Member
    Join Date
    Jan 2016
    Location
    Germany
    Posts
    102
    Ich vermute, daß in cougan's Fall die Tasteneingaben nicht oder nur verzögert ausgeführt werden,
    wenn gerade ein Scrolltext läuft. Da es sich um "blind actions" handelt, würde ich für diese
    Anwendung auch ein zweites Script laufen lassen.
    In meinem Fall ging das nicht, da das Ergebnis der Eingaben - Lautstärke rauf oder runter - im Display
    angezeigt werden sollten.
    Last edited by piPlayer; 2017-11-22 at 07:37.

  4. #14
    Junior Member
    Join Date
    Nov 2017
    Posts
    4
    Quote Originally Posted by piPlayer View Post
    Ich vermute, daß in cougan's Fall die Tasteneingaben nicht oder nur verzögert ausgeführt werden,
    wenn gerade ein Scrolltext läuft. Da es sich um "blind actions" handelt, würde ich für diese
    Anwendung auch ein zweites Script laufen lassen.
    In meinem Fall ging das nicht, da das Ergebnis der Eingaben - Lautstärke rauf oder runter - im Display
    angezeigt werden sollten.

    Ja, stimmt, die Tastenabfrage funktioniert zwar zuverlässig, aber bei scrollendem Text verzögert. Evtl. werde ich da tatsächlich ein zweites Skript laufen lassen.

    Das wheel.py habe ich gesehen und mir da auch die Info geholt, wie ich die Tasten realisieren kann. Da bei mir derzeit noch alles im Versuchsstadium ist, kann ich ja noch umdisponieren.

    Danke nochmals für die Infos und den Input!

    LG

    Cougan

  5. #15
    Junior Member
    Join Date
    Feb 2018
    Posts
    2

    Little help required!

    Hello everybody!

    First of all congratulations for the code, it is excellent.

    Though I have a question, is it possible to use it with an LCD with an I2c backpack? The output of the screen is only 4 pins (2 for power and two for data). Can someone point me to the changes that I will have to make to the code?

    Thank you in advance,

    P.

  6. #16
    Junior Member
    Join Date
    Feb 2018
    Posts
    2
    Thank you for your quick response!
    But I cannot try your solution since the i2c backpack is soldered to the LCD.
    I will keep digging and enhancing my python knowledge. I will try to implement your scripts in lcdproc and I'll let you know if something good came up.

    Thank you.

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •