Airplay auf Sonos mit AirConnect

airconnect statusBisher habe ich Airsonos genutzt um auf meine Sonos Lautsprecher per AirPlay zuzugreifen. Nun bin ich aber zu AirConnect gewechselt. AirConnect hat den großen Vorteil, das nach dem Auflösen einen Gruppe, wieder alle Lautsprecher zur Verfügung stehen. Mit Airsonos war das nur nach einem Neustart des Dienstes möglich. Hinzu kommt, dass AirConnect aktuell auch entwickelt wird und somit in Bewegung ist. Die Anleitung ist für einen RaspberryPi geschrieben, funktioniert aber auch mit anderen Linux Distributionen, hier muss aber eine andere Datei installiert werden. Schaut dazu einfach auf GitHub nach, da gibt es die Version für alle möglichen Platformenn

Die Installation ist relativ einfach und schnell erledigt.

Deaktivieren von Airsonos

Solltet ihr bisher Airsonos nicht verwenden, könnt ihr euch folgende Punkte sparen. Um Airsonos abzuschalten, sind nur zwei Befehle nötig. Zusätzlich habt ihr die Möglichkeit wieder auf Airsonos zu wechseln, da wir erst mal nichts löschen.


service airsonos stop
systemctl disable airsonos.service

Installation von AirConnect für AirPlay

Mittels folgender Befehle erzeugt ihr einen Ordner für AirConnect und ladet euch die vorkompilierte und aktuellste Version herunter. Ich lasse den Dienst dabei als Root User laufen.

mkdir /var/lib/airconnect
cd /var/lib/airconnect
wget https://raw.githubusercontent.com/philippe44/AirConnect/master/bin/airupnp-arm
chmod 755 airupnp-arm

Anschließend müssen wir noch ein Startup-Script erstellen um AirConnect als Service starten zu können.

vi /etc/systemd/system/airconnect.service

[Unit]
Description=AirUPnP bridge
After=network-online.target
Wants=network-online.target

[Service]
Type=forking
ExecStart=/var/lib/airconnect/airupnp-arm -l 1000:2000 -z -f /var/log/airupnp.log
Restart=on-failure
RestartSec=30

[Install]
WantedBy=multi-user.target

Nun könnt ihr den Autostart setzen und den AirConnect Service starten. Das sollte es auch dann schon gewesen sein. In Allem einfacher als die bisherige Lösung und schnell gemacht.

systemctl enable airconnect.service
service airconnect start

Sollte es nicht laufen, kann es nicht schaden den Status des Dienstes zu überprüfen und einen Blick in das Logfile zu werfen.

service airconnect status
cat /var/log/airupnp.log

OpenSSL

AirConnect benötigt OpenSSL 1.0.0. Mittels openssl version könnt hier herausfinden welche Version bei euch installiert ist. Sollte dabei OpenSSL 1.0.1t herauskommen, braucht ihr nichts zu machen. Andernfalls solltet ihr die benötigte Version manuell nachinstallieren.

Dank wget könnt ihr euch das nötige File herunterladen und anschließend mit dpkg installieren. Sollte der Link nicht funktionieren, schaut bitte direkt im Verzeichnis nach, denn die Version kann sich schon mal ändern. Das dpkg -i muss dann natürlich auch auf die neuere Version verweisen.

wget http://security.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.0.0_1.0.1t-1+deb8u10_armhf.deb

sudo dpkg -i libssl1.0.0_1.0.1t-1+deb8u10_armhf.deb

Damit sollte AirConnect fehlerfrei laufen. Danke an Sebastian für den Hinweis.

