GPIO geht nicht nach Update

  • Hallo zusammen,

    ich habe heute mal das längst fällige Update von SvxLink gemacht. In der aktuellen Trunk-Version funktioniert auf einem Raspberry die GPIO-Funktion nicht mehr. Beim Start erscheint jetzt die folgende Fehlermeldung:

    SvxLink v1.2.99.13 (Nov 4 2013) Copyright (C) 2003-2013 Tobias Blomberg / SM0SVX

    SvxLink comes with ABSOLUTELY NO WARRANTY. This is free software, and you are
    welcome to redistribute it in accordance with the terms and conditions in the
    GNU GPL (General Public License) version 2 or later.

    Using configuration file: /etc/svxlink/svxlink.conf
    --- Using sample rate 48000Hz

    Starting logic: RepeaterLogic
    Loading RX: Rx1
    Loading TX: Tx1
    *** ERROR: Could not open GPIO /sys/class/gpio/4/value for writing.
    *** ERROR: Could not initialize TX "Tx1"
    *** ERROR: Could not initialize Logic object "RepeaterLogic". Skipping...
    *** ERROR: No logics available. Bailing out...

    Es wird nun fälschlilcherweise nicht mehr ....gpio4, sondern gpio/4 gesetzt, was natürlich nicht stimmt.
    Liegt der Fehler an mir, oder hat sich da was in der Software eingeschlichen ?

    Danke vorab für Eure Hilfe,

    Wilm

  • Hi,

    hat etws gedauert. Ja, das ist richtig, habe mir gerade diesen Teil mal näher angeschaut, es wird hier

    Code
    ss << "/sys/class/gpio/" << gpio_pin << "/value";


    definiert, was z.B. zu

    Code
    /sys/class/gpio/4/value

    führt. War das vorher anders? Ich kann das hier leider nicht probieren.

    vy 73's de Adi, DL1HRC

  • Hallo Adi,

    kein Problem!

    Genau die Änderung macht auf dem Raspi mit Debian die Probleme. Es müsste wieder GPIO/GPIO4 und nicht GPIO/4 lauten, dass es wieder funktioniert. Das wurde geändert.
    Interessant wäre auch, ob man für EVDEV auch eine GPIO verwenden kann. Das würde für ein aktuelles Projekt eine externe serielle USB-Serielle Schnittstelle ersparen.

    vy 73 de Wilm,
    DL4OCH

  • Hi Jürgen,

    wäre gut, wenn Du die Erkenntnisse noch mit uns teilen könntest. Ich würde, fals es ein Problem im neuen Trunk ist, gerne einen Patch bereitstelle bzw. den Fehler melden. Habe hier aber kein Raspi zum Testen da.

    vy 73's de Adi, DL1HRC

  • Hallo Jürgen,

    mit genau dieser Modifikation funktioniert das hier auch bestens.
    Ich habe hier aber noch eine Raspi, bei dem die Pins 30 und 31 abgeraucht sind. Daher kann ich die nicht mehr verwenden und möchte für einen weiteren Link genau diesen verwenden. Durch die Änderung des ansprechens der GPIOs beim Raspi geht das mit der aktuellen Version von SvxLink aber nicht mehr. Bei der 1.2.99.1 ging das noch ohne Probleme, bei der 1.2.99.3 leider nicht mehr.

    vy73 de Wilm,
    DL4OCH

  • Hi,

    hier di Antwort:

    Quote

    The gpio was changed to support a wide range of gpio modules. It is now required to enter the full name of the gpio pin (gpio4) instead of just the PIN number (4).

    Also statt "4" einfach "gpio4" konfigurieren.

    vy 73's de Adi, DL1HRC

  • Danke, funktioniert !!!

    Gibt es irgendwo, gerne auch in Englisch, ein permantentes Changelog, wo man nachlesen kann?
    Erst stolpere ich über das SHUTDOWN_CMD, was einfach geändert wurde, jetzt über die Änderung der Adressierung der GPIO-Ports.

    Funktioniert jetzt ja alles prächtig, aber ich bekomme jetzt schon Zahnschmerzen bei einem neuen Trunk. Das sind hier jetzt 2 Relais und 1 Link den ich unter die Fittiche genommen habe. Kaum zu denken, wenn ich das einspiele und ich den Raum Südniedersachsen lahm lege.

    Sorry Adi, das geht nicht gegen Dich, aber manchmal ist der Programmierwahn in Schweden wohl größer, als die Lust die Änderungen dann auch zu dokumentieren.


    Liebe Grüße es vy73 de Wilm,
    DL4OCH

    Betriebsknecht von DB0EIG, DB0OHA und DB0OR-L und zukünftigen 2 NetTRX

  • Hi Wilm,

    na ja, man kann den neuen Trunk auch erst mal auf einem Testsystem checken bevor ich das einspiele, auch wenn es etwas länger dauert. Ein Changelog gibt es im Verzeichnis $source/svxlink, wird bei jedem Checkout mitgeliefert, da kann man dann auch folgendes nachlesen:

    Quote

    ...rejected. Also, no other DTMF commands than the logic activation command
    is allowed when the logic is shut down.
    The command was also renamed to ONLINE_CMD since everything became more
    logical. Calling it SHUTDOWN_CMD was a bit confusing. Should subcommand 1
    mean that the logic is shut down or brought back online? Naming the command
    ONLINE_CMD make everything clear: 1=online, 0=offline.

    :)
    Geht mir aber auch manchmal so, dass ich beim Installieren zu schnell war, "RTFM" hat schon irgendwie seinen Sinn.

    vy 73's de Adi, DL1HRC