82 Gedanken zu „Airplay auf Sonos mit AirConnect“

  1. Servus!

    Vielen Dank für deine Anleitung!

    Wennn ich versuche das Skript zu speichern bekomme ich allerdings folgenden Fehler: „“/etc/systemd/system/airconnect.service“ E212: Cannot open file for writing“

    Ich habe leider keine Ahnung warum – hast du eine Idee…?

    Viele Grüße

    Tim

    Antworten
      • Vielen Dank für die Hilfe!

        So konnte ich das vi zumindest speichern – laufe aber direkt in den nächsten Fehler.

        Bei:

        „systemctl enable airconnect.service“

        erhalte ich Fehler:

        „Failed to execute operation: Access denied“

        Probiere ich das ganze mit einem Sudo davor, also:

        „sudo systemctl enable airconnect.service“

        erhalte ich wiederum diesen Fehler:

        „Failed to execute operation: Bad message“

        Ich bin leider noch nicht so tief in der Materie drin, daher komme ich da nicht weiter und würde mich sehr über Hilfe freuen

        Antworten
        • Hi,

          schau dir nochmals mittels cat /etc/systemd/system/airconnect.service das File an, dort liegt anscheinend der Fehler.
          Das muss der Inhalt sein:

          [Unit]
          Description=AirUPnP bridge
          After=network-online.target
          Wants=network-online.target

          [Service]
          Type=forking
          ExecStart=/var/lib/airconnect/airupnp-arm -l 1000:2000 -z -f /var/log/airupnp.log
          Restart=on-failure
          RestartSec=30

          [Install]
          WantedBy=multi-user.target

          Antworten
          • Hallo,

            wir kommen der Sache näher – ich hatte in dem File tatsächlich einen Fehler.

            Auch „sudo systemctl enable airconnect.service“ hat anscheinend funktioniert, denn ich bekomme

            „Created symlink from /etc/systemd/system/multi-user.target.wants/airconnect.service to /etc/systemd/system/airconnect.service.“

            als Antwort.

            Allerdings klappt der letzte Schritt „sudo service airconnect start“ nicht.
            Es kommt Fehler

            „Job for airconnect.service failed. See ’systemctl status airconnect.service‘ and ‚journalctl -xn‘ for details.“

            Wenn ich jetzt „systemctl status airconnect.service“ probiere, erscheint folgendes:
            „● airconnect.service – AirUPnP bridge
            Loaded: loaded (/etc/systemd/system/airconnect.service; enabled)
            Active: activating (auto-restart) (Result: exit-code) since Thu 2018-03-15 09:45:46 UTC; 6s ago
            Process: 10150 ExecStart=/var/lib/airconnect/airupnp-arm -l 1000:2000 -z -f /var/log/airupnp.log (code=exited, status=203/EXEC)“

            Hast du noch eine Idee?

          • Moin,

            immerhin etwas, aber den Rest schaffen wir auch noch.
            Was passiert denn wenn du den Dienst manuell startest mit sudo /var/lib/airconnect/airupnp-arm -l 1000:2000 -z -f ?
            Eventuell liegt es an der Berechtigung, die könnte wir mit sudo chmod 755 /var/lib/airconnect/airupnp-arm beheben.
            Ansonsten schick doch mal den Inhalt der /etc/systemd/system/airconnect.service und schau bitte ob airupnp-arm wirklich in /var/lib/airconnect liegt.

            Grüße,
            Björn

  2. Yeeessssss!!!

    Es funktioniert!!!

    Das war der entscheidende Hinweis! Das Directory hat irgendwie nicht gestimmt, aber jetzt funktioniert es!

    Vielen vielen Dank für die Hilfe und das Tutorial!

    Grüße

    Tim

    Antworten
  3. Hallo Björn, danke für die Anleitung.
    Ich habe auch mal wieder den Raps für „Homebridge“ neu aufgesetzt.

    Mit dem neusten Raspbian Stretch kommt openssl1.0.2 zum Einsatz.
    Benötigt wird allerdings noch 1.0.0
    Erst als ich es nachinstalliert habe, funktioniert Dein Tutorial hervorragend. Vielen Dank.
    Auf GitHub ist Fehler und Lösung bekannt
    https://github.com/philippe44/AirConnect

    “ Some Debian Stretch distributions (e.g. Raspian) only provide openssl1.0.2, but 1.0.0 is needed. Download the version for Jessie using wget http://security.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.0.0_1.0.1t-1+deb8u7_armhf.deb then install it with sudo dpkg -i libssl1.0.0_1.0.1t-1+deb8u7_armhf.deb „

    Antworten
  4. bin nach Sebastians Anleitung vorgegangen, bekomme aber den Fehler:

    pi@max2play:~ $ sudo wget http://security.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.0.0_1.0.1t-1+deb8u7_armhf.deb
    –2018-04-05 15:17:28– http://security.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.0.0_1.0.1t-1+deb8u7_armhf.deb
    Auflösen des Hostnamens »security.debian.org (security.debian.org)« ⦠217.196.149.233, 212.211.132.250, 2a02:16a8:dc41:100::233, …
    Verbindungsaufbau zu security.debian.org (security.debian.org)|217.196.149.233|:80 ⦠verbunden.
    HTTP-Anforderung gesendet, auf Antwort wird gewartet ⦠404 Not Found
    2018-04-05 15:17:28 FEHLER 404: Not Found.

    Bin dankbar für jede Hilfe.

    Thomas

    Antworten
  5. Und wer gehofft hatte, dass Sonos, Airplay 2 nun endlich bald und wie versprochen nachrüsten würde, wird seit den letzten News wohl doch eher wieder bei dieser Anleitung landen.

    „[…] Support for Airplay 2 will be available through a free software update on a selection of our latest products – including the PLAY:5 and PLAYBASE – with more to follow.“

    Vielen Dank für diese Anleitung.

    Beste Grüße
    John

    Antworten
  6. Hallo Björn,

    danke für die vielversprechende Anleitung!
    Leider hakt es bei mir noch an diesem Punkt:

    pi@magicmirrorpi:/var/lib/airconnect $ sudo service airconnect start
    Job for airconnect.service failed because the control process exited with error code.
    See „systemctl status airconnect.service“ and „journalctl -xe“ for details.
    pi@magicmirrorpi:/var/lib/airconnect $ systemctl status airconnect.service
    ● airconnect.service – AirUPnP bridge
    Loaded: loaded (/etc/systemd/system/airconnect.service; enabled; vendor prese
    Active: activating (auto-restart) (Result: exit-code) since Mon 2018-04-16 17
    Process: 2796 ExecStart=/var/lib/airconnect/airupnp-arm -l 1000:2000 -z -f /va

    Apr 16 17:19:57 magicmirrorpi systemd[1]: Failed to start AirUPnP bridge.
    Apr 16 17:19:57 magicmirrorpi systemd[1]: airconnect.service: Unit entered faile
    Apr 16 17:19:57 magicmirrorpi systemd[1]: airconnect.service: Failed with result
    lines 1-8/8 (END)…skipping…
    ● airconnect.service – AirUPnP bridge
    Loaded: loaded (/etc/systemd/system/airconnect.service; enabled; vendor preset: enabled)
    Active: activating (auto-restart) (Result: exit-code) since Mon 2018-04-16 17:19:57 CEST; 16s ago
    Process: 2796 ExecStart=/var/lib/airconnect/airupnp-arm -l 1000:2000 -z -f /var/log/airupnp.log (code=exited,

    Apr 16 17:19:57 magicmirrorpi systemd[1]: Failed to start AirUPnP bridge.
    Apr 16 17:19:57 magicmirrorpi systemd[1]: airconnect.service: Unit entered failed state.
    Apr 16 17:19:57 magicmirrorpi systemd[1]: airconnect.service: Failed with result ‚exit-code‘.

    Die Datei airconnect.service liegt im richtigen Verzeichnis
    und ihr Inhalt ist korrekt.

    Könntest Du mir da weiterhelfen?

    VG
    Dominik

    Antworten
      • Hi Björn,

        dann kommt folgendes:
        pi@magicmirrorpi:~ $ sudo /var/lib/airconnect/airupnp-arm -l 1000:2000 -z -f /var/log/airupnp.log
        /var/lib/airconnect/airupnp-arm: error while loading shared libraries: libssl.so.1.0.0: cannot open shared object file: No such file or directory

        fehlt mir also die libssl.so.1.0.0? Wo bekomme ich die her?

        VG
        Dominik

        Antworten
  7. Habe es jetzt stundenlang auf meinem Pi Zero W probiert (dachte der ist dafür doch prima, klein und sparsam kann er überall verschwinden…)
    Allerdings ist das ein ARMv6 und nicht 7 und scheinbar funktioniert weder die arm noch die arm5 Datei. Habe mal ein Issue eröffnet…
    Oder bin ich nur zu doof? Bekomme beim Ausführen immer „illegal instruction“ und laut Netz liegt das an einem zu alten ARM bzw. zu neuen Package.

    Antworten
    • Genau dasselbe Problem habe ich auch damit und auch schon alles mögliche probiert. Pi Zero W mit Linux version 4.14.50+ (dc4@dc4-XPS13-9333) (gcc version 4.9.3 (crosstool-NG crosstool-ng-1.22.0-88-g8460611)).

      Antworten
  8. Hallo,
    wenn ich den Service starten möchte, kommt immer eine Fehlermeldung:
    Job for airconnect.service failed because the control process exited with error code.
    See „systemctl status airconnect.service“ and „journalctl -xe“ for details.

    Wenn ich dann mit Status überprüfe erhalte ich folgendes:
    ● airconnect.service – AirUPnP bridge
    Loaded: loaded (/etc/systemd/system/airconnect.service; enabled; vendor preset: enabled)
    Active: activating (auto-restart) (Result: exit-code) since Mon 2018-07-23 09:17:26 CEST; 4s ago
    Process: 1860 ExecStart=/var/lib/airconnect/airupnp-arm -l 1000:2000 -z -f /var/log/airupnp.log (code=exited, status=203/EXEC)

    Jul 23 09:17:26 raspberry-vm systemd[1]: Failed to start AirUPnP bridge.
    Jul 23 09:17:26 raspberry-vm systemd[1]: airconnect.service: Unit entered failed state.
    Jul 23 09:17:26 raspberry-vm systemd[1]: airconnect.service: Failed with result ‚exit-code‘.

    Kannst du mir sagen wodran das liegt?

    Antworten
    • Moin,

      Ich glaube die airupnp-arm wird an einem anderen Ort liegen, bzw, nicht vorhanden sein.
      Was passiert denn wenn du den Dienst manuell startest mit sudo /var/lib/airconnect/airupnp-arm -l 1000:2000 -z -f /var/log/airupnp.log?
      Eventuell liegt es an der Berechtigung, die könnte wir mit sudo chmod 755 /var/lib/airconnect/airupnp-arm beheben.
      Ansonsten schick doch mal den Inhalt der /etc/systemd/system/airconnect.service und schau bitte ob airupnp-arm wirklich in /var/lib/airconnect liegt.

      Grüße,
      Björn

      Antworten
      • ● airconnect.service – AirUPnP bridge
        Loaded: loaded (/etc/systemd/system/airconnect.service; enabled; vendor preset: enabled)
        Active: activating (auto-restart) (Result: exit-code) since Mon 2018-07-23 10:58:11 CEST; 12s ago
        Process: 1631 ExecStart=/var/lib/airconnect/airupnp-arm -l 1000:2000 -z -f /var/log/airupnp.log (code=exited, status=203/EXEC)

        Jul 23 10:58:11 Raspberry-VM-32bit systemd[1]: airconnect.service: Control process exited, code=exited status=203
        Jul 23 10:58:11 Raspberry-VM-32bit systemd[1]: Failed to start AirUPnP bridge.
        Jul 23 10:58:11 Raspberry-VM-32bit systemd[1]: airconnect.service: Unit entered failed state.
        Jul 23 10:58:11 Raspberry-VM-32bit systemd[1]: airconnect.service: Failed with result ‚exit-code‘.

        das erhalte ich wenn ich service airconnect status ausführe.

        Antworten
  9. wenn ich den Dienst manuell starte kommt das:
    -bash: /var/lib/airconnect/airupnp-arm: Kann die Binärdatei nicht ausführen: Fehler im Format der Programmdatei

    Antworten
  10. Ich habe libssl1.0.0_1.0.1t-1+deb7u4_armhf sowie die 8u9 Version ausprobiert, geht alles nicht.

    Das systemctl enable Kommando wird ausgeführt ohne sichtbare Rückmeldung.

    Das Start Kommando liefert diese Fehlermeldung zurück:

    Job for airconnect.service failed because a fatal signal was delivered to the control process.
    See „systemctl status airconnect.service“ and „journalctl -xe“ for details.

    das xe Kommando liefert diese Infos zurück:

    — Unit airconnect.service has begun starting up.
    Sep 15 11:32:11 raspberrypi systemd[1]: airconnect.service: Control process exit
    Sep 15 11:32:11 raspberrypi systemd[1]: Failed to start AirUPnP bridge.
    — Subject: Unit airconnect.service has failed
    — Defined-By: systemd
    — Support: https://www.debian.org/support

    — Unit airconnect.service has failed.

    — The result is failed.
    Sep 15 11:32:11 raspberrypi systemd[1]: airconnect.service: Unit entered failed
    Sep 15 11:32:11 raspberrypi systemd[1]: airconnect.service: Failed with result ‚

    Manuell sudo /var/lib/airconnect/airupnp-arm -l 1000:2000 -z -f /var/log/airupnp.log bringt „illegal instruction“.

    Die Dateien und Ordner und chmod 755 habe ich schon vielfach überprüft, auch neu angelegt. Die Datei habe ich mit Nano angelegt, statt mit vi.

    Klappt alles nicht.

    service airconnect status bringt:

    root@raspberrypi:~# service airconnect status
    ● airconnect.service – AirUPnP bridge
    Loaded: loaded (/etc/systemd/system/airconnect.service; enabled; vendor prese
    Active: activating (auto-restart) (Result: signal) since Sat 2018-09-15 11:35
    Process: 2839 ExecStart=/var/lib/airconnect/airupnp-arm -l 1000:2000 -z -f /va

    Sep 15 11:35:12 raspberrypi systemd[1]: airconnect.service: Unit entered failed
    Sep 15 11:35:12 raspberrypi systemd[1]: airconnect.service: Failed with result ‚

    Eine log Datei gibts nicht. cat /var/log/airupnp.log bringt „no such file or directory“

    Was nun? Ist der Pi Zero W inkompatibel?

    Antworten
  11. Hallo Björn,
    vielen Dank für das Tutorial. Ich konnte das Script soweit aktiviern und alles funktioniert auch. Allerdings wird mir auch beim Video schauen die Möglichkeit angeboten auf meinen TV zu streamen. Wenn ich das allerdings dann versuche kommt die Meldung das es nicht lesbar wäre. Muss man da noch irgendwelche Videocodecs auf dem Pi aktivieren oder geht das einfach nicht?

    Antworten
  12. Hallo Björn,
    jetzt hab ich doch noch ein Problem bekommen. Nachdem AirConnect wunderbar funktioniert hat bricht die Musik nache ein zwei Takten ab. Das iPhone scheint das nicht zu merken denn die Sekundenangabe des Tracks läuft weiter. Neustarts haben nichts gebracht. Gibt es da Probleme mit dem neuen iOS?

    Antworten
    • Hallo Marc,

      ich habe es gerade am Wochenende nochmals getestet und mit iOS 12.1 konnte ich keine Probleme feststellen. Evtl. mal die AirConnect Version updaten. Dazu tauscht du einfach die airupnp-arm aus (bzw. was du benutzt) und startest AirConnect neu.

      Antworten
  13. Hallo Björn,

    tolle Anleitung, leider bekomme ich AirConnect nicht zum Laufen.

    Folgender Fehler tritt bei mir auf:

    Job for airconnect.service failed because the control process exited with error code.
    See „systemctl status airconnect.service“ and „journalctl -xe“ for details.
    root@raspberrypi:~# service airconnect status
    ● airconnect.service – AirUPnP bridge
    Loaded: loaded (/etc/systemd/system/airconnect.service; enabled; vendor preset: enabled)
    Active: activating (auto-restart) (Result: exit-code) since Sun 2018-12-02 11:26:45 GMT; 8s ago
    Process: 522 ExecStart=/var/lib/airconnect/airupnp-arm -l 1000:2000 -z -f /var/log/airupnp.log (code=exited, status=127)

    Ich nutze einen RasPi 2 Model B

    Danke im Voraus
    Chris

    Antworten
  14. Hallo Björn,
    irgendwie klappt der Downgrade auf OpenSSl 1.0.0 nicht bei mir bleibt es immer beim aktuellen 1.1.0. Der eingebaute Link geht ins Nirvana. Wie muss ich den Link anpassen das der Downgrade funktioniert?

    Antworten
  15. Hallo, ich kann das Datei airupnp-arm auf meine Raspi (ARM6) nicht ausführen:
    DIe Rechte sind mit chmod 755 gesetzt.
    pi@raspberrypi:/var/lib/airconnect $ ls -l
    insgesamt 464
    -rwxr-xr-x 1 root root 474136 Jan 5 17:39 airupnp-arm
    pi@raspberrypi:/var/lib/airconnect $ airupnp-arm
    -bash: airupnp-arm: Kommando nicht gefunden.
    pi@raspberrypi:/var/lib/airconnect $ sudo airupnp-arm
    sudo: airupnp-arm: Befehl nicht gefunden
    pi@raspberrypi:/var/lib/airconnect $

    Antworten
    • Hi.

      wenn du direkt in dem Verzeichnis bist, musst du AirConnect mit ./airupnp-arm starten. Das beste ist gleich den kompletten Pfad zu nehmen sudo /var/lib/airconnect/airupnp-arm -l 1000:2000 -z -f

      Antworten
  16. Ich habe jetzt nochmal einen neuen Anlauf zur Installation auf meinem Pi Zero genommen. Dazu habe ich so ziemlich eine der letzten Jessie Versionen gesucht und hier herunter geladen:

    http://downloads.raspberrypi.org/raspbian_lite/images/raspbian_lite-2017-07-05/

    Damit funktionierte deine Anleitung auf Anhieb und ohne weiteres Gefummel, absolut straighforward. Cool 🙂

    Never touch a running system…

    Allerdings habe ich gerne Aussetzer im Stream drin… der Pi Zero ist wohl nicht wirklich gut geeignet dafür… werde ich mal etwas beobachten und ggfs einen stärkeren LAN-gebundenen Pi nehmen, falls das sich nicht gibt…

    Danke nochmal für deine Seite hier.

    Antworten
  17. Hallo Björn,
    ich versuche verzweifelt nach deiner Anleitung Airconnect auf meinem Raspi 3B+ mit dem aktullen Raspbian zum laufen zu bekommen. Ich scheitere aber immer am Downgrade des OpenSSL. Hier bleibt es stets bei der gerade aktuellen Version1.1.0k
    Das System gibt aber keine Fehler aus und scheint alles auszuführen.

    Wie kann ich herausfinden warum der downgrade nicht geht?

    Antworten
  18. Hallo Björn,
    also jetzt geht es, nach Downgrade wurde aber eben immer noch die neuere Open SSl Version angezeigt. Daher dachte ich es geht nicht und hab nicht weiter gemacht.

    Eine andere Frage habe ich jetzt noch. Der Rasperry Pi wird unter einer eigenen IP Adresse auch als Streaming-Box angezeigt. Wenn ich dort aber einen Lautsprecher anschließe und das Streaming starte kommt kein Ton raus. Die Audioeinstellung im config ist auf Auto eine HDMI Kabel ist nicht gesteckt.
    In der Auswahlliste auf dem iPhone ist der Raspi nur mit IP-Adresse angezeigt,
    kann man das anpassen das dort ein Name angezeigt wird anstelle der IP Adresse?

    Antworten
  19. Hallo Björn,

    ich habe auch ein Problem. Wenn ich den Dienst starte erschent folgendes:
    Loaded: loaded (/etc/systemd/system/airconnect.service; enabled; vendor preset: enabled)
    Active: inactive (dead) since Thu 2019-08-22 09:35:54 CEST; 13s ago
    Process: 4945 ExecStart=/var/lib/airconnect/airupnp-arm -l 1000:2000 -z -f /var/log/airupnp.log (code=exited, status=0/SUCCESS)

    Warum ist airconnect inactive und wie can ich es aktivieren?

    Im Log steht fogendes dazu:
    [08:44:06.190767] main:1293 Starting airupnp version: v0.2.12.0 (Aug 20 2019 @ 09:34:12)
    [08:44:06.191008] main:1301 no config file, using defaults
    [08:44:06.195759] Start:1011 UPnP init failed: -203
    [08:44:06.195881] main:1334 Cannot start

    Bei mir fehlt offensichtlich das config file. Wo sollte das kiegen und was wäre der Inhalt?

    Danke und Gruß
    Pet

    Antworten
  20. Hallo,

    ich bekomme immer den Fehler

    E325: ATTENTION
    Found a swap file by the name „/etc/systemd/system/.airconnect.service.swp“
    owned by: root dated: Fri Oct 25 15:15:06 2019
    file name: /etc/systemd/system/airconnect.service
    modified: YES
    user name: root host name: raspberrypi
    process ID: 2554 (STILL RUNNING)
    While opening file „/etc/systemd/system/airconnect.service“
    CANNOT BE FOUND
    (1) Another program may be editing the same file. If this is the case,
    be careful not to end up with two different instances of the same
    file when making changes. Quit, or continue with caution.
    (2) An edit session for this file crashed.
    If this is the case, use „:recover“ or „vim -r /etc/systemd/system/airconnect.ser
    vice“
    to recover the changes (see „:help recovery“).
    If you did this already, delete the swap file „/etc/systemd/system/.airconnect.se
    rvice.swp“
    to avoid this message.

    „/etc/systemd/system/airconnect.service“ [New File]
    Press ENTER or type command to continue

    wenn ich „sudo vi /etc/systemd/system/airconnect.service“ ausführen möchte.

    Danke schon mal für die Hilfe

    Antworten
    • Hi,

      die Meldung sagt doch eigentlich alles aus. Vermutlich läuft eine andere Instanz von vi noch im Hintergrund, da du es nicht richtig geschlossen hast. Daher kommt die Meldung. Einfach mal neu starten und dann sollte es gehen.

      Du beendest vi und speicherst indem du Esc drückst und danach :wq eintippst und mit Enter bestätigst.

      Antworten
      • Hallo,

        Danke für die schnelle Antwort. Ja daran hat es gelegen. :wq war der Trick.

        Ich habe noch ein PiHole auf dem RP laufen.

        Jetzt bekomme ich aber in der nächsten Zeile den nächsten Fehler. ->service airconnect start<-

        pi@raspberrypi:~ $ systemctl enable airconnect.service
        ==== AUTHENTICATING FOR org.freedesktop.systemd1.manage-unit-files ===
        Authentication is required to manage system service or unit files.
        Authenticating as: root
        Password:
        ==== AUTHENTICATION COMPLETE ===
        Created symlink /etc/systemd/system/multi-user.target.wants/airconnect.service → /etc/systemd/system/airconnect.service.
        ==== AUTHENTICATING FOR org.freedesktop.systemd1.reload-daemon ===
        Authentication is required to reload the systemd state.
        Authenticating as: root
        Password:
        ==== AUTHENTICATION COMPLETE ===
        pi@raspberrypi:~ $ service airconnect start
        ==== AUTHENTICATING FOR org.freedesktop.systemd1.manage-units ===
        Authentication is required to start 'airconnect.service'.
        Authenticating as: root
        Password:
        ==== AUTHENTICATION COMPLETE ===
        Job for airconnect.service failed because the control process exited with error code.
        See "systemctl status airconnect.service" and "journalctl -xe" for details.
        pi@raspberrypi:~ $ journalctl -xe
        — The error number returned by this process is ERRNO.
        Oct 26 13:46:02 raspberrypi systemd[1]: airconnect.service: Control process exited, code=exited, status
        — Subject: Unit process exited
        — Defined-By: systemd
        — Support: https://www.debian.org/support

        — An ExecStart= process belonging to unit airconnect.service has exited.

        — The process' exit code is 'exited' and its exit status is 203.
        Oct 26 13:46:02 raspberrypi systemd[1]: airconnect.service: Failed with result 'exit-code'.
        — Subject: Unit failed
        — Defined-By: systemd
        — Support: https://www.debian.org/support

        — The unit airconnect.service has entered the 'failed' state with result 'exit-code'.
        Oct 26 13:46:02 raspberrypi systemd[1]: Failed to start AirUPnP bridge.
        — Subject: A start job for unit airconnect.service has failed
        — Defined-By: systemd
        — Support: https://www.debian.org/support

        — A start job for unit airconnect.service has finished with a failure.

        — The job identifier is 876 and the job result is failed.

        Antworten
        • pi@raspberrypi:~ $ systemctl status airconnect.service
          ● airconnect.service – AirUPnP bridge
          Loaded: loaded (/etc/systemd/system/airconnect.service; enabled; vendor preset: enabled)
          Active: activating (auto-restart) (Result: exit-code) since Sat 2019-10-26 14:01:28 CEST; 23s ago
          Process: 744 ExecStart=/var/lib/airconnect/airupnp-arm -l 1000:2000 -z -f /var/log/airupnp.log (code=exited, status=203/EXEC)

          Oct 26 14:01:28 raspberrypi systemd[1]: Failed to start AirUPnP bridge.
          pi@raspberrypi:~ $

          Antworten
          • Was passiert denn wenn du den Dienst manuell startest mit sudo /var/lib/airconnect/airupnp-arm -l 1000:2000 -z -f /var/log/airupnp.log ?
            Eventuell liegt es an der Berechtigung, die könnte wir mit sudo chmod 755 /var/lib/airconnect/airupnp-arm beheben.
            Ansonsten schick doch mal den Inhalt der /etc/systemd/system/airconnect.service und schau bitte ob airupnp-arm wirklich in /var/lib/airconnect liegt.

            Grüße,
            Björn

  21. Ich habe vermutlich auch Probleme das Skript zu erstellen.

    pi@raspberrypi:~ $ systemctl enable airconnect.service
    ==== AUTHENTICATING FOR org.freedesktop.systemd1.manage-unit-files ===
    Authentication is required to manage system service or unit files.
    Authenticating as: root
    Password:
    ==== AUTHENTICATION COMPLETE ===
    Failed to enable unit: Unit file airconnect.service does not exist.
    pi@raspberrypi:~ $

    Antworten
  22. Hi Björn,
    ich nutze AirConnect als Paket für die Synology DiskStation und eigentlich hat das auch immer gut funktioniert. In letzter Zeit habe ich das wenig benutzt und mich nun gewundert, dass es nicht mehr läuft. Wenn ich das Paket starte bekomme ich nur eine Fehlermeldung:
    „Der Paketdienst konnte nicht ausgeführt werden. Failed to start AirConnect on any of the local interfaces, please make sure you have at least one UPnP/Sonos/Chromecast device on your network“

    Natürlich habe ich ein paar Sonos im Netzwerk und es hat auch schonmal funktioniert.

    Hast du eine Idee, was ich probieren könnte?
    Danke & Gruß,
    Sebastian

    Antworten
  23. Hallo,
    nach dem ich die richtige Datei gefunden hatte die meine DS213J versteht hattest gut geklappt. Was ein wenig stört sind die 4 Sekunden delay bis zur Aktion.

    Antworten
  24. Hi,

    wer gerne ein einfaches Paket für AirConnect nutzen möchte kann sich gerne mal mein Synology Paket AirConnect-Synology anschauen: https://eizedev.github.io/AirConnect-Synology/. Dieses wird auch aktiv weiterentwickelt und versucht das Handling von airupnp und aircast einfacher zu gestalten.
    Es ist kompatibel mit DSM7 (Für ältere DSM6 oder DSM5 Systeme gibt es aber auch noch Pakete, die ggf. aber etwas älter sind. Die reine Funktionalität von airupnp und aircast wird aber auf allen Synology NAS Geräten (+ Router) unterstützt).

    Aktuelle Downloads der Pakete findet ihr hier: https://github.com/eizedev/AirConnect-Synology/releases

    Für viele Fragen rund um das Paket aber auch zu AirConnect generell findet ihr eine ausführliche Dokumentation auf der Seite.

    Bei Problemen, Wünschen oder Kritik könnt ihr im Github Repository gerne ein Issue eröffnen: https://github.com/eizedev/AirConnect-Synology/issues
    Alternativ könnt ihr auch einen Beitrag in Github Discussions schreiben falls ihr Fragen habt: https://github.com/eizedev/AirConnect-Synology/discussions

    Gruß
    René

    Antworten
  25. Hallo Björn,

    vielen Dank für diese klasse Anleitung.

    Hast du zufällig einen Tipp, wie genau ich nachträglich noch eine config.xml erstelle? Irgendwie verstehe ich die Doku des Entwicklers nicht so ganz.

    Gruß
    Gunnar

    Antworten
    • Hi,

      ich habe es gerade mal versucht:

      cd /var/lib/airconnect/
      systemctl stop airconnect.service
      ./airupnp-arm -i config.xml

      Mit Strg+c beenden.

      Eventuell musst du die Pfade etwas anpassen, aber so geht es. Mit -i erzeugst du quasi die Datei. Mit -x config.xml wählst du dann die config aus.

      Grüße,
      Björn

      Antworten
      • Vielen Dank für die Antwort!

        Aber irgendwie will die config.xml nicht so recht auftauchen.

        Es passiert dann folgendes:
        pi@homebridge:/opt/airconnect $ ./airupnp-arm -i config.xml
        [12:53:33.487742] main:1420 Starting airupnp version: v0.2.51.2 (Nov 1 2021 @ 23:32:10)
        [12:53:33.488169] main:1428 no config file, using defaults
        [12:53:33.491505] Start:1130 Binding to 192.168.10.58:49152
        [12:53:33.626359] AddMRDevice:1006 [0x72a08008] skipping Sonos slave Wohnzimmer
        [12:53:33.626691] AddMRDevice:1035 [0x72a08008]: cannot get mac Wohnzimmer+, creating fake 9b615db
        Segmentation fault
        pi@homebridge:/opt/airconnect $ dir
        airupnp-arm

        Hast du noch eine Idee? 🙂

        Antworten

Schreibe einen Kommentar